Abstract
Create a new component and register it with the given container.
The reactor that will contain the new component,
null
if this is an instance of App
, in which case the component
will be designated as its own container.
Note that each subclass implementation needs to call the method
_linkToRuntimeObject
immediately after calling this super
constructor in order to establish a link with the runtime object.
Protected
_keyA symbol that identifies this component, and it also used to selectively grant access to its privileged functions.
Static
pathProtected
_getConfirm whether or not this component is contained by the given reactor.
The presumptive container of this component.
Confirm whether or not this component is contained by the container of the given reactor.
The container presumptive container of the container of this component.
Report whether this component has been registered with its container or not. In principle, all components should have a container, but at the time of their construction there is a brief period where they are not. This is the only moment that a component is allowed register with its container.
Protected
_linkAbstract
_receiveStore a reference to the given runtime object as a private class member.
Static
keyStatic
keyGiven a component and its container (the global object if the component
is an App
), return the key of the entry that matches the component.
a component of which the object is assumed to be its container
the assumed container of the component
the key of the entry that matches the component
Static
key
Base class for named objects embedded in a hierarchy of reactors. Each component can only be owned by a single reactor instance. All members of this class are prefixed with an underscore to avoid name collisions with ports, actions, timers, or reactor instances that may be part of the interface of a
Reactor
, which extends this class.Author
Marten Lohstroh (marten@berkeley.edu)