blob: 2845648d1517222825370c22ab1a0aca89acb9a7 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001GESCHUETZT
2SYNOPSIS
Zesstrad59c3892019-11-28 20:53:39 +01003 #include <functionlist.h>
4 #include <lpctypes.h>
MG Mud User88f12472016-06-24 23:31:02 +02005
Zesstra5481d492021-04-08 20:07:06 +02006 mixed * functionlist(object|lwobject|string ob, int flags)
MG Mud User88f12472016-06-24 23:31:02 +02007
8BESCHREIBUNG
9 Liefert ein Array mit Informationen zu den Lfuns von <ob>. Fuer jede
10 Funktion werden 1 bis 4 Werte (abhaengig von <flags>) in das Ergebnis
11 eingetragen, und zwar in folgender Reihenfolge:
12 - der Name der Funktion
13 - die Flags der Funktion (vergleiche weiter unten)
Zesstrad59c3892019-11-28 20:53:39 +010014 - den Rueckgabetyp (aufgelistet in <lpctypes.h>)
MG Mud User88f12472016-06-24 23:31:02 +020015 - die Anzahl Argumente, die die Funktion akzeptiert.
16
Zesstra5481d492021-04-08 20:07:06 +020017 <ob> kann als normales oder leichtgewichtiges Objekt oder als
18 Objektname uebergeben werden. Im zweiten Fall versucht die Efun
19 nicht, das Objekt vorher zu laden.
MG Mud User88f12472016-06-24 23:31:02 +020020
21 <flags> bestimmt sowohl, welche Informationen im Ergebnis gesammelt
22 werden, als auch, fuer welche Funktionen die Pruefung durchgefuehrt
23 wird. Der Wert von <flags> wird durch binaere Veroderung folgender
Zesstrad59c3892019-11-28 20:53:39 +010024 Konstanten aus <functionlist.h> festgelegt:
MG Mud User88f12472016-06-24 23:31:02 +020025
26 Festlegen der gesammelten Information:
27 RETURN_FUNCTION_NAME liefert den Funktionsnamen
Zesstrad59c3892019-11-28 20:53:39 +010028 RETURN_FUNCTION_FLAGS liefert die Flags der Funktion
MG Mud User88f12472016-06-24 23:31:02 +020029 RETURN_FUNCTION_TYPE liefert den Rueckgabetyp der Funktion
30 RETURN_FUNCTION_NUMARG liefert die Anzahl moeglicher
31 Argumente.
32
33 RETURN_FUNCTION_ARGTYPE ist definiert, aber nicht
34 implementiert.
35
36 Festlegen der geprueften Funktionen:
37 NAME_INHERITED geerbte Funktionen nicht beachten
38 TYPE_MOD_STATIC static deklarierte Funktion nicht beachten
39 TYPE_MOD_PRIVATE private deklarierte Funktionen nicht beachten
40 TYPE_MOD_PROTECTED protected deklarierte Funktionen nicht
41 beachten
42 NAME_HIDDEN nur beachten, wenn sichtbar durch Vererbung
43
44 <flags> besteht aus der binaeren Veroderung der oben genannten Flags,
45 zusammen mit den folgenden:
46 TYPE_MOD_VARARGS die Funktion ist varargs deklariert
47 NAME_UNDEFINED die Funktion ist noch nicht definiert, aber
48 referenziert
49 NAME_CROSS_DEFINED die Funktion ist definiert, um in einem
50 anderen Programm verwendet zu werden
51 TYPE_MOD_NOMASK die Funktion ist nomask deklariert
52 TYPE_MOD_PUBLIC die Funktion ist public deklariert
53
54SIEHE AUCH
55 inherit_list(E), function_exists(E), variable_list(E),
56 call_resolved(E)