.. # This page is generated by doc/ASTReference.py when Sphinx starts. Do not edit it. Dereference ########### 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 :ref:`INT:AST:Fields` page. .. graphviz:: 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] } .. _INT:AST:Dereference: Iir_Kind_Dereference ==================== An implicit access dereference. Format: ``Short`` .. list-table:: :header-rows: 1 :widths: 30 12 18 12 28 * - Accessor - Field - Type - Access - Description * - :ref:`Prefix ` - ``Field0`` - ``Iir`` - owned - Prefix of a name. * - :ref:`Type ` - ``Field1`` - ``Iir`` - ref - — * - :ref:`Base_Name ` - ``Field5`` - ``Iir`` - ref - The base name of a name is the node at the origin of the name. The base name is a declaration (signal, object, constant or interface), a selected_by_all name, an implicit_dereference name. * - :ref:`Expr_Staticness ` - ``State1`` - ``Iir_Staticness`` - owned - Expression staticness, defined by rules of LRM 7.4 * - :ref:`Name_Staticness ` - ``State2`` - ``Iir_Staticness`` - owned - Staticness of a name, according to rules of LRM 6.1 .. graphviz:: digraph { rankdir="LR" node [shape=record fontname="monospace" fontsize=10] edge [fontname="monospace" fontsize=9] "Dereference" [style=filled fillcolor="#eeeeec" label="{Dereference|{ Prefix| Type| Base_Name| Expr_Staticness| Name_Staticness}}"] "Dereference__Prefix" [shape=box label="Iir"] "Dereference":Prefix -> "Dereference__Prefix" [color="#000000"] "Dereference__Type" [shape=box label="Iir"] "Dereference":Type -> "Dereference__Type" [color="#3465a4" style=dashed] "Dereference__Base_Name" [shape=box label="Iir"] "Dereference":Base_Name -> "Dereference__Base_Name" [color="#3465a4" style=dashed] } .. _INT:AST:Implicit_Dereference: Iir_Kind_Implicit_Dereference ============================= An implicit access dereference. Format: ``Short`` .. list-table:: :header-rows: 1 :widths: 30 12 18 12 28 * - Accessor - Field - Type - Access - Description * - :ref:`Prefix ` - ``Field0`` - ``Iir`` - owned - Prefix of a name. * - :ref:`Type ` - ``Field1`` - ``Iir`` - ref - — * - :ref:`Base_Name ` - ``Field5`` - ``Iir`` - ref - The base name of a name is the node at the origin of the name. The base name is a declaration (signal, object, constant or interface), a selected_by_all name, an implicit_dereference name. * - :ref:`Expr_Staticness ` - ``State1`` - ``Iir_Staticness`` - owned - Expression staticness, defined by rules of LRM 7.4 * - :ref:`Name_Staticness ` - ``State2`` - ``Iir_Staticness`` - owned - Staticness of a name, according to rules of LRM 6.1 .. graphviz:: digraph { rankdir="LR" node [shape=record fontname="monospace" fontsize=10] edge [fontname="monospace" fontsize=9] "Implicit_Dereference" [style=filled fillcolor="#eeeeec" label="{Implicit_Dereference|{ Prefix| Type| Base_Name| Expr_Staticness| Name_Staticness}}"] "Implicit_Dereference__Prefix" [shape=box label="Iir"] "Implicit_Dereference":Prefix -> "Implicit_Dereference__Prefix" [color="#000000"] "Implicit_Dereference__Type" [shape=box label="Iir"] "Implicit_Dereference":Type -> "Implicit_Dereference__Type" [color="#3465a4" style=dashed] "Implicit_Dereference__Base_Name" [shape=box label="Iir"] "Implicit_Dereference":Base_Name -> "Implicit_Dereference__Base_Name" [color="#3465a4" style=dashed] }