Add new types to metamodel: RLong and ArrayType
As per discussion in our meeting on March 12th, we decided to add RLong (due to Java imports) and array types to the metamodel.
RLong
can just be added like RDouble and othersArrayType
needs to be a sub-class ofPrimitiveType
with the following additional properties- reference to
ObjectType
denoting the type of the array - attribute size for the size of the array.
- reference to
Comments (11)
-
reporter -
reporter References issue
#94: Added RLong primitive type and defined getName and getInstanceClassName operations using OCL.→ <<cset 44df490b5689>>
-
reporter References issue
#94: Updated getText for RLongItemProvider to use the super getText.→ <<cset 6a482510d874>>
-
reporter References issue
#94: Added RArray as per instructions and defined getName and getInstanceClassName.getName is defined by the name of the referenced type and the size of the array (e.g., int[42]). If the size is not defined (default is -1) then no size is displayed.
Multi-dimensional arrays are nested RArray instances. E.g., int[][] is an RArray with type int, and an RArray with type of RArray.
→ <<cset a541cd655742>>
-
reporter References issue
#94: RArray type creation as default type suppressed.→ <<cset 6d2c8d751599>>
-
reporter - changed status to resolved
Resolved. However, arrays cannot be created in the GUI yet.
-
reporter -
assigned issue to
-
assigned issue to
-
reporter - changed status to open
RLong has the wrong name in OCL ("float").
-
reporter - changed status to resolved
Resolved issue
#94again: Name of long corrected.→ <<cset 86dd1f618466>>
-
reporter References issue
#94: Fixed generation of core reference for OCL. We need to use the namespace URI instead of the CORE.ecore URI. Otherwise when loading a model in TouchRAM it cannot find the ecore file.Unfortunately, this will be overwritten by the next code generation.
→ <<cset e87457749760>>
-
reporter References
#94: Fixes the OCL expression to retrieve the name of an array. In case of multi-dimensional arrays the order of the dimensions was wrong (e.g., int[1][2] entered by the user would appear as int[2][1]).→ <<cset a23d1ca8abe9>>
- Log in to comment
References issue
#74and issue#94: Made PrimitiveType inherit from ObjectType instead of directly from Type. This makes more sense, because through inheriting from ImplementationClass it is also an ObjectType. When referring to an ObjectType, every proper type (primitive plus classes) is included.→ <<cset a2a50c2e8667>>