| NAME |
| #include <functionlist.h> |
| #include <lpctypes.h> |
| |
| mixed * variable_list(object ob|lwobject, 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 following flags from |
| <functionlist.h>: |
| |
| Control of returned information: |
| RETURN_FUNCTION_NAME include the variable name |
| RETURN_FUNCTION_FLAGS include the variable flags |
| RETURN_FUNCTION_TYPE include the variable type as an integer |
| RETURN_FUNCTION_LPCTYPE include the variable type as an lpctype |
| RETURN_VARIABLE_VALUE include the variable value |
| |
| Control of listed variables: |
| NAME_INHERITED don't list if defined by inheritance |
| TYPE_MOD_STATIC == |
| TYPE_MOD_NOSAVE don't list if nosave ('static') variable |
| TYPE_MOD_PRIVATE don't list if private |
| TYPE_MOD_PROTECTED don't list if protected |
| NAME_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 virtually |
| TYPE_MOD_NO_MASK variable is nomask |
| TYPE_MOD_PUBLIC variable is public |
| |
| All these flags are defined in <functionlist.h>, the |
| return types are defined in <lpctypes.h>. |
| |
| HISTORY |
| Introduced in LDMud 3.2.10. |
| LDMud 3.6.7 introduced RETURN_FUNCTION_LPCTYPE. |
| |
| SEE ALSO |
| inherit_list(E), functionlist(E), variable_exists(E) |