This operator can be used for sending a message to a specifc superclass of this instance and not to any of the superclasses. A superclass is a class of which the class of the current instance is derived. The operator cannot be used to send messages to a different instance. The right operand must always be the name of a method of a class.
see also: add_callback/3 add_callback/4 callbacks class_name/2 clear_var/1 del_obj/1 get_instance/2 instance/1 new_obj/2 new_obja/2 ispresent_callback/4 object-oriented prolog remove_callback/4 <-/2 this/1 ::<-/1
| Example | |
| stack::init :- container ::<- make_empty. |
send the message 'make_empty' to the superclass named 'container' of the instance |
| test3::call5(Class, Method) :- Class ::<-Method. |
send the value of the variable 'Method' as a message to the superclass of the class test3 |
| Exceptions | |
| the classname operand is a variable | an instantiation_error exception is thrown |
| the Classname operand is not a callable term | a type_error(calleble, Classname) exception is thrown |
| the message operand is a variable | an instantiation_error exception is thrown |
| the message to send is not an atom | a type_error(atom, Arg) is thrown |
| Operator is not used in a method of an instance | an evaluation_error(call_method, Operator) exception is thrown |
| the specified Classname is not a superclass | an evaluation_error(call_method, Operator) exception is thrown |