blob: 8c603d2e8bb637246652829e13660ff3654e0ec2 [file] [log] [blame]
Zesstra18626972017-01-31 10:38:27 +01001SetProp()
2=========
3
4FUNKTION
5--------
6::
7
Zesstraffcd0fe2021-09-08 23:33:17 +02008 public mixed SetProp(string name, mixed Value,
9 int drop_priv = extern_call());
Zesstra18626972017-01-31 10:38:27 +010010
11DEFINIERT IN
12------------
13::
14
15 /std/thing/properties.c
16 /sys/thing/properties.h (Prototyp)
17
18ARGUMENTE
19---------
20::
21
22 name - Property, deren Wert veraendert werden soll.
23 Value - Wert, auf den der Inhalt der Property gesetzt werden soll
Zesstraffcd0fe2021-09-08 23:33:17 +020024 drop_priv - Interne Verwendung, wenn Aufrufer Privilegien abgibt,
25 z.B. objekt-interner Aufruf extern zaehlen soll.
Zesstra18626972017-01-31 10:38:27 +010026
27BESCHREIBUNG
28------------
29::
30
31 Der Datenwert der Property 'name' wird auf den Wert 'Value' gesetzt.
32
33 Existiert eine F_SET_METHOD oder eine _set_'name'()-Methode fuer
34 diese Property, so wird diese aufgerufen und ihr 'Value' uebergeben.
35 Eine F_SET_METHOD hat dabei Vorrang vor _set_'name'(), d.h.
36 _set_'name'() wird nach erfolgreicher F_QUERY_METHOD nicht mehr
37 gerufen.
38
39 (Diese Methoden nutzen dann Set(), um den Datenwert der Property
40 'name' zu aendern. Teilweise werden aber auch interne Variablen so
41 oeffentlich gemacht und sind nicht in der ueber Set/Query verfuegbaren
42 Property 'name' abgelegt.)
43
44RUeCKGABEWERT
45-------------
46::
47
48 Der Wert, der nun in der Property gespeichert ist.
49 In der Regel ist das 'Value'. Wenn die Property ueber eine SET_METHOD
50 oder eine _set_'name'()-Funktion verfuegt und diese 'Value' aendert
51 (zum Beispiel, indem sie 'Value' an einen bestimmten erlaubten
52 Wertebereich anpasst), kann der Rueckgabewert jedoch auch veraendert
53 sein.
54
55 Wenn die Property nicht veraendert werden darf, wird -1 zurueckgegeben.
56
57BEISPIELE
58---------
59::
60
61 // geben wir dem Zwerg eine Kurzbeschreibung
62 SetProp(P_SHORT, "Ein kleiner Zwerg");
63
64SIEHE AUCH
65----------
66::
67
68 Aehnliches: QueryProp(L), Set(L), Query(L)
69 Generell: SetProperties(L), QueryProperties(L)
70 Konzept: properties, /std/thing/properties.c
71
7215.Dez 2004 Gloinson
73