MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame^] | 1 | GESCHUETZT |
| 2 | SYNOPSIS |
| 3 | #include <sys/functionlist.h> |
| 4 | #include <sys/lpctypes.h> |
| 5 | |
| 6 | *mixed variable_list(object obj, int flags = RETURN_FUNCTION_NAME); |
| 7 | |
| 8 | BESCHREIBUNG |
| 9 | Liefert ein Array mit Informationen ueber die Variablen von <obj>. |
| 10 | Fuer jede Variable werden 1 bis 4 Werte in diesem Array gespeichert, |
| 11 | abhaengig von <flags>. Die Resultate werden in dieser Reihenfolge |
| 12 | im Array abgespeichert: |
| 13 | - der Name der Variablen |
| 14 | - die Flags der Variablen (siehe weiter unten) |
| 15 | - der Rueckgabetyp (gemaess mudlib/sys/lpctypes.h) |
| 16 | - der Wert der Variablen |
| 17 | |
| 18 | <obj> kann als Objekt oder als Dateinamen uebergeben werden. Im |
| 19 | zweiten Fall versucht variable_list() nicht, das Objekt vor der |
| 20 | Verarbeitung zu laden. |
| 21 | |
| 22 | Wenn <obj> nicht das aufrufende Objekt ist und der Wert der Variablen |
| 23 | abgefragt wird, erzeugt dies eine Schutzverletzung ("variable_list", |
| 24 | <obj>). |
| 25 | |
| 26 | Mit <flags> wird festgelegt, welche Informationen ueber welche |
| 27 | Variablen abgefragt werden. Folgende Flags aus <sys/functionlist.h> |
| 28 | koennen mit binaerem Oder kombiniert werden: |
| 29 | |
| 30 | Auswahl der gesammelten Information: |
| 31 | RETURN_FUNCTION_NAME liefert den Namen der Variablen |
| 32 | RETURN_FUNCTION_FLAGS liefert die Flags der Variablen (s. unten) |
| 33 | RETURN_FUNCTION_TYPE liefert den Rueckgabetyp |
| 34 | RETURN_VARIABLE_VALUE liefert den Wert der Variablen |
| 35 | |
| 36 | Auswahl der Variablen, die ausgewertet werden: |
| 37 | NAME_INHERITED schliesst geerbte Variablen aus |
| 38 | TYPE_MOD_STATIC schliesst "static" deklarierte Variablen aus |
| 39 | TYPE_MOD_NOSAVE schliesst "nosave" deklarierte Variablen aus |
| 40 | TYPE_MOD_PRIVATE schliesst "private" deklarierte Variablen aus |
| 41 | TYPE_MOD_PROTECTED schliesst "protected" deklarierte Variablen |
| 42 | aus |
| 43 | NAME_HIDDEN enthaelt Variablen, die geerbt wurden. |
| 44 | |
| 45 | Die Flags der Variablen koennen die Auswahl-Flags enthalten und |
| 46 | zusaeztlich folgende Werte: |
| 47 | TYPE_MOD_VIRTUAL die Variable wurde virtuell geerbt |
| 48 | TYPE_MOD_NO_MASGK die Variable ist "nomask" deklariert |
| 49 | TYPE_MOD_PUBLIC die Variable ist "public" deklariert |
| 50 | |
| 51 | All diese Flags sind in mudlib/sys/functionlist.h definiert und |
| 52 | sollten an einen allgemein zugaenglichen Platz kopiert werden. |
| 53 | Die Rueckgabewerte sind in mudlib/sys/lpctypes.h definiert, die |
| 54 | auch in die Mudlib kopiert werden sollten. |
| 55 | |
| 56 | AENDERUNGEN |
| 57 | Eingefuehrt in LDMud 3.2.10 |
| 58 | |
| 59 | SIEHE AUCH |
| 60 | inherit_list(E), functionlist(E), variable_exists(E) |