CCC metódushívás-továbbítás

Fórumok

Metódushívás-továbbítás beágyazott objektumnak.


class aa(object)
    method met_aa
    
class bb(object)    
    attrib aa                  //egy aa osztályú objektum
    method met_bb  :aa:met_aa  //hívás továbbítás (új!)
    
...

local b:=bbNew()
    b:aa:=aaNew()
    b:met_bb(x,y,z)  //u.a. mint b:aa:met_aa(x,y,z)

Korábban is lehetett metódushívást továbbítani beágyazott objektumnak, most viszont speciális támogatás van rá. Kevesebbet kell írni. Optimalizált kód keletkezik, nincs külön függvényhívási szint a stacken, nincs paraméter átpakkolgatás. És főképp, nem kell tudni, hogy mi a továbbított metódus paraméterezése, azaz mechanikusan is megcsinálható.