MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 1 | SYNOPSIS |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 2 | #include <functionlist.h> |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 3 | |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 4 | mixed function_exists(string str) |
| 5 | mixed function_exists(string str, int flags) |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame^] | 6 | mixed function_exists(string str, object|lwobject ob) |
| 7 | mixed function_exists(string str, object|lwobject ob, int flags) |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 8 | |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 9 | BESCHREIBUNG |
| 10 | Sucht eine Funktion <str> im aktuellen Objekt bzw. im Objekt <ob>. Je |
| 11 | nach den angegeben <flags> werden folgende Informationen angezeigt: |
| 12 | |
| 13 | FEXISTS_PROGNAME (0, default): |
| 14 | Liefert den Namen des Programms, in dem die Funktion definiert ist. |
| 15 | Das kann entweder der Objektname object_name(ob) sein, oder der |
| 16 | Name eines geerbten Programms. Wenn der Driver nicht im Compat-Modus |
| 17 | laeuft, beginnt der Name immer mit einem '/'. |
| 18 | |
| 19 | FEXISTS_FILENAME (1): |
| 20 | Liefert den Namen der Datei, in der die Funktion definiert ist. Das |
| 21 | kann auch ein Inlcude-File sein. Wenn der Driver nicht im Compat- |
| 22 | Modus laeuft, beginnt der Name mit einem '/'. |
| 23 | |
| 24 | FEXISTS_LINENO (2): |
| 25 | Liefert die Zeilennummer im Quellcode, in der die Funktion definiert |
| 26 | wird. |
| 27 | |
| 28 | FEXISTS_ALL (3): |
| 29 | Liefert ein Array mit der gesamten Information der anderen Flags, |
| 30 | sowie zusaetzlichen Informationen ueber die Funktion: |
| 31 | |
| 32 | string [FEXISTS_PROGNAME]: der Programmname |
| 33 | string [FEXISTS_FILENAME]: der Dateiname |
| 34 | int [FEXISTS_LINENO]: die Zeilennummer |
| 35 | int [FEXISTS_NUMARG]: die Anzahl der Funktionsargumente |
| 36 | int [FEXISTS_TYPE]: der Ergebnistyp der Funktion |
| 37 | int [FEXISTS_FLAGS]: die Funktionsflags |
| 38 | |
| 39 | <flags> kann mit einem binaren Oder mit NAME_HIDDEN ergaenzt |
| 40 | werden, um Informationen ueber als static und protected deklarierte |
| 41 | Funktionen in anderen Objekten zu erhalten. Es ist nicht moeglich, |
| 42 | Informationen ueber als private deklarierte Funktionen zu erhalten. |
| 43 | |
| 44 | Wenn die gesuchte Funktion nicht gefunden werden kann (weil sie |
| 45 | nicht existiert oder fuer den Aufrufer nicht sichtbar ist), dann |
| 46 | wird als Rueckgabewert 0 geliefert. |
| 47 | |
| 48 | |
| 49 | BEISPIELE |
| 50 | function_exists("create"); |
| 51 | function_exists("create", that_object, NAME_HIDDEN|FEXISTS_ALL); |
| 52 | |
| 53 | GESCHICHTE |
| 54 | LDMud 3.2.10 erweiterte die Menge der zurueck gelieferten Werte und |
| 55 | fuehrte das <flags> Argument ein. |
| 56 | LDMud 3.2.12/3.3.713 fuegte die zusaetzliche Funktionsinformation zum |
| 57 | FEXISTS_ALL Ergebnis hinzu. |
| 58 | |
| 59 | SIEHE AUCH |
| 60 | call_other(E), call_resolved(E), functionlist(E), variable_exists(E) |