blob: 673b377d4bee58ef8ad77ca509c110d0aa02bb7f [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001GESCHUETZT
2SYNOPSIS
3 #include <sys/functionlist.h>
4 #include <sys/lpctypes.h>
5
6 *mixed variable_list(object obj, int flags = RETURN_FUNCTION_NAME);
7
8BESCHREIBUNG
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
56AENDERUNGEN
57 Eingefuehrt in LDMud 3.2.10
58
59SIEHE AUCH
60 inherit_list(E), functionlist(E), variable_exists(E)