XCSG:Instantiation

From AtlasWiki
Jump to: navigation, search

Represents the allocation of memory for an object instance.

The allocated memory will flow to an IdentityInput site associated with the StaticCallSite representing the Constructor call, as well as to any Assignment or use of the constructed object.

Specification

Metaclass Instantiation
Extends DataFlow (Node)
Description Represents the allocation of memory for an instance of a Classifier that requires invocation of a Constructor.
All Superkinds DataFlow (Node), Node, ModelElement
Specified In Edges

Inherited From In Edge Predecessor Multiplicity Description
DataFlow (Node) DataFlow (Edge) DataFlow (Node) Connects DataFlow nodes to one another and to Variables, linking the origin of data to locations that it is modified or consumed.
Variable
Specified Out Edges

Inherited From Out Edge Successor Multiplicity Description
DataFlow (Node) ArrayIdentityFor ArrayAccess 1 Connects a DataFlow (Node) containing an array reference or pointer to the ArrayAccess representing the associated ArrayRead or ArrayWrite.

ArrayIndexFor ArrayAccess 1 Connects a DataFlow (Node) containing a value used as an array index to the ArrayAccess representing the associated ArrayRead or ArrayWrite.
Java:ArrayLengthPassedTo ArrayInstantiation 1 Connects a DataFlow (Node) representing the integer length expression to an ArrayInstantiation.
DataFlow (Edge) DataFlow (Node) Connects DataFlow nodes to one another and to Variables, linking the origin of data to locations that it is modified or consumed.

Variable
DefinedAs TypeAlias 0..1 Connects a Variable or DataFlow node which received its Type via a TypeAlias (such as a C/C++ typedef) to that TypeAlias.
InstanceVariableWritten InstanceVariableAssignment Connects a value (DataFlow (Node) or Variable) representing an object instance to an InstanceVariableAssignment representing a write to a field of that object.
TypeOf Type 1 Links a Variable or DataFlow node to its Type
Known Possible In Edges

Inherited From In Edge Predecessor Multiplicity Description
DataFlow (Node) InterproceduralDataFlow Variable Represents data flows between Functions, or involving Variables visible to multiple Functions.

LocalDataFlow Parameter Within the scope of a particular Function, connects Parameters to DataFlow nodes, and DataFlow nodes to one another, indicating flow of information within that Function.

DataFlow (Node)
ProgramVariable
Node Contains Node 1 Indicates that the predecessor contains the successor in a sense specified by the specific type of Contains edge.
Known Possible Out Edges

Inherited From Out Edge Successor Multiplicity Description
DataFlow (Node) LocalDataFlow DataFlow (Node) Within the scope of a particular Function, connects Parameters to DataFlow nodes, and DataFlow nodes to one another, indicating flow of information within that Function.
Node Contains Node Indicates that the predecessor contains the successor in a sense specified by the specific type of Contains edge.
Attribute objectInstanceID
Description A unique identifier used to distinguish instances constructed by this Instantiation node from other instances of the same type.
Type Object
Required Yes