Automatisch erzeugte Manpages.
Damit nicht jeder sphinx auf dem Rechner haben muss,
behalten wir bis auf weiteres die aus den .rst
erzeugten Manpoages auch im Repo.
Change-Id: Id556c0d11cf5f79659d8350952ce1c014d81ea44
diff --git a/doc/sphinx/man/lfun/Query b/doc/sphinx/man/lfun/Query
new file mode 100644
index 0000000..27c2d9e
--- /dev/null
+++ b/doc/sphinx/man/lfun/Query
@@ -0,0 +1,108 @@
+
+Query()
+*******
+
+
+FUNKTION
+========
+
+ public varargs mixed Query(string name, int Type);
+
+
+DEFINIERT IN
+============
+
+ /std/thing/properties.c
+
+
+ARGUMENTE
+=========
+
+ string name - Property, deren Wert(e) ausgelesen werden
+ int type - Art der gewuenschten Information.
+
+
+BESCHREIBUNG
+============
+
+ Der Wert einer der inneren Eigenschaften der Property 'name' wird
+ zurueckgegeben. 'Type' ist dabei einer der in /sys/thing/properties.h
+ und folgend aufgelisteten F_XXX-Werte:
+
+ F_VALUE (==0, Default)
+ Unter Umgehung einer eventuell vorhandenen Abfragemethode oder
+ _query_'name'() wird der Datenwert der Property 'name'
+ zurueckgegeben.
+ F_MODE
+ Die internen Flags der Property werden zurueckgegeben.Dies koennen
+ (logisch mit & verknuepft) sein:
+ SAVE - Property soll bei save_object() gespeichert werden
+ PROTECTED - Objekt selbst/EM/Root kann Property manipulieren
+ SECURED - wie PROTECTED, das Flag kann aber nicht
+ zurueckgesetzt werden (immer SECURED)
+ NOSETMETHOD - niemand kann Property manipulieren
+ (auch kein F_SET_METHOD oder _set_'name'())
+ F_SET_METHOD
+ Ein eventuell fuer die Property eingetragene F_SET_METHOD wird
+ zurueckgegeben.
+ (_set_'name'()-Methoden werden so nicht aufgefuehrt!)
+ F_QUERY_METHOD
+ Ein eventuell fuer die Property eingetragene F_QUERY_METHOD wird
+ zurueckgegeben.
+ (_query_'name'()-Methoden werden so nicht aufgefuehrt!)
+
+
+RUeCKGABEWERT
+=============
+
+ Die gewuenschte Eigenschaft, abhaengig von 'Type'.
+
+
+BEMERKUNGEN
+===========
+
+ - Query() sollte nicht zum regulaeren Auslesen des Inhalt einer
+ Property verwendet werden, da sowohl F_QUERY_METHOD als auch
+ libinterne _query_'name'()-Methoden umgangen werden und das Ergebnis
+ fuer so veraenderte Propertys undefiniert ist
+ - _set_'name'() und _query_'name'() sind alte Propertymethoden und
+ sollten nicht in normalen Objekten benutzt werden ->
+ F_SET_METHOD/F_QUERY_METHOD (ggf. mit PROTECTED) nutzen
+ - F_SET/F_QUERY_METHODs koennen 'protected' (empfohlen) oder 'static'
+ sein. _set_/_query_ duerfen momentan _nicht_ 'protected' sein, fuer
+ diese geht nur 'static' (in diesem Fall empfohlen).
+
+
+BEISPIELE
+=========
+
+ // Auslesen des Wertes unter Umgehung einer Abfragemethode
+ Query(P_XYZ, F_VALUE);
+
+ // Auslesen der Flags erfaehrt man mit:
+ Query(P_XYZ, F_MODE);
+
+ // sauberes Programmieren, wir wollen eine F_QUERY_METHOD setzen,
+ // pruefen vorher auf Existenz:
+ if(this_player()->Query(P_FROG, F_QUERY_METHOD) {
+ write(break_string(
+ "Ich kann dich nicht weiter vor Froschsein schuetzen!",
+ "Der Magier winkt ab: ", 78));
+ say(break_string(
+ "Ich kann dich nicht weiter vor Froschsein schuetzen!",
+ "Der Magier sagt zu "+this_player()->name(WEM)+": ", 78));
+ } else {
+ this_player()->Set(P_FROG, #'query_protect_frog, F_QUERY_METHOD);
+ ...
+ }
+
+
+SIEHE AUCH
+==========
+
+ Aehnliches: SetProp(L), QueryProp(L), Set(L)
+ Generell: SetProperties(L), QueryProperties(L)
+ Konzept: properties, /std/thing/properties.c
+ Sonstiges: P_AUTOLOADOBJ
+
+28.03.2008, Zesstra