SYNOPSIS¶
mixed * |
variable_list | ( | object ob, | int flags | ) | ¶
DESCRIPTION¶
Return an array with information about ob's
variables. For every variable, 1 to 3 values (depending on flags
) are stored in the result array conveying in this order:
- the name of the variable
- the variable flags (see below)
- the return type (listed in <lpctypes.h>)
- the value of the variable
ob
may be given as true object or as a filename. In the latter case, the efun does not try to load the object before proceeding.
If ob
is not the current object and the value of the variable is requested, a privilege_violation (“variable_list”, <ob>) occurs.
flags
determines both which information is returned for every variable, and which variables should be considered at all. Its value is created by bin-or’ing together the following flags from <functionlist.h>:
Control of returned information:
RETURN_FUNCTION_NAME
include the variable nameRETURN_FUNCTION_FLAGS
include the variable flagsRETURN_FUNCTION_TYPE
include the return typeRETURN_VARIABLE_VALUE
include the variable valueControl of listed variables:
NAME_INHERITED
don’t list if defined by inheritanceTYPE_MOD_STATIC
==TYPE_MOD_NOSAVE
don’t list if nosave (‘static’) variableTYPE_MOD_PRIVATE
don’t list if privateTYPE_MOD_PROTECTED
don’t list if protectedNAME_HIDDEN
don’t list if not visible through inheritance
The ‘flags’ information consists of the bin-or of the list control flags given above, plus the following:
TYPE_MOD_VIRTUAL
variable is inherited virtuallyTYPE_MOD_NO_MASK
variable is nomaskTYPE_MOD_PUBLIC
variable is public
All these flags are defined in <functionlist.h>; the return types are defined in <lpctypes.h>.
HISTORY¶
- introduced (3.2.10)