Elsif
The diagrams below draw one box per node kind, with one port per field. The edge colours say how a link is held; they are listed in full on the Fields page.
Iir_Kind_Elsif
LRM08 10.8
if_statement ::=
[ /if/_label : ]
IF condition THEN
sequence_of_statements
{ ELSIF condition THEN
sequence_of_statements }
[ ELSE
sequence_of_statements ]
END IF [ /if/_label ] ;
Format: Short
Accessor |
Field |
Type |
Access |
Description |
|---|---|---|---|---|
|
|
ref |
Get/Set the statement in which TARGET appears. This is used to check if next/exit is in a loop. |
|
|
|
maybe ref |
May be NULL only for an iir_kind_elsif node, and then means the else clause. |
|
|
|
chain |
— |
|
|
|
owned |
Must be an Iir_kind_elsif node, or NULL for no more elsif clauses. |
|
|
|
owned |
Layout flag: true if ‘end’ is followed by the identifier. |
|
|
|
owned |
Set during elaboration when the statement is executed. |
|
|
|
owned |
Set to True if Maybe_Ref fields are references. This cannot be shared with Has_Identifier_List as: Is_Ref is set to True on all items but the first, while Has_Identifier_List is set to True on all items but the last. Furthermore Is_Ref appears in nodes where Has_Identifier_List is not present. |