Update doc/efun/ aus Driversourcen.
Manpages der efuns aktualisiert, neue Manpages hinzugefuegt.
Change-Id: I7cc91684269ff56d1aef47d5c5e7c87f7fd531dc
diff --git a/doc/efun/first_inventory b/doc/efun/first_inventory
index d571d8c..612b3c8 100644
--- a/doc/efun/first_inventory
+++ b/doc/efun/first_inventory
@@ -3,45 +3,42 @@
object first_inventory(string ob)
object first_inventory(object ob)
-BESCHREIBUNG
- Liefert das erste Objekt im Inventory von <obj>, wobei <obj> entweder
- ein Objekt oder der Name eines Objekts ist. Wenn <obj> nicht angegeben
- wird, wird standardmaessig this_object() verwendet.
+DESCRIPTION
+ Get the first object in the inventory of ob, where ob is
+ either an object or the file name of an object. If ob is not
+ given, the current object is assumed.
-BEISPIELE
- Diese Efun verwendet man am haeufigsten im folgenden Kontext:
+EXAMPLES
+ This efun is mostly used in the following context:
- for(obj=first_inventory(container);obj;obj=next_inventory(obj))
- {
- <irgendwelcher Code>
- }
+ for(ob=first_inventory(container);ob;ob=next_inventory(ob)) {
+ <some actions>
+ }
- Wer solche Aufrufe haeufig verwendet, findet es moeglicherweise
- sinnvoll, ein Praeprozessor-Makro zu verwenden:
+ If you use such calls frequently then it would be very useful
+ to use a preprocessor macro:
- #define FORALL(x, y) for(x=first_inventory(y);x;
- x=next_inventory(x))
+ #define FORALL(x, y) for(x=first_inventory(y);x;x=next_inventory(x))
- Damit vereinfacht sich das obige Beispiel zu:
+ So the above example could be written like this:
- FORALL(obj, container)
- {
- <irgendwelcher Code>
- }
+ FORALL(ob, container) {
+ <some actions>
+ }
- ACHTUNG: Wenn das Objekt <obj> innerhalb von <irgendwelcher Code>
- bewegt wird, liefert next_inventory() ein Objekt aus dem neuen
- Inventory von <obj>. Auch sollte next_inventory() nicht fuer
- zerstoerte Objekte <obj> aufgerufen werden. Fuer den Fall, dass
- <obj> bewegt und/oder zerstoert wird, ist folgende Loesung
- vorzuziehen:
+ Warning: If the object ob is moved inside <some actions>, then
+ next_inventory() will return an object from the new inventory
+ of ob. You also shouldn't call next_inventory() on destructed
+ objects. So in case of move and/or destruction the following
+ is a better solution:
- for(obj=first_inventory(container);obj;)
- {
- next=next_inventory(obj);
- <irgendwelcher Code mit Moves oder Removes>
- obj=next;
- }
+ for(ob=first_inventory(container);ob;) {
+ next=next_inventory(ob);
+ <some actions and moves and/or removes>
+ ob=next;
+ }
-SIEHE AUCH
- next_inventory(E), all_inventory(E), environment(E), deep_inventory(E)
+
+SEE ALSO
+ next_inventory(E), all_inventory(E), environment(E),
+ deep_inventory(E)