Difference between revisions of "XCSG:Type"
From AtlasWiki
Line 2: | Line 2: | ||
Their [[sourceCorrespondence]] indicates where the type is defined. | Their [[sourceCorrespondence]] indicates where the type is defined. | ||
+ | |||
+ | A Type may be [[Contains|contained]] in a [[Namespace]], such as a [[Package]] or [[Class]]; if so, will be tagged to indicate its [[Visibility]] in that namespace. Primitive types are not tagged with a visibility. | ||
==Specification== | ==Specification== | ||
Line 7: | Line 9: | ||
| extends = Node | | extends = Node | ||
| description = A data type, which can be the [[TypeOf]] a [[Variable]]. | | description = A data type, which can be the [[TypeOf]] a [[Variable]]. | ||
+ | }} | ||
+ | |||
+ | {{Enumeration | ||
+ | | name = Visibility | ||
+ | | description = The visibility of the Type in its [[Namespace]]. | ||
+ | | required = For nodes [[Contains|contained]] in a [[Namespace]]. | ||
+ | | members = private,,;;public,,;;package,,;;protected,, | ||
}} | }} |
Revision as of 18:39, 11 April 2014
Type nodes represent the a data type, which can be the TypeOf a Variable, such as a Primitive, Class, StructuredType, Interface, Pointer, etc.
Their sourceCorrespondence indicates where the type is defined.
A Type may be contained in a Namespace, such as a Package or Class; if so, will be tagged to indicate its Visibility in that namespace. Primitive types are not tagged with a visibility.
Specification
Metaclass | Type |
---|---|
Extends | Node |
Description | A data type, which can be the TypeOf a Variable. |
Direct Subkinds | ArrayType, Classifier, Enumeration, FunctionType, Java:NullType, Pointer, Primitive, C:Union, Void |
---|
All Superkinds | Node, ModelElement |
---|
Specified In Edges | |||
---|---|---|---|
In Edge | Predecessor | Multiplicity | Description |
AliasedType | TypeAlias | ✱ | Connects a TypeAlias to the Type or TypeAlias it was declared to duplicate. |
ArrayElementType | ArrayType | 0..1 | Connects an ArrayType to the Type of elements contained by arrays of that type. |
C:CompletedBy | OpaqueType | 1 | Connects an OpaqueType to the complete definition of the corresponding Type. |
ReferencedType | Pointer | ✱ | Connects a Pointer to the Type of the data pointed to. |
Returns | Function | ✱ | Connects a Function to the Type of its return value (which may be Void). |
TypeOf | Variable | ✱ | Links a Variable or DataFlow node to its Type |
DataFlow (Node) | ✱ |
Specified Out Edges | |||
---|---|---|---|
Out Edge | Successor | Multiplicity | Description |
TypeChecked | InstanceOf | ✱ | Connects a Type (usually a Classifier) to an InstanceOf test. |
Known Possible In Edges
| ||||
---|---|---|---|---|
Inherited From | In Edge | Predecessor | Multiplicity | Description |
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 |
Node | Contains | Node | ✱ | Indicates that the predecessor contains the successor in a sense specified by the specific type of Contains edge. |
Enumeration | Visibility |
---|---|
Description | The visibility of the Type in its Namespace. |
Visibility | Description |
---|---|
private | |
public | |
package | |
protected |
Used on: Type, Variable