[Top] [Prev] [Next] [Bottom]

CHAPTER 14 FIR_Expression
Derived Classes

This chapter specifies the predefined data associated with FIR_Expression and all predefined classes derived from FIR_Expression (as shown in Table 190 on page 251).
TABLE 190. Class derivation hierarchy from FIR_Expression

Level 3 Derived Classes
(only classes derived from FIR_Expression)

E

Level 4 Derived Classes

E

Level 5 Derived Classes

E

FIR_MonadicOperator

E

FIR_IdentityOperator

E

FIR_NegationOperator

E

FIR_AbsoluteOperator

E

FIR_NotOperator

E

FIR_DyadicOperator

E

FIR_AndOperator

E

FIR_OrOperator

E

FIR_NandOperator

E

FIR_NorOperator

E

FIR_XorOperator

E

FIR_XnorOperator

E

FIR_EqualityOperator

E

FIR_InequalityOperator

E

FIR_LessThanOperator

E

FIR_LessThanOrEqualOperator

E

FIR_GreaterThanOperator

E

FIR_GreaterThanOrEqualOperator

E

FIR_SLLOperator

E

FIR_SRLOperator

E

FIR_SLAOperator

E

FIR_SRAOperator

E

FIR_ROLOperator

E

FIR_ROROperator

E

FIR_AdditionOperator

E

FIR_SubtractionOperator

E

FIR_ConcatentationOperator

E

FIR_MultiplicationOperator

E

FIR_DivisionOperator

E

FIR_ModulusOperator

E

FIR_RemainderOperator

E

FIR_ExponentiationOperator

E

FIR_FunctionCall

E

FIR_PhysicalLiteral

E

FIR_Aggregate

E

FIR_OthersInitialization

E

FIR_QualifiedExpression

E

FIR_TypeConversion

E

FIR_Allocator

14.1 FIR_Expression

14.1.1 Derived Class Description

The predefined FIR_Expression class and its derivatives represent formulas for computing a value. They may appear in a wide variety of contexts including type definitions, the initial value of declarations, and as parameters within sequential or concurrent statements.

14.1.2 Properties
TABLE 191. FIR_Expression Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

None, not directly instantiated

Parent class

FIR

Predefined child classes

FIR_MonadicOperator
FIR_DyadicOperator
FIR_FunctionCall
FIR_PhysicalLiteral
FIR_Aggregate
FIR_OthersInitialization
FIR_QualifiedExpression
FIR_TypeConversion
FIR_Allocator

Application-specific data elements

Via extension classes associated with specific derived classes of the FIR_Expression class

14.1.3 Predefined Data Elements

struct FIR_Expression {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
};

14.2 FIR_MonadicOperator

14.2.1 Derived Class Description

The predefined FIR_MonadicOperator includes identity, negation, absolute value and not. Derivatives of this class represent both language predefined monadic operators and subprograms defining overloadings of these operators.

14.2.2 Properties
TABLE 192. FIR_MonadicOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

None: not directly instantiated

Parent class

FIR_Expression

Predefined child classes

FIR_IdentityOperator
FIR_NegationOperator
FIR_AbsoluteOperator
FIR_NotOperator

Application-specific data elements

Via extension classes associated with specific derived classes of the FIR_MonadicOperator class

14.2.3 Predefined Data Elements

struct FIR_MonadicOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		operand;
};

14.3 FIR_IdentityOperator

14.3.1 Derived Class Description

The predefined FIR_IdentityOperator class represents the identity operator and its overloadings.

14.3.2 Properties
TABLE 193. FIR_IdentityOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_IDENTITY_OPERATOR

Parent class

FIR_MonadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.3.3 Predefined Data Elements

struct FIR_IdentityOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		operand;
};

14.4 FIR_NegationOperator

14.4.1 Derived Class Description

The predefined FIR_NegationOperator class represents the negation operator and its overloadings.

14.4.2 Properties
TABLE 194. FIR_NegationOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_NEGATION_OPERATOR

Parent class

FIR_MonadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.4.3 Predefined Data Elements

struct FIR_NegationOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		operand;
};

14.5 FIR_AbsoluteOperator

14.5.1 Derived Class Description

The predefined FIR_AbsoluteOperator class represents the absolute operator and its overloadings.

14.5.2 Properties
TABLE 195. FIR_AbsoluteOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_ABSOLUTE_OPERATOR

Parent class

FIR_MonadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.5.3 Predefined Data Elements

struct FIR_AbsoluteOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		operand;
};

14.6 FIR_NotOperator

14.6.1 Derived Class Description

The predefined FIR_NotOperator class represents the logical NOT operator and its overloadings.

14.6.2 Properties
TABLE 196. FIR_NotOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_NOT_OPERATOR

Parent class

FIR_MonadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.6.3 Predefined Data Elements

struct FIR_MonadicOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		operand;
};

14.7 FIR_DyadicOperator

14.7.1 Derived Class Description

The predefined FIR_DyadicOperator classes include logical, relational, shift, adding, multiplying and miscellaneous operators. Derivatives of this class represent both language predefined dyadic operators and subprograms defining overloadings of these operators.

14.7.2 Properties
TABLE 197. FIR_DyadicOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

None: not directly instantiated

Parent class

FIR_Expression

Predefined child classes

FIR_AndOperator
FIR_OrOperator
FIR_NandOperator
FIR_NorOperator
FIR_XorOperator
FIR_XnorOperator
FIR_EqualityOperator
FIR_InequalityOperator
FIR_LessThanOperator
FIR_LessThanOrEqualOperator
FIR_GreaterThanOperator
FIR_GreaterThanOrEqualOperator
FIR_SLLOperator
FIR_SRLOperator
FIR_SLAOperator
FIR_SRAOperator
FIR_ROLOperator
FIR_ROROperator
FIR_AdditionOperator
FIR_SubtractionOperator
FIR_ConcatentationOperator
FIR_MultiplicationOperator
FIR_DivisionOperator
FIR_ModulusOperator
FIR_RemainderOperator
FIR_ExponentiationOperator

Instantiation?

Indirectly via any of the derived classes of FIR_DyadicOperator

Application-specific data elements

Via extension classes associated with specific derived classes of the FIR_DyadicOperator class

14.7.3 Predefined Data Elements

struct FIR_DyadicOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.8 FIR_AndOperator

14.8.1 Derived Class Description

The predefined FIR_AndOperator class represents the logical AND operator and its overloadings.

14.8.2 Properties
TABLE 198. FIR_AndOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_AND_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.8.3 Predefined Data Elements

struct FIR_AndOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.9 FIR_OrOperator

14.9.1 Derived Class Description

The predefined FIR_OrOperator class represents the logical OR operator and its overloadings.

14.9.2 Properties
TABLE 199. FIR_OrOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_OR_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.9.3 Predefined Data Elements

struct FIR_OrOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.10 FIR_NandOperator

14.10.1 Derived Class Description

The predefined FIR_NandOperator class represents the logical NAND operator and its overloadings.

14.10.2 Properties
TABLE 200. FIR_NandOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_NAND_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.10.3 Predefined Data Elements

struct FIR_NandOperator  {
	IR_Kind		kind;
	FIR_Source 		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.11 FIR_NorOperator

14.11.1 Derived Class Description

The predefined FIR_NorOperator class represents the logical NOR operator and its overloadings.

14.11.2 Properties
TABLE 201. FIR_NorOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_NOR_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.11.3 Predefined Data Elements

struct FIR_NorOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.12 FIR_XorOperator

14.12.1 Derived Class Description

The predefined FIR_XorOperator class represents the logical XOR operator and its overloadings.

14.12.2 Properties
TABLE 202. FIR_XorOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_XOR_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.12.3 Predefined Data Elements

struct FIR_XorOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.13 FIR_XnorOperator

14.13.1 Derived Class Description

The predefined FIR_XnorOperator class represents the logical XNOR operator and its overloadings.

14.13.2 Properties
TABLE 203. FIR_XnorOperator Properties

IR_Kind enumeration value

IR_XNOR_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.13.3 Predefined Data Elements

struct FIR_XnorOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.14 FIR_EqualityOperator

14.14.1 Derived Class Description

The predefined FIR_EqualityOperator class represents the relational equality operator and its overloadings.

14.14.2 Properties
TABLE 204. FIR_EqualityOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_EQUALITY_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.14.3 Predefined Data Elements

struct FIR_EqualityOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.15 FIR_InequalityOperator

14.15.1 Derived Class Description

The predefined FIR_InequalityOperator class represents the relational inequality operator and its overloadings.

14.15.2 Properties
TABLE 205. FIR_InequalityOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_INEQUALITY_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.15.3 Predefined Data Elements

struct FIR_InequalityOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.16 FIR_LessThanOperator

14.16.1 Derived Class Description

The predefined FIR_LessThanOperator class represents the relational less than operator and its overloadings.

14.16.2 Properties
TABLE 206. FIR_LessThanOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_LESS_THAN_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.16.3 Predefined Data Elements

struct FIR_LessThanOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.17 FIR_LessThanOrEqualOperator

14.17.1 Derived Class Description

The predefined FIR_LessThanOrEqualOperator class represents the relational less than or equal operator and its overloadings.

14.17.2 Properties
TABLE 207. FIR_LessThanOrEqualOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_LESS_THAN_OR_EQUAL_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.17.3 Predefined Data Elements

struct FIR_LessThanOrEqualOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.18 FIR_GreaterThanOperator

14.18.1 Derived Class Description

The FIR_GreaterThanOperator class represents the relational greater than operator and its overloadings.

14.18.2 Properties
TABLE 208. FIR_GreaterThanOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_GREATER_THAN_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.18.3 Predefined Data Elements

struct FIR_DyadicOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.19 FIR_GreaterThanOrEqualOperator

14.19.1 Derived Class Description

The predefined FIR_GreaterThanOrEqualOperator class represents the relational less than or equal operator and its overloadings.

14.19.2 Properties
TABLE 209. FIR_GreaterThanOrEqualOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_GREATER_THAN_OR_EQUAL_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.19.3 Predefined Data Elements

struct FIR_GreaterThanOrEqualOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.20 FIR_SLLOperator

14.20.1 Derived Class Description

The predefined FIR_SLLOperator class represents the shift left logical operator and its overloadings.

14.20.2 Properties
TABLE 210. FIR_SLLOperator Properties

Applicable language(s)

VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_SLL_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.20.3 Predefined Data Elements

struct FIR_SLLOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.21 FIR_SRLOperator

14.21.1 Derived Class Description

The predefined FIR_SRLOperator class represents the shift right logical operator and its overloadings.

14.21.2 Properties
TABLE 211. FIR_SRLOperator Properties

Applicable language(s)

VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_SRL_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.21.3 Predefined Data Elements

struct FIR_SRLOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.22 FIR_SLAOperator

14.22.1 Derived Class Description

The predefined FIR_SLAOperator class represents the shift left arithmetic operator and its overloadings.

14.22.2 Properties
TABLE 212. FIR_SLAOperator Properties

Applicable language(s)

VHDL-93, VHDL-98*,VHDL-A

IR_Kind enumeration value

IR_SLA_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.22.3 Predefined Data Elements

struct FIR_SLAOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.23 FIR_SRAOperator

14.23.1 Derived Class Description

The predefined FIR_SRAOperator class represents the shift right arithmetic operator and its overloadings.

14.23.2 Properties
TABLE 213. FIR_SRAOperator Properties

Applicable language(s)

VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_SRA_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.23.3 Predefined Data Elements

struct FIR_SRAOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.24 FIR_ROLOperator

14.24.1 Derived Class Description

The predefined FIR_ROLOperator class represents the rotate right logical operator and its overloadings.

14.24.2 Properties
TABLE 214. FIR_ROLOperator Properties

Applicable language(s)

VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_ROL_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.24.3 Predefined Data Elements

struct FIR_DyadicOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.25 FIR_ROROperator

14.25.1 Derived Class Description

The predefined FIR_ROROperator class represents the rotate right logical operator and its overloadings.

14.25.2 Properties
TABLE 215. FIR_ROROperator Properties

Applicable language(s)

VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_ROR_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.25.3 Predefined Data Elements

struct FIR_ROROperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.26 FIR_AdditionOperator

14.26.1 Derived Class Description

The predefined FIR_AdditionOperator class represents the addition operator and its overloadings.

14.26.2 Properties
TABLE 216. FIR_AdditionOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_ADDITION_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.26.3 Predefined Data Elements

struct FIR_AdditionOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.27 FIR_SubtractionOperator

14.27.1 Derived Class Description

The predefined FIR_SubtractionOperator class represents the subtraction operator and its overloadings.

14.27.2 Properties
TABLE 217. FIR_SubtractionOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_SUBTRACTION_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.27.3 Predefined Data Elements

struct FIR_SubtractionOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.28 FIR_ConcatenationOperator

14.28.1 Derived Class Description

The predefined FIR_ConcatenationOperator class represents the concatenation operator and its overloadings.

14.28.2 Properties
TABLE 218. FIR_ConcatenationOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_CONCATENATION_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.28.3 Predefined Data Elements

struct FIR_ConcatenationOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.29 FIR_MultiplicationOperator

14.29.1 Derived Class Description

The predefined FIR_MultiplicationOperator class represents the multiplication operator and its overloadings.

14.29.2 Properties
TABLE 219. FIR_MultiplicationOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_MULTIPLICATION_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.29.3 Predefined Data Elements

struct FIR_MultiplicationOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.30 FIR_DivisionOperator

14.30.1 Derived Class Description

The predefined FIR_DivisionOperator class represents the division operator and its overloadings.

14.30.2 Properties
TABLE 220. FIR_DivisionOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_DIVISION_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.30.3 Predefined Data Elements

struct FIR_DivisionOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype;  /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.31 FIR_ModulusOperator

14.31.1 Derived Class Description

The predefined FIR_ModulusOperator class represents the modulus operator and its overloadings.

14.31.2 Properties
TABLE 221. FIR_ModulusOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_MODULUS_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.31.3 Predefined Data Elements

struct FIR_ModulusOperator  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.32 FIR_RemainderOperator

14.32.1 Derived Class Description

The predefined FIR_RemainderOperator class represents the remainder operator and its overloadings.

14.32.2 Properties
TABLE 222. FIR_RemainderOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_REMAINDER_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.32.3 Predefined Data Elements

struct FIR_RemainderOperator {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.33 FIR_ExponentiationOperator

14.33.1 Derived Class Description

The predefined FIR_ExponentiationOperator class represents the exponentiation operator and its overloadings.

14.33.2 Properties
TABLE 223. FIR_ExponentiationOperator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_EXPONENTIATION_OPERATOR

Parent class

FIR_DyadicOperator

Predefined child classes

None

Application-specific data elements

Via extension class

14.33.3 Predefined Data Elements

struct FIR_ExponentiationOperator {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		left_operand;
	FIR_Ref		right_operand;
};

14.34 FIR_PhysicalLiteral

14.34.1 Derived Class Description

The predefined FIR_PhysicalLiteral class represents a value formed by multiplying an abstract literal and unit name, resulting in a value of physical type.

14.34.2 Properties
TABLE 224. FIR_PhysicalLiteral Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_PHYSICAL_LITERAL

Parent class

FIR_Expression

Predefined child classes

None

Application-specific data elements

Via extension class

14.34.3 Predefined Data Elements

struct FIR_PhysicalLiteral {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		abstract_literal;
	FIR_Ref		unit;
};

14.35 FIR_Aggregate

14.35.1 Derived Class Description

The predefined FIR_Aggregate class combines one or more values into a composite value having a record or array type.

14.35.2 Properties
TABLE 225. FIR_Aggregate Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_AGGREGATE

Parent class

FIR_Expression

Predefined child classes

None

Application-specific data elements

Via extension class

14.35.3 Predefined Data Elements

struct FIR_Aggregate  {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_AssociationList			element_association_list;
	};

14.36 FIR_OthersInitialization

14.36.1 Derived Class Description

The predefined FIR_OthersInitialization class defines the value associated with elements not explicitly specified.

14.36.2 Properties
TABLE 226. FIR_OthersInitialization Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_OTHERS_INITIALIZATION

Parent class

FIR_Expression

Predefined child classes

None

Application-specific data elements

Via extension class

14.36.3 Predefined Data Elements

struct FIR_OthersInitialization {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		expression;
};

14.37 FIR_FunctionCall

14.37.1 Derived Class Description

The predefined FIR_FunctionCall classes elaborate and execute a subprogram call, resulting in a returned value.

14.37.2 Properties
TABLE 227. FIR_FunctionCall Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_FUNCTION_CALL

Parent class

FIR_Expression

Predefined child classes

None

Application-specific data elements

Via extension class

14.37.3 Predefined Data Elements

struct FIR_FunctionCall {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		implementation; /* reference to FIR_SubprogramDeclaration */
	FIR_Ref		parameter_association_list; /* FIR_AssociationList */
};

14.38 FIR_QualifiedExpression

14.38.1 Derived Class Description

The predefined FIR_QualifiedExpression class make the type or subtype of an expression explicit.

14.38.2 Properties
TABLE 228. FIR_QualifiedExpression Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_QUALIFIED_EXPRESSION

Parent class

FIR_Expression

Predefined child classes

None

Application-specific data elements

Via extension class

14.38.3 Predefined Data Elements

struct FIR_QualifiedExpression {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		type_mark;
	FIR_Ref		expression;
};

14.39 FIR_TypeConversion

14.39.1 Derived Class Description

The predefined FIR_TypeConversion classes provide for explicit conversion between closely related types.

14.39.2 Properties
TABLE 229. FIR_TypeConversion Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_TYPE_CONVERSION

Parent class

FIR_Expression

Predefined child classes

None

Application-specific data elements

Via extension class

14.39.3 Predefined Data Elements

struct FIR_TypeConversion {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		type_mark;
	FIR_Ref		expression;
};

14.40 FIR_Allocator

14.40.1 Derived Class Description

The predefined FIR_Allocator class dynamically allocates an object of specified subtype.

14.40.2 Properties
TABLE 230. FIR_Allocator Properties

Applicable language(s)

VHDL-87, VHDL-93, VHDL-98*

IR_Kind enumeration value

IR_ALLOCATOR

Parent class

FIR_Expression

Predefined child classes

None

Application-specific data elements

Via extension class

14.40.3 Predefined Data Elements

struct FIR_Allocator {
	IR_Kind		kind;
	FIR_Source		source_locator;
	FIR_Ref		subtype; /* reference to FIR_TypeDefinition */
	FIR_Ref		value; /* may be NIL, from subtype or expression */
};



[Top] [Prev] [Next] [Bottom]

aire@vhdl.org
Copyright © 1995, 1996 FTL Systems Inc. All rights reserved except as noted in the document copyright statement.