Object class | systype.h[37], misc.t[1763], reflect.t[235]

The root object class. All objects descend from this class.

Modified in misc.t[1763]:
Add some methods to the base Object that make it *somewhat* interchangeable with lists and vectors. Certain operations that are normally specific to the collection types have obvious degenerations for the singleton case. In particular, a singleton can be thought of as a collection consisting of one value, so operations that iterate over a collection degenerate to one iteration on a singleton.

Modified in reflect.t[235]:
Modify the basic Object class to provide a to-symbol mapping

`intrinsic class Object :`

Superclass Tree (in declaration order)

`Object`

Subclass Tree

`Object`
`BigNumber`
`ByteArray`
`CharacterSet`
`Collection`
`List`
`LookupTable`
`WeakRefLookupTable`
`Vector`
`AnonFuncPtr`
`Date`
`Dictionary`
`File`
`FileName`
`GrammarProd`
`HTTPRequest`
`HTTPServer`
`IntrinsicClass`
`Iterator`
`IndexedIterator`
`LookupTableIterator`
`RexPattern`
`String`
`StringComparator`
`TadsObject`
`TemporaryFile`
`TimeZone`

Global Objects

(none)

Summary of Properties

``

(none)

Summary of Methods

`callInherited createIterator createLiveIterator forEach getPropList getPropParams getSuperclassList isClass isTransient mapAll ofKind propDefined propInherited propType valToSymbol`

Properties

(none)

Methods

`callInherited (cl, prop, [args])` | `misc.t[1800]`

Call an inherited method directly. This has the same effect that calling 'inherited cl.prop' would from within a method, but allows you to do this from an arbitrary point *outside* of the object's own code. I.e., you can say 'obj.callInherited(cl, &prop)' and get the effect that 'inherited c.prop' would have had from within an 'obj' method.

`createIterator ( )` | `misc.t[1777]`

create an iterator

`createLiveIterator ( )` | `misc.t[1787]`

create a live iterator (this allows 'foreach' to be used with an arbitrary object, iterating once over the loop with the object value)

`forEach (func)` | `misc.t[1771]`

forEach on an object simply calls the function on the object

`getPropList ( )` | `systype.h[60]`

Get a list of my directly-defined properties. When called on intrinsic class objects, this returns a list of properties defined for instances of the class, as well as static properties of the class.

`getPropParams (prop)` | `systype.h[70]`

get parameter list information for the given method - returns a list: [minimumArgc, optionalArgc, varargs], where minimumArgc is the minimum number of arguments, optionalArgc is the number of additional optional arguments, and varargs is true if the function takes a varying number of arguments greater than or equal to the minimum, nil if not.

`getSuperclassList ( )` | `systype.h[46]`

get the list of direct superclasses of this object

`isClass ( )` | `systype.h[76]`

determine if I'm a "class" object - returns true if the object was defined with the "class" keyword, nil otherwise

`isTransient ( )` | `systype.h[87]`

determine if this instance is transient

`mapAll (func)` | `misc.t[1765]`

mapAll for an object simply applies a function to the object

`ofKind (cls)` | `systype.h[43]`

Determine if I'm an instance or subclass of the given class 'cls'. Note that x.ofKind(x) returns true - an object is of its own kind.

`propDefined (prop, flags?)` | `systype.h[49]`

determine if a property is defined or inherited by this object

`propInherited (prop, origTargetObj, definingObj, flags?)` | `systype.h[84]`

Determine if a property is inherited further from the given object. definingObj is usually the value of the 'definingobj' pseudo-variable, and origTargetObj is usually the value of the 'targetobj' pseudo-variable.

`propType (prop)` | `systype.h[52]`

get the type of a property defined for this object

`valToSymbol ( )` | `reflect.t[236]`

no description available

Adv3Lite Library Reference Manual
Generated on 03/07/2024 from adv3Lite version 2.1