Specification of an Architecture Meta-Model - SPES 2020
Specification of an Architecture Meta-Model - SPES 2020
Specification of an Architecture Meta-Model - SPES 2020
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2.1.5.2 DataType {abstract}<br />
<strong>Specification</strong> <strong>of</strong> <strong>an</strong> <strong>Architecture</strong> <strong>Meta</strong>-<strong>Model</strong><br />
Type<br />
DataType ExtensionType<br />
Figure 2.7: Types.<br />
A data type denotes a set <strong>of</strong> data values. DataType is <strong>an</strong> abstract meta-class <strong>an</strong>d has<br />
four subclasses: Array, Record, PrimitiveType, <strong>an</strong>d Enumeration. See Section 2.5 for<br />
details on data types.<br />
Generalizations: Type<br />
Operations<br />
• isBoole<strong>an</strong>(): Boole<strong>an</strong> Overridden in subclasses.<br />
context PrimitiveType::isBoole<strong>an</strong>(): Boole<strong>an</strong><br />
post: result = (self .kind = PrimitiveTypeKind::boole<strong>an</strong>)<br />
• isReal(): Boole<strong>an</strong> Overridden in subclasses. Specified as for isBoole<strong>an</strong>()<br />
above.<br />
• isInteger(): Boole<strong>an</strong> Overridden in subclasses. Specified as for isBoole<strong>an</strong>()<br />
above.<br />
• isString(): Boole<strong>an</strong> Overridden in subclasses. Specified as for isBoole<strong>an</strong>()<br />
above.<br />
• isVoid(): Boole<strong>an</strong> Overridden in subclasses. Specified as for isBoole<strong>an</strong>()<br />
above.<br />
• isNumber(): Boole<strong>an</strong> Returns true if the type in question is intended to be<br />
used with arithmetic operators.<br />
context DataType::isNumber(): Boole<strong>an</strong><br />
post: result = (self .isInteger() or self .isReal())<br />
• conformsTo(DataType): Boole<strong>an</strong> Specifies whether the types denoted by self<br />
<strong>an</strong>d other are compatible.<br />
18/135