class Invokable(object): """An 'interface', or common super class for methods and primitives. WARNING: This interface is not used in the RPython version, because RPython does not support multiple inheritance. It is kept merely for informative purposes to show the common parts of Method and Primitive. """ # Tells whether this is a primitive def is_primitive(self): raise NotImplementedError() # Invoke this invokable object in a given frame def invoke(self, frame, interpreter): raise NotImplementedError() # Get the signature for this invokable object def get_signature(self): raise NotImplementedError() # Get the holder for this invokable object def get_holder(self): raise NotImplementedError() # Set the holder for this invokable object def set_holder(self, value): raise NotImplementedError()