Update doc/efun/ aus Driversourcen.
Manpages der efuns aktualisiert, neue Manpages hinzugefuegt.
Change-Id: I7cc91684269ff56d1aef47d5c5e7c87f7fd531dc
diff --git a/doc/efun/limited b/doc/efun/limited
index 1155af1..69ce32a 100644
--- a/doc/efun/limited
+++ b/doc/efun/limited
@@ -1,4 +1,3 @@
-VORLAEUFIG, GESCHUETZT
SYNOPSIS
#include <rtlimits.h>
@@ -7,50 +6,49 @@
mixed limited(closure fun, int *limits)
mixed limited(closure fun, int *limits, mixed *args)
-BESCHREIBUNG
- limited() ruft die Funktion <fun> mit den bezeichneten Argumenten
- <args> auf und fuehrt sie mit den gegebenen Laufzeitlimitierungen aus.
+DESCRIPTION
+ Call the function <fun> with any given <args> as parameters,
+ and execute it with the given runtime limits.
- Beim Ende der Funktion <fun> werden die momentan aktiven
- Laufzeitlimitierungen wiederhergestellt. limited() liefert den
- Rueckgabewert der Closure <fun> zurueck.
+ After the function exits, the currently active limits are restored.
+ Result of the efun is the result of the closure call.
- Die Laufzeitlimitierungen koennen in zwei Formen angegeben werden:
- * als Array (wie es von query_limits() geliefert wird) oder
- * als Liste von Werten mit Tags.
- Wird limited() ohne Angabe von Limits aufgerufen, gelten die
- Laufzeitlimiten als 'unlimitiert'.
+ The runtime limits can be given in two ways: as an array (like the
+ one returned from query_limits(), or as a list of tagged values. If
+ the efun is used without any limit specification, all limits are
+ supposed to be 'unlimited'.
- Die Limitierung kennt drei spezielle Werte aus <rtlimits.h>:
- LIMIT_UNLIMITED: es gibt kein Limit
- LIMIT_KEEP: das zuletzt gesetzte Limit wird beibehalten
- LIMIT_DEFAULT: die 'globalen' Limitierungen werden verwendet
+ The limit settings recognize three special values:
+ LIMIT_UNLIMITED: the limit is deactivated
+ LIMIT_KEEP: the former setting is kept
+ LIMIT_DEFAULT: the 'global' default setting is used.
- Fuer LIMIT_COST haben folgende Spezialwerte eine Bedeutung:
- LIMIT_UNLIMITED: die Ausfuehrung kosten lediglich einen Tick
- LIMIT_KEEP: LIMIT_COST wird auf 0 gesetzt
- LIMIT_DEFAULT: LIMIT_COST wird auf -100 gesetzt
+ For LIMIT_COST, the special values have these meaning:
+ LIMIT_UNLIMITED: at maximum 1 tick is accounted
+ LIMIT_KEEP: LIMIT_COST is set to 0
+ LIMIT_DEFAULT: LIMIT_COST is set to -100
- limited() erzeugt eine Schutzverletzung ("limited", current_object,
+ The efun causes a privilege violation ("limited", current_object,
fun, limits-array).
-BEISPIELE
+EXAMPLES
limited(#'function)
- --> fuehrt die Funktion ohne Limits aus.
+ --> executes function with no limits at all
limited(#'function, ({ 200000 }), "foo")
- --> fuehrt die Funktion mit einem Eval-Kosten-Limit von 200000 Ticks
- aus. Die Funktion wird als 'function("foo")' aufgerufen.
+ --> executes function with an eval_cost limit of 200000, and
+ calls function as <function>("foo").
limited(lambda(0, ({#'function, "foo"})), LIMIT_EVAL, 200000)
- --> fuehrt die Funktion mit einem Eval-Kosten-Limit von 200000 Ticks
- aus. Die Funktion wird als 'function("foo")' aufgerufen.
+ --> executes function with an eval_cost limit of 200000, and
+ calls function as <function>("foo").
-GESCHICHTE
- Eingefuehrt in LDMud 3.2.7.
- LDMud 3.3.563 fuehrte LIMIT_COST ein.
- LDMud 3.5.0 fuehrte LIMIT_MEMORY ein.
+HISTORY
+ Introduced in LDMud 3.2.7.
+ LDMud 3.3.563 introduced LIMIT_COST.
+ LDMud 3.3.677 introduced LIMIT_MAPPING_KEYS, LIMIT_MAPPING_SIZE.
+ LDMud 3.5.0 introduced LIMIT_MEMORY.
-SIEHE AUCH
+SEE ALSO
query_limits(E), set_limits(E)