Constant | Return value |
---|---|
CLASS_DESCR_ALL *) | All available information in one array |
CLASS_DESCR_CLASSNAME | Class name as character string |
CLASS_DESCR_SUPERCLASSES | One-dimensional array holding the class objects of all superclasses |
CLASS_DESCR_MEMBERS | 3-column array holding information about member variables |
CLASS_DESCR_METHODS | 5-column array holding information about methods |
CLASS_DESCR_SUPERDETAILS | 3-column array holding details about superclasses |
|
Method Abstract():classDescribe() Foundation
Reflects the class definition
:classDescribe( [<nInfo>] ) --> aReturn
If <nInfo> is omitted or set to CLASS_DESCR_ALL, an array with four elements is returned. They contain the information resulting from passing one of the following constants to this method:
The elements of this array reflect the parameter profile of the function ClassCreate().
CLASS_DESCR_CLASSNAME
The class name as character string.
CLASS_DESCR_SUPERCLASSES
One-dimensional array containing the class objects of the superclasses.
CLASS_DESCR_MEMBERS
Two-dimensional array with three columns. It holds information about member variables of the class. Each column can be accessed using the following #define constants:
Constant | Description |
---|---|
CLASS_MEMBER_NAME | Character string representing the name of a single member variable |
CLASS_MEMBER_ATTR | Member variable attributes as numeric |
CLASS_MEMBER_TYPE | Reserved |
CLASS_DESCR_METHODS
Two-dimensional array with five columns. It holds information about methods of the class. Each column can be accessed using the following define constants:
Constant | Description |
---|---|
CLASS_METHOD_NAME | Character string with the name of the method |
CLASS_METHOD_ATTR | Method attributes as numeric |
CLASS_METHOD_BLOCK | Method code block, if the method was dynamically created with ClassCreate() |
CLASS_METHOD_VARNAME | The name of the redirected variable if it is an ACCESS|ASSIGN method |
CLASS_METHOD_TYPE | Reserved |
CLASS_DESCR_SUPERDETAILS
Two-dimensional array with three columns. It holds detailed information about the superclasses of the class. Note that this array is not included in the CLASS_DESCR_ALL array. It is only returned when CLASS_DESCR_SUPERDETAILS is passed to :classDescribe().
Constant | Description |
---|---|
CLASS_SUPERCLASS_NAME | Character string representing the name of the superclass |
CLASS_SUPERCLASS_ATTR | Class attributes |
CLASS_SUPERCLASS_TYPE | Reserved |
The generic method :classDescribe() is used to inspect the structure of a class and its superclasses at runtime. Individual information about member variables, methods or superclasses can be obtained by passing the corresponding #define constants to this method. If :classDescribe()is called without a parameter, the returned array reflects the parameter profile of the ClassCreate() function. This allows for easy creation or modification of the structure of dynamic classes.
If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.