Extensions.DataType.Enumeration

From emotive
Revision as of 10:39, 8 November 2019 by Nb (talk | contribs) (Edited by Ngoc Tran.)
Jump to navigation Jump to search

Classification

Name Enumeration
Short Description User-defined enumeration
Class Simple Data Type
Base Data Type SimpleType
Default Value The first enumeration element
Provide a Literal Yes
SpecifiedBy ISO 13209-3
Standard Compliant Yes

Description

An Enumeration consists of a set of named constants called enumeration elements. Each enumeration element assigns a unique name to a unique IntergerLiteral, so that the name can be used as an EnumerationLiteral inside OTX instead of the integer value. The simple term of the enumerator value is its integer value. Thus, for relational terms, the integer values of the specific enumerator value are used.

Exclamation.png Important: If the OTX Core conversion term ToString is applied to an Enumeration term, the element name shall be returned.
Exclamation.png Important: If the OTX Core conversion term ToInteger is applied to an Enumeration term, the Integer value shall be returned.
Exclamation.png Important: An Enumeration value can be persisted, see OTX Persistence extension.

Literal

Enumeration values are named constants. Therefore the EnumerationLiteral term will return a reference to the value of the constant that has the name provided in the EnumerationLiteral's elementName field.

Core Conversion

The following table shows the rules for conversion to another data type:

Conversion Result Sample
ToBoolean Undefined (should not be used)
ToInteger Returns the integer value of the enumeration term Integer n = ToInteger(enumerationSignatureVariable); // Returns 12 (supposed the current enumeration element's value is 12)
ToFloat Undefined (should not be used)
ToString Returns the name of current enumeration element String s = ToString(enumerationSignatureVariable); // Returns "EnumerationElement1"
ToByteField Undefined (should not be used)

Checker Rules

DataType_Chk002
Core_Chk053