Dokumentation zu: symbol_function.de(E)

HR Image


SYNOPSIS
        closure symbol_function(symbol arg)
        closure symbol_function(string arg)
        closure symbol_function(string arg, object|string obj)

BESCHREIBUNG
        Erzeugt eine Lfun-, Efun- oder Operator-Closure aus <arg>, wobei
        <arg> entweder ein string oder ein symbol sein muss. Fuer
        Lfun-Closures gibt <obj> an, zu welchem Objekt die Lfun gehoert,
        entweder angegeben durch das Objekt selbst (bzw. einen pointer
        darauf) oder durch den Objektnamen als String. Wenn ein String
        angegeben wird, wird das Objekt beim Aufruf geladen.

        Wenn die Closure fuer eine Lfun in einem anderen als dem momentanen
        Objekt erzeugt wird, ergibt dies eine "alien lfun closure". Solche
        Closures sind an das Objekt gebunden, das symbol_function()
        aufgerufen hat (dieses Objekt wird von to_object() geliefert),
        obwohl der eigentliche Code in einem anderen Objekt steht (das mit
        get_type_info() gefunden werden kann).

        Als "private" deklarierte Funktionen koennen auf diese Weise nie
        aufgerufen werden, "static" und "protected" deklarierte Lfuns nur
        dann, wenn <obj> das gueltige Objekt ist.

BEISPIELE
        symbol_function("efun::users");
            --> ergibt: #'users
        symbol_function("QueryProp", other_obj);
            --> ergibt: other_obj->QueryProp()

GESCHICHTE
        Eingefuehrt in 3.2@70.

SIEHE AUCH
        lambda(E), quote(E)

Das Original der Seite ist in Englisch.

Start » Magierhandbuch » Docu » Efun.de » Symbol_function.de Letzte Generierung: 25.04.2021, 01:58
Email an: mud@wl.mud.de
Valid HTML 4.01!