create_super()

FUNKTION

protected void create_super();

DEFINIERT IN

allen Standardobjekten

ARGUMENTE

keine

BESCHREIBUNG

Diese Funktion wird immer dann aufgerufen, wenn ein Objekt implizit durch
ein 'inherit' in einem erbenden Objekte geladen wird.
Normalweise muss man dieses so geladene Objekte nicht konfigurieren, weil
nur das Programm dieses Objektes fuer die erbenden Objekte interessant
ist, nicht seine Daten.
Was hier aber z.B. sinnvoll ist, ist das Abschalten des Resets, denn ein
Objekt, was nur dazu dient, dass es von anderen geerbt wird, braucht
keinen Reset, auch wenn es ein reset() definiert (was in erbenden Objekte
benutzt wird).
Die create_super() in den Standardobjekten tun momentan genau dieses.

RUeCKGABEWERT

keiner

BEMERKUNGEN

Wenn ihr von /std/ erbt, braucht ihr euch in aller Regel um diese
Funktion keine Gedanken machen.
Ihr koennt diese Funktion aber in Objekten selber definieren, die nur zum
Erben gedacht sind. Dies kann sinnvoll ein, wenn ihr nicht von /std/ erbt
und ein reset() im Objekt habt oder was machen wollt, was ueber das
Abschalten des Resets hinausgeht.

BEISPIELE

Gegeben sei folgende Vererbungskette:
/std/room -> /d/inseln/zesstra/stdraum -> /d/inseln/zesstra/raum

Wird nun 'raum' geladen und 'stdraum' ist noch nicht geladen, wird der
Driver implizit von selbst 'stdraum' laden (weil 'raum' das Programm von
'stdraum' braucht). Bei diesem Laden wird das create() in 'stdraum' nicht
ausgefuehrt, sondern stattdessen create_super().

SIEHE AUCH

create(L), reset(L)
hook(C), create(H), create_ob(H), create_super(H, reset(H)
create(A), reset(A)

22.10.2007, Zesstra