-
Notifications
You must be signed in to change notification settings - Fork 62
ObjectOrdinals
Here are methods with fixed ordinals. These are mostly methods of 'object' - the very
root class in language. Methods 8-14 are not defined for object in any usable way (will throw on call to them) and exist only to be redefined in other special classes. (That's historical and has no reason now.)
This method is called automatically on object creation.
Is called by garbage collector on object disposal
Returns class of object.
NB – this is a way to overcome reference-given interface and obtain default interface for the object. This is a problem for interface-based access control scheme implementation.
Returns shallow copy of object.
Returns true if passed object is equal to this.
NB – value comparison is assumed.
Returns object value converted to string.
Method will be generated by compiler, if not defined explicitly. Will NEVER be inherited! tagName is a name of tag we will output. Calls toXML for all fields. Atomic fields to be represented as parameters? passed_objects are for loop check. If loop - throw.
TODO – use class name as tag?
Method will be generated by compiler, if not defined explicitly. Will NEVER be inherited! Calls fromXML for all fields with corresponding to tags or parameters names.
This is a ‘default activity’ method which is often called implicitly by compiler for objects of some predefined system classes. Examples:
- For closure – ??? (not implemented) activate it.
- For array object – return iterator (not implemented).
- For iterator – ??? (not implemented) return pointer to object.
- For class class object – new class( name, data_area_size, interface )
- For boot class – class load_class( string file_name );
- For thread – start execution
- For boot class – code load_method( string file_name ); - obsolete, throws
- For array object – ??? (not implemented) return subarray
- For string – ??? (not implemented) return substring
- For class object ??? (not implemented) return interface by number.
- For array object – get_element( index )
- For array object – set_element( index ) – extends array
Returns integer, used in hash tables.
As project evolves we should deprecate using predefined ordinals.
:: Home :: RoadMap :: History :: ChangeLog :: ScreenShots :: Phantom Developer's Guide