Object (class instance) type basic object model metaclass.
Class Object from \ BOM( )
Methods | |
apply | Applies the values in a dictionary to the corresponding properties. |
attributes | Returns a dictionary containing annotation attributes of the given object. |
comp | Appends elements to this object through a filter. |
getProperty | Returns the value of a property in an object. |
getState | Return the current state of an object. |
mcomp | Appends elements to this object through a filter. |
mfcomp | Appends elements to this object through a filter. |
properties | Returns all the properties in the object. |
retrieve | Gets the values stored in the properties of this object. |
setProperty | Sets the value of a proprety in this object |
setState | Change the current active state of an object. |
Methods inherited from class BOM | |
__add | Overrides binary addition operand. |
__call | Overrides call operator "self()". |
__dec | Overrides decrement unary prefix operand. |
__decpost | Overrides decrement unary postfix operand. |
__div | Overrides binary division operand. |
__getIndex | Overrides array access operator [] |
__inc | Overrides increment unary prefix operand. |
__incpost | Overrides increment unary postifx operand. |
__mod | Overrides modulo operand. |
__mul | Overrides binary multiplication operand. |
__pow | Overrides power operand. |
__setIndex | Overrides array write operator [] |
__sub | Overrides binary subtraction operand. |
baseClass | Returns the class item from which an object has been instantiated. |
bound | Determines if an item is bound or not. |
className | Returns the name of the class an instance is instantiated from. |
clone | Performs a deep copy of the item. |
compare | Performs a lexicographical comparison. |
derivedFrom | Checks if this item has a given parent. |
describe | Returns the deep contents of an item on a string representation. |
isCallable | Determines if an item is callable. |
len | Retrieves the length of a collection |
metaclass | Returns the metaclass associated with this item. |
ptr | Returns a raw memory pointer out of this data (as an integer). |
serialize | Serialize the item on a stream for persistent storage. |
toString | Coverts the object to string. |
typeId | Returns an integer indicating the type of this item. |
Applies the values in a dictionary to the corresponding properties.
Object.apply( dict )
dict | A "stamp" dictionary, or a sequence of named values. | ||
Return | This same object. | ||
Raise |
|
This method applies a "stamp" on this object. The idea is that of copying the contents of all the items in the dictionary into the properties of this object. Dictionaries are more flexible than objects, at times they are preferred for i.e. network operations and key/value databases. With this method, you can transfer data from a dictionary in an object with a single VM step, paying just the cost of the copy; in other words, sparing the VM operations needed for looping over the dictionary and searching dynamically the required properties.
Note: Non-string keys in dict are simply skipped.
See also: Object.
Returns a dictionary containing annotation attributes of the given object.
Object.attributes()
Return | Nil if the object has no attributes, or a string-indexed dictionary. |
If the object is a class instance, this method will return the attributes of the generator class.
See also: attributes.
Appends elements to this object through a filter.
Object.comp( source, [filter] )
source | One sequence, range or callable generating items. |
filter | A filtering function receiving one item at a time. |
Return | This object. |
This method extracts one item at a time from the source, and calls repeatedly the append method of this object.
Please, see the description of Sequence.comp.
See also: Sequence.
Returns the value of a property in an object.
Object.getProperty( propName )
propName | A string representing the name of a property or a method inside the object. | ||
Return | the property | ||
Raise |
|
An item representing the property is returned. The returned value is actually a copy of the property; assigning a new value to it won't have any effect on the original object.
If the property is a method, a callable method item is returned. If the property is not found, an error of class RangeError is raised.
Return the current state of an object.
Object.getState()
Return | A string representing the current state of an object, or nil if the object is stateless. |
This function returns the current state in which an object is operating.
Appends elements to this object through a filter.
Object.mcomp( ... )
... | One or more sequences, ranges or callables generating items. |
Return | This object. |
This method sends the data generated from multiple comprehension, to the append method of this object.
Please, see the description of Sequence.comp.
See also: Sequence.
Appends elements to this object through a filter.
Object.mfcomp( filter, ... )
filter | A filter function receiving each element before its insertion, or nil. |
... | One or more sequences, ranges or callables generating items. |
Return | This object. |
This method performs a filtered multiple comprehension and and calls repeatedly the append method of this object, passing the output of the filter function to it each time. If the filter function returns an oob(1), the step is skipped and the append method is not called.
Please, see the description of Sequence.comp.
See also: Sequence.
Returns all the properties in the object.
Object.properties()
Return | An array of strings representing property names. |
This method returns all the properties in this object.
The property list includes properties that refer to any kind of data, including functions (that is, methods), but it doesn't include properties in the metaclass of this item (FBOM properties).
The returned list is ordered by UNICODE value of the property names.
Note: Subclasses are seen as properties, so they will returned in the list too.
Gets the values stored in the properties of this object.
Object.retrieve( [dict] )
dict | A "stamp" dictionary. | ||
Return | A dictionary containing the contents of each property (stored as a key in the dictionary). | ||
Raise |
|
This method takes all the data values stored in the properties of this object (ignoring methods), and places them in a dictionary. Property names are used as keys under which to store flat copies of the property values.
If a dict parameter is passed, this method will take only the properties stored as keys, and eventually raise an AccessError if some of them are not found.
Otherwise, a new dictionary will be filled with all the properties in this object.
Note: In case of repeated activity, the same dictionary can be used to fetch new values to spare memory and CPU.
See also: Object.
Sets the value of a proprety in this object
Object.setProperty( propName, value )
propName | A string representing the name of a property or a method inside the object. | ||
value | The property new value. | ||
Raise |
|
Alters the value of the property in the given object. If the required property is not present, an AccessError is raised.
Change the current active state of an object.
Object.setState( nstate )
nstate | The new state into which the object is moved. | ||
Return | Return value of the leave -> enter sequence, if any, or nil | ||
Raise |
|
This method changes the state of the object, applying a new set of function described in the state section.