A ProxiedObj.T
is a Modula-3 object for which we want to have proxy,
an object that mirrors this object in some way. The prototypical use
is to connect Modula-3 objects to their counterparts in some embedded
interpreted language (e.g. Obliq).
INTERFACESubtypes ofProxiedObj ; TYPE T = OBJECT proxy : Proxy := NIL; METHODS makeProxy (); END;
ProxiedObj.T
for which objects will be created before the
embedded language has registered itself should override the makeProxy()
method. (In Anim3D, these are all subtypes of Prop.Name
.) The embedded
language is responsible for invoking makeProxy
on all objects with a
NIL proxy
field.
TYPE Proxy = OBJECT obj : REFANY; END; END ProxiedObj.