Specification

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.

digraph { rankdir="LR" nodesep=0.1 node [shape=point width=0.06 color="#888a85"] edge [fontname="monospace" fontsize=10 minlen=3] l0a -> l0b [label="owned" color="#000000"] l1a -> l1b [label="ref" color="#3465a4" style=dashed] l2a -> l2b [label="maybe ref" color="#3465a4" style=dotted] l3a -> l3b [label="of ref" color="#3465a4" style=dashed] l4a -> l4b [label="of maybe ref" color="#3465a4" style=dotted] l5a -> l5b [label="forward ref" color="#f57900" style=dashed] l6a -> l6b [label="maybe forward ref" color="#f57900" style=dotted] l7a -> l7b [label="chain" color="#4e9a06"] l8a -> l8b [label="chain next" color="#4e9a06" style=bold] }

Iir_Kind_Attribute_Specification

LRM08 7.2 Attribute specification

attribute_specification ::=
   ATTRIBUTE attribute_designator OF entity_specification
      IS expression ;
entity_specification ::= entity_name_list : entity_class
entity_name_list ::=
     entity_designator { , entity_designator }
   | OTHERS
   | ALL
entity_designator ::= entity_tag [ signature ]
entity_tag ::= simple_name | character_literal | operator_symbol

LRM08 8.6 Attribute names

attribute_designator ::= /attribute/_simple_name

Format: Medium

Accessor

Field

Type

Access

Description

Parent

Field0

Iir

ref

Get/Set the statement in which TARGET appears. This is used to check if next/exit is in a loop.

Chain

Field2

Iir

chain next

Entity_Class

Field3

Token_Type

owned

Entity_Name_List

Field8

Iir_Flist

owned

Expression

Field5

Iir

owned

Expression for an various nodes.

Attribute_Value_Spec_Chain

Field4

Iir

owned

Chain of attribute values for attribute specification. To be used with Get/Set_Spec_Chain.

Attribute_Designator

Field6

Iir

owned

Always a simple name.

Attribute_Specification_Chain

Field7

Iir

ref

Chain of attribute specifications. This is used only during sem, to check that no named entity of a given class appear after an attr. spec. with the entity name list OTHERS or ALL.

Static_Attribute_Flag

Flag2

Boolean

owned

True for attributes on entity, configuration and architecture. They are expected to be read from anywhere so the value is expected to be locally static, but this is not followed by many users and implementations.

digraph { rankdir="LR" node [shape=record fontname="monospace" fontsize=10] edge [fontname="monospace" fontsize=9] "Attribute_Specification" [style=filled fillcolor="#eeeeec" label="{Attribute_Specification|{<Parent> Parent|<Chain> Chain|<Entity_Class> Entity_Class|<Entity_Name_List> Entity_Name_List|<Expression> Expression|<Attribute_Value_Spec_Chain> Attribute_Value_Spec_Chain|<Attribute_Designator> Attribute_Designator|<Attribute_Specification_Chain> Attribute_Specification_Chain|<Static_Attribute_Flag> Static_Attribute_Flag}}"] "Attribute_Specification__Parent" [shape=box label="Iir"] "Attribute_Specification":Parent -> "Attribute_Specification__Parent" [color="#3465a4" style=dashed] "Attribute_Specification__Chain" [shape=box label="Iir"] "Attribute_Specification":Chain -> "Attribute_Specification__Chain" [color="#4e9a06" style=bold] "Attribute_Specification__Entity_Name_List" [shape=box3d label="Iir_Flist"] "Attribute_Specification":Entity_Name_List -> "Attribute_Specification__Entity_Name_List" [color="#000000"] "Attribute_Specification__Expression" [shape=box label="Iir"] "Attribute_Specification":Expression -> "Attribute_Specification__Expression" [color="#000000"] "Attribute_Specification__Attribute_Value_Spec_Chain" [shape=box label="Iir"] "Attribute_Specification":Attribute_Value_Spec_Chain -> "Attribute_Specification__Attribute_Value_Spec_Chain" [color="#000000"] "Attribute_Specification__Attribute_Designator" [shape=box label="Iir"] "Attribute_Specification":Attribute_Designator -> "Attribute_Specification__Attribute_Designator" [color="#000000"] "Attribute_Specification__Attribute_Specification_Chain" [shape=box label="Iir"] "Attribute_Specification":Attribute_Specification_Chain -> "Attribute_Specification__Attribute_Specification_Chain" [color="#3465a4" style=dashed] }

Iir_Kind_Disconnection_Specification

LRM08 7.4 Disconnection specification

disconnection_specification ::=
  DISCONNECT guarded_signal_specification AFTER time_expression ;
guarded_signal_specification ::=
  guarded_signal_list : type_mark
signal_list ::=
     signal_name { , signal_name }
   | OTHERS
   | ALL

Format: Short

Accessor

Field

Type

Access

Description

Parent

Field0

Iir

ref

The declaration containing this type declaration.

Signal_List

Field3

Iir_Flist

of maybe ref

Type_Mark

Field4

Iir

owned

The type_mark that appeared in qualified expressions or type conversions.

Expression

Field5

Iir

owned

Expression for an various nodes.

Chain

Field2

Iir

chain next

Is_Ref

Flag12

Boolean

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.

digraph { rankdir="LR" node [shape=record fontname="monospace" fontsize=10] edge [fontname="monospace" fontsize=9] "Disconnection_Specification" [style=filled fillcolor="#eeeeec" label="{Disconnection_Specification|{<Parent> Parent|<Signal_List> Signal_List|<Type_Mark> Type_Mark|<Expression> Expression|<Chain> Chain|<Is_Ref> Is_Ref}}"] "Disconnection_Specification__Parent" [shape=box label="Iir"] "Disconnection_Specification":Parent -> "Disconnection_Specification__Parent" [color="#3465a4" style=dashed] "Disconnection_Specification__Signal_List" [shape=box3d label="Iir_Flist"] "Disconnection_Specification":Signal_List -> "Disconnection_Specification__Signal_List" [color="#3465a4" style=dotted] "Disconnection_Specification__Type_Mark" [shape=box label="Iir"] "Disconnection_Specification":Type_Mark -> "Disconnection_Specification__Type_Mark" [color="#000000"] "Disconnection_Specification__Expression" [shape=box label="Iir"] "Disconnection_Specification":Expression -> "Disconnection_Specification__Expression" [color="#000000"] "Disconnection_Specification__Chain" [shape=box label="Iir"] "Disconnection_Specification":Chain -> "Disconnection_Specification__Chain" [color="#4e9a06" style=bold] }

Iir_Kind_Step_Limit_Specification

AMS-LRM17 7.5 Step limit specification

step_limit_specification ::=
  LIMIT quantity_specification WITH real_expression ;
quantity_specification ::=
  quantity_list : type_mark
quantity_list ::=
     quantity_name { , quantity_name }
   | OTHERS
   | ALL

Format: Short

Accessor

Field

Type

Access

Description

Parent

Field0

Iir

ref

Get/Set the statement in which TARGET appears. This is used to check if next/exit is in a loop.

Quantity_List

Field3

Iir_Flist

of maybe ref

Type_Mark

Field4

Iir

owned

The type_mark that appeared in qualified expressions or type conversions.

Expression

Field5

Iir

owned

Expression for an various nodes.

Chain

Field2

Iir

chain next

Is_Ref

Flag12

Boolean

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.

digraph { rankdir="LR" node [shape=record fontname="monospace" fontsize=10] edge [fontname="monospace" fontsize=9] "Step_Limit_Specification" [style=filled fillcolor="#eeeeec" label="{Step_Limit_Specification|{<Parent> Parent|<Quantity_List> Quantity_List|<Type_Mark> Type_Mark|<Expression> Expression|<Chain> Chain|<Is_Ref> Is_Ref}}"] "Step_Limit_Specification__Parent" [shape=box label="Iir"] "Step_Limit_Specification":Parent -> "Step_Limit_Specification__Parent" [color="#3465a4" style=dashed] "Step_Limit_Specification__Quantity_List" [shape=box3d label="Iir_Flist"] "Step_Limit_Specification":Quantity_List -> "Step_Limit_Specification__Quantity_List" [color="#3465a4" style=dotted] "Step_Limit_Specification__Type_Mark" [shape=box label="Iir"] "Step_Limit_Specification":Type_Mark -> "Step_Limit_Specification__Type_Mark" [color="#000000"] "Step_Limit_Specification__Expression" [shape=box label="Iir"] "Step_Limit_Specification":Expression -> "Step_Limit_Specification__Expression" [color="#000000"] "Step_Limit_Specification__Chain" [shape=box label="Iir"] "Step_Limit_Specification":Chain -> "Step_Limit_Specification__Chain" [color="#4e9a06" style=bold] }

Iir_Kind_Configuration_Specification

LRM08 7.3 Configuration specification

configuration_specification ::=
    simple_configuration_specification
  | compound_configuration_specification
simple_configuration_specification ::=
   FOR component_specification binding_indication ;
   [ END FOR ; ]
compound_configuration_specification ::=
   FOR component_specification binding_indication ;
      verification_unit_binding_indication ;
      { verification_unit_binding_indication ; }
   END FOR ;
component_specification ::=
   instantiation_list : component_name
instantiation_list ::=
    instantiation_label { , instantiation_label }
  | OTHERS
  | ALL

The location points to ‘for’.

Format: Short

Accessor

Field

Type

Access

Description

Parent

Field0

Iir

ref

The declaration containing this type declaration.

Component_Name

Field5

Iir

owned

Component name for a component_configuration or a configuration_specification.

Instantiation_List

Field1

Iir_Flist

owned

A list, list_others or list_all.

Binding_Indication

Field3

Iir

maybe ref

Chain

Field2

Iir

chain next

Has_End

Flag11

Boolean

owned

Only for Iir_Kind_Configuration_Specification:

Is_Ref

Flag12

Boolean

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.

digraph { rankdir="LR" node [shape=record fontname="monospace" fontsize=10] edge [fontname="monospace" fontsize=9] "Configuration_Specification" [style=filled fillcolor="#eeeeec" label="{Configuration_Specification|{<Parent> Parent|<Component_Name> Component_Name|<Instantiation_List> Instantiation_List|<Binding_Indication> Binding_Indication|<Chain> Chain|<Has_End> Has_End|<Is_Ref> Is_Ref}}"] "Configuration_Specification__Parent" [shape=box label="Iir"] "Configuration_Specification":Parent -> "Configuration_Specification__Parent" [color="#3465a4" style=dashed] "Configuration_Specification__Component_Name" [shape=box label="Iir"] "Configuration_Specification":Component_Name -> "Configuration_Specification__Component_Name" [color="#000000"] "Configuration_Specification__Instantiation_List" [shape=box3d label="Iir_Flist"] "Configuration_Specification":Instantiation_List -> "Configuration_Specification__Instantiation_List" [color="#000000"] "Configuration_Specification__Binding_Indication" [shape=box label="Iir"] "Configuration_Specification":Binding_Indication -> "Configuration_Specification__Binding_Indication" [color="#3465a4" style=dotted] "Configuration_Specification__Chain" [shape=box label="Iir"] "Configuration_Specification":Chain -> "Configuration_Specification__Chain" [color="#4e9a06" style=bold] }