   Generated by Sphinx 3.3.1.

GHDL Documentation
******************

     GHDL 2.0.0-dev, Jun 26, 2021

     Tristan Gingold and contributors

     Copyright © 2002-2021, Tristan Gingold and contributors

 — The Detailed Node Listing —

About

Getting | Installing

Precompile Vendor Primitives

Configuration Files

Additional Script Parameters

Contributing

Copyrights | Licenses

Quick Start Guide

Simulation

Python Interfaces

Language Server

ghdl-ls

Invoking GHDL

Design building commands

Design rebuilding commands

Simulation (runtime)

Synthesis

Synthesis options

Yosys plugin

Convert (V)HDL to other formats

Additional Command Reference

Misc commands

File commands

GCC/LLVM only commands

Implementation of VHDL

PSL support

PSL usage

Implementation of VITAL

Building GHDL from Sources

mcode backend

LLVM backend

pyGHDL

pyGHDL.cli

pyGHDL.dom

pyGHDL.dom.formatting

pyGHDL.libghdl

pyGHDL.libghdl.vhdl

pyGHDL.lsp

GHDL Waveform (GHW)

Debugging

Simulation and runtime debugging options

Coding Style

Guidelines to edit the documentation

Scripts

pnodes

pnodespy

AST

Run Time Information (RTI)

RTI Nodes / RTII Nodes

1 About
*******

1.1 What is ‘VHDL’?
===================

VHDL(1) is an acronym for Very High Speed Integrated Circuit (VHSIC(2))
Hardware Description Language (HDL(3)), which is a programming language
used to describe a logic circuit by function, data flow behavior, or
structure.

Although VHDL was not designed for writing general purpose programs,
VHDL `is' a programming language, and you can write any algorithm with
it.  If you are able to write programs, you will find in VHDL features
similar to those found in procedural languages such as ‘C’, ‘Python’, or
‘Ada’.  Indeed, VHDL derives most of its syntax and semantics from Ada.
Knowing ‘Ada’ is an advantage for learning VHDL (it is an advantage in
general as well).

However, VHDL was not designed as a general purpose language but as an
‘HDL’. As the name implies, VHDL aims at modeling or documenting
electronics systems.  Due to the nature of hardware components which are
always running, VHDL is a highly concurrent language, built upon an
event-based timing model.

Like a program written in any other language, a VHDL program can be
executed.  Since VHDL is used to model designs, the term `simulation' is
often used instead of ‘execution’, with the same meaning.  At the same
time, like a design written in another ‘HDL’, a set of VHDL sources can
be transformed with a `synthesis tool' into a netlist, that is, a
detailed gate-level implementation.

The development of VHDL started in 1983 and the standard is named
IEEE(4) ‘1076’.  Five revisions exist: 1987(5), 1993(6), 2002(7),
2008(8) and 2019(9).  The standardization is handled by the VHDL
Analysis and Standardization Group (VASG/P1076(10)).

   ---------- Footnotes ----------

   (1) https://en.wikipedia.org/wiki/VHDL

   (2) https://en.wikipedia.org/wiki/VHSIC

   (3) https://en.wikipedia.org/wiki/HDL

   (4) https://www.ieee.org/

   (5) http://ieeexplore.ieee.org/document/26487/

   (6) http://ieeexplore.ieee.org/document/392561/

   (7) http://ieeexplore.ieee.org/document/1003477/

   (8) http://ieeexplore.ieee.org/document/4772740/

   (9) https://ieeexplore.ieee.org/document/8938196

   (10) http://www.eda-twiki.org/vasg/

1.2 What is GHDL?
=================

‘GHDL’ is a shorthand for ‘G Hardware Design Language’ (currently, ‘G’
has no meaning).  It is a VHDL analyzer, compiler, simulator and
(experimental) synthesizer that can process (nearly) any VHDL design.

     Note: For almost 20 years, GHDL was `not' a synthesis tool: you
     could not create a netlist.  Hence, most of the content in this
     documentation corresponds to the usage of GHDL as a
     compiler/simulator.  See Synthesis for further details
     regarding synthesis.

Unlike some other simulators, GHDL is a compiler: it directly translates
a VHDL file to machine code, without using an intermediary language such
as ‘C’ or ‘C++’.  Therefore, the compiled code should be faster and the
analysis time should be shorter than with a compiler using an
intermediary language.

GHDL can use multiple back-ends, i.e.  code generators, (GCC(1), LLVM(2)
or x86(3)/i386(4) only, a built-in one named `mcode') and runs on
GNU/Linux(5), Windows(6) ™ and macOS(7) ™; on x86, x86_64,
armv6/armv7/aarch32/aarch64, ppc64, etc.

The current version of GHDL does not contain any built-in graphical
viewer: you cannot see signal waves.  You can still check the behavior
of your design with a test bench.  Moreover, GHW(8), VCD(9) or ‘FST’
files can be produced, which can be viewed with a waveform viewer(10),
such as GtkWave(11).

GHDL aims at implementing VHDL as defined by IEEE 1076(12).  It supports
the 1987(13), 1993(14) and 2002(15) revisions and, partially, 2008(16).
Property Specification Language (PSL)(17) is also partially supported.

Several third party projects are supported: Yosys(18) (through the
ghdl-yosys-plugin(19)) cocotb(20) (through the VPI interface(21)),
VUnit(22), OSVVM(23), …

   ---------- Footnotes ----------

   (1) http://gcc.gnu.org/

   (2) http://llvm.org/

   (3) https://en.wikipedia.org/wiki/X86-64

   (4) https://en.wikipedia.org/wiki/Intel_80386

   (5) https://en.wikipedia.org/wiki/Linux_distribution

   (6) https://en.wikipedia.org/wiki/Microsoft_Windows

   (7) https://en.wikipedia.org/wiki/MacOS

   (8)
http://ghdl.readthedocs.io/en/latest/using/Simulation.html?highlight=GHW#cmdoption-wave

   (9) https://en.wikipedia.org/wiki/Value_change_dump

   (10) https://en.wikipedia.org/wiki/Waveform_viewer

   (11) http://gtkwave.sourceforge.net/

   (12) http://ieeexplore.ieee.org/document/4772740/

   (13) http://ieeexplore.ieee.org/document/26487/

   (14) http://ieeexplore.ieee.org/document/392561/

   (15) http://ieeexplore.ieee.org/document/1003477/

   (16) http://ieeexplore.ieee.org/document/4772740/

   (17) https://en.wikipedia.org/wiki/Property_Specification_Language

   (18) https://github.com/YosysHQ/yosys

   (19) https://github.com/ghdl/ghdl-yosys-plugin

   (20) https://github.com/potentialventures/cocotb

   (21) https://en.wikipedia.org/wiki/Verilog_Procedural_Interface

   (22) https://vunit.github.io/

   (23) http://osvvm.org/

1.3 Who uses GHDL?
==================

2 Getting | Installing
**********************

2.1 Package managers
====================

Package managers of many popular distributions provide pre-built
packages of GHDL. This is the case for ‘apt’ (Debian/Ubuntu), ‘dnf’
(Fedora), ‘pacman’ (Arch Linux, MSYS2) or ‘brew’ (macOS). Since GHDL
supports three different backends and two library sets (`regular' or
`GPL-compatible'), at least six packages with different features might
be available in each package manager.

As a rule of thumb, mcode backend is the fastest for analysis and
synthesis.  It also allows setting the base simulation time for speeding
up execution.  Therefore, it is the recommended pick if available on
your platform (x86/amd64, on Windows x86 only).  On other platforms, or
for using specific features for co-simulation or code coverage, LLVM or
GCC need to be used.  See further differences between backends in
Building GHDL from Sources.

2.2 Nightly packages
====================

Assets from nightly GHDL builds are available at
github.com/ghdl/ghdl/releases/nightly(1).  These are mostly meant to be
used in Continuous Integration (CI) workflows.  Precisely,
setup-ghdl-ci(2) allows to easily setup nightly assets in GitHub Actions
workflows.

However, users on Windows (MSYS2) or Ubuntu might want to download the
tarballs/zipfiles and extract/install them locally.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/releases/nightly

   (2) https://github.com/ghdl/setup-ghdl-ci

2.3 Precompile Vendor Primitives
================================

Vendors like Lattice, Intel (Altera) and Xilinx have their own
simulation libraries, especially for FPGA primitives, soft and hard
macros.  These libraries cannot be shipped with GHDL, but GHDL offers
prepared compile scripts to pre-compile these vendor libraries, if the
vendor tool is present in the environment.  There are also popular
simulation and verification libraries like OSVVM (1) or UVVM (2), which
can be pre-compiled, too.

The compilation scripts are writen in the shell languages: `PowerShell'
for `Windows™' and `Bash' for `GNU/Linux', `MacOS' and `MSYS2'/`MinGW'.
The compile scripts can colorize the GHDL warning and error lines with
the help of ‘grc/grcat’ (3).

     Hint: Vendor precompile scripts for OSVVM and UVVM are tested
     periodically in ghdl/extended-tests(4).

   ---------- Footnotes ----------

   (1) (1) OSVVM ‘http://github.com/OSVVM/OSVVM’

   (2) (2) UVVM ‘https://github.com/UVVM/UVVM_All’

   (3) (3) Generic Colourizer
‘http://kassiopeia.juls.savba.sk/~garabik/software/grc.html’

   (4) https://github.com/ghdl/extended-tests

2.3.1 Supported Vendors Libraries
---------------------------------

   * Lattice (3.6 or later):

        * ‘ec’

        * ‘ecp’, ‘ecp2’, ‘ecp3’, ‘ecp5u’

        * ‘lptm’, ‘lptm2’

        * ‘machxo’, ‘machxo2’, ‘machxo3l’, ‘machxo3d’

        * ‘sc’, ‘scm’

        * ‘xp’, ‘xp2’

        * …

   * Intel (Altera) Quartus (13.0 or later):

        * ‘lpm’, ‘sgate’

        * ‘altera’, ‘altera_mf’, ‘altera_lnsim’

        * ‘arriaii’, ‘arriaii_pcie_hip’, ‘arriaiigz’

        * ‘arriav’, ‘arriavgz’, ‘arriavgz_pcie_hip’

        * ‘cycloneiv’, ‘cycloneiv_pcie_hip’, ‘cycloneive’

        * ‘cyclonev’

        * ‘max’, ‘maxii’, ‘maxv’

        * ‘stratixiv’, ‘stratixiv_pcie_hip’

        * ‘stratixv’, ‘stratixv_pcie_hip’

        * ‘fiftyfivenm’, ‘twentynm’

        * …

   * Xilinx ISE (14.0 or later):

        * ‘unisim’ (incl.  ‘secureip’)

        * ‘unimacro’

        * ‘simprim’ (incl.  ‘secureip’)

        * ‘xilinxcorelib’

   * Xilinx Vivado (2014.1 or later):

        * ‘unisim’ (incl.  ‘secureip’)

        * ‘unimacro’

2.3.2 Supported Simulation and Verification Libraries
-----------------------------------------------------

   * OSVVM (1) (for VHDL-2008)

   * UVVM (2) (for VHDL-2008)

__________________________________________________________________

   ---------- Footnotes ----------

   (1) (1) OSVVM ‘http://github.com/OSVVM/OSVVM’

   (2) (2) UVVM ‘https://github.com/UVVM/UVVM_All’

2.3.3 Script Configuration
--------------------------

The vendor library compile scripts need to know where the used / latest
vendor tool chain is installed.  Therefore, the scripts implement a
default installation directory search as well as environment variable
checks.  If a vendor tool cannot be detected or the script chooses the
wrong vendor library source directory, then it’s possible to provide the
path via ‘--source’ (Bash) or ‘-Source’ (PoSh).

The generated output is stored relative to the current working
directory.  The scripts create a sub-directory for each vendor.  The
default output directory can be overwritten by the parameter ‘--output’
(Bash) or ‘-Output’ (PoSh).

To compile all source files with GHDL, the simulator executable is
searched in ‘PATH’.  The found default GHDL executable can be
overwritten by setting the environment variable ‘GHDL’ or by passing the
parameter ‘--ghdl’ (Bash) or ‘-GHDL’ (PoSh) to the scripts.

If the vendor library compilation is used very often, it’s recommend to
configure these parameters in ‘config.sh’ (Bash) or ‘config.psm1’
(PoSh), so the command line can be shortened to the essential parts.

__________________________________________________________________

2.3.4 Compiling in Bash
-----------------------

The provided Bash scripts support these environments:

   * Linux

   * MacOS

   * MSYS2 / MinGW

   * WSL (Windows Subsystem for Linux)

Follow these steps:

   * `Step 0 - Configure the scripts (optional)'

     See the next section for how to configure ‘config.sh’.

   * `Step 1 - Browse to your simulation working directory'

          $ cd <MySimulationFolder>

   * `Step 2 - Start the compilation script(s)'

     Choose one or multiple of the following scripts to run the
     pre-compilation process.

          $ /usr/local/lib/ghdl/vendors/compile-altera.sh --all
          $ /usr/local/lib/ghdl/vendors/compile-intel.sh --all
          $ /usr/local/lib/ghdl/vendors/compile-lattice.sh --all
          $ /usr/local/lib/ghdl/vendors/compile-osvvm.sh --all
          $ /usr/local/lib/ghdl/vendors/compile-uvvm.sh --all
          $ /usr/local/lib/ghdl/vendors/compile-xilinx-ise.sh --all
          $ /usr/local/lib/ghdl/vendors/compile-xilinx-vivado.sh --all

     In most cases GHDL is installed into ‘/usr/local/’.  The scripts
     are installed into the ‘lib\ghdl\vendors’ directory.

   * `Step 3 - Viewing the result'

     This creates vendor directories in your current working directory
     and compiles the vendor files into them.

          $ ls -ahl
          ...
          drwxr-xr-x  2 <user> <group>  56K Mar 09 17:41 altera
          drwxr-xr-x  2 <user> <group>  56K Mar 09 17:42 intel
          drwxr-xr-x  2 <user> <group>  56K Mar 09 17:42 lattice
          drwxr-xr-x  2 <user> <group>  56K Mar 09 17:48 osvvm
          drwxr-xr-x  2 <user> <group>  56K Mar 09 17:58 uvvm
          drwxr-xr-x  2 <user> <group>  56K Mar 09 17:58 xilinx-ise
          drwxr-xr-x  2 <user> <group>  56K Mar 09 17:48 xilinx-vivado

__________________________________________________________________

2.3.5 Compiling in PowerShell
-----------------------------

The provided PowerShell scripts support these environments:

   * Windows™ 10 (PowerShell 5 and PowerShell 6)

Follow these steps:

   * `Step 0 - Configure the scripts (optional)'

     See the next section for how to configure ‘config.psm1’.

   * `Step 1 - Browse to your simulation working directory'

          PS> cd <MySimulationFolder>

   * `Step 2 - Start the compilation script(s)'

     Choose one or multiple of the following scripts to run the
     pre-compilation process.

          PS> <GHDL>\lib\ghdl\vendors\compile-altera.ps1 -All
          PS> <GHDL>\lib\ghdl\vendors\compile-intel.ps1 -All
          PS> <GHDL>\lib\ghdl\vendors\compile-lattice.ps1 -All
          PS> <GHDL>\lib\ghdl\vendors\compile-osvvm.ps1 -All
          PS> <GHDL>\lib\ghdl\vendors\compile-uvvm.ps1 -All
          PS> <GHDL>\lib\ghdl\vendors\compile-xilinx-ise.ps1 -All
          PS> <GHDL>\lib\ghdl\vendors\compile-xilinx-vivado.ps1 -All

     The scripts are installed into the ‘lib\ghdl\vendors’ directory.

   * `Step 3 - Viewing the result'

     This creates vendor directories in your current working directory
     and compiles the vendor files into them.

          PS> dir
              Directory: D:\temp\ghdl

          Mode           LastWriteTime       Length Name
          ----           -------------       ------ ----
          d----    09.03.2018    19:33        <DIR> altera
          d----    09.03.2018    19:38        <DIR> intel
          d----    09.03.2018    19:38        <DIR> lattice
          d----    09.03.2018    19:38        <DIR> osvvm
          d----    09.03.2018    19:45        <DIR> uvvm
          d----    09.03.2018    19:06        <DIR> xilinx-ise
          d----    09.03.2018    19:40        <DIR> xilinx-vivado

__________________________________________________________________

2.3.6 Configuration Files
-------------------------

2.3.6.1 For Bash: ‘config.sh’
.............................

Please open the ‘config.sh’ file and set the dictionary entries for the
installed vendor tools to your tool’s installation directories.  Use an
empty string ‘""’ for not installed tools.

‘config.sh’:

     declare -A InstallationDirectory
     InstallationDirectory[AlteraQuartus]="/opt/Altera/16.0"
     InstallationDirectory[IntelQuartus]="/opt/intelFPGA/20.1"
     InstallationDirectory[LatticeDiamond]="/opt/Diamond/3.10_x64"
     InstallationDirectory[OSVVM]="/home/<user>/git/GitHub/OSVVM"
     InstallationDirectory[UVVM]="/home/<user>/git/GitHub/UVVM"
     InstallationDirectory[XilinxISE]="/opt/Xilinx/14.7"
     InstallationDirectory[XilinxVivado]="/opt/Xilinx/Vivado/2020.2"

2.3.6.2 For PowerShell: ‘config.psm1’
.....................................

Please open the ‘config.psm1’ file and set the dictionary entries for
the installed vendor tools to your tool’s installation folder.  Use an
empty string ‘""’ for not installed tools.

‘config.psm1’:

     $InstallationDirectory = @{
       "AlteraQuartus" =   "C:\Altera\16.0";
       "IntelQuartus" =    "C:\Altera\20.1";
       "LatticeDiamond" =  "C:\Lattice\Diamond\3.10_x64";
       "XilinxISE" =       "C:\Xilinx\14.7\ISE_DS";
       "XilinxVivado" =    "C:\Xilinx\Vivado\2020.2";
       "OSVVM" =           "C:\git\GitHub\OSVVM";
       "UVVM" =            "C:\git\GitHub\UVVM"
     }

2.3.7 Additional Script Parameters
----------------------------------

Each script supports partial compilations e.g.  of shared packages and
individual parts.  In addition, the amount of printout to the console
can be controlled.  Some scripts may offer vendor specific options.

2.3.7.1 For Bash Scripts:
.........................

   * Common parameters to most scripts:

          --help, -h            Print the embedded help page(s).
          --clean, -c           Cleanup directory before analyzing.
          --no-warnings, -n     Don't show warnings. Report errors only.
          --skip-existing, -s   Skip already compiled files (an *.o file exists).
          --skip-largefiles, -S Don't compile large entities like DSP and PCIe primitives.
          --halt-on-error, -H   Stop compiling if an error occurred.

   * ‘compile-altera.sh’

     Selectable libraries:

          --all, -a             Compile all libraries, including common libraries, packages and device libraries.
          --altera              Compile base libraries like 'altera' and 'altera_mf'
          --max                 Compile device libraries for Max CPLDs
          --arria               Compile device libraries for Arria FPGAs
          --cyclone             Compile device libraries for Cyclone FPGAs
          --stratix             Compile device libraries for Stratix FPGAs

     Compile options:

          --vhdl93              Compile selected libraries with VHDL-93 (default).
          --vhdl2008            Compile selected libraries with VHDL-2008.

   * ‘compile-xilinx-ise.sh’

     Selectable libraries:

          --all, -a             Compile all libraries, including common libraries, packages and device libraries.
          --unisim              Compile the unisim primitives
          --unimacro            Compile the unimacro macros
          --simprim             Compile the simprim primitives
          --corelib             Compile the xilinxcorelib macros
          --secureip            Compile the secureip primitives

     Compile options:

          --vhdl93              Compile selected libraries with VHDL-93 (default).
          --vhdl2008            Compile selected libraries with VHDL-2008.

   * ‘compile-xilinx-vivado.sh’

     Selectable libraries:

          --all, -a             Compile all libraries, including common libraries, packages and device libraries.
          --unisim              Compile the unisim primitives
          --unimacro            Compile the unimacro macros
          --secureip            Compile the secureip primitives

     Compile options:

          --vhdl93              Compile selected libraries with VHDL-93 (default).
          --vhdl2008            Compile selected libraries with VHDL-2008.

   * ‘compile-osvvm.sh’

     Selectable libraries:

          --all, -a             Compile all.
          --osvvm               Compile the OSVVM library.

   * ‘compile-uvvm.sh’

     Selectable libraries:

          --all, -a             Compile all.
          --uvvm                Compile the UVVM libraries.

2.3.7.2 For PowerShell Scripts:
...............................

   * Common parameters to all scripts:

          -Help                 Print the embedded help page(s).
          -Clean                Cleanup directory before analyzing.
          -SuppressWarnings     Don't show warnings. Report errors only.

   * ‘compile-altera.ps1’

     Selectable libraries:

          -All                  Compile all libraries, including common libraries, packages and device libraries.
          -Altera               Compile base libraries like 'altera' and 'altera_mf'
          -Max                  Compile device libraries for Max CPLDs
          -Arria                Compile device libraries for Arria FPGAs
          -Cyclone              Compile device libraries for Cyclone FPGAs
          -Stratix              Compile device libraries for Stratix FPGAs

     Compile options:

          -VHDL93               Compile selected libraries with VHDL-93 (default).
          -VHDL2008             Compile selected libraries with VHDL-2008.

   * ‘compile-xilinx-ise.ps1’

     Selectable libraries:

          -All                  Compile all libraries, including common libraries, packages and device libraries.
          -Unisim               Compile the unisim primitives
          -Unimacro             Compile the unimacro macros
          -Simprim              Compile the simprim primitives
          -CoreLib              Compile the xilinxcorelib macros
          -Secureip             Compile the secureip primitives

     Compile options:

          -VHDL93               Compile selected libraries with VHDL-93 (default).
          -VHDL2008             Compile selected libraries with VHDL-2008.

   * ‘compile-xilinx-vivado.ps1’

     Selectable libraries:

          -All                  Compile all libraries, including common libraries, packages and device libraries.
          -Unisim               Compile the unisim primitives
          -Unimacro             Compile the unimacro macros
          -Secureip             Compile the secureip primitives

     Compile options:

          -VHDL93               Compile selected libraries with VHDL-93 (default).
          -VHDL2008             Compile selected libraries with VHDL-2008.

   * ‘compile-osvvm.ps1’

     Selectable libraries:

          -All                  Compile all.
          -OSVVM                Compile the OSVVM library.

   * ‘compile-uvvm.ps1’

     Selectable libraries:

          -All                  Compile all.
          -UVVM                 Compile the UVVM libraries.

__________________________________________________________________

3 Contributing
**************

As in many other free and open source projects, there are many areas
requiring different skills where contributions to GHDL are welcome.  The
first step might be to use GHDL and explore its possibilities in your
own project.  If you are new to VHDL, see the Simulation for
an introduction.  Furthermore, we encourage you to read Invoking GHDL,
where the most commonly used options are explained.  You can
also check the complete Additional Command Reference.

If you are more familiar with GHDL, you might start asking yourself how
it works internally.  If so, you might find Implementation of VHDL
and Implementation of VITAL interesting.

While using GHDL, you might find flaws, such as bugs, missing features,
typos in the documentation, or topics which still are not covered.  In
order to improve GHDL, we welcome bug reports, suggestions, and
contributions for any aspect of GHDL. Whether it’s a bug or an
enhancement, have a look at the [Open issues] and [Closed issues] to see if someone already told us
about it.  You might find a solution there.

Ideas for future work, enhancements, documentation, and internship
programs are shown in the GitHub wiki(1).

If you found no information on your topic, please, report so that we are
aware!  You can reach us through various ways:

[Talk to us on Gitter]or open a [Open new issue at GitHub] .

     Hint:
        * Since the development of GHDL started in 2002, multiple
          platforms have been used as a support for both distribution
          and getting feedback.  However, the development is now
          centralized in github.com/ghdl(2).

        * How To Ask Questions The Smart Way(3)

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/wiki

   (2) https://github.com/ghdl

   (3) www.catb.org/~esr/faqs/smart-questions.html

3.1 Reporting bugs
==================

   * If the compiler crashes, this is a bug.  Reliable tools never
     crash.

   * If the compiler emits an error message for a perfectly valid input
     or does not emit an error message for an invalid input, this may be
     a bug.

   * If the executable created from your VHDL sources crashes, this may
     be a bug at runtime or the code itself may be wrong.  Since VHDL
     has a notion of pointers, an erroneous VHDL program (using invalid
     pointers for example) may crash.

   * If a compiler message is not clear enough, please tell us.  The
     error messages can be improved, but we do not have enough
     experience with them.

   * It is suggested to test synthesis features with –synth,
     before processing the design with Yosys plugin.

Please, report issues through [Open new bug report at GitHub] , as this allows us to categorize issues
into groups and to assign developers to them.  You can track the state
and see how it’s getting solved.

     Important: As suggested in the bug report template, please
     elaborate a ‘Minimal (non) Working Example’ (MWE(1)) prior to
     sending the report, so that the possible bug source is isolated.
     Should it fulfill the format requirements of issue-runner(2), you
     would be able to test your bug with the latest GHDL version.
     Please do so in order to ensure that the bug is not solved already.

     Also, please include enough information in the bug report, for the
     maintainers to reproduce the problem.  The template includes:

        * Operating system and version of GHDL (you can get it with
          ‘ghdl version’ and ‘ghdl hash’).

        * Whether you have built GHDL from sources (provide short SHA of
          the used commit) or used the binary distribution (note which
          release/tag); if you cannot compile, please report which
          compiler you are using and the version.

        * Content of the input files which comprise the MWE.

        * Description of the problem:

             * Comment explaining whether the MWE should compile or not;
               if yes, whether it should run until the assertion.

             * What you expect to happen and what you actually get.  If
               you know the LRM well enough, please specify which
               paragraph might not be implemented well.

             * Samples of any log.

             * Anything else that you think would be helpful.

     Note: If you don’t know the LRM, be aware that an issue claimed as
     a bug report may be rejected because there is no bug according to
     it.  GHDL aims at implementing VHDL as defined in IEEE 1076(3).
     However, some other tools allow constructs which do not fully
     follow the standard revisions.  Therefore, comparisons with other
     VHDL variants is not a solid argument.  Some of them are supported
     by GHDL (see IEEE library pitfalls), but any such
     enhancement will have very low priority.

   ---------- Footnotes ----------

   (1) https://en.wikipedia.org/wiki/Minimal_Working_Example

   (2) https://github.com/eine/issue-runner

   (3) http://ieeexplore.ieee.org/document/4772740/

3.2 Requesting enhancements
===========================

[Talk to us on Gitter]
All enhancements and feature requests are welcome.  Please open a new
issue(1) to report any, so you can track the status and implementation.
Depending on the complexity of the request, you may want to chat on
Gitter(2), for polishing it before opening an issue.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/issues/new

   (2) https://gitter.im/ghdl/ghdl1

3.3 Improving the documentation
===============================

If you found a mistake in the documentation, please send a comment.  If
you didn’t understand some parts of this manual, please tell us.
English is not our mother tongue, so this documentation may not be
well-written.

Likewise, rewriting part of the documentation or missing content (such
as examples) is a good way to improve it.  Since it is built
automatically from ‘reStructuredText’, you can fork, modify and push.
The documentation will be shown in the GitHub Pages site of your fork:
‘https://USERNAME.github.io/ghdl’.  When you are done, request the
maintainers to pull your copy.  See Fork, modify and pull-request.

3.4 Fork, modify and pull-request
=================================

     Tip:
        * Before starting any modification, you might want to have a
          look at [Open pull requests] and [Closed pull requests] , to check which other contributions are being
          made or have been made.  If you observe that the modifications
          you are about to start might conflict with any other, please [Talk to us on Gitter]
          or open a to coordinate.

        * See section Directory structure to faster find the
          location of the sources you need to modify, and/or to know
          where to place new ones.

Contributing source code/documentation is done through git(1).  Although
we don’t provide direct write access to our repositories, the project is
hosted at GitHub, which follows a fork, edit and pull-request flow(2) .
That is:

  1. Make a copy (fork(3)) of the project.

  2. Do the changes you wish (edit, add, rename, move and/or delete).

  3. When you think that the changes are ready to be merged, notify the
     maintainers by opening a Pull Request(4) (PR).

  4. The maintainers will review the proposed changes and will reply in
     the corresponding thread if any further modification is required.
     If so, you can keep adding commits to the same branch, and the PR
     will be automatically updated.

  5. Last, maintainers will merge your branch.  You will be notified,
     the PR will be closed, and you’ll be allowed to delete the branch,
     if you want.

     Tip:
        * It is recommended to read A successful Git branching model(5)
          for a reference on how maintainers expect to handle multiple
          branches.  However, our actual model is not as exhaustive as
          explained there.

        * Some commit messages can automatically close(6) issues.  This
          is a very useful feature, which you are not required to use.
          However beware that using ‘fix’ anywhere in the commit message
          can have side effects.  If you closed any issue unexpectedly,
          just reply to it (even if it’s closed) so that maintainers can
          check it.

        * It is recommended to read Coding Style before
          contributing modifications to Ada sources.

   ---------- Footnotes ----------

   (1) https://git-scm.com/

   (2) https://help.github.com/articles/github-flow/

   (3) https://help.github.com/articles/fork-a-repo/

   (4) https://help.github.com/articles/creating-a-pull-request/

   (5) http://nvie.com/posts/a-successful-git-branching-model/

   (6)
https://help.github.com/articles/closing-issues-via-commit-messages/

3.5 Related interesting projects
================================

If you have an interesting project, please send us feedback or get
listed on our Who uses GHDL? page.

4 Copyrights | Licenses
***********************

   - The GHDL front-end package ‘std.textio’, and the runtime library
     ‘GRT’ are given under GNU GPLv2.

   - The documentation is given under CC-BY-SA.

     Warning: As a consequence of the runtime copyright, you are not
     allowed to distribute an executable produced by GHDL without
     allowing access to the VHDL sources.  Please, send a comment (see
     Requesting enhancements) if you don’t like this policy.

The following packages are copyrighted by third parties (see
corresponding sources for more information):

   * These from library ‘ieee’ are copyrighted by Institute of
     Electrical and Electronics Engineers (IEEE)(1):

        * Since December 2019, standard and IEEE libraries are
          distributed under Apache 2.0 and available at
          opensource.ieee.org/vasg/Packages(2).  GHDL includes backports
          of those libraries for earlier revisions of the standard.

        * ‘VITAL_Primitives’, ‘VITAL_Timing’ and ‘VITAL_Memory’ are not
          include in the open source distribution of IEEE (see IEEE
          1076.4(3)).

   * The following sources may be used and distributed without
     restriction, provided that the copyright statements are not removed
     from the files and that any derivative work contains the copyright
     notice.

        * ‘synopsys’ directory: ‘std_logic_arith’, ‘std_logic_signed’,
          ‘std_logic_unsigned’ and ‘std_logic_textio’ are copyrighted by
          Synopsys, Inc.(4)

        * ‘mentor’ directory: ‘std_logic_arith’ is copyrighted by Mentor
          Graphics(5).

   ---------- Footnotes ----------

   (1) https://www.ieee.org

   (2) https://opensource.ieee.org/vasg/Packages

   (3) http://ieeexplore.ieee.org/document/954750/

   (4) https://www.synopsys.com/

   (5) https://www.mentor.com

4.1 GNU GPLv2
=============

GHDL is copyright © 2002 - 2021 Tristan Gingold.

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.

This program is distributed in the hope that it will be useful, but
`WITHOUT ANY WARRANTY'; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License(1) for more details.

   ---------- Footnotes ----------

   (1) https://www.gnu.org/licenses/old-licenses/gpl-2.0.html

4.2 CC-BY-SA
============

This is a free documentation; you can redistribute it and/or modify it
under the terms of the Creative Commons Attribution-ShareAlike 4.0(1)
license.  You are free to `share' (copy and redistribute the material in
any medium or format) and/or `adapt' (remix, transform, and build upon
the material for any purpose, even commercially).  We cannot revoke
these freedoms as long as you follow the these terms:

   - `Attribution': you must provide the name of the creator and
     attribution parties (more info(2)), a copyright notice, a license
     notice, a disclaimer notice, a link to the material, a link to the
     license and indicate if changes were made (see marking guide(3) and
     more info(4)).  You may do so in any reasonable manner, but not in
     any way that suggests we endorse you or your use.

   - `ShareAlike': if you remix, transform, or build upon the material,
     you must distribute your contributions under the same license as
     the original.

   - `No additional restrictions': you may not apply legal terms or
     technological measures that legally restrict others from doing
     anything the license permits.

See CC-BY-SA-4.0 Legal Code(5) for more details.

   ---------- Footnotes ----------

   (1) https://creativecommons.org/licenses/by-sa/4.0/

   (2)
https://wiki.creativecommons.org/wiki/License_Versions#Detailed_attribution_comparison_chart

   (3)
https://wiki.creativecommons.org/wiki/Best_practices_for_attribution#This_is_a_good_attribution_for_material_you_modified_slightly

   (4)
https://wiki.creativecommons.org/wiki/License_Versions#Modifications_and_adaptations_must_be_marked_as_such

   (5) https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt

4.3 List of Contributors
========================

Contributor (1)                   Role

------------------------------------------------------------------------------------------------------------------------------------------------------

Baggett, Jonas                    signal selection

Bertram, Felix                    VPI interface

Davis, Brian                      Windows Mcode builds

Drummond, Brian                   GCC 4.8.2 update, OSVVM port, some bugfixes

Gingold, Tristan (2)              `Sole author of GHDL as a whole'

Jensen, Adam                      FreeBSD builds

Koch, Markus                      vendor pre-compile script for Lattice (GNU/Linux)

Koontz, David                     Mac OSX builds, LRM compliance work, bugfix analyses

Lehmann, Patrick                  Windows compile scripts, vendor library pre-compile scripts (win+lin), building in MinGW, AppVeyor integration.

Meißner, Torsten                  Property Specification Language (PSL): docs, tests, synthesis support

Martinez-Corral, Unai (3)         ghdl-cosim, setup-ghdl-ci, docs, docker/CI, MSYS2 packaging, building/testing on ARM, termux builds

van Rantwijk, Joris               Debian packaging

Only those who made substantial contributions are shown in the table
above, but many others contributed with minor patches.  You can find a
list at [Contributors]

With apologies to anyone who ought to be either on this table or in the
GitHub contributor list, but isn’t.  Thanks also to all those who have
reported bugs and support issues, and often patches and testcases to
either the late gna!  website or
sourceforge.net/p/ghdl-updates/tickets(4).

__________________________________________________________________

   ---------- Footnotes ----------

   (1) (1) In alphabetical order

   (2) (2) Maintainer

   (3) (2) Maintainer

   (4) https://sourceforge.net/p/ghdl-updates/tickets/

5 Quick Start Guide
*******************

Since this is the user and reference manual for ‘GHDL’, it does not
contain an introduction to ‘VHDL’. Thus, the reader should have at least
a basic knowledge of ‘VHDL’. A good knowledge of ‘VHDL’ language
reference manual (usually called LRM) is a plus.  Nevertheless, multiple
explained examples are provided, in the hope that they are useful for
users to learn about both ‘GHDL’ and ‘VHDL’.

5.1 Simulation
==============

As explained in What is GHDL?, ‘GHDL’ is a compiler which
translates ‘VHDL’ files to machine code.  Hence, the regular workflow is
composed of three steps:

   * Analysis [-a].: convert design units (‘VHDL’ sources) to
     an internal representation.

   * Elaboration [-e].: generate executable machine code for a
     target module (top-level entity).

   * Run [-r].: execute the design to test the behaviour,
     generate output/waveforms, etc.

The following tips might be useful:

   * Don’t forget to select the version of the VHDL standard you want to
     use (see VHDL standards).  The default is
     –std=93c.  Use –std=08 for VHDL-2008 (albeit not
     fully implemented).

        * Use –ieee=synopsys if your design depends on a
          non-standard implementation of the IEEE library.

        * Use -fexplicit and -frelaxed-rules if
          needed.  For instance, if you would like to use VHDL 2008 and
          also use shared variables with an ordinary type (deprecated in
          VHDL 2000), you can use ‘--std=08 -frelaxed-rules’.

   * Use –work=LIB_NAME to analyze files into the ‘LIB_NAME’
     library.  To use files analyzed to a different directory, give the
     path to the ‘LIB_NAME’ library using
     -P/path/to/name/directory/.

   * Use the same options for analysis and elaboration.  E.g., first
     analyse with ‘ghdl -a --std=08 --work=mylib myfile.vhdl’; and then
     elaborate and run with ‘ghdl --elab-run --std=08 top’.

Due to the fact that ‘VHDL’ is processed as a general purpose language
(instead of an ‘HDL’), all the language features are to be supported.
I.e., ‘VHDL’ sources do not need to be limited to the synthesisable
subset.  However, distinction between synthesisable and
non-synthesisable (simulation-only) subsets is often misleading for
users who are new to the language.  Different examples are provided, in
the hope of helping understand the different use cases:

5.1.1 ‘Hello world’ program
---------------------------

To illustrate the general purpose of ‘VHDL’, the following block is a
commented ‘Hello world’ program which is saved in a file named
‘hello.vhdl’:

     --  Hello world program
     use std.textio.all; -- Imports the standard textio package.

     --  Defines a design entity, without any ports.
     entity hello_world is
     end hello_world;

     architecture behaviour of hello_world is
     begin
       process
         variable l : line;
       begin
         write (l, String'("Hello world!"));
         writeline (output, l);
         wait;
       end process;
     end behaviour;

     Tip:
        * Both ‘.vhdl’ and ‘.vhd’ extensions are used for ‘VHDL’ source
          files, while ‘.v’ is used for Verilog.

                  * Since, extension ‘.vhd’ is also interpreted as a
                    Virtual Hard Disk(1) file format, some users prefer
                    ‘.vhdl’, to avoid ambiguity.  This is the case with
                    ‘GHDL’’s codebase.  However, in order to maintain
                    backward-compatibility(2) with legacy DOS systems,
                    other users prefer ‘.vhd’.

        * Unless you use especial characters, either ‘UTF-8’ or
          ‘ISO-8859-1’ encodings can be used.  However, if you do, the
          latter should be used.  The standard defines ASCII (7-bit
          encoding) or ISO Latin-1 (ISO-8859-1) as default.  However,
          GHDL has a relaxing option, see –mb-comments. (multi
          byte), to allow UTF-8 or other encodings in comments.

   - First, you have to compile the file; this is called analysis
     of a design file in ‘VHDL’ terms.  Run ‘ghdl -a hello.vhdl’ in
     the ‘shell’.  This command creates or updates a file
     ‘work-obj93.cf’, which describes the library ‘work’.

   - Then, run ‘ghdl -e hello_world’ in the ‘shell’.  Command -e
     means elaborate, which is used to build a design,
     with the ‘hello_world’ entity at the top of the hierarchy.

   - Last, you can directly launch the simulation running.
     ‘ghdl -r hello_world’ in the ‘shell’.  The result of the simulation
     will be shown on screen:

     Hello world!

     Hint: If a GCC/LLVM variant of ‘GHDL’ is used:

        * Analysis generates a file, ‘hello.o’, which is the
          object file corresponding to your ‘VHDL’ program.  This is not
          created with mcode.  These kind of object files can
          be compiled into foreign programs (see Linking GHDL object
          files to Ada/C(3)).

        * The elaboration step is mandatory after running the
          analysis and prior to launching the simulation.  This will
          generate an executable binary named ‘hello_world’.

        * As a result, see -r is just a passthrough to the binary
          generated in the ‘elaboration’.  Therefore, the executable can
          be run directly: ‘./hello_world’.  See -r for more
          informartion.

     Hint: -e can be bypassed with mcode, since
     -r actually elaborates the design and saves it on memory
     before running the simulation.  But you can still use it to check
     for some elaboration problems.

   ---------- Footnotes ----------

   (1) https://en.wikipedia.org/wiki/VHD_(file_format)

   (2) https://en.wikipedia.org/wiki/8.3_filename

   (3)
https://ghdl.github.io/ghdl-cosim/vhpidirect/linking.html#linking-with-ada

5.1.2 ‘Heartbeat’ module
------------------------

Although Hello world illustrates that ‘VHDL’ is supported as
a general purpose language, the main use case of ‘GHDL’ is to simulate
hardware descriptions.  The following block, which is saved in a file
named ‘heartbeat.vhdl’, is an example of how to generate a 100 MHz clock
signal with non-synthesisable VHDL:

     library ieee;
     use ieee.std_logic_1164.all;

     entity heartbeat is
       port ( clk: out std_logic);
     end heartbeat;

     architecture behaviour of heartbeat
     is
       constant clk_period : time := 10 ns;
     begin
       -- Clock process definition
       clk_process: process
       begin
         clk <= '0';
         wait for clk_period/2;
         clk <= '1';
         wait for clk_period/2;
       end process;
     end behaviour;

It can be analysed, elaborated and run,
as you already know:

     ghdl -a heartbeat.vhdl
     ghdl -e heartbeat
     ghdl -r heartbeat

However, execution of the design does not terminate.  At the same time,
no output is shown on screen.  This is because, traditionally, hardware
designs are continuously running devices which do not have a screen
where to print.  In this context, inspection and verification of the
behaviour is done through waveforms(1), which is supported by ‘GHDL’
(see Export waveforms).  You can use either –wave,
–vcd, –vcdgz or –fst to save the signals
of the simulation to a file.  Then, terminate the execution (‘C-c’) and
you can inspect the wave with a viewer, such as GtkWave(2).  As
explained in the manual(3), GtkWave `‘relies on a post-mortem approach
through the use of dumpfiles’'.  Therefore, you should first simulate
your design and dump a waveform file, say GHW:

     ghdl -r heartbeat --wave=wave.ghw

Then, you can view the dump:

     gtkwave wave.ghw

Of course, manually terminating the simulation is for illustration
purposes only.  In Full adder and Working with non-trivial designs,
you will see how to write a testbench to
terminate the simulation programmatically.

   ---------- Footnotes ----------

   (1) https://en.wikipedia.org/wiki/Waveform_viewer

   (2) http://gtkwave.sourceforge.net/

   (3) http://gtkwave.sourceforge.net/gtkwave.pdf

5.1.3 ‘Full adder’ module and testbench
---------------------------------------

Unlike Heartbeat, the target hardware design in this example
is written using the synthesisable subset of ‘VHDL’. It is a full
adder(1) described in a file named ‘adder.vhdl’:

     entity adder is
       -- `i0`, `i1`, and the carry-in `ci` are inputs of the adder.
       -- `s` is the sum output, `co` is the carry-out.
       port (i0, i1 : in bit; ci : in bit; s : out bit; co : out bit);
     end adder;

     architecture rtl of adder is
     begin
       --  This full-adder architecture contains two concurrent assignments.
       --  Compute the sum.
       s <= i0 xor i1 xor ci;
       --  Compute the carry.
       co <= (i0 and i1) or (i0 and ci) or (i1 and ci);
     end rtl;

You can analyse this design file, ‘ghdl -a adder.vhdl’, and
try to execute the ‘adder’ design.  But this is useless, since nothing
externally visible will happen.  In order to check this full adder, a
`testbench' has to be run.  The `testbench' is a description of how to
generate inputs and how to check the outputs of the Unit Under Test
(UUT). This one is very simple, since the adder is also simple: it
checks exhaustively all inputs.  Note that only the behaviour is tested,
timing constraints are not checked.  A file named ‘adder_tb.vhdl’
contains the testbench for the adder:

     --  A testbench has no ports.
     entity adder_tb is
     end adder_tb;

     architecture behav of adder_tb is
       --  Declaration of the component that will be instantiated.
       component adder
         port (i0, i1 : in bit; ci : in bit; s : out bit; co : out bit);
       end component;

       --  Specifies which entity is bound with the component.
       for adder_0: adder use entity work.adder;
       signal i0, i1, ci, s, co : bit;
     begin
       --  Component instantiation.
       adder_0: adder port map (i0 => i0, i1 => i1, ci => ci, s => s, co => co);

       --  This process does the real job.
       process
         type pattern_type is record
           --  The inputs of the adder.
           i0, i1, ci : bit;
           --  The expected outputs of the adder.
           s, co : bit;
         end record;
         --  The patterns to apply.
         type pattern_array is array (natural range <>) of pattern_type;
         constant patterns : pattern_array :=
           (('0', '0', '0', '0', '0'),
            ('0', '0', '1', '1', '0'),
            ('0', '1', '0', '1', '0'),
            ('0', '1', '1', '0', '1'),
            ('1', '0', '0', '1', '0'),
            ('1', '0', '1', '0', '1'),
            ('1', '1', '0', '0', '1'),
            ('1', '1', '1', '1', '1'));
       begin
         --  Check each pattern.
         for i in patterns'range loop
           --  Set the inputs.
           i0 <= patterns(i).i0;
           i1 <= patterns(i).i1;
           ci <= patterns(i).ci;
           --  Wait for the results.
           wait for 1 ns;
           --  Check the outputs.
           assert s = patterns(i).s
             report "bad sum value" severity error;
           assert co = patterns(i).co
             report "bad carry out value" severity error;
         end loop;
         assert false report "end of test" severity note;
         --  Wait forever; this will finish the simulation.
         wait;
       end process;

     end behav;

As usual, you should analyze the file, ‘ghdl -a adder_tb.vhdl’.

     Hint: Then, if required, see elaborate the testbench: ‘ghdl
     -e adder_tb’.  You do not need to specify which object files are
     required, since ‘GHDL’ knows them and automatically adds them.

Now, it is time to run the testbench, ‘ghdl -r adder_tb’, and
check the result on screen:

     adder_tb.vhdl:52:7:(assertion note): end of test

If your design is rather complex, you’d like to inspect signals as
explained in Heartbeat.

See section Simulation options, for more details on other
runtime options.

   ---------- Footnotes ----------

   (1) https://en.wikipedia.org/wiki/Adder_(electronics)#Full_adder

5.1.4 Working with non-trivial designs
--------------------------------------

Designs are usually more complex than the previous examples.  Unless you
are only studying VHDL, you will work with larger designs.  Let’s see
how to analyse a design such as the DLX model suite written by Peter
Ashenden, which is distributed under the terms of the GNU General Public
License.  A copy is kept at ghdl.free.fr/dlx.tar.gz(1) .

   - First, untar the sources: ‘tar zxvf dlx.tar.gz’.

     Hint:
          In order not to pollute the sources with the artifacts (‘WORK’
          library), it is a good idea to create a ‘work/’ subdirectory.
          To any GHDL commands, we will add the –workdir=work.
          option, so that all files generated by the compiler (except
          the executable) will be placed in this directory.

          $ cd dlx
          $ mkdir work

   * Then, we will run the ‘dlx_test_behaviour’ design.  We need to
     analyse all the design units for the design hierarchy, in the
     correct order.  GHDL provides an easy way to do this, by
     importing the sources: ‘ghdl -i --workdir=work *.vhdl’.

   * GHDL knows all the design units of the DLX, but none of them has
     been analysed.  Run the make command, ‘ghdl -m
     --workdir=work dlx_test_behaviour’, which analyses and elaborates a
     design.  This creates many files in the ‘work/’ directory, and
     (GCC/LLVM only) the ‘dlx_test_behaviour’ executable in the current
     directory.

     Hint: The simulation needs to have a DLX program contained in the
     file ‘dlx.out’.  This memory image will be loaded in the DLX
     memory.  Just take one sample: ‘cp test_loop.out dlx.out’.

   * Now, you can run the test suite: ‘ghdl -r --workdir=work
     dlx_test_behaviour’.  The test bench monitors the bus and displays
     each executed instruction.  It finishes with an assertion of
     severity level note:

          dlx-behaviour.vhdl:395:11:(assertion note): TRAP instruction
           encountered, execution halted

   * Last, since the clock is still running, you have to manually stop
     the program with the ‘C-c’ key sequence.  This behavior prevents
     you from running the testbench in batch mode.  However, you may
     force the simulator to stop when an assertion above or equal a
     certain severity level occurs.  To do so, call run with this option
     instead: ‘ghdl -r --workdir=work dlx_test_behaviour
     --assert-level=note`’.  With –assert-level, the program
     stops just after the previous message:

          dlx-behaviour.vhdl:395:11:(assertion note): TRAP instruction
           encountered, execution halted
          error: assertion failed

     Tip: If you want to make room on your hard drive, you can either:

        * Clean the design library with ‘ghdl --clean
          --workdir=work’.  This removes the executable and all the
          object files.  If you want to rebuild the design at this
          point, just do the make command as shown above.

        * Remove the design library with ‘ghdl --remove
          --workdir=work’.  This removes the executable, all the object
          files and the library file.  If you want to rebuild the
          design, you have to import the sources again and make the
          design.

        * Remove the ‘work/’ directory: ‘rm -rf work’.  Only the
          executable is kept.  If you want to rebuild the design, create
          the ‘work/’ directory, import the sources, and make the
          design.

     Warning: Sometimes, a design does not fully follow the VHDL
     standards.  For example it might use the badly engineered
     ‘std_logic_unsigned’ package.  GHDL supports this VHDL dialect
     through some options: –ieee=synopsys, -fexplicit,
     etc.  See section IEEE library pitfalls, for more
     details.

     Tip: See Learning VHDL with GHDL(2).

   ---------- Footnotes ----------

   (1) http://ghdl.free.fr/dlx.tar.gz

   (2) https://github.com/ghdl/ghdl/issues/1291

5.2 Python Interfaces
=====================

Currently, pyGHDL is not distributed through PyPI. Therefore, users need
to install it from the git repository.  However, the version of the
sources must be compatible with the installed version of GHDL (and the
shared library ‘libghdl’).  Installing from ‘master’ is discouraged,
because it might contain changes to the internal AST. Instead, ‘ghdl
version hash’ allows getting the commit hash of the version the
installed binary was built from.  Since ‘pip’ allows installing packages
by providing the URL to the git repo, this is the recommended
installation procedure:

     pip install git+https://github.com/ghdl/ghdl.git@$(ghdl version hash)

5.2.1 Language Server
---------------------

When installed through ‘pip’, pyGHDL provides executable entrypoints
registered in the search PATH, such as ‘ghdl-ls’.

5.2.1.1 ghdl-ls
...............

VHDL Language Protocol Server.  Find info about clients in
ghdl/ghdl-language-server(1).

     usage: ghdl-ls [-h] [--version] [--verbose] [--log-file LOG_FILE]
                    [--trace-file TRACE_FILE] [--input INPUT] [--disp-config]

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl-language-server

5.2.1.2 optional arguments
..........................

 -- Option: -h, --help

     show this help message and exit

 -- Option: --version, -V

     show program’s version number and exit

 -- Option: --verbose, -v

     Show debug output

 -- Option: --log-file <log_file>

     Redirect logs to the given file instead of stderr

 -- Option: --trace-file <trace_file>

     Save RPC data to FILE.in and FILE.out (overrides ‘GHDL_LS_TRACE’)

 -- Option: --input <input>, -i <input>

     Read request from file

 -- Option: --disp-config

     Display installation configuration and exit

6 Invoking GHDL
***************

The form of the ‘ghdl’ command is ‘ghdl command [options...]’.  There
are multiple available commands, but these general rules apply:

   * The first argument selects the command.  The options are used to
     slightly modify the action.

   * No option is allowed before the command.  Except for the run
     command, no option is allowed after a filename or a unit name.

     Hint: If the number of options is large and the command line length
     is beyond the system limit, you can use a response file.  An
     argument that starts with a ‘@’ is considered as a response file;
     it is replaced by arguments read from the file (separated by blanks
     and end of line).

     Hint: Only the most common commands and options are shown here.
     For the most advanced and experimental features see section
     Additional Command Reference.

     Warning: During analysis and elaboration GHDL may read the ‘std’
     and ‘ieee’ files.  The location of these files is based on the
     prefix, which is (in order of priority):

        * the –PREFIX command line option

        * the GHDL_PREFIX environment variable

        * a built-in default path.  It is a hard-coded path on
          GNU/Linux, and it corresponds to the value of the
          ‘HKLM\Software\Ghdl\Install_Dir’ registry entry on Windows.

     You should use the –disp-config command to display and
     debug installation problems.

6.1 Design building commands
============================

The most commonly used commands of GHDL are those to analyze and
elaborate a design.

6.1.1 Analysis [‘-a’]
---------------------

 -- Option: -a <[options...] file...>

Analyzes/compiles one or more files, and creates an object file for each
source file.  Any argument starting with a dash is an option, the others
are filenames.  No options are allowed after a filename argument.  GHDL
analyzes each filename in the given order, and stops the analysis in
case of error (remaining files are not analyzed).

See Options, for details on the GHDL options.  For example, to
produce debugging information such as line numbers, use: ‘ghdl -a -g
my_design.vhdl’.

6.1.2 Elaboration [‘-e’]
------------------------

 -- Option: -e <[options...] [library.]top_unit [arch]>

Re-analyzes all the configurations, entities, architectures and package
declarations, and creates the default configurations and the default
binding indications according to the LRM rules.  It also generates the
list of object files required for the executable.  Then, it links all
these files with the runtime library (GRT).

The elaboration command, see -e, must be followed by a ‘top_unit’
name denoting either of:

        * a configuration unit

        * an entity unit

        * an entity unit followed by a secondary unit (the name of an
          architecture unit)

   * Name of the top units can be either a simple name (without dots),
     or the name of a logical library followed by a dot and a simple
     name.  The latter is equivalent to using –work=NAME.
     described in Options.: ‘-e <[options...] --work=library
     top_unit [arch]>’.  It selects the name of the library to be used
     as ‘WORK’.  See section Top entity, for the restrictions
     on the root/top unit of a hierarchy.

   * Name of the secondary units must be a simple name; they cannot
     contain any dot.

With regard to the artifacts:

   * If the GCC/LLVM backend was enabled during the compilation of GHDL,
     the elaboration command creates an executable containing the code
     of the VHDL sources, the elaboration code and simulation code for
     executing a design hierarchy.  The executable is created in the
     current directory and the the filename is the name of the primary
     unit, or for the latter case, the concatenation of the name of the
     primary unit, a dash, and the name of the secondary unit.  Option
     ‘-o’ followed by a filename can override the default executable
     filename.

   * If mcode is used, this command elaborates the design but does not
     generate anything.  Since the run command also elaborates the
     design, this can be skipped.

     Warning: This elaboration command is not a complete elaboration in
     terms of the VHDL standard.  The actual elaboration is performed at
     runtime.  Therefore, in order to get a complete VHDL elaboration
     without running the simulation, ‘ghdl --elab-run --no-run’ is
     required.  See –no-run.

6.1.3 Run [‘-r’]
----------------

 -- Option: -r <[options...] [library.]top_unit [arch]
          [simulation_options...]>

Runs/simulates a design.  Two sets of options are accepted, both of them
being separated by ‘[library.]top_unit [arch]’.  For the first set,
‘options...’, arguments are the same as for the elaboration command.
For the second set, ‘simulation_options...’, arguments are
defined in Simulation (runtime).

   * GGC/LLVM: the filename of the executable is determined and it is
     executed.  Elaboration options are ignored.  You may also directly
     execute the program.  The executable must be in the current
     directory.

   * mcode: the design is elaborated and the simulation is launched.  As
     a consequence, you must use the same options used during analysis.

This command exists for three reasons:

   * It works with mcode implementation, where the executable code is
     generated in memory.

   * You are using GCC/LLVM, but you don’t need to create the executable
     program name.

   * It is coherent with the -a and -e commands.

6.1.4 Elaborate and run [‘--elab-run’]
--------------------------------------

 -- Option: --elab-run <[options...] [library.]top_unit [arch]
          [simulation_options...]>

Acts like the elaboration command followed by the run command.  Note
that this command accepts two sets of options.  See -e,
-r and Simulation (runtime).

6.1.5 Check syntax [‘-s’]
-------------------------

 -- Option: -s <[options...] file...>

Analyze files but do not generate code.  This command may be used to
check the syntax of files.  It does not update the library.

6.1.6 Analyze and elaborate [‘-c’]
----------------------------------

 -- Option: -c <[options...] file... -<e|r> top_unit [arch]>

     Hint: With GCC/LLVM, see -e should be used, and -r
     with mcode.

The files are first parsed, and then a elaboration is performed, which
drives an analysis.  Effectively, analysis and elaboration are combined,
but there is no explicit call to -a.  With GCC/LLVM, code is
generated during the elaboration.  With mcode, the simulation is
launched after the elaboration.

All the units of the files are put into the ‘work’ library.  But, the
work library is neither read from disk nor saved.  Therefore, you must
give all the files of the ‘work’ library your design needs.

The advantages over the traditional approach (analyze and then
elaborate) are:

   * The compilation cycle is achieved in one command.

   * Since the files are only parsed once, the compilation cycle may be
     faster.

   * You don’t need to know an analysis order.

   * This command produces a smaller executable, since unused units and
     subprograms do not generate code.

     Hint: However, you should know that most of the time is spent in
     code generation and the analyze and elaborate command generates
     code for all units needed, even units of ‘std’ and ‘ieee’
     libraries.  Therefore, according to the design, the time for this
     command may be higher than the time for the analyze command
     followed by the elaborate command.

     Warning: This command is still under development.  In case of
     problems, you should go back to the traditional way.

6.2 Design rebuilding commands
==============================

Analyzing and elaborating a design consisting of several files can be
tricky, due to dependencies.  GHDL has a few commands for rebuilding a
design.

6.2.1 Import [‘-i’]
-------------------

 -- Option: -i <[options...] file...>

All the files specified in the command line are scanned, parsed and
added into the libraries but as not yet analyzed.  No object files are
created.  Its purpose is to localize design units in the design files.
The make command will then be able to recursively build a hierarchy from
an entity name or a configuration name.

     Hint:
        * Note that all the files are added to the work library.  If you
          have many libraries, you must use the command for each
          library.

        * Since the files are parsed, there must be correct files.
          However, since they are not analyzed, many errors are
          tolerated by this command.

See -m, to actually build the design.  See also
–elab-order, for retrieving the compilation order guessed
recursively.

6.2.2 Elab-order [‘--elab-order’]
---------------------------------

 -- Option: --elab-order <[options...] [libray.]top_unit [arch]>

Print the list of sources required for elaborating a unit, in order for
them to be analyzed without dependency issues.  This is expected to be
used after -i, or for retrieving the order for some unit
analyzed through third-party scripts.

     Attention: Currently, the list does not include information about
     the logical library names where each source needs to be analyzed.
     Hence, it is mostly useful when all sources belong to the same
     ‘WORK’ library.

6.2.3 Make [‘-m’]
-----------------

 -- Option: -m <[options...] [library.]top_unit [arch]>

Analyze automatically outdated files and elaborate a design.  The
primary unit denoted by the ‘[library.]top_unit’ argument must already
be known by the system, either because you have already analyzed it
(even if you have modified it) or because you have imported it.  A file
may be outdated because it has been modified (e.g.  you have just edited
it), or because a design unit contained in the file depends on a unit
which is outdated.  This rule is recursive.

   * With option ‘--bind’, GHDL will stop before the final linking step.
     This is useful when the main entry point is not GHDL and you’re
     linking GHDL object files into a foreign program.

   * With option ‘-f’ (force), GHDL analyzes all the units of the work
     library needed to create the design hierarchy.  Outdated units are
     recompiled.  This is useful if you want to compile a design
     hierarchy with new compilation flags (for example, to add the ‘-g’
     debugging option).

     Important: The make command will only re-analyze design units in
     the work library.  GHDL fails if it has to analyze an outdated unit
     from another library.

The purpose of this command is to be able to compile a design without
prior knowledge of file order.  In the VHDL model, some units must be
analyzed before others (e.g.  an entity before its architecture).  It
might be a nightmare to analyze a full design of several files if you
don’t have the ordered list of files.  This command computes an analysis
order.

The make command fails when a unit was not previously parsed.  For
example, if you split a file containing several design units into
several files, you must either import these new files or analyze them so
that GHDL knows in which file these units are.

The make command imports files which have been modified.  Then, a design
hierarchy is internally built as if no units are outdated.  Then, all
outdated design units, using the dependencies of the design hierarchy,
are analyzed.  If necessary, the design hierarchy is elaborated.

     Hint: This is not perfect, since the default architecture (the most
     recently analyzed one) may change while outdated design files are
     analyzed.  In such a case, re-run the make command of GHDL.

6.2.4 Generate Makefile [‘--gen-makefile’]
------------------------------------------

 -- Option: --gen-makefile <[options...] [library.]top_unit [arch]>

This command works like the make command (see -m), but only a
makefile is generated on the standard output.

6.2.5 Generate dependency file command [‘--gen-depends’]
--------------------------------------------------------

 -- Option: --gen-depends <[options...] [library.]top_unit [arch]>

Generate a Makefile containing only dependencies to build a design unit.

This command works like the make and gen-makefile commands (see
-m), but instead of a full makefile only dependencies without rules
are generated on the standard output.  Theses rules can then be
integrated in another Makefile.

6.3 Options
===========

 -- Option: --work=<LIB_NAME>

     Specify the name of the ‘WORK’ library.  Analyzed units are always
     placed in the library logically named ‘WORK’.  With this option,
     you can set its name.  By default, the name is ‘work’.

     ‘GHDL’ checks whether ‘WORK’ is a valid identifier.  Although being
     more or less supported, the ‘WORK’ identifier should not be an
     extended identifier, since the filesystem may prevent it from
     working correctly (due to case sensitivity or forbidden characters
     in filenames).

          Attention: ‘VHDL’ rules forbid you from adding units to the
          ‘std’ library.  Furthermore, you should not put units in the
          ‘ieee’ library.

          Hint: Since 849a25e0(1), this option can be alternatively
          provided to several commands by prepending the library name to
          the top unit name.  See, for instance, see -e.

 -- Option: --workdir=<DIR>

     Specify the directory where the ‘WORK’ library is located.  When
     this option is not present, the ‘WORK’ library is in the current
     directory.  The object files created by the compiler are always
     placed in the same directory as the ‘WORK’ library.

     Use option -P to specify where libraries other than
     ‘WORK’ are placed.

 -- Option: --std=<STANDARD>

     Specify the standard to use.  By default, the standard is ‘93c’,
     which means VHDL-93 with relaxed rules.  For details on ‘STANDARD’
     values see section VHDL standards.

          Important: This option resets the effect of -frelaxed,
          so it should be the first option.

 -- Option: -fsynopsys

     Allow the use of synopsys non-standard packages (‘std_logic_arith’,
     ‘std_logic_signed’, ‘std_logic_unsigned’, ‘std_logic_textio’).
     These packages are present in the ieee library but without this
     option it’s an error to use them.

     The synopsys packages were created by some companies, and are
     popular.  However they are not standard packages, and have been
     placed in the ‘IEEE’ library without the permission from the
     ‘ieee’.

 -- Option: --ieee=<IEEE_VAR>

     Select the ‘IEEE’ library to use.  ‘IEEE_VAR’ must be one of:

     none

          Do not supply an ‘IEEE’ library.  Any library clause with the
          ‘IEEE’ identifier will fail, unless you have created your own
          library with the ‘IEEE’ name.

     standard

          Supply an ‘IEEE’ library containing only packages defined by
          ‘ieee’ standards.  Currently, there are the multivalue logic
          system package ‘std_logic_1164’ defined by IEEE 1164, the
          synthesis packages ‘numeric_bit’ and ‘numeric_std’ defined by
          IEEE 1076.3, and the ‘vital’ packages ‘vital_timing’ and
          ‘vital_primitives’, defined by IEEE 1076.4.  The version of
          these packages is defined by the VHDL standard used.  See
          section VITAL packages, for more details.

     synopsys

          This option is now deprecated.  It is equivalent to
          ‘--ieee=standard’ and ‘-fsynopsys’.

     To avoid errors, you must use the same ‘IEEE’ library for all units
     of your design, and during elaboration.

 -- Option: -P<DIRECTORY>

     Add ‘DIRECTORY’ to the end of the list of directories to be
     searched for library files.  A library is searched in ‘DIRECTORY’
     and also in ‘DIRECTORY/LIB/vVV’ (where ‘LIB’ is the name of the
     library and ‘VV’ the vhdl standard).

     The ‘WORK’ library is always searched in the path specified by the
     –workdir option, or in the current directory if the
     latter option is not specified.

 -- Option: -fexplicit

     When two operators are overloaded, give preference to the explicit
     declaration.  This may be used to avoid the most common pitfall of
     the ‘std_logic_arith’ package.  See section IEEE library pitfalls,
     for an example.

     Warning: This option is not set by default.  We don’t think this
     option is a good feature, because it breaks the encapsulation rule.
     When set, an operator can be silently overridden in another
     package.  You’d do better to fix your design and use the
     ‘numeric_std’ package.

 -- Option: -frelaxed

 -- Option: -frelaxed-rules

          Important: The effects of this option are reset by –std,
          so it should be placed `after' that option.

     Slightly relax some rules to be compatible with various other
     simulators or synthesizers:

        * VHDL-87 file declarations are accepted;

        * Default binding indication rules of VHDL-02 are used.  Default
          binding rules are often used, but they are particularly
          obscure before VHDL-02.

        * Within an object declaration, allow references to the name
          (which references the hidden declaration).  This ignores the
          error in the following code:

               package pkg1 is
                 type state is (state1, state2, state3);
               end pkg1;

               use work.pkg1.all;
               package pkg2 is
                 constant state1 : state := state1;
               end pkg2;

          Some code (such as Xilinx packages) have such constructs,
          which are invalid.

          (The scope of the ‘state1’ constant starts at the ‘constant’
          keyword.  Because the constant ‘state1’ and the enumeration
          literal ‘state1’ are homographs, the enumeration literal is
          hidden in the immediate scope of the constant).

     This option also relaxes the rules about pure functions.
     Violations result in warnings instead of errors.

 -- Option: -fpsl

     Enable parsing of PSL assertions within comments.  See section
     PSL support for more details.

 -- Option: --mb-comments, -C

     Allow UTF8 or multi-bytes chars in a comment.

     According to the VHDL standards before 2002, the only characters
     allowed in a source file (and that includes the comments) are the
     graphical characters of the ISO 8859-1 character set.  This is
     incompatible with comments using UTF-8 or some other encoding.
     This option lift this restriction.

 -- Option: --syn-binding

     Use synthesizer rules for component binding.  During elaboration,
     if a component is not bound to an entity using VHDL LRM rules, try
     to find in any known library an entity whose name is the same as
     the component name.

     This rule is known as the synthesizer rule.

     There are two key points: normal VHDL LRM rules are tried first and
     entities are searched only in known libraries.  A known library is
     a library which has been named in your design.

     This option is only useful during elaboration.

 -- Option: --format=<FORMAT>

     Define the output format of some options, such as –pp-html
     or –xref-html.

        * By default or when –format=html2 is specified,
          generated files follow the HTML 2.0 standard, and colours are
          specified with ‘<FONT>’ tags.  However, colours are
          hard-coded.

        * If –format=css is specified, generated files follow
          the HTML 4.0 standard, and use the CSS-1 file ‘ghdl.css’ to
          specify colours.  This file is generated only if it does not
          already exist (it is never overwritten) and can be customized
          by the user to change colours or appearance.  Refer to a
          generated file and its comments for more information.

 -- Option: --no-vital-checks

 -- Option: --vital-checks

     Disable or enable checks of restriction on VITAL units.  Checks are
     enabled by default.

     Checks are performed only when a design unit is decorated by a
     VITAL attribute.  The VITAL attributes are ‘VITAL_Level0’ and
     ‘VITAL_Level1’, both declared in the ‘ieee.VITAL_Timing’ package.

     Currently, VITAL checks are only partially implemented.  See
     section VHDL restrictions for VITAL for more details.

 -- Option: --PREFIX=<PATH>

     Use ‘PATH’ as the prefix path to find commands and pre-installed
     (‘std’ and ‘ieee’) libraries.

 -- Option: -v

     Be verbose.  For example, for analysis, elaboration and make
     commands, GHDL displays the commands executed.

 -- Option: -o=<FNAME>

     All the commands that perform a link (see -e,
     –elab-run, –link, -c, -m, etc.)
     support overriding the location and name of the generated artifact.

 -- Option: --time-resolution=<UNIT>

          Attention: This feature is supported with `mcode' backend
          only.  It is not possible to support it with either LLVM or
          GCC backends, because it needs to apply globally.

     Set the base time resolution of the simulation.  This option is
     supported in commands -a and -r only.
     Allowed values are ‘auto’ (default), ‘fs’, ‘ps’, ‘ns’, ‘us’, ‘ms’
     or ‘sec’.  With LLVM/GCC, the value is fixed to ‘fs’.

          Hint: When overriding the time resolution, all the time units
          that are used in the design must be larger.  Using units below
          the resolution will produce a failure.

   ---------- Footnotes ----------

   (1)
https://github.com/ghdl/ghdl/commit/849a25e02cfb359e3d9313060156b0643495548b

6.4 Warnings
============

Some constructions are not erroneous but dubious.  Warnings are
diagnostic messages that report such constructions.  Some warnings are
reported only during analysis, others during elaboration.

     Hint: You could disable a warning by using the ‘--warn-no-XXX’ or
     ‘-Wno-XXX’ instead of ‘--warn-XXX’ or ‘-WXXX’.

     Hint: The warnings ‘-Wbinding’, ‘-Wlibrary’, ‘-Wshared’, ‘-Wpure’,
     ‘-Wspecs’, ‘-Whide’, ‘-Wport’ are enabled by default.

 -- Option: --warn-library

     Warns if a design unit replaces another design unit with the same
     name.

 -- Option: --warn-default-binding

     During analyze, warns if a component instantiation has neither
     configuration specification nor default binding.  This may be
     useful if you want to detect during analyze possibly unbound
     components if you don’t use configuration.  See section VHDL standards
     for more details about default binding rules.

 -- Option: --warn-binding

     During elaboration, warns if a component instantiation is not bound
     (and not explicitly left unbound).  Also warns if a port of an
     entity is not bound in a configuration specification or in a
     component configuration.  This warning is enabled by default, since
     default binding rules are somewhat complex and an unbound component
     is most often unexpected.

     However, warnings are still emitted if a component instantiation is
     inside a generate statement.  As a consequence, if you use the
     conditional generate statement to select a component according to
     the implementation, you will certainly get warnings.

 -- Option: --warn-reserved

     Emit a warning if an identifier is a reserved word in a later VHDL
     standard.

 -- Option: --warn-nested-comment

     Emit a warning if a ‘/*’ appears within a block comment (vhdl
     2008).

 -- Option: --warn-parenthesis

     Emit a warning in case of weird use of parentheses.

 -- Option: --warn-vital-generic

     Warns if a generic name of a vital entity is not a vital generic
     name.  This is set by default.

 -- Option: --warn-delayed-checks

     Warns for checks that cannot be done during analysis time and are
     postponed to elaboration time.  This is because not all procedure
     bodies are available during analysis (either because a package body
     has not yet been analysed or because ‘GHDL’ doesn’t read not
     required package bodies).

     These are checks for no wait statements in a procedure called in a
     sensitized process and checks for pure rules of a function.

 -- Option: --warn-body

     Emit a warning if a package body which is not required is analyzed.
     If a package does not declare a subprogram or a deferred constant,
     the package does not require a body.

 -- Option: --warn-specs

     Emit a warning if an all or others specification does not apply.

 -- Option: --warn-runtime-error

     Emit a warning in case of runtime error that is detected during
     analysis.

 -- Option: --warn-shared

     Emit a warning when a shared variable is declared and its type it
     not a protected type.

 -- Option: --warn-hide

     Emit a warning when a declaration hides a previous hide.

 -- Option: --warn-unused

     Emit a warning when a subprogram is never used.

 -- Option: --warn-others

     Emit a warning is an ‘others’ choice is not required because all
     the choices have been explicitly covered.

 -- Option: --warn-pure

     Emit a warning when a pure rules is violated (like declaring a pure
     function with access parameters).

 -- Option: --warn-static

     Emit a warning when a non-static expression is used at a place
     where the standard requires a static expression.

 -- Option: --warn-error

     When this option is set, warnings are considered as errors.

6.5 Diagnostics Control
=======================

 -- Option: -fcolor-diagnostics

 -- Option: -fno-color-diagnostics

     Control whether diagnostic messages are displayed in color.  The
     default is on when the standard output is a terminal.

 -- Option: -fdiagnostics-show-option

 -- Option: -fno-diagnostics-show-option

     Control whether the warning option is displayed at the end of
     warning messages, so that the user can easily know how to disable
     it.

 -- Option: -fcaret-diagnostics

 -- Option: -fno-caret-diagnostics

     Control whether the source line of the error is displayed with a
     caret indicating the column of the error.

6.6 Library commands
====================

A new library is created implicitly, by compiling entities (packages
etc.)  into it: ‘ghdl -a --work=my_custom_lib my_file.vhdl’.

A library’s source code is usually stored and compiled into its own
directory, that you specify with the –workdir option: ‘ghdl
-a --work=my_custom_lib --workdir=my_custom_libdir
my_custom_lib_srcdir/my_file.vhdl’.  See also the -P command
line option.

Furthermore, GHDL provides a few commands which act on a library:

 -- Option: --dir <[options...] [libs]>

Displays the content of the design libraries (by default the ‘work’
library).  All options are allowed, but only a few are meaningful:
–work, –workdir and –std.

 -- Option: --clean <[options...]>

Try to remove any object, executable or temporary file it could have
created.  Source files are not removed.  The library is kept.

 -- Option: --remove <[options...]>

Acts like the clean command but removes the library too.  Note that
after removing a design library, the files are not known anymore by
GHDL.

 -- Option: --copy <--work=name [options...]>

Make a local copy of an existing library.  This is very useful if you
want to add units to the ‘ieee’ library:

     ghdl --copy --work=ieee --ieee=synopsys
     ghdl -a --work=ieee numeric_unsigned.vhd

6.7 VPI/VHPI build commands
===========================

These commands simplify the compile and the link of a user VPI or VHPI
module.  They are all wrappers: the arguments are in fact a whole
command line that is executed with additional switches.  Currently a
unix-like compiler (like ‘cc’, ‘gcc’ or ‘clang’) is expected: the
additional switches use their syntax.  The only option is ‘-v’ which
displays the command before its execution.

 -- Option: --vpi-compile <command>

Add an include path to the command and execute it:

     ghdl --vpi-compile command

This will execute:

     command -Ixxx/include

For example, ‘ghdl --vpi-compile gcc -c vpi1.c’ executes ‘gcc -c vpi1.c
-fPIC -Ixxx/include’.

 -- Option: --vpi-link <command>

Add a library path and name to the command and execute it:

     ghdl --vpi-link command

This will execute:

     command -Lxxx/lib -lghdlvpi

For example, ‘ghdl --vpi-link gcc -o vpi1.vpi vpi1.o’ executes ‘gcc -o
vpi1.vpi vpi1.o --shared -Lxxx/lib -lghdlvpi’.

 -- Option: --vpi-cflags

Display flags added by –vpi-compile.

 -- Option: --vpi-ldflags

Display flags added by –vpi-link.

 -- Option: --vpi-include-dir

Display the include directory added by the compile flags.

 -- Option: --vpi-library-dir

Display the library directory added by the link flags.

 -- Option: --vpi-library-dir-unix

Display the library directory added by the link flags, forcing UNIX
syntax.

6.8 IEEE library pitfalls
=========================

When you use options –ieee=synopsys, the ‘ieee’ library
contains non standard packages such as ‘std_logic_arith’.  These
packages are not standard because there are not described by an IEEE
standard, even if they have been put in the ‘IEEE’ library.
Furthermore, they are not really de-facto standard, because there are
slight differences between the packages of Mentor and those of Synopsys.
Furthermore, since they are not well thought out, their use has
pitfalls.  For example, this description has an error during
compilation:

     library ieee;
     use ieee.std_logic_1164.all;

     --  A counter from 0 to 10.
     entity counter is
       port (val : out std_logic_vector (3 downto 0);
             ck : std_logic;
             rst : std_logic);
     end counter;

     library ieee;
     use ieee.std_logic_unsigned.all;

     architecture bad of counter
     is
       signal v : std_logic_vector (3 downto 0);
     begin
       process (ck, rst)
       begin
         if rst = '1' then
           v <= x"0";
         elsif rising_edge (ck) then
           if v = "1010" then -- Error
             v <= x"0";
           else
             v <= v + 1;
           end if;
         end if;
       end process;

       val <= v;
     end bad;

When you analyze this design, GHDL does not accept it (two long lines
have been split for readability):

     ghdl -a --ieee=synopsys bad_counter.vhdl
     bad_counter.vhdl:13:14: operator "=" is overloaded
     bad_counter.vhdl:13:14: possible interpretations are:
     ../../libraries/ieee/std_logic_1164.v93:69:5: implicit function "="
         [std_logic_vector, std_logic_vector return boolean]
     ../../libraries/synopsys/std_logic_unsigned.vhdl:64:5: function "="
         [std_logic_vector, std_logic_vector return boolean]
     ../translate/ghdldrv/ghdl: compilation error

Indeed, the ‘“=”’ operator is defined in both packages, and both are
visible at the place it is used.  The first declaration is an implicit
one, which occurs when the ‘std_logic_vector’ type is declared and is an
element to element comparison.  The second one is an explicit declared
function, with the semantics of an unsigned comparison.

With some analysers, the explicit declaration has priority over the
implicit declaration, and this design can be analyzed without error.
However, this is not the rule given by the VHDL LRM, and since GHDL
follows these rules, it emits an error.

You can force GHDL to use this rule with the `-fexplicit' option (see
Options for further details).  However it is easy to fix this
error, by using a selected name:

     library ieee;
     use ieee.std_logic_unsigned.all;

     architecture fixed_bad of counter
     is
       signal v : std_logic_vector (3 downto 0);
     begin
       process (ck, rst)
       begin
         if rst = '1' then
           v <= x"0";
         elsif rising_edge (ck) then
           if ieee.std_logic_unsigned."=" (v, "1010") then
             v <= x"0";
           else
             v <= v + 1;
           end if;
         end if;
       end process;

       val <= v;
     end fixed_bad;

It is better to only use the standard packages defined by IEEE, which
provide the same functionalities:

     library ieee;
     use ieee.numeric_std.all;

     architecture good of counter
     is
       signal v : unsigned (3 downto 0);
     begin
       process (ck, rst)
       begin
         if rst = '1' then
           v <= x"0";
         elsif rising_edge (ck) then
           if v = "1010" then
             v <= x"0";
           else
             v <= v + 1;
           end if;
         end if;
       end process;

       val <= std_logic_vector (v);
     end good;

     Hint: The ‘ieee’ math packages (‘math_real’ and ‘math_complex’)
     provided with ‘GHDL’ are fully compliant with the ‘IEEE’ standard.

7 Simulation (runtime)
**********************

7.1 Simulation options
======================

In most system environments, it is possible to pass CLI options while
invoking a program.  Contrary to most programming languages, there is no
standard method in VHDL to obtain the arguments or to set the exit
status.  However, the GHDL runtime behaviour can be modified with some
options:

   - It is possible to pass parameters to your design through the
     generic interfaces of the top entity.

   - It is also possible to stop simulation after a certain time.  The
     exit status of the simulation is ‘EXIT_SUCCESS’ (‘0’) if the
     simulation completes, or ‘EXIT_FAILURE’ (‘1’) in case of error
     (assertion failure, overflow or any constraint error).

Here is the list of the most useful options.  For further info, see
Debugging.

     Hint: Note that these arguments are represented as
     ‘simulation_options...’ in this documentation.  For
     analysis/elaboration options, see Invoking GHDL.

 -- Option: -gGENERIC=VALUE

     Set value ‘VALUE’ to generic with name ‘GENERIC’.

     Example:

          $ ghdl -r --std=08 my_unit -gDEPTH=12

          Note: This is currently a run option; but in the (not near)
          future it might be deprecated to become an elaboration option
          only.  As a result, now you can generate a single binary and
          execute it multiple times with different arguments.  That
          might not be possible in the future.

          As explained in -e, performing a complete
          elaboration in terms of the LRM requires to get rid of the
          compile and link model.  This is mostly because delaying
          certain elaboration steps to the runtime prevents
          elaboration-time optimisions.

          Hint: Currently, GHDL has limited support for generic types in
          the CLI. It is suggested to use strings or integers.
          Nonetheless, project JSON-for-VHDL(1) allows to encode a set
          of parameters as stringified JSON, and it provides VHDL
          functions to read specific values from it.  It is valid for
          synthesis.

 -- Option: --assert-level=<LEVEL>

     Select the assertion level at which an assertion violation stops
     the simulation.  ‘LEVEL’ is the name from the ‘severity_level’
     enumerated type defined in the ‘standard’ package or the ‘none’
     name.

     By default, only assertion violation of severity level ‘failure’
     stops the simulation.

     For example, if ‘LEVEL’ was ‘warning’, any assertion violation with
     severity level ‘warning’, ‘error’ or ‘failure’ would stop
     simulation, but the assertion violation at the ‘note’ severity
     level would only display a message.

     Option –assert-level=none prevents any assertion
     violation from stopping simulation.

 -- Option: --backtrace-severity=<LEVEL>

     Select the assertion level at which an assertion violation display
     a backtrace (if available).

     This is useful when the assertion is generated by a function (like
     assertions in ‘ieee.numeric_std’) whose location is not very
     useful.

 -- Option: --ieee-asserts=<POLICY>

 -- Option: --asserts=<POLICY>

     Select how assertions are handled.  ‘POLICY’ can be ‘enable’ (the
     default), ‘disable’ which disables all assertions and
     ‘disable-at-0’ which disables only at the start of simulation.

     The ‘--ieee-asserts’ applies only to assertions from ‘ieee’
     package.  This option can be useful to avoid assertion messages
     from ‘ieee.numeric_std’ (and other ‘ieee’ packages).

     The ‘--asserts’ option applies to all assertions, including those
     from the ‘ieee’ units.  The behaviour of the latter can be
     overridden by using the ‘--ieee-asserts’ option after the
     ‘--asserts’ option.

 -- Option: --stop-time=<TIME>

     Stop the simulation after ‘TIME’.  ‘TIME’ is expressed as a time
     value, `without' any space.  The time is the simulation time, not
     the real clock time.

     For example:

          $ ./my_design --stop-time=10ns
          $ ./my_design --stop-time=ps

 -- Option: --stop-delta=<N>

     Stop the simulation after ‘N’ delta cycles in the same current
     time.  The default is 5000.

 -- Option: --disp-time

     Display the time and delta cycle number as simulation advances.

 -- Option: --unbuffered

     Disable buffering on stdout, stderr and files opened in write or
     append mode (TEXTIO).

 -- Option: --max-stack-alloc=<N>

     Emit an error message in case of allocation on the stack of an
     object larger than ‘N’ KB. Use 0 to disable these checks.

 -- Option: --sdf=<PATH=FILENAME>

     Do VITAL annotation on ‘PATH’ with SDF file ‘FILENAME’.

     ‘PATH’ is a path of instances, separated with ‘.’ or ‘/’.  Any
     separator can be used.  Instances are component instantiation
     labels, generate labels or block labels.  Currently, you cannot use
     an indexed name.

     Specifying a delay:

          --sdf=min=PATH=FILENAME
          --sdf=typ=PATH=FILENAME
          --sdf=max=PATH=FILENAME

     If the option contains a type of delay, that is ‘min=’, ‘typ=’ or
     ‘max=’, the annotator use respectively minimum, typical or maximum
     values.  If the option does not contain a type of delay, the
     annotator uses the typical delay.

     See section Backannotation, for more details.

 -- Option: --vpi=<FILENAME>

     Load VPI library.  This option can be used multiple times to load
     different libraries.

     Any registration functions in the ‘vlog_startup_routines’ array in
     the library will be called:

          void (*vlog_startup_routines[]) () = {
            my_handle_register,
            0
          };

 -- Option: --vpi-trace[=<FILENAME>]

     Trace vpi calls.  Trace is printed to ‘FILENAME’ if provided,
     otherwise to stdout.

 -- Option: --vhpi=<FILENAME>[:<ENTRYPOINT>]

     Load VHPI library.  This option can be used multiple times to load
     different libraries.

     If an ‘ENTRYPOINT’ registration function is provided, it will be
     called.  Otherwise, any registration functions in the
     ‘vhpi_startup_routines’ array in the library will be called:

          void (*vhpi_startup_routines[])() = {
            register_foreign_app,
            register_foreign_func,
            0
          };

 -- Option: --vhpi-trace[=<FILENAME>]

     Trace vhpi calls.  Trace is printed to ‘FILENAME’ if provided,
     otherwise to stdout.

 -- Option: --help

     Display a short description of the options accepted by the runtime
     library.

 -- Option: --no-run

     Stop the simulation before the first cycle.  This option actually
     elaborates the design, so it will catch any bound error in port
     maps.  See also -e.

     This may be used with –disp-tree to display the tree
     without simulating the whole design.

   ---------- Footnotes ----------

   (1) https://github.com/Paebbels/JSON-for-VHDL

7.2 Export waveforms
====================

     Note: All the waveform formats supported by GHDL are also supported
     by GTKWave(1).

 -- Option: --read-wave-opt=<FILENAME>

     Filter signals to be dumped to the wave file according to the wave
     option file provided.

     Here is a description of the wave option file format currently
     supported

          $ version = 1.1  # Optional

          # Path format for signals in packages :
          my_pkg.global_signal_a

          # Path format for signals in entities :
          /top/sub/clk

          # Dump every signal named reset in first level sub entities of top
          /top/*/reset

          # Dump every signal named reset in recursive sub entities of top
          /top/**/reset

          # Dump every signal of sub2 which could be anywhere in the design except
          # on the top level
          /**/sub2/*

          # Dump every signal of sub3 which must be a first level sub entity of the
          # top level
          /*/sub3/*

          # Dump every signal of the first level sub entities of sub3 (but not
          # those of sub3)
          /**/sub3/*/*

 -- Option: --write-wave-opt=<FILENAME>

     If the wave option file doesn’t exist, creates it with all the
     signals of the design.  Otherwise throws an error, because it won’t
     erase an existing file.

 -- Option: --vcd=<FILENAME>

 -- Option: --vcdgz=<FILENAME>

     Option –vcd dumps into the VCD file ‘FILENAME’ the
     signal values before each non-delta cycle.  If ‘FILENAME’ is ‘-’,
     then the standard output is used, otherwise a file is created or
     overwritten.

     The –vcdgz option is the same as the –vcd.
     option, but the output is compressed using the ‘zlib’ (‘gzip’
     compression).  However, you can’t use the ‘-’ filename.
     Furthermore, only one VCD file can be written.

     `VCD' (value change dump) is a file format defined by the ‘verilog’
     standard and used by virtually any wave viewer.  Since it comes
     from ‘verilog’, only a few VHDL types can be dumped.  GHDL dumps
     only signals whose base type is of the following:

        * types defined in the ‘std.standard’ package:

             * ‘bit’

             * ‘bit_vector’

        * types defined in the ‘ieee.std_logic_1164’ package:

             * ‘std_ulogic’

             * ‘std_logic’ (because it is a subtype of ‘std_ulogic’)

             * ‘std_ulogic_vector’

             * ‘std_logic_vector’

        * any integer type

          Note: It is very unfortunate there is no standard or
          well-known wave file format supporting VHDL types.  If you are
          aware of such a free format, please let us know.!

 -- Option: --vcd-nodate

     Do not write date in the VCD file.

 -- Option: --fst=<FILENAME>

     Write the waveforms into an ‘fst’ file.  The ‘fst’ files are much
     smaller than VCD or ‘GHW’ files, but it handles only the same
     signals as the VCD format.

 -- Option: --wave=<FILENAME>

     Write the waveforms into a GHDL Waveform (GHW) file.
     Contrary to VCD files, any VHDL type can be dumped into a GHW file.

   ---------- Footnotes ----------

   (1) http://gtkwave.sourceforge.net/

7.3 Export hierarchy and references
===================================

 -- Option: --disp-tree=<KIND>

     Display the design hierarchy as a tree of instantiated design
     entities.  This may be useful to understand the structure of a
     complex design.  ‘KIND’ is optional, but if set must be one of:

        * ‘none’ Do not display hierarchy.  Same as if the option was
          not present.

        * ‘inst’ Display entities, architectures, instances, blocks and
          generates statements.

        * ‘proc’ Like ‘inst’ but also display processes.

        * ‘port’ Like ‘proc’ but display ports and signals too.  If
          ‘KIND’ is not specified, the hierarchy is displayed with the
          ‘port’ mode.

 -- Option: --xref-html [options] files...

     To easily navigate through your sources, you may generate
     cross-references.  This command generates an html file for each
     ‘file’ given in the command line, with syntax highlighting and full
     cross-reference: every identifier is a link to its declaration.  An
     index of the files is created too.

     The set of ‘files’ are analyzed, and then, if the analysis is
     successful, html files are generated in the directory specified by
     the ‘-o <DIR>’ option, or ‘html/’ directory by default.  The style
     of the html file can be modified with the –format.
     option.

 -- Option: --psl-report=<FILENAME>

     Write a report for PSL at the end of simulation.  For each PSL
     cover and assert statements, the name, source location and whether
     it passed or failed is reported.  The file is written using the
     JSON format, but is still human readable.

 -- Option: --psl-report-uncovered

     Reports warning for each uncovered PSL cover point when simulation
     ends.

8 Synthesis
***********

     Warning: This is experimental and work in progress!  If you find
     crashes or unsupported features, please report them.!

Since ‘v0.37’, GHDL features a built-in (experimental) synthesis kernel
with two backends: ‘synth’ and ‘yosys-plugin’.  Currently, synthesis is
supported as a front-end of other synthesis and technology mapping
tools.  Hence, the netlists generated by GHDL are not optimised.

8.1 Synthesis [‘--synth’]
=========================

This command is useful for checking that a design can be synthesized,
before actually running a complete synthesis tool.  In fact, because
this is expected to be much faster, it can be used as a frequent check.

Moreover, since GHDL’s front-end supports multiple versions of the
standard, but the synthesised netlists are generated using a subset of
VHDL 1993, GHDL’s synthesis features can be used as a preprocessor with
tools that do support older versions of the standard, but which don’t
provide the most recent features.

Currently, the default output is a generic netlist using a (very simple)
subset of VHDL 1993.  See –out and #1174(1) for on-going
discussion about other output formats.

 -- Option: --synth <[options...] [library.]top_unit [arch]>

     Elaborates for synthesis the design whose top unit is indicated by
     ‘[library.]top_unit [arch]’.

          Attention: All the units must have been analyzed; that is, the
          artifacts of previously executed -a calls must
          exist.

 -- Option: --synth <[options...] file... -e [top_unit [arch]]>

     Analyses and elaborates for synthesis the files present on the
     command line only.  Elaboration starts from the top unit indicated
     by ‘[top_unit [arch]]’.  If no top unit is specified, GHDL will try
     guessing it and a note will be printed.

          Important: Files can be provided in any order, but ‘-e’ must
          be provided after them.  That is, ‘--synth <[options...]
          files...>’ is NOT supported.  This is because we want to
          unambiguously tell files and the unit specification apart.  We
          don’t want to rely on parsing the items and guessing whether
          we are dealing with files or a top unit name.  In corner
          cases, a filename might exist which matches the name of a
          primary unit: ‘ghdl synth name’.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/issues/1174

8.2 Synthesis options
=====================

     Hint: Multiple pragmas are supported for preventing blocks of code
     from being synthesized:

     ‘-- pragma|synopsys|synthesis (synthesis|translate)( |_)(on|off)’

     For example:

        * ‘-- pragma translate off’

        * ‘-- synthesis translate_on’

        * ‘-- synopsys synthesis_off’

Due to GHDL’s modular architecture (see Overview), the
synthesis kernel shares the VHDL parsing front-end with the simulation
back-ends.  Hence, available options for synthesis are the same as for
analysis and/or simulation elaboration (see Options).  In
addition to those options, there are some synthesis specific options.

     Tip: Furthermore there are lot of debug options available.  Beware:
     these debug options should only used for debugging purposes as they
     aren’t guaranteed to be stable during development of GHDL’s
     synthesis feature.  You can find them in the file ghdlsynth.adb(1)
     in the procedure ‘Decode_Option()’.

 -- Option: -gNAME=VALUE

     Override top unit generic ‘NAME’ with value ‘VALUE’. Similar to the
     run-time option -gGENERIC.

     Example:

          $ ghdl --synth --std=08 -gDEPTH=12 [library.]top_unit [arch]

 -- Option: --out=<vhdl|raw-vhdl|verilog|dot|none|raw|dump>

        * `vhdl' `(default)': equivalent to ‘raw-vhdl’, but the original
          top-level unit is preserved unmodified, so the synthesized
          design can be simulated with the same testbench.

        * `raw-vhdl': all statements are converted to a simple VHDL 1993
          netlist, for allowing instantiation in other synthesis tools
          without modern VHDL support.

        * `verilog': generate a verilog netlist.

        * `dot': generate a graphviz dot diagram of the netlist AST.

        * `none': perform the synthesis, but do not generate any output;
          useful for frequent checks.

        * `raw': print the internal representation of the design, for
          debugging purposes.

        * `dump': similar to ‘raw’, with even more internal details for
          debugging.

 -- Option: --vendor-library=NAME

     Any unit from library NAME is a black box.

     Example:

          $ ghdl --synth --std=08 --vendor-library=vendorlib [library.]top_unit [arch]

   ---------- Footnotes ----------

   (1)
https://github.com/ghdl/ghdl/blob/master/src/ghdldrv/ghdlsynth.adb

8.2.1 Assertions, PSL and formal verification
---------------------------------------------

 -- Option: --no-formal

     Neither synthesize assert nor PSL.

     Example:

          $ ghdl --synth --std=08 --no-formal [library.]top_unit [arch]

 -- Option: --no-assert-cover

     Disable automatic cover PSL assertion activation.  If this option
     isn’t used, GHDL generates ‘cover’ directives for each ‘assert’
     directive (with an implication operator) automatically during
     synthesis.

     Example:

          $ ghdl --synth --std=08 --no-assert-cover [library.]top_unit [arch]

 -- Option: --assert-assumes

     Treat all PSL asserts like PSL assumes.  If this option is used,
     GHDL generates an ‘assume’ directive for each ‘assert’ directive
     during synthesis.  This is similar to the ‘-assert-assumes’ option
     of Yosys’ read_verilog(1) command.

     Example:

          $ ghdl --synth --std=08 --assert-assumes [library.]top_unit [arch]

     As all PSL asserts are treated like PSL assumes, no ‘cover’
     directives are automatically generated for them, regardless of
     using the –no-assert-cover or not.

 -- Option: --assume-asserts

     Treat all PSL assumes like PSL asserts.  If this option is used,
     GHDL generates an ‘assert’ directive for each ‘assume’ directive
     during synthesis.  This is similar to the ‘-assume-asserts’ option
     of Yosys’ read_verilog(2) command.

     Example:

          $ ghdl --synth --std=08 --assume-asserts [library.]top_unit [arch]

     ‘cover’ directives are automatically generated for the resulting
     asserts (with an implication operator) if –no-assert-cover
     isn’t used.

   ---------- Footnotes ----------

   (1) http://www.clifford.at/yosys/cmd_read_verilog.html

   (2) http://www.clifford.at/yosys/cmd_read_verilog.html

8.3 Yosys plugin
================

ghdl-yosys-plugin(1) is a module to use GHDL as a VHDL front-end for
Yosys Open Synthesis Suite(2), a framework for optimised synthesis and
technology mapping.  Artifacts generated by Yosys can be used in
multiple open source and vendor tools to achieve P&R, formal
verification, etc.  A relevant feature of combining GHDL and Yosys is
that mixed-language (VHDL-Verilog) synthesis with open source tools is
possible.

The command line syntax for this plugin is the same as for –synth,
except that the command name (‘--synth’) is neither required nor
supported.  Instead, ‘yosys’, ‘yosys -m ghdl’ or ‘yosys -m
path/to/ghdl.so’ need to be used, depending of how is the plugin built.
See ghdl/ghdl-yosys-plugin: README(3) for building and installation
guidelines.

     Hint: ghdl-yosys-plugin is a thin layer that converts the internal
     representation of –synth to Yosys’ C API. Hence, it is
     suggested to check the designs with –synth before
     running synthesis with Yosys.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl-yosys-plugin

   (2) http://www.clifford.at/yosys/

   (3) https://github.com/ghdl/ghdl-yosys-plugin

8.3.1 Convert (V)HDL to other formats
-------------------------------------

Yosys provides ‘write_*’ commands for generating output netlists in
different formats.  Therefore, VHDL and/or Verilog sources can be
converted to EDIF, SMT, BTOR2, etc.

     Hint: For a comprehensive list of supported output formats (AIGER,
     BLIF, ILANG, JSON…), check out the Yosys documentation(1).

   ---------- Footnotes ----------

   (1) http://www.clifford.at/yosys/documentation.html

8.3.1.1 To Verilog
..................

     yosys -m ghdl -p 'ghdl filename.vhdl -e top_unit [arch]; write_verilog filename.v'

8.3.1.2 To EDIF
...............

     yosys -m ghdl -p 'ghdl filename.vhdl -e top_unit [arch]; write_edif filename.edif'

8.3.1.3 To SMT
..............

     yosys -m ghdl -p 'ghdl filename.vhdl -e top_unit [arch]; write_smt2 filename.smt2'

8.3.1.4 To BTOR2
................

     yosys -m ghdl -p 'ghdl filename.vhdl -e top_unit [arch]; write_btor filename.btor'

8.3.1.5 To FIRRTL
.................

     yosys -m ghdl -p 'ghdl filename.vhdl -e top_unit [arch]; write_firrtl filename.firrtl'

8.3.1.6 To VHDL
...............

There is work in progress in ghdl/ghdl-yosys-plugin#122(1) for adding a
‘write_vhdl’ command to Yosys.  That is the complement of what
ghdl-yosys-plugin provides.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl-yosys-plugin/pull/122

9 Additional Command Reference
******************************

     Hint: The most common commands and options are shown in section
     Invoking GHDL.  Here the advanced and experimental
     features are described.

9.1 Environment variables
=========================

 -- Environment Variable: GHDL_PREFIX

9.2 Misc commands
=================

There are a few GHDL commands which are seldom useful.

9.2.1 Help [‘-h’]
-----------------

 -- Option: --help, -h

Display (on the standard output) a short description of the all the
commands available.  If the help switch is followed by a command switch,
then options for that second command are displayed:

     ghdl --help
     ghdl -h
     ghdl -h command

9.2.2 Display config [‘--disp-config’]
--------------------------------------

 -- Option: --disp-config <[options]>

Display the program paths and options used by GHDL. This may be useful
to track installation errors.

9.2.3 Display standard [‘--disp-standard’]
------------------------------------------

 -- Option: --disp-standard <[options]>

Display the ‘std.standard’ package.

9.2.4 Version [‘--version’]
---------------------------

 -- Option: --version, -v

Display the GHDL version.

9.3 File commands
=================

The following commands act on one or several files.  These are not
analyzed, therefore, they work even if a file has semantic errors.

9.3.1 Format [‘fmt’]
--------------------

 -- Option: fmt <file>

Format on the standard output the input file.

9.3.2 Pretty print [‘--pp-html’]
--------------------------------

 -- Option: --pp-html <[options] file...>

The files are just scanned and an html file with syntax highlighting is
generated on standard output.  Since the files are not even parsed,
erroneous files or incomplete designs can be pretty printed.  The style
of the html file can be modified with the –format option.

9.3.3 Find [‘-f’]
-----------------

 -- Option: -f <file...>

The files are scanned, parsed and the names of design units are
displayed.  Design units marked with two stars are candidates to be at
the apex of a design hierarchy.

9.3.4 Chop [‘--chop’]
---------------------

 -- Option: --chop <files...>

The provided files are read, and a file is written in the current
directory for every design unit.  Each filename is built according to
the type:

   * For an entity declaration, a package declaration, or a
     configuration the file name is ‘NAME.vhdl’, where ‘NAME’ is the
     name of the design unit.

   * For a package body, the filename is ‘NAME-body.vhdl’.

   * Finally, for an architecture ‘ARCH’ of an entity ‘ENTITY’, the
     filename is ‘ENTITY-ARCH.vhdl’.

Since the input files are parsed, this command aborts in case of syntax
error.  The command aborts too if a file to be written already exists.

Comments between design units are stored into the most adequate files.

This command may be useful to split big files, if your computer doesn’t
have enough memory to compile such files.  The size of the executable is
reduced too.

9.3.5 Lines [‘--lines’]
-----------------------

 -- Option: --lines <files...>

Display on the standard output lines of files preceded by line number.

9.3.6 XML tree generation [‘--file-to-xml’]
-------------------------------------------

 -- Option: --file-to-xml

     Outputs an XML representation of the decorated syntax tree for the
     input file and its dependencies.  It can be used for VHDL tooling
     using semantic information, like style checkers, documentation
     extraction, complexity estimation, etc.

     Warning:
        * The AST slightly changes from time to time (particularly when
          new nodes are added for new language features), so be liberal
          in what is allowed by your tool.  Also, the XML can be quite
          large so consider it only during prototyping.

        * Note that at this time there is no XML dump of the elaborated
          design.

9.4 GCC/LLVM only commands
==========================

9.4.1 Bind [‘--bind’]
---------------------

 -- Option: --bind <[options] [library.]top_unit [arch]>

Performs only the first stage of the elaboration command; the list of
object files is created but the executable is not built.  This command
should be used only when the main entry point is not GHDL.

     Hint: Currently, the objects generated by –bind are
     created in the working directory.  This behaviour is different from
     other object files generated with -a, which are always
     placed in the same directory as the ‘WORK’ library.  It is possible
     to provide an output path with ‘ghdl --bind -o path/top_unit
     [library.]top_unit [arch]’.  However, ‘ghdl --list-link’ will only
     search in the current path.

9.4.2 Link [‘--link’]
---------------------

 -- Option: --link <[options] [library.]top_unit [arch]>

Performs only the second stage of the elaboration command: the
executable is created by linking the files of the object files list.
This command is available only for completeness.  The elaboration
command is equivalent to the bind command followed by the link command.

9.4.3 List link [‘--list-link’]
-------------------------------

 -- Option: --list-link <[library.]top_unit [arch]>

This command may be used only after a bind command.  GHDL displays all
the files which will be linked to create an executable and additional
arguments for the linker.  This command is intended to add object files
in a link of a foreign program.  This command should be used only after
‘ghdl --bind’, as some files generated by it are looked for in the
current path.

     Hint: One of the arguments returned by ‘--list-link’ is
     ‘-Wl,--version-script=PREFIX/lib/ghdl/grt.ver’, where ‘PREFIX’ is
     the installation path of GHDL. This will hide most of the symbols
     when the target executable binary is built.  In some contexts,
     where the binary is to be loaded dynamically, the user might want
     additional symbols to be accessible.  There are two possible
     approaches to have it done:

        * Filter the output of ‘--list-link’ with e.g.  ‘sed’.

        * Provide an additional non-anonymous version script:
          ‘-Wl,-Wl,--version-script=file.ver’.

9.5 Options
===========

 -- Option: --GHDL1<=COMMAND>

Use ‘COMMAND’ as the command name for the compiler.  If ‘COMMAND’ is not
a path, then it is searched in the path.

 -- Option: --AS<=COMMAND>

Use ‘COMMAND’ as the command name for the assembler.  If ‘COMMAND’ is
not a path, then it is searched in the path.  The default is ‘as’.

 -- Option: --LINK<=COMMAND>

Use ‘COMMAND’ as the linker driver.  If ‘COMMAND’ is not a path, then it
is searched in the path.  The default is ‘gcc’.

9.6 Passing options to other programs
=====================================

     Warning: These options are only available with GCC/LLVM.

For many commands, GHDL acts as a driver: it invokes programs to perform
the command.  You can pass arbitrary options to these programs.

Both the compiler and the linker are in fact GCC programs.  See the GCC
manual for details on GCC options.

 -- Option: -Wc,<OPTION>

Pass ‘OPTION’ as an option to the compiler.

 -- Option: -Wa,<OPTION>

Pass ‘OPTION’ as an option to the assembler.

 -- Option: -Wl,<OPTION>

Pass ‘OPTION’ as an option to the linker.

10 Implementation of VHDL
*************************

10.1 VHDL standards
===================

Unfortunately, there are many versions of the VHDL language, and they
aren’t backward compatible.

The VHDL language was first standardized in 1987 by IEEE as IEEE
1076-1987, and is commonly referred as VHDL-87.  This is certainly the
most important version, since most of the VHDL tools are still based on
this standard.

Various problems of this first standard have been analyzed by experts
groups to give reasonable ways of interpreting the unclear portions of
the standard.

VHDL was revised in 1993 by IEEE as IEEE 1076-1993.  This revision is
still well-known.

Unfortunately, VHDL-93 is not fully compatible with VHDL-87, i.e.  some
perfectly valid VHDL-87 programs are invalid VHDL-93 programs.  Here are
some of the reasons:

   * the syntax of file declaration has changed (this is the most
     visible source of incompatibility),

   * new keywords were introduced (group, impure, inertial, literal,
     postponed, pure, reject, rol, ror, shared, sla, sll, sra, srl,
     unaffected, xnor),

   * some dynamic behaviours have changed (the concatenation is one of
     them),

   * rules have been added.

Shared variables were replaced by protected types in the 2000 revision
of the VHDL standard.  This modification is also known as 1076a.  Note
that this standard is not fully backward compatible with VHDL-93, since
the type of a shared variable must now be a protected type (there was no
such restriction before).  This incompatibility can be bypassed with the
-frelaxed option.

Minor corrections were added by the 2002 revision of the VHDL standard.
This revision is not fully backward compatible with VHDL-00 since, for
example, the value of the ‘‘instance_name’ attribute has slightly
changed.

The latest version is 2008.  Many features have been added, and GHDL
doesn’t implement all of them.

You can select the VHDL standard expected by GHDL with the
–std=STANDARD option, where ‘STANDARD’ is one of the list below:

87

     Select VHDL-87 standard as defined by IEEE 1076-1987.  LRM bugs
     corrected by later revisions are taken into account.

93

     Select VHDL-93; VHDL-87 file declarations are not accepted.

93c

     Same as 93 and -frelaxed.

00

     Select VHDL-2000 standard, which adds protected types.

02

     Select VHDL-2002 standard.

08

     Select VHDL-2008 standard (partially implemented).

Multiple standards can be used in a design:

GROUP     VHDL Standard

-------------------------------

87        87

93        93, 93c, 00, 02

08        08

     Note: The standards in each group are considered compatible: you
     can elaborate a design mixing these standards.  However, standards
     of different groups are not compatible.

10.2 PSL support
================

GHDL implements a subset of PSL(1).

   ---------- Footnotes ----------

   (1) https://en.wikipedia.org/wiki/Property_Specification_Language

10.2.1 PSL implementation
-------------------------

A PSL statement is considered as a process, so it’s not allowed within a
process.

All PSL directives (‘assert’, ‘assume’, ‘restrict’, ‘cover’) must be
clocked (GHDL doesn’t support unclocked directives).  Furthermore only
one clock per directive is allowed.

You can either use a default clock like this:

     default clock is rising_edge (CLK);
     assert always
       a -> eventually! b;

or use a clocked expression (note the use of parentheses):

     assert (always a -> next[3](b)) @rising_edge(clk);

Of course only the simple subset of PSL is allowed.

Currently the built-in functions are not implemented, see issue #662(1).
PSL functions ‘prev()’, ‘stable()’, ‘rose()’, ‘fell()’, ‘onehot()’ and
‘onehot0()’ are supported with GHDL synthesis.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/issues/662

10.2.2 PSL usage
----------------

10.2.2.1 PSL annotations embedded in comments
.............................................

GHDL understands embedded PSL annotations in VHDL files:

       -- psl default clock is rising_edge (CLK);
       -- psl assert always
       --   a -> eventually! b;
     end architecture rtl;

   * A PSL assertion statement must appear within a comment that starts
     with the ‘psl’ keyword.  The keyword must be followed (on the same
     line) by a PSL keyword such as ‘assert’ or ‘default’.  To continue
     a PSL statement on the next line, just start a new comment.

     Hint: As PSL annotations are embedded within comments, you must
     analyze your design with option -fpsl to enable PSL
     annotations:

          ghdl -a -fpsl vhdl_design.vhdl
          ghdl -e vhdl_design

10.2.2.2 PSL annotations (VHDL-2008 only)
.........................................

Since VHDL-2008 PSL is integrated in the VHDL language.  You can use PSL
in a VHDL(-2008) design without embedding it in comments.

       default clock is rising_edge (CLK);
       assert always
         a -> eventually! b;
     end architecture rtl;

     Hint: You have to use the –std=08 option:

          ghdl -a --std=08 vhdl_design.vhdl
          ghdl -e --std=08 vhdl_design

10.2.2.3 PSL vunit files (VHDL-2008 / Synthesis only)
.....................................................

GHDL supports vunit (Verification Unit) files.

     vunit vunit_name (entity_name(architecture_name))
     {
       default clock is rising_edge(clk);
       assert always cnt /= 5 abort rst;
     }

   * A vunit can contain PSL and VHDL code.

   * It is bound to a VHDL entity or an instance of it.

   * The PSL vunit is in the same scope as the VHDL design it is bound
     to.  You have access to all objects (ports, types, signals) of the
     VHDL design.

     Hint: The PSL vunit file has to be analyzed together with the VHDL
     design file, for example:

          ghdl -a --std=08 vhdl_design.vhdl vunit.psl

     Or when using the ‘–synth’ command:

          ghdl --synth --std=08 vhdl_design.vhdl vunit.psl -e vhdl_design

10.3 Source representation
==========================

According to the VHDL standard, design units (i.e.  entities,
architectures, packages, package bodies, and configurations) may be
independently analyzed.

Several design units may be grouped into a design file.

In GHDL, a system file represents a design file.  That is, a file
compiled by GHDL may contain one or more design units.

It is common to have several design units in a design file.

GHDL does not impose any restriction on the name of a design file
(except that the filename may not contain any control character or
spaces).

GHDL does not keep a binary representation of the design units analyzed
like other VHDL analyzers.  The sources of the design units are re-read
when needed (for example, an entity is re-read when one of its
architectures is analyzed).  Therefore, if you delete or modify a source
file of a unit analyzed, GHDL will refuse to use it.

10.4 Library database
=====================

Each design unit analyzed is placed into a design library.  By default,
the name of this design library is ‘work’; however, this can be changed
with the –work option of GHDL.

To keep the list of design units in a design library, GHDL creates
library files.  The name of these files is ‘<LIB_NAME>-obj<GROUP>.cf’,
where ‘<LIB_NAME>’ is the name of the library, and ‘<GROUP>’ the VHDL
version (87, 93 or 08) used to analyze the design units.

For details on ‘GROUP’ values see section VHDL standards.

You don’t have to know how to read a library file.  You can display it
using the `-d' of ‘ghdl’.  The file contains the name of the design
units, as well as the location and the dependencies.

The format may change with the next version of GHDL.

10.5 Top entity
===============

There are some restrictions on the entity being at the apex of a design
hierarchy:

   * The generic must have a default value, and the value of a generic
     is its default value.

   * The ports type must be constrained.

10.6 Using vendor libraries
===========================

Many vendors libraries have been analyzed with ‘GHDL’. There are usually
no problems.  Be sure to use the –work option.  However, some
problems have been encountered.  ‘GHDL’ follows the ‘VHDL’ LRM (the
manual which defines ‘VHDL’) more strictly than other ‘VHDL’ tools.  You
could try to relax the restrictions by using the –std=93c,
-fexplicit, -frelaxed-rules and
–warn-no-vital-generic.

11 Implementation of VITAL
**************************

This chapter describes how VITAL is implemented in GHDL. Support of
VITAL is really in a preliminary stage.  Do not expect too much of it as
of right now.

11.1 VITAL packages
===================

The VITAL standard or IEEE 1076.4 was first published in 1995, and
revised in 2000.

The version of the VITAL packages depends on the VHDL standard.  VITAL
1995 packages are used with the VHDL 1987 standard, while VITAL 2000
packages are used with other standards.  This choice is based on the
requirements of VITAL: VITAL 1995 requires the models follow the VHDL
1987 standard, while VITAL 2000 requires the models follow VHDL 1993.

The VITAL 2000 packages were slightly modified so that they conform to
the VHDL 1993 standard (a few functions are made pure and a few impure).

11.2 VHDL restrictions for VITAL
================================

The VITAL standard (partially) implemented is the IEEE 1076.4 standard
published in 1995.

This standard defines restriction of the VHDL language usage on VITAL
model.  A `VITAL model' is a design unit (entity or architecture)
decorated by the ‘VITAL_Level0’ or ‘VITAL_Level1’ attribute.  These
attributes are defined in the ‘ieee.VITAL_Timing’ package.

Currently, only VITAL level 0 checks are implemented.  VITAL level 1
models can be analyzed, but GHDL doesn’t check they comply with the
VITAL standard.

Moreover, GHDL doesn’t check (yet) that timing generics are not read
inside a VITAL level 0 model prior the VITAL annotation.

The analysis of a non-conformant VITAL model fails.  You can disable the
checks of VITAL restrictions with the `–no-vital-checks'.  Even when
restrictions are not checked, SDF annotation can be performed.

11.3 Backannotation
===================

`Backannotation' is the process of setting VITAL generics with timing
information provided by an external files.

The external files must be SDF (Standard Delay Format) files.  GHDL
supports a tiny subset of SDF version 2.1.  Other version numbers can be
used, provided no features added by later versions are used.

Hierarchical instance names are not supported.  However you can use a
list of instances.  If there is no instance, the top entity will be
annotated and the celltype must be the name of the top entity.  If there
is at least one instance, the last instance name must be a component
instantiation label, and the celltype must be the name of the component
declaration instantiated.

Instances being annotated are not required to be VITAL compliant.
However generics being annotated must follow rules of VITAL (e.g., type
must be a suitable vital delay type).

Currently, only timing constraints applying on a timing generic of type
‘VitalDelayType01’ has been implemented.  This SDF annotator is just a
proof of concept.  Features will be added with the following GHDL
release.

11.4 Negative constraint calculation
====================================

Negative constraint delay adjustments are necessary to handle negative
constraints such as a negative setup time.  This step is defined in the
VITAL standard and should occur after backannotation.

GHDL does not do negative constraint calculation.  It fails to handle
models with negative constraint.  I hope to be able to add this phase
soon.

12 Directory structure
**********************

   * ‘doc’: ‘reStructuredText’ sources and auxiliary files to build the
     documentation with Sphinx(1).  A continuous integration (CI)
     workflow is used to automatically build and deploy this site and/or
     PDF you are reading.

   * ‘libraries’: mostly third party libraries such as ‘ieee’, ‘std’,
     ‘synopsys’ and ‘vital’.  Except for a few shell and ‘Python’
     scripts, all the content is written in VHDL.

   * ‘logo’: Python and Gimp sources of the logo and the banners.

   * ‘pyGHDL’: sources of the Python Interfaces.

   * ‘scripts’: scripts and auxiliary files:

        * ‘scripts/vendors’: Vendors like Altera, Lattice and Xilinx
          have their own simulation libraries, especially for FPGA
          primitives, soft and hard macros.  These libraries cannot be
          shipped with GHDL, but we offer prepared compile scripts to
          pre-compile the vendor libraries, if the vendor tool is
          present on the computer.  See Precompile Vendor Primitives
          for information on how to use them.

        * ‘scripts/gcc’: header and configuration files to build GHDL
          with GCC (all platforms).

        * ‘scripts/msys2-*’: PKGBUILD recipes for building nightly GHDL
          packages on MSYS2.

        * ‘scripts/pnodes*’: Python scripts for automatically generating
          some of the sources of Python Interfaces.

   * ‘src’: sources of GHDL. Most of them are written in Ada, some in C.

   * ‘testsuite’: files used for testing.

   ---------- Footnotes ----------

   (1) http://www.sphinx-doc.org

13 Building GHDL from Sources
*****************************

13.1 Sources
============

     Hint: All the following procedures will retrieve the latest
     development version of GHDL, i.e., the ‘master’ branch at
     github.com/ghdl/ghdl(1).  We do our best to keep it stable, but
     bugs can seldom be published.  See ‘HINT’ boxes below for
     instructions to get older releases.

Tarball/zip-file
................

GHDL can be downloaded as a zip-file or tarball from GitHub.  See the
following table to choose your desired format/version:

     Hint: To download a specific version of GHDL, use this alternative
     URL, where ‘<format>’ is ‘tar.gz’ or ‘zip’:
     ‘https://codeload.github.com/ghdl/ghdl/<format>/<tag>’.

git clone
.........

GHDL can be downloaded (cloned) with ‘git clone’ from GitHub.  GitHub
offers the transfer protocols HTTPS and SSH. You should use SSH if you
have a GitHub account and have already uploaded an OpenSSH public key to
GitHub, otherwise use HTTPS if you have no account or you want to use
login credentials.

Protocol       GitHub Repository URL

------------------------------------------------------------

HTTPS          ‘https://github.com/ghdl/ghdl.git’

SSH            ‘ssh://git@github.com:ghdl/ghdl.git’

     Hint: Execute ‘git checkout -b stable <tag>’ after ‘git clone’, to
     checkout a specific version of GHDL.

Command line instructions to clone GHDL with HTTPS protocol:

     cd GitRoot
     git clone "https://github.com/ghdl/ghdl.git" ghdl
     cd ghdl
     git remote rename origin github

Command line instructions to clone GHDL with SSH protocol:

     cd GitRoot
     git clone "ssh://git@github.com:ghdl/ghdl.git" ghdl
     cd ghdl
     git remote rename origin github

     Note: Executing the following instructions in Windows Command
     Prompt (‘cmd.exe’) won’t function or will result in errors!  All
     Windows command line instructions are intended for ‘Windows
     PowerShell’, if not marked otherwise.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl

13.2 mcode backend
==================

The mcode backend is available for all supported platforms and is also
the simplest procedure, because it requires the fewest dependencies and
configuration options.

13.2.1 GCC/GNAT: GNU/Linux or Windows (MinGW/MSYS2)
---------------------------------------------------

Requirements
............

   * GCC (Gnu Compiler Collection)

   * GNAT (Ada compiler for GCC)

GHDL is configured by ‘configure’ and built by ‘make’.

   * First, GHDL needs to be configured.  It is common to specify a
     ‘PREFIX’ (installation directory like ‘/usr/local’ or ‘/opt/ghdl’).
     Without any other option, ‘configure’ selects ‘mcode’ as the
     backend.

   * Next, ‘make’ starts the compilation process.

   * Finally, ‘make install’ installs GHDL into the installation
     directory specified by ‘PREFIX’.

     Hint: ON GNU/Linux, you may need super user privileges (‘sudo
     ...’).

Example:
........

     $ cd <ghdl>
     $ mkdir build
     $ cd build
     $ ../configure --prefix=PREFIX
     $ make
     $ make install

13.2.2 GNAT GPL: Windows
------------------------

Requirements
............

   * GNAT GPL from ‘http://libre.adacore.com’

   * PowerShell 4

   * PowerShell Community Extensions (PSCX)

‘compile.ps1’
.............

     Commands          Description
     --------------------------------------------------------------------
     -Help             Display the integrated help pages
     -Clean            Clean up all files and directories
     -Compile          Compile GHDL
     -Install          Install all files into a directory (xcopy deployment)
     -Uninstall        Uninstall all files from a directory
     -Update           Update files in the installation directory
     -CreatePackage    create an installer package

     Install options:
     -InstallPath      Installation directory

     CreatePackage options:
     -Zip              Create a zip-file for xcopy deployment

13.3 LLVM backend
=================

Requirements
............

   * GCC (Gnu Compiler Collection)

   * GNAT (Ada compiler for GCC)

   * LLVM (Low-Level-Virtual Machine) and CLANG (Compiler front-end for
     LLVM): 3.5, 3.8, 3.9, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0,
     11.1 or 12.0

13.3.1 GCC/GNAT: GNU/Linux or Windows (MinGW/MSYS2)
---------------------------------------------------

     Hint: You need to install LLVM (usually depends on ‘libedit’, see
     #29(1)).  Debugging is supported with LLVM 3.5 or ‘>=6’.

GHDL is configured by ‘configure’ and built by ‘make’.

   * First, GHDL needs to be configured.  It is common to specify a
     ‘PREFIX’ (installation directory like ‘/usr/local’ or ‘/opt/ghdl’).
     Set the proper arg, ‘./configure --with-llvm-config’, to select
     LLVM backend.  If ‘llvm-config’ is not in your path, you can
     specify it: ‘./configure
     --with-llvm-config=LLVM_INSTALL/bin/llvm-config’.

   * Next, ‘make’ starts the compilation process.

   * Finally, ‘make install’ installs GHDL into the installation
     directory specified by ‘PREFIX’.

Example:
........

     $ cd <ghdl>
     $ mkdir build
     $ cd build
     $ ../configure --with-llvm-config --prefix=PREFIX
     $ make
     $ make install

     Hint: If you want to have stack backtraces on errors (like assert
     failure or index of out bounds), you need to configure and build
     ‘libbacktrace’ from GCC (you don’t need to configure GCC). Then add
     the following arg to configure:
     ‘--with-backtrace-lib=/path-to-gcc-build/libbacktrace/.libs/libbacktrace.a’

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/issues/29

13.4 GCC backend
================

     Todo: Instructions to build GHDL with GCC backend on Windows are
     not available yet.

Requirements
............

   * GCC (Gnu Compiler Collection)

   * GNAT (Ada compiler for GCC)

   * GCC source files.  Download and untar the sources of version 4.9.x,
     5.x, 6.x, 7.x, 8.x, 9.x or 10.x (>>‘GCC mirror sites
     <https://gcc.gnu.org/mirrors.html‘__<<).

     Hint: There are some dependencies for building GCC (‘gmp’, ‘mpfr’
     and ‘mpc’).  If you have not installed them on your system, you can
     either build them manually or use the ‘download_prerequisites’
     script provided in the GCC source tree (recommended): ‘cd
     /path/to/gcc/source/dir && ./contrib/download_prerequisites’.

   * First configure GHDL, specify GCC source directory and installation
     prefix (like ‘/usr/local’ or ‘/opt/ghdl’).

   * Next, invoke ‘make copy-sources’ to copy GHDL sources in the source
     directory.

   * Then, configure GCC. The list of ‘--disable’ configure options can
     be adjusted to your needs.  GHDL does not require all these
     optional libraries and disabling them will speed up the build.

   * Now, build and install GCC with ‘make’.

   * Last, build and install GHDL libraries.

Example:
........

     $ cd <ghdl>
     $ mkdir build
     $ cd build
     $ ../configure --with-gcc=/path/to/gcc/source/dir --prefix=/usr/local
     $ make copy-sources
     $ mkdir gcc-objs; cd gcc-objs
     $ /path/to/gcc/source/dir/configure --prefix=/usr/local --enable-languages=c,vhdl \
     --disable-bootstrap --disable-lto --disable-multilib --disable-libssp \
     --disable-libgomp --disable-libquadmath
     $ make -j2 && make install
     $ cd /path/to/ghdl/source/dir/build
     $ make ghdllib
     $ make install

     Hint: Note that the prefix directory to configure ‘gcc’ must be the
     same as the one used to configure GHDL. If you have manually built
     ‘gmp’/‘mpfr’/‘mpc’ (without using the script in ‘contrib’), and, if
     you have installed them in a non-standard directory, you may need
     to add ‘--with-gmp=GMP_INSTALL_DIR’.

     Hint: If your system gcc was configured with ‘--enable-default-pie’
     (check if that option appears in the output of ‘gcc -v’), you
     should also add it.

     Hint: If you don’t want to install ‘makeinfo’, do ‘make install
     MAKEINFO=true’ instead.

     Hint: Once GCC (with GHDL) has been built once, it is possible to
     work on the GHDL source tree without copying it in the GCC tree.
     Commands are:

          $ make ghdl1-gcc           # Build the compiler
          $ make ghdl_gcc            # Build the driver
          $ make libs.vhdl.local_gcc # Compile the vhdl libraries
          $ make grt-all             # Build the GHDL runtime
          $ make install.vpi.local   # Locally install vpi files

     In ‘src/ortho/gcc’, create a ‘Makefile.conf’ file that sets the
     following variables:

          AGCC_GCCSRC_DIR=/path/to/gcc/sources
          AGCC_GCCOBJ_DIR=/path/to/gcc/build

     If your system gcc was built with ‘--enable-default-pie’, add
     ‘-no-pie’ option for linking.

     Hint: For ppc64/ppc64le platform, the object file format contains
     an identifier for the source language.  Because gcc doesn’t know
     about VHDL, gcc crashes very early.  This could be fixed with a
     very simple change in ‘gcc/config/rs6000/rs6000.c’
     (‘gcc/config/rs6000/rs6000-logue.c’ since gcc 10), function
     ‘rs6000_output_function_epilogue’:

                    || ! strcmp (language_string, "GNU GIMPLE")
                    || ! strcmp (language_string, "GNU Go")
                    || ! strcmp (language_string, "GNU D")
          -         || ! strcmp (language_string, "libgccjit"))
          +         || ! strcmp (language_string, "libgccjit")
          +         || ! strcmp (language_string, "vhdl"))
                  i = 0;

GHDL can be downloaded as a tarball(1)/zipfile(2) or cloned with ‘git
clone’ from GitHub.  GitHub offers HTTPS and SSH as transfer protocols.
See the Sources page for further details.

     Important: Since GHDL is written in ‘Ada’, independently of the
     code generator you use, a compiler is required.  Most GNU/Linux
     package managers provide ‘gcc-ada’ or ‘gcc-gnat’ (which could be
     outdated).  Alternatively, ‘GNU Ada compiler’, ‘GNAT GPL’, can be
     downloaded without registration from libre.adacore.com(3) (2014, or
     later; for x86, 32 or 64 bits).

     Hint: The download page of `GNAT Community Edition' provides the
     latest version (x86, 64 bits), with a graphical installer (‘chmod
     +x *.bin’ and execute it).  Alternatively, you can find a link to
     `More packages, platforms, versions and sources' at the bottom of
     the page, where versions previous to 2018 are available as binaries
     ready to be installed (‘untar’ and run the ‘doinstall’ script).  In
     any case, you must add ‘<GNAT_INSTALL_DIR>/bin’ to your ‘PATH’.

     Attention: Since ‘v0.37’, GHDL’s synthesis features require GCC
     >=8.1, due to some new GNAT features which are not available in
     previous releases.  Users with older versions (who don’t need
     synthesis) can configure GHDL with option ‘--disable-synth’.

GHDL currently supports three different back-ends (code generators):

   * mcode - built-in in-memory x86 (or x86_64) code generator

   * GCC - Gnu Compiler Collection (gcc.gnu.org(4))

   * LLVM - Low-Level Virtual Machine (llvm.org(5))

Here is a short comparison, so that you can choose the one you want to
use:

Back-end                         Pros                                                                             Cons

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

See mcode.                   * Very easy to build                                                             * Simulation is slower

                                    * Very quick analysis                                                            * x86_64/i386 only

                                    * Can handle very large designs

                                    * Base simulation time can be modified for speeding up execution

See LLVM.                    * Generated code is faster                                                       * Build is more complex than mcode

                                    * Generated code can be debugged (with ‘-g’)

                                    * Easier to build than GCC

                                    * Ported to many platforms (x86, x86_64, armv7/aarch64)

See GCC.                     * Generated code is faster (particularly with ‘-O’ or ‘-O2’)                     * Build is even more complex

                                    * Generated code can be debugged (with ‘-g’)                                     * Analysis can take time (particularly for large units)

                                    * Ported to many platforms (x86, x86_64, PowerPC, SPARC)                         * Code coverage collection (‘gcov’) is unique to GCC

     Hint: The output of both GCC and LLVM is an executable file, but
     ‘mcode’ does not generate any.  Therefore, if using GCC/LLVM, the
     call with argument ‘-r’ can be replaced with direct execution of
     the binary.  See section Simulation.

After making your choice, you can jump to the corresponding section.
However, we suggest you to read Directory structure first, so
that you know where the content will be placed and which files are
expected to be created.

     Hint: In these instructions, the configure script is executed in
     the source directory; but you can execute in a different directory
     too, like this:

               $ mkdir ghdl-objs
               $ cd ghdl-objs
               $ ../path/to/ghdl/configure ...

     Hint: On Windows, building GHDL with mcode backend and GNAT GPL 32
     bit seems to be the only way to get a standalone native executable
     straightaway.  MINGW/MSYS2 builds depend on the
     environment/runtime.  See #1560(6).

     Hint: For MacOS 10.15 (Catalina), see #1368(7) for workarounds to
     link failures.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/archive/master.tar.gz

   (2) https://github.com/ghdl/ghdl/archive/master.zip

   (3) http://libre.adacore.com/tools/gnat-gpl-edition/

   (4) http://gcc.gnu.org/

   (5) http://llvm.org/

   (6) https://github.com/ghdl/ghdl/issues/1560

   (7) https://github.com/ghdl/ghdl/issues/1368

13.5 TL;DR
==========

In order to follow the traditional way to ‘configure’ and ‘make’, you
need an Ada compiler.

     Hint: Depending on the OS and distribution you are using, you will
     also need to install some toolchain dependencies, such as ‘zlib’.

To use mcode backend (easiest to build), in the GHDL base directory,
configure and build:

     $ ./configure --prefix=/usr/local
     $ make

At that place, you can already use the ‘ghdl_mcode’ built in the
directory.  You can also install GHDL:

     $ make install

That’s all!

     Hint: The executable is installed as ‘ghdl’ in ‘/usr/local’.  To
     install it to a different path, change the ‘--prefix’ in the call
     to ‘configure’.  For example, on Windows, you may want to set it to
     ‘--prefix=/c/Program Files (x86)/GHDL’.

14 pyGHDL
*********

GHDL offers two Python interfaces and a language server protocol
service.  All this is provided from a ‘pyGHDL’ packages with four
sub-packages:

   * ‘pyGHDL.cli’ - Command line interface (CLI) applications.

   * ‘pyGHDL.dom’ - A high-level API offering a document object model
     (DOM). The underlying abstract VHDL language model is provided by
     pyVHDLModel(1).  The DOM is using ‘libghdl’ for file analysis and
     parsing.

   * ‘pyGHDL.libghdl’ - A low-level API directly interacting with the
     shared library ‘libghdl....so’/‘libghdl....dll’.  This is a
     procedural and C-like interface.  It comes with some Python
     generators for easier iterating linked lists.

   * ‘pyGHDL.lsp’ - A language server protocol(2) (LSP) written in
     Python.  The implementation offers an HTTPS service that can be
     used e.g.  by editors and IDEs supporting LSP.

`Submodules'

   ---------- Footnotes ----------

   (1) https://github.com/VHDL/pyVHDLModel

   (2) https://en.wikipedia.org/wiki/Language_Server_Protocol

14.1 pyGHDL.cli
===============

`Submodules'

14.1.1 pyGHDL.cli.DOM
---------------------

14.1.2 pyGHDL.cli.lsp
---------------------

`Functions'

   - main().: Entrypoint of GHDL’s Language Protocol Server.

`Functions'

 -- Function: pyGHDL.cli.lsp.main ()

     Entrypoint of GHDL’s Language Protocol Server.

14.2 pyGHDL.dom
===============

`Submodules'

14.2.1 pyGHDL.dom.Aggregates
----------------------------

This module contains all DOM classes for VHDL’s design units (‘context’,
‘architecture’, ‘package’, ‘package body’, ‘context’ and
‘configuration’.

`Classes'

   - SimpleAggregateElement.: A ‘AggregateElement’ is a
     base-class for all aggregate elements.

   - IndexedAggregateElement.: A ‘AggregateElement’ is a
     base-class for all aggregate elements.

   - RangedAggregateElement.: A ‘AggregateElement’ is a
     base-class for all aggregate elements.

   - NamedAggregateElement.: A ‘AggregateElement’ is a
     base-class for all aggregate elements.

   - OthersAggregateElement.: A ‘AggregateElement’ is a
     base-class for all aggregate elements.

 -- Class: pyGHDL.dom.Aggregates.SimpleAggregateElement (expression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _expression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(1),
               pyVHDLModel.VHDLModel.QualifiedExpression(2),
               pyVHDLModel.VHDLModel.FunctionCall(3),
               pyVHDLModel.VHDLModel.TypeConversion(4),
               pyVHDLModel.VHDLModel.Constant(5),
               pyVHDLModel.VHDLModel.ConstantSymbol(6),
               pyVHDLModel.VHDLModel.Variable(7),
               pyVHDLModel.VHDLModel.VariableSymbol(8),
               pyVHDLModel.VHDLModel.Signal(9),
               pyVHDLModel.VHDLModel.SignalSymbol(10),
               pyVHDLModel.VHDLModel.Literal(11)]

      -- Method: property Expression

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(12)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(13)

 -- Class: pyGHDL.dom.Aggregates.IndexedAggregateElement (index,
          expression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _index: int(14)

      -- Attribute: _expression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(15),
               pyVHDLModel.VHDLModel.QualifiedExpression(16),
               pyVHDLModel.VHDLModel.FunctionCall(17),
               pyVHDLModel.VHDLModel.TypeConversion(18),
               pyVHDLModel.VHDLModel.Constant(19),
               pyVHDLModel.VHDLModel.ConstantSymbol(20),
               pyVHDLModel.VHDLModel.Variable(21),
               pyVHDLModel.VHDLModel.VariableSymbol(22),
               pyVHDLModel.VHDLModel.Signal(23),
               pyVHDLModel.VHDLModel.SignalSymbol(24),
               pyVHDLModel.VHDLModel.Literal(25)]

      -- Method: property Expression

      -- Method: property Index

          Return type: int(26)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(27)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(28)

 -- Class: pyGHDL.dom.Aggregates.RangedAggregateElement (r, expression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _range: pyVHDLModel.VHDLModel.Range(29)

      -- Attribute: _expression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(30),
               pyVHDLModel.VHDLModel.QualifiedExpression(31),
               pyVHDLModel.VHDLModel.FunctionCall(32),
               pyVHDLModel.VHDLModel.TypeConversion(33),
               pyVHDLModel.VHDLModel.Constant(34),
               pyVHDLModel.VHDLModel.ConstantSymbol(35),
               pyVHDLModel.VHDLModel.Variable(36),
               pyVHDLModel.VHDLModel.VariableSymbol(37),
               pyVHDLModel.VHDLModel.Signal(38),
               pyVHDLModel.VHDLModel.SignalSymbol(39),
               pyVHDLModel.VHDLModel.Literal(40)]

      -- Method: property Expression

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(41)

      -- Method: property Range

          Return type: Range(42)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(43)

 -- Class: pyGHDL.dom.Aggregates.NamedAggregateElement (name,
          expression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _name:
               pyVHDLModel.VHDLModel.EnumerationLiteralSymbol(44)

      -- Attribute: _expression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(45),
               pyVHDLModel.VHDLModel.QualifiedExpression(46),
               pyVHDLModel.VHDLModel.FunctionCall(47),
               pyVHDLModel.VHDLModel.TypeConversion(48),
               pyVHDLModel.VHDLModel.Constant(49),
               pyVHDLModel.VHDLModel.ConstantSymbol(50),
               pyVHDLModel.VHDLModel.Variable(51),
               pyVHDLModel.VHDLModel.VariableSymbol(52),
               pyVHDLModel.VHDLModel.Signal(53),
               pyVHDLModel.VHDLModel.SignalSymbol(54),
               pyVHDLModel.VHDLModel.Literal(55)]

      -- Method: property Expression

      -- Method: property Name

          Return type: EnumerationLiteralSymbol(56)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(57)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(58)

 -- Class: pyGHDL.dom.Aggregates.OthersAggregateElement (expression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _expression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(59),
               pyVHDLModel.VHDLModel.QualifiedExpression(60),
               pyVHDLModel.VHDLModel.FunctionCall(61),
               pyVHDLModel.VHDLModel.TypeConversion(62),
               pyVHDLModel.VHDLModel.Constant(63),
               pyVHDLModel.VHDLModel.ConstantSymbol(64),
               pyVHDLModel.VHDLModel.Variable(65),
               pyVHDLModel.VHDLModel.VariableSymbol(66),
               pyVHDLModel.VHDLModel.Signal(67),
               pyVHDLModel.VHDLModel.SignalSymbol(68),
               pyVHDLModel.VHDLModel.Literal(69)]

      -- Method: property Expression

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(70)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(71)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (6)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (10)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (14) https://docs.python.org/3.6/library/functions.html#int

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (23)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (26) https://docs.python.org/3.6/library/functions.html#int

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (28)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (29)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Range

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (32)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (34)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (35)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (36)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (37)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (38)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (39)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (40)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (42)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Range

   (43)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (44)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.EnumerationLiteralSymbol

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (46)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (47)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (48)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (49)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (50)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (51)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (52)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (53)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (54)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (55)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (56)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.EnumerationLiteralSymbol

   (57)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (58)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (59)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (60)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (61)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (62)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (63)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (64)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (65)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (66)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (67)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (68)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (69)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (70)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (71)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

14.2.2 pyGHDL.dom.Common
------------------------

     Todo: Add a module documentation.

`Exceptions'

   - DOMException.: Common base class for all non-exit
     exceptions.

   - GHDLException.: Common base class for all non-exit
     exceptions.

 -- Exception: pyGHDL.dom.Common.DOMException

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: args

      -- Method: with_traceback ()

          Exception.with_traceback(tb) – set self.__traceback__ to tb
          and return self.

 -- Exception: pyGHDL.dom.Common.GHDLException

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: args

      -- Method: with_traceback ()

          Exception.with_traceback(tb) – set self.__traceback__ to tb
          and return self.

14.2.3 pyGHDL.dom.DesignUnit
----------------------------

This module contains all DOM classes for VHDL’s design units (see
context, architecture, package, package body,
see context and configuration.

`Classes'

   - Entity.: A ‘PrimaryUnit’ is a base-class for all primary
     units.

   - Architecture.: A ‘SecondaryUnit’ is a base-class for all
     secondary units.

   - Component.: ‘ModelEntity’ is the base class for all
     classes in the VHDL language model,

   - Package.: A ‘PrimaryUnit’ is a base-class for all
     primary units.

   - PackageBody.: A ‘SecondaryUnit’ is a base-class for all
     secondary units.

   - Context.: A ‘PrimaryUnit’ is a base-class for all
     primary units.

   - Configuration.: A ‘PrimaryUnit’ is a base-class for all
     primary units.

 -- Class: pyGHDL.dom.DesignUnit.Entity (name, genericItems=None,
          portItems=None, declaredItems=None, bodyItems=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (entityNode)

      -- Method: property BodyItems

          Return type: List(1)[ConcurrentStatement(2)]

      -- Method: property ContextReferences

          Return type: List(3)[Context(4)]

      -- Method: property DeclaredItems

          Return type: List(5)

      -- Method: property GenericItems

          Return type: List(6)[GenericInterfaceItem(7)]

      -- Method: property LibraryReferences

          Return type: List(8)[LibraryStatement(9)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(10)

      -- Method: property PackageReferences

          Return type: List(11)[UseClause(12)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(13)

      -- Method: property PortItems

          Return type: List(14)[PortInterfaceItem(15)]

      -- Attribute: _genericItems:
               List[pyVHDLModel.VHDLModel.GenericInterfaceItem(16)]

      -- Attribute: _portItems:
               List[pyVHDLModel.VHDLModel.PortInterfaceItem(17)]

      -- Attribute: _declaredItems: List

      -- Attribute: _bodyItems:
               List[pyVHDLModel.VHDLModel.ConcurrentStatement(18)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(19)

      -- Attribute: _name: str(20)

      -- Attribute: _libraryReferences:
               List[pyVHDLModel.VHDLModel.LibraryStatement(21)]

      -- Attribute: _packageReferences:
               List[pyVHDLModel.VHDLModel.UseClause(22)]

      -- Attribute: _contextReferences:
               List[pyVHDLModel.VHDLModel.Context(23)]

 -- Class: pyGHDL.dom.DesignUnit.Architecture (name, entity,
          declaredItems=None, bodyItems=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (architectureNode)

      -- Method: resolve ()

      -- Method: property BodyItems

          Return type: List(24)[ConcurrentStatement(25)]

      -- Method: property ContextReferences

          Return type: List(26)[Context(27)]

      -- Method: property DeclaredItems

          Return type: List(28)

      -- Method: property Entity

          Return type: Union(29)[Entity(30), EntitySymbol(31)]

      -- Method: property LibraryReferences

          Return type: List(32)[LibraryStatement(33)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(34)

      -- Method: property PackageReferences

          Return type: List(35)[UseClause(36)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(37)

      -- Attribute: _entity: Union[pyVHDLModel.VHDLModel.Entity(38),
               pyVHDLModel.VHDLModel.EntitySymbol(39)]

      -- Attribute: _declaredItems: List

      -- Attribute: _bodyItems:
               List[pyVHDLModel.VHDLModel.ConcurrentStatement(40)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(41)

      -- Attribute: _name: str(42)

      -- Attribute: _libraryReferences:
               List[pyVHDLModel.VHDLModel.LibraryStatement(43)]

      -- Attribute: _packageReferences:
               List[pyVHDLModel.VHDLModel.UseClause(44)]

      -- Attribute: _contextReferences:
               List[pyVHDLModel.VHDLModel.Context(45)]

 -- Class: pyGHDL.dom.DesignUnit.Component (name, genericItems=None,
          portItems=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (componentNode)

      -- Method: property GenericItems

          Return type: List(46)[GenericInterfaceItem(47)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(48)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(49)

      -- Method: property PortItems

          Return type: List(50)[PortInterfaceItem(51)]

      -- Attribute: _genericItems:
               List[pyVHDLModel.VHDLModel.GenericInterfaceItem(52)]

      -- Attribute: _portItems:
               List[pyVHDLModel.VHDLModel.PortInterfaceItem(53)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(54)

      -- Attribute: _name: str(55)

 -- Class: pyGHDL.dom.DesignUnit.Package (name, genericItems=None,
          declaredItems=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (packageNode)

      -- Method: property ContextReferences

          Return type: List(56)[Context(57)]

      -- Method: property DeclaredItems

          Return type: List(58)

      -- Method: property GenericItems

          Return type: List(59)[GenericInterfaceItem(60)]

      -- Method: property LibraryReferences

          Return type: List(61)[LibraryStatement(62)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(63)

      -- Method: property PackageReferences

          Return type: List(64)[UseClause(65)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(66)

      -- Attribute: _genericItems:
               List[pyVHDLModel.VHDLModel.GenericInterfaceItem(67)]

      -- Attribute: _declaredItems: List

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(68)

      -- Attribute: _name: str(69)

      -- Attribute: _libraryReferences:
               List[pyVHDLModel.VHDLModel.LibraryStatement(70)]

      -- Attribute: _packageReferences:
               List[pyVHDLModel.VHDLModel.UseClause(71)]

      -- Attribute: _contextReferences:
               List[pyVHDLModel.VHDLModel.Context(72)]

 -- Class: pyGHDL.dom.DesignUnit.PackageBody (name, declaredItems=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (packageBodyNode)

      -- Method: property ContextReferences

          Return type: List(73)[Context(74)]

      -- Method: property DeclaredItems

          Return type: List(75)

      -- Method: property LibraryReferences

          Return type: List(76)[LibraryStatement(77)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(78)

      -- Method: property Package

          Return type: Package(79)

      -- Method: property PackageReferences

          Return type: List(80)[UseClause(81)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(82)

      -- Attribute: _package: pyVHDLModel.VHDLModel.Package(83)

      -- Attribute: _declaredItems: List

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(84)

      -- Attribute: _name: str(85)

      -- Attribute: _libraryReferences:
               List[pyVHDLModel.VHDLModel.LibraryStatement(86)]

      -- Attribute: _packageReferences:
               List[pyVHDLModel.VHDLModel.UseClause(87)]

      -- Attribute: _contextReferences:
               List[pyVHDLModel.VHDLModel.Context(88)]

 -- Class: pyGHDL.dom.DesignUnit.Context (name)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (libraryUnit)

      -- Method: property LibraryReferences

          Return type: List(89)[LibraryStatement(90)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(91)

      -- Method: property PackageReferences

          Return type: List(92)[UseClause(93)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(94)

      -- Attribute: _libraryReferences:
               List[pyVHDLModel.VHDLModel.LibraryStatement(95)]

      -- Attribute: _packageReferences:
               List[pyVHDLModel.VHDLModel.UseClause(96)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(97)

      -- Attribute: _name: str(98)

 -- Class: pyGHDL.dom.DesignUnit.Configuration (name)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (configuration)

      -- Method: property ContextReferences

          Return type: List(99)[Context(100)]

      -- Method: property LibraryReferences

          Return type: List(101)[LibraryStatement(102)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(103)

      -- Method: property PackageReferences

          Return type: List(104)[UseClause(105)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(106)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(107)

      -- Attribute: _name: str(108)

      -- Attribute: _libraryReferences:
               List[pyVHDLModel.VHDLModel.LibraryStatement(109)]

      -- Attribute: _packageReferences:
               List[pyVHDLModel.VHDLModel.UseClause(110)]

      -- Attribute: _contextReferences:
               List[pyVHDLModel.VHDLModel.Context(111)]

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/typing.html#typing.List

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConcurrentStatement

   (3) https://docs.python.org/3.6/library/typing.html#typing.List

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (5) https://docs.python.org/3.6/library/typing.html#typing.List

   (6) https://docs.python.org/3.6/library/typing.html#typing.List

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (8) https://docs.python.org/3.6/library/typing.html#typing.List

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (10) https://docs.python.org/3.6/library/stdtypes.html#str

   (11) https://docs.python.org/3.6/library/typing.html#typing.List

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (14) https://docs.python.org/3.6/library/typing.html#typing.List

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.PortInterfaceItem

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.PortInterfaceItem

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConcurrentStatement

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (20) https://docs.python.org/3.6/library/stdtypes.html#str

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (23)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (24) https://docs.python.org/3.6/library/typing.html#typing.List

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConcurrentStatement

   (26) https://docs.python.org/3.6/library/typing.html#typing.List

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (28) https://docs.python.org/3.6/library/typing.html#typing.List

   (29) https://docs.python.org/3.6/library/typing.html#typing.Union

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Entity

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.EntitySymbol

   (32) https://docs.python.org/3.6/library/typing.html#typing.List

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (34) https://docs.python.org/3.6/library/stdtypes.html#str

   (35) https://docs.python.org/3.6/library/typing.html#typing.List

   (36)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (37)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (38)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Entity

   (39)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.EntitySymbol

   (40)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConcurrentStatement

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (42) https://docs.python.org/3.6/library/stdtypes.html#str

   (43)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (44)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (46) https://docs.python.org/3.6/library/typing.html#typing.List

   (47)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (48) https://docs.python.org/3.6/library/stdtypes.html#str

   (49)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (50) https://docs.python.org/3.6/library/typing.html#typing.List

   (51)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.PortInterfaceItem

   (52)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (53)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.PortInterfaceItem

   (54)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (55) https://docs.python.org/3.6/library/stdtypes.html#str

   (56) https://docs.python.org/3.6/library/typing.html#typing.List

   (57)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (58) https://docs.python.org/3.6/library/typing.html#typing.List

   (59) https://docs.python.org/3.6/library/typing.html#typing.List

   (60)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (61) https://docs.python.org/3.6/library/typing.html#typing.List

   (62)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (63) https://docs.python.org/3.6/library/stdtypes.html#str

   (64) https://docs.python.org/3.6/library/typing.html#typing.List

   (65)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (66)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (67)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (68)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (69) https://docs.python.org/3.6/library/stdtypes.html#str

   (70)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (71)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (72)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (73) https://docs.python.org/3.6/library/typing.html#typing.List

   (74)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (75) https://docs.python.org/3.6/library/typing.html#typing.List

   (76) https://docs.python.org/3.6/library/typing.html#typing.List

   (77)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (78) https://docs.python.org/3.6/library/stdtypes.html#str

   (79)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Package

   (80) https://docs.python.org/3.6/library/typing.html#typing.List

   (81)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (82)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (83)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Package

   (84)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (85) https://docs.python.org/3.6/library/stdtypes.html#str

   (86)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (87)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (88)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (89) https://docs.python.org/3.6/library/typing.html#typing.List

   (90)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (91) https://docs.python.org/3.6/library/stdtypes.html#str

   (92) https://docs.python.org/3.6/library/typing.html#typing.List

   (93)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (94)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (95)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (96)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (97)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (98) https://docs.python.org/3.6/library/stdtypes.html#str

   (99) https://docs.python.org/3.6/library/typing.html#typing.List

   (100)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (101) https://docs.python.org/3.6/library/typing.html#typing.List

   (102)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (103) https://docs.python.org/3.6/library/stdtypes.html#str

   (104) https://docs.python.org/3.6/library/typing.html#typing.List

   (105)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (106)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (107)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (108) https://docs.python.org/3.6/library/stdtypes.html#str

   (109)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.LibraryStatement

   (110)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.UseClause

   (111)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

14.2.4 pyGHDL.dom.Expression
----------------------------

`Classes'

   - InverseExpression.: A ‘UnaryExpression’ is a base-class
     for all unary expressions.

   - IdentityExpression.: A ‘UnaryExpression’ is a base-class
     for all unary expressions.

   - NegationExpression.: A ‘UnaryExpression’ is a base-class
     for all unary expressions.

   - AbsoluteExpression.: A ‘UnaryExpression’ is a base-class
     for all unary expressions.

   - ParenthesisExpression.: A ‘UnaryExpression’ is a
     base-class for all unary expressions.

   - TypeConversion.: A ‘UnaryExpression’ is a base-class for
     all unary expressions.

   - FunctionCall.: A ‘UnaryExpression’ is a base-class for
     all unary expressions.

   - AdditionExpression.: A ‘AddingExpression’ is a
     base-class for all adding expressions.

   - SubtractionExpression.: A ‘AddingExpression’ is a
     base-class for all adding expressions.

   - ConcatenationExpression.: A ‘AddingExpression’ is a
     base-class for all adding expressions.

   - MultiplyExpression.: A ‘MultiplyingExpression’ is a
     base-class for all multiplying expressions.

   - DivisionExpression.: A ‘MultiplyingExpression’ is a
     base-class for all multiplying expressions.

   - RemainderExpression.: A ‘MultiplyingExpression’ is a
     base-class for all multiplying expressions.

   - ModuloExpression.: A ‘MultiplyingExpression’ is a
     base-class for all multiplying expressions.

   - ExponentiationExpression.: A ‘MultiplyingExpression’ is
     a base-class for all multiplying expressions.

   - AndExpression.: A ‘LogicalExpression’ is a base-class
     for all logical expressions.

   - NandExpression.: A ‘LogicalExpression’ is a base-class
     for all logical expressions.

   - OrExpression.: A ‘LogicalExpression’ is a base-class for
     all logical expressions.

   - NorExpression.: A ‘LogicalExpression’ is a base-class
     for all logical expressions.

   - XorExpression.: A ‘LogicalExpression’ is a base-class
     for all logical expressions.

   - XnorExpression.: A ‘LogicalExpression’ is a base-class
     for all logical expressions.

   - EqualExpression.: A ‘RelationalExpression’ is a
     base-class for all shifting expressions.

   - UnequalExpression.: A ‘RelationalExpression’ is a
     base-class for all shifting expressions.

   - LessThanExpression.: A ‘RelationalExpression’ is a
     base-class for all shifting expressions.

   - LessEqualExpression.: A ‘RelationalExpression’ is a
     base-class for all shifting expressions.

   - GreaterThanExpression.: A ‘RelationalExpression’ is a
     base-class for all shifting expressions.

   - GreaterEqualExpression.: A ‘RelationalExpression’ is a
     base-class for all shifting expressions.

   - ShiftRightLogicExpression.: A ‘ShiftExpression’ is a
     base-class for all shifting expressions.

   - ShiftLeftLogicExpression.: A ‘ShiftExpression’ is a
     base-class for all shifting expressions.

   - ShiftRightArithmeticExpression.: A ‘ShiftExpression’ is
     a base-class for all shifting expressions.

   - ShiftLeftArithmeticExpression.: A ‘ShiftExpression’ is a
     base-class for all shifting expressions.

   - RotateRightExpression.: A ‘ShiftExpression’ is a
     base-class for all shifting expressions.

   - RotateLeftExpression.: A ‘ShiftExpression’ is a
     base-class for all shifting expressions.

   - QualifiedExpression.: A ‘BaseExpression’ is a base-class
     for all expressions.

   - Aggregate.: A ‘BaseExpression’ is a base-class for all
     expressions.

 -- Class: pyGHDL.dom.Expression.InverseExpression (operand)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _operand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(1),
               pyVHDLModel.VHDLModel.QualifiedExpression(2),
               pyVHDLModel.VHDLModel.FunctionCall(3),
               pyVHDLModel.VHDLModel.TypeConversion(4),
               pyVHDLModel.VHDLModel.Constant(5),
               pyVHDLModel.VHDLModel.ConstantSymbol(6),
               pyVHDLModel.VHDLModel.Variable(7),
               pyVHDLModel.VHDLModel.VariableSymbol(8),
               pyVHDLModel.VHDLModel.Signal(9),
               pyVHDLModel.VHDLModel.SignalSymbol(10),
               pyVHDLModel.VHDLModel.Literal(11)]

      -- Method: property Operand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(12)

      -- Attribute: _FORMAT: Tuple[str(13), str(14)] = ('not ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(15)

 -- Class: pyGHDL.dom.Expression.IdentityExpression (operand)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _operand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(16),
               pyVHDLModel.VHDLModel.QualifiedExpression(17),
               pyVHDLModel.VHDLModel.FunctionCall(18),
               pyVHDLModel.VHDLModel.TypeConversion(19),
               pyVHDLModel.VHDLModel.Constant(20),
               pyVHDLModel.VHDLModel.ConstantSymbol(21),
               pyVHDLModel.VHDLModel.Variable(22),
               pyVHDLModel.VHDLModel.VariableSymbol(23),
               pyVHDLModel.VHDLModel.Signal(24),
               pyVHDLModel.VHDLModel.SignalSymbol(25),
               pyVHDLModel.VHDLModel.Literal(26)]

      -- Method: property Operand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(27)

      -- Attribute: _FORMAT: Tuple[str(28), str(29)] = ('+', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(30)

 -- Class: pyGHDL.dom.Expression.NegationExpression (operand)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _operand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(31),
               pyVHDLModel.VHDLModel.QualifiedExpression(32),
               pyVHDLModel.VHDLModel.FunctionCall(33),
               pyVHDLModel.VHDLModel.TypeConversion(34),
               pyVHDLModel.VHDLModel.Constant(35),
               pyVHDLModel.VHDLModel.ConstantSymbol(36),
               pyVHDLModel.VHDLModel.Variable(37),
               pyVHDLModel.VHDLModel.VariableSymbol(38),
               pyVHDLModel.VHDLModel.Signal(39),
               pyVHDLModel.VHDLModel.SignalSymbol(40),
               pyVHDLModel.VHDLModel.Literal(41)]

      -- Method: property Operand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(42)

      -- Attribute: _FORMAT: Tuple[str(43), str(44)] = ('-', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(45)

 -- Class: pyGHDL.dom.Expression.AbsoluteExpression (operand)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _operand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(46),
               pyVHDLModel.VHDLModel.QualifiedExpression(47),
               pyVHDLModel.VHDLModel.FunctionCall(48),
               pyVHDLModel.VHDLModel.TypeConversion(49),
               pyVHDLModel.VHDLModel.Constant(50),
               pyVHDLModel.VHDLModel.ConstantSymbol(51),
               pyVHDLModel.VHDLModel.Variable(52),
               pyVHDLModel.VHDLModel.VariableSymbol(53),
               pyVHDLModel.VHDLModel.Signal(54),
               pyVHDLModel.VHDLModel.SignalSymbol(55),
               pyVHDLModel.VHDLModel.Literal(56)]

      -- Method: property Operand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(57)

      -- Attribute: _FORMAT: Tuple[str(58), str(59)] = ('abs ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(60)

 -- Class: pyGHDL.dom.Expression.ParenthesisExpression (operand)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _operand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(61),
               pyVHDLModel.VHDLModel.QualifiedExpression(62),
               pyVHDLModel.VHDLModel.FunctionCall(63),
               pyVHDLModel.VHDLModel.TypeConversion(64),
               pyVHDLModel.VHDLModel.Constant(65),
               pyVHDLModel.VHDLModel.ConstantSymbol(66),
               pyVHDLModel.VHDLModel.Variable(67),
               pyVHDLModel.VHDLModel.VariableSymbol(68),
               pyVHDLModel.VHDLModel.Signal(69),
               pyVHDLModel.VHDLModel.SignalSymbol(70),
               pyVHDLModel.VHDLModel.Literal(71)]

      -- Method: classmethod parse (node)

      -- Method: property Operand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(72)

      -- Attribute: _FORMAT: Tuple[str(73), str(74)] = ('(', ')')

      -- Attribute: _abc_impl = <_abc_data object>

      -- Attribute: _is_protocol = False

      -- Attribute: _is_runtime_protocol = False

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(75)

 -- Class: pyGHDL.dom.Expression.TypeConversion (operand)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _operand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(76),
               pyVHDLModel.VHDLModel.QualifiedExpression(77),
               pyVHDLModel.VHDLModel.FunctionCall(78),
               pyVHDLModel.VHDLModel.TypeConversion(79),
               pyVHDLModel.VHDLModel.Constant(80),
               pyVHDLModel.VHDLModel.ConstantSymbol(81),
               pyVHDLModel.VHDLModel.Variable(82),
               pyVHDLModel.VHDLModel.VariableSymbol(83),
               pyVHDLModel.VHDLModel.Signal(84),
               pyVHDLModel.VHDLModel.SignalSymbol(85),
               pyVHDLModel.VHDLModel.Literal(86)]

      -- Method: property Operand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(87)

      -- Attribute: _FORMAT: Tuple[str(88), str(89)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(90)

 -- Class: pyGHDL.dom.Expression.FunctionCall (operand)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _operand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(91),
               pyVHDLModel.VHDLModel.QualifiedExpression(92),
               pyVHDLModel.VHDLModel.FunctionCall(93),
               pyVHDLModel.VHDLModel.TypeConversion(94),
               pyVHDLModel.VHDLModel.Constant(95),
               pyVHDLModel.VHDLModel.ConstantSymbol(96),
               pyVHDLModel.VHDLModel.Variable(97),
               pyVHDLModel.VHDLModel.VariableSymbol(98),
               pyVHDLModel.VHDLModel.Signal(99),
               pyVHDLModel.VHDLModel.SignalSymbol(100),
               pyVHDLModel.VHDLModel.Literal(101)]

      -- Method: property Operand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(102)

      -- Attribute: _FORMAT: Tuple[str(103), str(104)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(105)

 -- Class: pyGHDL.dom.Expression.AdditionExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(106),
               pyVHDLModel.VHDLModel.QualifiedExpression(107),
               pyVHDLModel.VHDLModel.FunctionCall(108),
               pyVHDLModel.VHDLModel.TypeConversion(109),
               pyVHDLModel.VHDLModel.Constant(110),
               pyVHDLModel.VHDLModel.ConstantSymbol(111),
               pyVHDLModel.VHDLModel.Variable(112),
               pyVHDLModel.VHDLModel.VariableSymbol(113),
               pyVHDLModel.VHDLModel.Signal(114),
               pyVHDLModel.VHDLModel.SignalSymbol(115),
               pyVHDLModel.VHDLModel.Literal(116)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(117),
               pyVHDLModel.VHDLModel.QualifiedExpression(118),
               pyVHDLModel.VHDLModel.FunctionCall(119),
               pyVHDLModel.VHDLModel.TypeConversion(120),
               pyVHDLModel.VHDLModel.Constant(121),
               pyVHDLModel.VHDLModel.ConstantSymbol(122),
               pyVHDLModel.VHDLModel.Variable(123),
               pyVHDLModel.VHDLModel.VariableSymbol(124),
               pyVHDLModel.VHDLModel.Signal(125),
               pyVHDLModel.VHDLModel.SignalSymbol(126),
               pyVHDLModel.VHDLModel.Literal(127)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(128)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(129), str(130), str(131)] = ('',
               ' + ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(132)

 -- Class: pyGHDL.dom.Expression.SubtractionExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(133),
               pyVHDLModel.VHDLModel.QualifiedExpression(134),
               pyVHDLModel.VHDLModel.FunctionCall(135),
               pyVHDLModel.VHDLModel.TypeConversion(136),
               pyVHDLModel.VHDLModel.Constant(137),
               pyVHDLModel.VHDLModel.ConstantSymbol(138),
               pyVHDLModel.VHDLModel.Variable(139),
               pyVHDLModel.VHDLModel.VariableSymbol(140),
               pyVHDLModel.VHDLModel.Signal(141),
               pyVHDLModel.VHDLModel.SignalSymbol(142),
               pyVHDLModel.VHDLModel.Literal(143)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(144),
               pyVHDLModel.VHDLModel.QualifiedExpression(145),
               pyVHDLModel.VHDLModel.FunctionCall(146),
               pyVHDLModel.VHDLModel.TypeConversion(147),
               pyVHDLModel.VHDLModel.Constant(148),
               pyVHDLModel.VHDLModel.ConstantSymbol(149),
               pyVHDLModel.VHDLModel.Variable(150),
               pyVHDLModel.VHDLModel.VariableSymbol(151),
               pyVHDLModel.VHDLModel.Signal(152),
               pyVHDLModel.VHDLModel.SignalSymbol(153),
               pyVHDLModel.VHDLModel.Literal(154)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(155)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(156), str(157), str(158)] = ('',
               ' - ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(159)

 -- Class: pyGHDL.dom.Expression.ConcatenationExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(160),
               pyVHDLModel.VHDLModel.QualifiedExpression(161),
               pyVHDLModel.VHDLModel.FunctionCall(162),
               pyVHDLModel.VHDLModel.TypeConversion(163),
               pyVHDLModel.VHDLModel.Constant(164),
               pyVHDLModel.VHDLModel.ConstantSymbol(165),
               pyVHDLModel.VHDLModel.Variable(166),
               pyVHDLModel.VHDLModel.VariableSymbol(167),
               pyVHDLModel.VHDLModel.Signal(168),
               pyVHDLModel.VHDLModel.SignalSymbol(169),
               pyVHDLModel.VHDLModel.Literal(170)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(171),
               pyVHDLModel.VHDLModel.QualifiedExpression(172),
               pyVHDLModel.VHDLModel.FunctionCall(173),
               pyVHDLModel.VHDLModel.TypeConversion(174),
               pyVHDLModel.VHDLModel.Constant(175),
               pyVHDLModel.VHDLModel.ConstantSymbol(176),
               pyVHDLModel.VHDLModel.Variable(177),
               pyVHDLModel.VHDLModel.VariableSymbol(178),
               pyVHDLModel.VHDLModel.Signal(179),
               pyVHDLModel.VHDLModel.SignalSymbol(180),
               pyVHDLModel.VHDLModel.Literal(181)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(182)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(183), str(184), str(185)] = ('',
               ' & ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(186)

 -- Class: pyGHDL.dom.Expression.MultiplyExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(187),
               pyVHDLModel.VHDLModel.QualifiedExpression(188),
               pyVHDLModel.VHDLModel.FunctionCall(189),
               pyVHDLModel.VHDLModel.TypeConversion(190),
               pyVHDLModel.VHDLModel.Constant(191),
               pyVHDLModel.VHDLModel.ConstantSymbol(192),
               pyVHDLModel.VHDLModel.Variable(193),
               pyVHDLModel.VHDLModel.VariableSymbol(194),
               pyVHDLModel.VHDLModel.Signal(195),
               pyVHDLModel.VHDLModel.SignalSymbol(196),
               pyVHDLModel.VHDLModel.Literal(197)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(198),
               pyVHDLModel.VHDLModel.QualifiedExpression(199),
               pyVHDLModel.VHDLModel.FunctionCall(200),
               pyVHDLModel.VHDLModel.TypeConversion(201),
               pyVHDLModel.VHDLModel.Constant(202),
               pyVHDLModel.VHDLModel.ConstantSymbol(203),
               pyVHDLModel.VHDLModel.Variable(204),
               pyVHDLModel.VHDLModel.VariableSymbol(205),
               pyVHDLModel.VHDLModel.Signal(206),
               pyVHDLModel.VHDLModel.SignalSymbol(207),
               pyVHDLModel.VHDLModel.Literal(208)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(209)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(210), str(211), str(212)] = ('',
               ' * ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(213)

 -- Class: pyGHDL.dom.Expression.DivisionExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(214),
               pyVHDLModel.VHDLModel.QualifiedExpression(215),
               pyVHDLModel.VHDLModel.FunctionCall(216),
               pyVHDLModel.VHDLModel.TypeConversion(217),
               pyVHDLModel.VHDLModel.Constant(218),
               pyVHDLModel.VHDLModel.ConstantSymbol(219),
               pyVHDLModel.VHDLModel.Variable(220),
               pyVHDLModel.VHDLModel.VariableSymbol(221),
               pyVHDLModel.VHDLModel.Signal(222),
               pyVHDLModel.VHDLModel.SignalSymbol(223),
               pyVHDLModel.VHDLModel.Literal(224)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(225),
               pyVHDLModel.VHDLModel.QualifiedExpression(226),
               pyVHDLModel.VHDLModel.FunctionCall(227),
               pyVHDLModel.VHDLModel.TypeConversion(228),
               pyVHDLModel.VHDLModel.Constant(229),
               pyVHDLModel.VHDLModel.ConstantSymbol(230),
               pyVHDLModel.VHDLModel.Variable(231),
               pyVHDLModel.VHDLModel.VariableSymbol(232),
               pyVHDLModel.VHDLModel.Signal(233),
               pyVHDLModel.VHDLModel.SignalSymbol(234),
               pyVHDLModel.VHDLModel.Literal(235)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(236)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(237), str(238), str(239)] = ('',
               ' / ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(240)

 -- Class: pyGHDL.dom.Expression.RemainderExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(241),
               pyVHDLModel.VHDLModel.QualifiedExpression(242),
               pyVHDLModel.VHDLModel.FunctionCall(243),
               pyVHDLModel.VHDLModel.TypeConversion(244),
               pyVHDLModel.VHDLModel.Constant(245),
               pyVHDLModel.VHDLModel.ConstantSymbol(246),
               pyVHDLModel.VHDLModel.Variable(247),
               pyVHDLModel.VHDLModel.VariableSymbol(248),
               pyVHDLModel.VHDLModel.Signal(249),
               pyVHDLModel.VHDLModel.SignalSymbol(250),
               pyVHDLModel.VHDLModel.Literal(251)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(252),
               pyVHDLModel.VHDLModel.QualifiedExpression(253),
               pyVHDLModel.VHDLModel.FunctionCall(254),
               pyVHDLModel.VHDLModel.TypeConversion(255),
               pyVHDLModel.VHDLModel.Constant(256),
               pyVHDLModel.VHDLModel.ConstantSymbol(257),
               pyVHDLModel.VHDLModel.Variable(258),
               pyVHDLModel.VHDLModel.VariableSymbol(259),
               pyVHDLModel.VHDLModel.Signal(260),
               pyVHDLModel.VHDLModel.SignalSymbol(261),
               pyVHDLModel.VHDLModel.Literal(262)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(263)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(264), str(265), str(266)] = ('',
               ' rem ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(267)

 -- Class: pyGHDL.dom.Expression.ModuloExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(268),
               pyVHDLModel.VHDLModel.QualifiedExpression(269),
               pyVHDLModel.VHDLModel.FunctionCall(270),
               pyVHDLModel.VHDLModel.TypeConversion(271),
               pyVHDLModel.VHDLModel.Constant(272),
               pyVHDLModel.VHDLModel.ConstantSymbol(273),
               pyVHDLModel.VHDLModel.Variable(274),
               pyVHDLModel.VHDLModel.VariableSymbol(275),
               pyVHDLModel.VHDLModel.Signal(276),
               pyVHDLModel.VHDLModel.SignalSymbol(277),
               pyVHDLModel.VHDLModel.Literal(278)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(279),
               pyVHDLModel.VHDLModel.QualifiedExpression(280),
               pyVHDLModel.VHDLModel.FunctionCall(281),
               pyVHDLModel.VHDLModel.TypeConversion(282),
               pyVHDLModel.VHDLModel.Constant(283),
               pyVHDLModel.VHDLModel.ConstantSymbol(284),
               pyVHDLModel.VHDLModel.Variable(285),
               pyVHDLModel.VHDLModel.VariableSymbol(286),
               pyVHDLModel.VHDLModel.Signal(287),
               pyVHDLModel.VHDLModel.SignalSymbol(288),
               pyVHDLModel.VHDLModel.Literal(289)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(290)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(291), str(292), str(293)] = ('',
               ' mod ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(294)

 -- Class: pyGHDL.dom.Expression.ExponentiationExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(295),
               pyVHDLModel.VHDLModel.QualifiedExpression(296),
               pyVHDLModel.VHDLModel.FunctionCall(297),
               pyVHDLModel.VHDLModel.TypeConversion(298),
               pyVHDLModel.VHDLModel.Constant(299),
               pyVHDLModel.VHDLModel.ConstantSymbol(300),
               pyVHDLModel.VHDLModel.Variable(301),
               pyVHDLModel.VHDLModel.VariableSymbol(302),
               pyVHDLModel.VHDLModel.Signal(303),
               pyVHDLModel.VHDLModel.SignalSymbol(304),
               pyVHDLModel.VHDLModel.Literal(305)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(306),
               pyVHDLModel.VHDLModel.QualifiedExpression(307),
               pyVHDLModel.VHDLModel.FunctionCall(308),
               pyVHDLModel.VHDLModel.TypeConversion(309),
               pyVHDLModel.VHDLModel.Constant(310),
               pyVHDLModel.VHDLModel.ConstantSymbol(311),
               pyVHDLModel.VHDLModel.Variable(312),
               pyVHDLModel.VHDLModel.VariableSymbol(313),
               pyVHDLModel.VHDLModel.Signal(314),
               pyVHDLModel.VHDLModel.SignalSymbol(315),
               pyVHDLModel.VHDLModel.Literal(316)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(317)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(318), str(319), str(320)] = ('',
               '**', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(321)

 -- Class: pyGHDL.dom.Expression.AndExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(322),
               pyVHDLModel.VHDLModel.QualifiedExpression(323),
               pyVHDLModel.VHDLModel.FunctionCall(324),
               pyVHDLModel.VHDLModel.TypeConversion(325),
               pyVHDLModel.VHDLModel.Constant(326),
               pyVHDLModel.VHDLModel.ConstantSymbol(327),
               pyVHDLModel.VHDLModel.Variable(328),
               pyVHDLModel.VHDLModel.VariableSymbol(329),
               pyVHDLModel.VHDLModel.Signal(330),
               pyVHDLModel.VHDLModel.SignalSymbol(331),
               pyVHDLModel.VHDLModel.Literal(332)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(333),
               pyVHDLModel.VHDLModel.QualifiedExpression(334),
               pyVHDLModel.VHDLModel.FunctionCall(335),
               pyVHDLModel.VHDLModel.TypeConversion(336),
               pyVHDLModel.VHDLModel.Constant(337),
               pyVHDLModel.VHDLModel.ConstantSymbol(338),
               pyVHDLModel.VHDLModel.Variable(339),
               pyVHDLModel.VHDLModel.VariableSymbol(340),
               pyVHDLModel.VHDLModel.Signal(341),
               pyVHDLModel.VHDLModel.SignalSymbol(342),
               pyVHDLModel.VHDLModel.Literal(343)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(344)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(345), str(346), str(347)] = ('',
               ' and ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(348)

 -- Class: pyGHDL.dom.Expression.NandExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(349),
               pyVHDLModel.VHDLModel.QualifiedExpression(350),
               pyVHDLModel.VHDLModel.FunctionCall(351),
               pyVHDLModel.VHDLModel.TypeConversion(352),
               pyVHDLModel.VHDLModel.Constant(353),
               pyVHDLModel.VHDLModel.ConstantSymbol(354),
               pyVHDLModel.VHDLModel.Variable(355),
               pyVHDLModel.VHDLModel.VariableSymbol(356),
               pyVHDLModel.VHDLModel.Signal(357),
               pyVHDLModel.VHDLModel.SignalSymbol(358),
               pyVHDLModel.VHDLModel.Literal(359)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(360),
               pyVHDLModel.VHDLModel.QualifiedExpression(361),
               pyVHDLModel.VHDLModel.FunctionCall(362),
               pyVHDLModel.VHDLModel.TypeConversion(363),
               pyVHDLModel.VHDLModel.Constant(364),
               pyVHDLModel.VHDLModel.ConstantSymbol(365),
               pyVHDLModel.VHDLModel.Variable(366),
               pyVHDLModel.VHDLModel.VariableSymbol(367),
               pyVHDLModel.VHDLModel.Signal(368),
               pyVHDLModel.VHDLModel.SignalSymbol(369),
               pyVHDLModel.VHDLModel.Literal(370)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(371)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(372), str(373), str(374)] = ('',
               ' nand ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(375)

 -- Class: pyGHDL.dom.Expression.OrExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(376),
               pyVHDLModel.VHDLModel.QualifiedExpression(377),
               pyVHDLModel.VHDLModel.FunctionCall(378),
               pyVHDLModel.VHDLModel.TypeConversion(379),
               pyVHDLModel.VHDLModel.Constant(380),
               pyVHDLModel.VHDLModel.ConstantSymbol(381),
               pyVHDLModel.VHDLModel.Variable(382),
               pyVHDLModel.VHDLModel.VariableSymbol(383),
               pyVHDLModel.VHDLModel.Signal(384),
               pyVHDLModel.VHDLModel.SignalSymbol(385),
               pyVHDLModel.VHDLModel.Literal(386)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(387),
               pyVHDLModel.VHDLModel.QualifiedExpression(388),
               pyVHDLModel.VHDLModel.FunctionCall(389),
               pyVHDLModel.VHDLModel.TypeConversion(390),
               pyVHDLModel.VHDLModel.Constant(391),
               pyVHDLModel.VHDLModel.ConstantSymbol(392),
               pyVHDLModel.VHDLModel.Variable(393),
               pyVHDLModel.VHDLModel.VariableSymbol(394),
               pyVHDLModel.VHDLModel.Signal(395),
               pyVHDLModel.VHDLModel.SignalSymbol(396),
               pyVHDLModel.VHDLModel.Literal(397)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(398)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(399), str(400), str(401)] = ('',
               ' or ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(402)

 -- Class: pyGHDL.dom.Expression.NorExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(403),
               pyVHDLModel.VHDLModel.QualifiedExpression(404),
               pyVHDLModel.VHDLModel.FunctionCall(405),
               pyVHDLModel.VHDLModel.TypeConversion(406),
               pyVHDLModel.VHDLModel.Constant(407),
               pyVHDLModel.VHDLModel.ConstantSymbol(408),
               pyVHDLModel.VHDLModel.Variable(409),
               pyVHDLModel.VHDLModel.VariableSymbol(410),
               pyVHDLModel.VHDLModel.Signal(411),
               pyVHDLModel.VHDLModel.SignalSymbol(412),
               pyVHDLModel.VHDLModel.Literal(413)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(414),
               pyVHDLModel.VHDLModel.QualifiedExpression(415),
               pyVHDLModel.VHDLModel.FunctionCall(416),
               pyVHDLModel.VHDLModel.TypeConversion(417),
               pyVHDLModel.VHDLModel.Constant(418),
               pyVHDLModel.VHDLModel.ConstantSymbol(419),
               pyVHDLModel.VHDLModel.Variable(420),
               pyVHDLModel.VHDLModel.VariableSymbol(421),
               pyVHDLModel.VHDLModel.Signal(422),
               pyVHDLModel.VHDLModel.SignalSymbol(423),
               pyVHDLModel.VHDLModel.Literal(424)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(425)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(426), str(427), str(428)] = ('',
               ' nor ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(429)

 -- Class: pyGHDL.dom.Expression.XorExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(430),
               pyVHDLModel.VHDLModel.QualifiedExpression(431),
               pyVHDLModel.VHDLModel.FunctionCall(432),
               pyVHDLModel.VHDLModel.TypeConversion(433),
               pyVHDLModel.VHDLModel.Constant(434),
               pyVHDLModel.VHDLModel.ConstantSymbol(435),
               pyVHDLModel.VHDLModel.Variable(436),
               pyVHDLModel.VHDLModel.VariableSymbol(437),
               pyVHDLModel.VHDLModel.Signal(438),
               pyVHDLModel.VHDLModel.SignalSymbol(439),
               pyVHDLModel.VHDLModel.Literal(440)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(441),
               pyVHDLModel.VHDLModel.QualifiedExpression(442),
               pyVHDLModel.VHDLModel.FunctionCall(443),
               pyVHDLModel.VHDLModel.TypeConversion(444),
               pyVHDLModel.VHDLModel.Constant(445),
               pyVHDLModel.VHDLModel.ConstantSymbol(446),
               pyVHDLModel.VHDLModel.Variable(447),
               pyVHDLModel.VHDLModel.VariableSymbol(448),
               pyVHDLModel.VHDLModel.Signal(449),
               pyVHDLModel.VHDLModel.SignalSymbol(450),
               pyVHDLModel.VHDLModel.Literal(451)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(452)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(453), str(454), str(455)] = ('',
               ' xor ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(456)

 -- Class: pyGHDL.dom.Expression.XnorExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(457),
               pyVHDLModel.VHDLModel.QualifiedExpression(458),
               pyVHDLModel.VHDLModel.FunctionCall(459),
               pyVHDLModel.VHDLModel.TypeConversion(460),
               pyVHDLModel.VHDLModel.Constant(461),
               pyVHDLModel.VHDLModel.ConstantSymbol(462),
               pyVHDLModel.VHDLModel.Variable(463),
               pyVHDLModel.VHDLModel.VariableSymbol(464),
               pyVHDLModel.VHDLModel.Signal(465),
               pyVHDLModel.VHDLModel.SignalSymbol(466),
               pyVHDLModel.VHDLModel.Literal(467)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(468),
               pyVHDLModel.VHDLModel.QualifiedExpression(469),
               pyVHDLModel.VHDLModel.FunctionCall(470),
               pyVHDLModel.VHDLModel.TypeConversion(471),
               pyVHDLModel.VHDLModel.Constant(472),
               pyVHDLModel.VHDLModel.ConstantSymbol(473),
               pyVHDLModel.VHDLModel.Variable(474),
               pyVHDLModel.VHDLModel.VariableSymbol(475),
               pyVHDLModel.VHDLModel.Signal(476),
               pyVHDLModel.VHDLModel.SignalSymbol(477),
               pyVHDLModel.VHDLModel.Literal(478)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(479)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(480), str(481), str(482)] = ('',
               ' xnor ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(483)

 -- Class: pyGHDL.dom.Expression.EqualExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(484),
               pyVHDLModel.VHDLModel.QualifiedExpression(485),
               pyVHDLModel.VHDLModel.FunctionCall(486),
               pyVHDLModel.VHDLModel.TypeConversion(487),
               pyVHDLModel.VHDLModel.Constant(488),
               pyVHDLModel.VHDLModel.ConstantSymbol(489),
               pyVHDLModel.VHDLModel.Variable(490),
               pyVHDLModel.VHDLModel.VariableSymbol(491),
               pyVHDLModel.VHDLModel.Signal(492),
               pyVHDLModel.VHDLModel.SignalSymbol(493),
               pyVHDLModel.VHDLModel.Literal(494)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(495),
               pyVHDLModel.VHDLModel.QualifiedExpression(496),
               pyVHDLModel.VHDLModel.FunctionCall(497),
               pyVHDLModel.VHDLModel.TypeConversion(498),
               pyVHDLModel.VHDLModel.Constant(499),
               pyVHDLModel.VHDLModel.ConstantSymbol(500),
               pyVHDLModel.VHDLModel.Variable(501),
               pyVHDLModel.VHDLModel.VariableSymbol(502),
               pyVHDLModel.VHDLModel.Signal(503),
               pyVHDLModel.VHDLModel.SignalSymbol(504),
               pyVHDLModel.VHDLModel.Literal(505)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(506)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(507), str(508), str(509)] = ('',
               ' = ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(510)

 -- Class: pyGHDL.dom.Expression.UnequalExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(511),
               pyVHDLModel.VHDLModel.QualifiedExpression(512),
               pyVHDLModel.VHDLModel.FunctionCall(513),
               pyVHDLModel.VHDLModel.TypeConversion(514),
               pyVHDLModel.VHDLModel.Constant(515),
               pyVHDLModel.VHDLModel.ConstantSymbol(516),
               pyVHDLModel.VHDLModel.Variable(517),
               pyVHDLModel.VHDLModel.VariableSymbol(518),
               pyVHDLModel.VHDLModel.Signal(519),
               pyVHDLModel.VHDLModel.SignalSymbol(520),
               pyVHDLModel.VHDLModel.Literal(521)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(522),
               pyVHDLModel.VHDLModel.QualifiedExpression(523),
               pyVHDLModel.VHDLModel.FunctionCall(524),
               pyVHDLModel.VHDLModel.TypeConversion(525),
               pyVHDLModel.VHDLModel.Constant(526),
               pyVHDLModel.VHDLModel.ConstantSymbol(527),
               pyVHDLModel.VHDLModel.Variable(528),
               pyVHDLModel.VHDLModel.VariableSymbol(529),
               pyVHDLModel.VHDLModel.Signal(530),
               pyVHDLModel.VHDLModel.SignalSymbol(531),
               pyVHDLModel.VHDLModel.Literal(532)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(533)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(534), str(535), str(536)] = ('',
               ' /= ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(537)

 -- Class: pyGHDL.dom.Expression.LessThanExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(538),
               pyVHDLModel.VHDLModel.QualifiedExpression(539),
               pyVHDLModel.VHDLModel.FunctionCall(540),
               pyVHDLModel.VHDLModel.TypeConversion(541),
               pyVHDLModel.VHDLModel.Constant(542),
               pyVHDLModel.VHDLModel.ConstantSymbol(543),
               pyVHDLModel.VHDLModel.Variable(544),
               pyVHDLModel.VHDLModel.VariableSymbol(545),
               pyVHDLModel.VHDLModel.Signal(546),
               pyVHDLModel.VHDLModel.SignalSymbol(547),
               pyVHDLModel.VHDLModel.Literal(548)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(549),
               pyVHDLModel.VHDLModel.QualifiedExpression(550),
               pyVHDLModel.VHDLModel.FunctionCall(551),
               pyVHDLModel.VHDLModel.TypeConversion(552),
               pyVHDLModel.VHDLModel.Constant(553),
               pyVHDLModel.VHDLModel.ConstantSymbol(554),
               pyVHDLModel.VHDLModel.Variable(555),
               pyVHDLModel.VHDLModel.VariableSymbol(556),
               pyVHDLModel.VHDLModel.Signal(557),
               pyVHDLModel.VHDLModel.SignalSymbol(558),
               pyVHDLModel.VHDLModel.Literal(559)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(560)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(561), str(562), str(563)] = ('',
               ' < ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(564)

 -- Class: pyGHDL.dom.Expression.LessEqualExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(565),
               pyVHDLModel.VHDLModel.QualifiedExpression(566),
               pyVHDLModel.VHDLModel.FunctionCall(567),
               pyVHDLModel.VHDLModel.TypeConversion(568),
               pyVHDLModel.VHDLModel.Constant(569),
               pyVHDLModel.VHDLModel.ConstantSymbol(570),
               pyVHDLModel.VHDLModel.Variable(571),
               pyVHDLModel.VHDLModel.VariableSymbol(572),
               pyVHDLModel.VHDLModel.Signal(573),
               pyVHDLModel.VHDLModel.SignalSymbol(574),
               pyVHDLModel.VHDLModel.Literal(575)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(576),
               pyVHDLModel.VHDLModel.QualifiedExpression(577),
               pyVHDLModel.VHDLModel.FunctionCall(578),
               pyVHDLModel.VHDLModel.TypeConversion(579),
               pyVHDLModel.VHDLModel.Constant(580),
               pyVHDLModel.VHDLModel.ConstantSymbol(581),
               pyVHDLModel.VHDLModel.Variable(582),
               pyVHDLModel.VHDLModel.VariableSymbol(583),
               pyVHDLModel.VHDLModel.Signal(584),
               pyVHDLModel.VHDLModel.SignalSymbol(585),
               pyVHDLModel.VHDLModel.Literal(586)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(587)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(588), str(589), str(590)] = ('',
               ' <= ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(591)

 -- Class: pyGHDL.dom.Expression.GreaterThanExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(592),
               pyVHDLModel.VHDLModel.QualifiedExpression(593),
               pyVHDLModel.VHDLModel.FunctionCall(594),
               pyVHDLModel.VHDLModel.TypeConversion(595),
               pyVHDLModel.VHDLModel.Constant(596),
               pyVHDLModel.VHDLModel.ConstantSymbol(597),
               pyVHDLModel.VHDLModel.Variable(598),
               pyVHDLModel.VHDLModel.VariableSymbol(599),
               pyVHDLModel.VHDLModel.Signal(600),
               pyVHDLModel.VHDLModel.SignalSymbol(601),
               pyVHDLModel.VHDLModel.Literal(602)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(603),
               pyVHDLModel.VHDLModel.QualifiedExpression(604),
               pyVHDLModel.VHDLModel.FunctionCall(605),
               pyVHDLModel.VHDLModel.TypeConversion(606),
               pyVHDLModel.VHDLModel.Constant(607),
               pyVHDLModel.VHDLModel.ConstantSymbol(608),
               pyVHDLModel.VHDLModel.Variable(609),
               pyVHDLModel.VHDLModel.VariableSymbol(610),
               pyVHDLModel.VHDLModel.Signal(611),
               pyVHDLModel.VHDLModel.SignalSymbol(612),
               pyVHDLModel.VHDLModel.Literal(613)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(614)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(615), str(616), str(617)] = ('',
               ' > ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(618)

 -- Class: pyGHDL.dom.Expression.GreaterEqualExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(619),
               pyVHDLModel.VHDLModel.QualifiedExpression(620),
               pyVHDLModel.VHDLModel.FunctionCall(621),
               pyVHDLModel.VHDLModel.TypeConversion(622),
               pyVHDLModel.VHDLModel.Constant(623),
               pyVHDLModel.VHDLModel.ConstantSymbol(624),
               pyVHDLModel.VHDLModel.Variable(625),
               pyVHDLModel.VHDLModel.VariableSymbol(626),
               pyVHDLModel.VHDLModel.Signal(627),
               pyVHDLModel.VHDLModel.SignalSymbol(628),
               pyVHDLModel.VHDLModel.Literal(629)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(630),
               pyVHDLModel.VHDLModel.QualifiedExpression(631),
               pyVHDLModel.VHDLModel.FunctionCall(632),
               pyVHDLModel.VHDLModel.TypeConversion(633),
               pyVHDLModel.VHDLModel.Constant(634),
               pyVHDLModel.VHDLModel.ConstantSymbol(635),
               pyVHDLModel.VHDLModel.Variable(636),
               pyVHDLModel.VHDLModel.VariableSymbol(637),
               pyVHDLModel.VHDLModel.Signal(638),
               pyVHDLModel.VHDLModel.SignalSymbol(639),
               pyVHDLModel.VHDLModel.Literal(640)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(641)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(642), str(643), str(644)] = ('',
               ' >= ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(645)

 -- Class: pyGHDL.dom.Expression.ShiftRightLogicExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(646),
               pyVHDLModel.VHDLModel.QualifiedExpression(647),
               pyVHDLModel.VHDLModel.FunctionCall(648),
               pyVHDLModel.VHDLModel.TypeConversion(649),
               pyVHDLModel.VHDLModel.Constant(650),
               pyVHDLModel.VHDLModel.ConstantSymbol(651),
               pyVHDLModel.VHDLModel.Variable(652),
               pyVHDLModel.VHDLModel.VariableSymbol(653),
               pyVHDLModel.VHDLModel.Signal(654),
               pyVHDLModel.VHDLModel.SignalSymbol(655),
               pyVHDLModel.VHDLModel.Literal(656)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(657),
               pyVHDLModel.VHDLModel.QualifiedExpression(658),
               pyVHDLModel.VHDLModel.FunctionCall(659),
               pyVHDLModel.VHDLModel.TypeConversion(660),
               pyVHDLModel.VHDLModel.Constant(661),
               pyVHDLModel.VHDLModel.ConstantSymbol(662),
               pyVHDLModel.VHDLModel.Variable(663),
               pyVHDLModel.VHDLModel.VariableSymbol(664),
               pyVHDLModel.VHDLModel.Signal(665),
               pyVHDLModel.VHDLModel.SignalSymbol(666),
               pyVHDLModel.VHDLModel.Literal(667)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(668)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(669), str(670), str(671)] = ('',
               ' srl ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(672)

 -- Class: pyGHDL.dom.Expression.ShiftLeftLogicExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(673),
               pyVHDLModel.VHDLModel.QualifiedExpression(674),
               pyVHDLModel.VHDLModel.FunctionCall(675),
               pyVHDLModel.VHDLModel.TypeConversion(676),
               pyVHDLModel.VHDLModel.Constant(677),
               pyVHDLModel.VHDLModel.ConstantSymbol(678),
               pyVHDLModel.VHDLModel.Variable(679),
               pyVHDLModel.VHDLModel.VariableSymbol(680),
               pyVHDLModel.VHDLModel.Signal(681),
               pyVHDLModel.VHDLModel.SignalSymbol(682),
               pyVHDLModel.VHDLModel.Literal(683)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(684),
               pyVHDLModel.VHDLModel.QualifiedExpression(685),
               pyVHDLModel.VHDLModel.FunctionCall(686),
               pyVHDLModel.VHDLModel.TypeConversion(687),
               pyVHDLModel.VHDLModel.Constant(688),
               pyVHDLModel.VHDLModel.ConstantSymbol(689),
               pyVHDLModel.VHDLModel.Variable(690),
               pyVHDLModel.VHDLModel.VariableSymbol(691),
               pyVHDLModel.VHDLModel.Signal(692),
               pyVHDLModel.VHDLModel.SignalSymbol(693),
               pyVHDLModel.VHDLModel.Literal(694)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(695)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(696), str(697), str(698)] = ('',
               ' sll ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(699)

 -- Class: pyGHDL.dom.Expression.ShiftRightArithmeticExpression (left,
          right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(700),
               pyVHDLModel.VHDLModel.QualifiedExpression(701),
               pyVHDLModel.VHDLModel.FunctionCall(702),
               pyVHDLModel.VHDLModel.TypeConversion(703),
               pyVHDLModel.VHDLModel.Constant(704),
               pyVHDLModel.VHDLModel.ConstantSymbol(705),
               pyVHDLModel.VHDLModel.Variable(706),
               pyVHDLModel.VHDLModel.VariableSymbol(707),
               pyVHDLModel.VHDLModel.Signal(708),
               pyVHDLModel.VHDLModel.SignalSymbol(709),
               pyVHDLModel.VHDLModel.Literal(710)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(711),
               pyVHDLModel.VHDLModel.QualifiedExpression(712),
               pyVHDLModel.VHDLModel.FunctionCall(713),
               pyVHDLModel.VHDLModel.TypeConversion(714),
               pyVHDLModel.VHDLModel.Constant(715),
               pyVHDLModel.VHDLModel.ConstantSymbol(716),
               pyVHDLModel.VHDLModel.Variable(717),
               pyVHDLModel.VHDLModel.VariableSymbol(718),
               pyVHDLModel.VHDLModel.Signal(719),
               pyVHDLModel.VHDLModel.SignalSymbol(720),
               pyVHDLModel.VHDLModel.Literal(721)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(722)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(723), str(724), str(725)] = ('',
               ' sra ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(726)

 -- Class: pyGHDL.dom.Expression.ShiftLeftArithmeticExpression (left,
          right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(727),
               pyVHDLModel.VHDLModel.QualifiedExpression(728),
               pyVHDLModel.VHDLModel.FunctionCall(729),
               pyVHDLModel.VHDLModel.TypeConversion(730),
               pyVHDLModel.VHDLModel.Constant(731),
               pyVHDLModel.VHDLModel.ConstantSymbol(732),
               pyVHDLModel.VHDLModel.Variable(733),
               pyVHDLModel.VHDLModel.VariableSymbol(734),
               pyVHDLModel.VHDLModel.Signal(735),
               pyVHDLModel.VHDLModel.SignalSymbol(736),
               pyVHDLModel.VHDLModel.Literal(737)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(738),
               pyVHDLModel.VHDLModel.QualifiedExpression(739),
               pyVHDLModel.VHDLModel.FunctionCall(740),
               pyVHDLModel.VHDLModel.TypeConversion(741),
               pyVHDLModel.VHDLModel.Constant(742),
               pyVHDLModel.VHDLModel.ConstantSymbol(743),
               pyVHDLModel.VHDLModel.Variable(744),
               pyVHDLModel.VHDLModel.VariableSymbol(745),
               pyVHDLModel.VHDLModel.Signal(746),
               pyVHDLModel.VHDLModel.SignalSymbol(747),
               pyVHDLModel.VHDLModel.Literal(748)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(749)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(750), str(751), str(752)] = ('',
               ' sla ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(753)

 -- Class: pyGHDL.dom.Expression.RotateRightExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(754),
               pyVHDLModel.VHDLModel.QualifiedExpression(755),
               pyVHDLModel.VHDLModel.FunctionCall(756),
               pyVHDLModel.VHDLModel.TypeConversion(757),
               pyVHDLModel.VHDLModel.Constant(758),
               pyVHDLModel.VHDLModel.ConstantSymbol(759),
               pyVHDLModel.VHDLModel.Variable(760),
               pyVHDLModel.VHDLModel.VariableSymbol(761),
               pyVHDLModel.VHDLModel.Signal(762),
               pyVHDLModel.VHDLModel.SignalSymbol(763),
               pyVHDLModel.VHDLModel.Literal(764)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(765),
               pyVHDLModel.VHDLModel.QualifiedExpression(766),
               pyVHDLModel.VHDLModel.FunctionCall(767),
               pyVHDLModel.VHDLModel.TypeConversion(768),
               pyVHDLModel.VHDLModel.Constant(769),
               pyVHDLModel.VHDLModel.ConstantSymbol(770),
               pyVHDLModel.VHDLModel.Variable(771),
               pyVHDLModel.VHDLModel.VariableSymbol(772),
               pyVHDLModel.VHDLModel.Signal(773),
               pyVHDLModel.VHDLModel.SignalSymbol(774),
               pyVHDLModel.VHDLModel.Literal(775)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(776)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(777), str(778), str(779)] = ('',
               ' ror ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(780)

 -- Class: pyGHDL.dom.Expression.RotateLeftExpression (left, right)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(781),
               pyVHDLModel.VHDLModel.QualifiedExpression(782),
               pyVHDLModel.VHDLModel.FunctionCall(783),
               pyVHDLModel.VHDLModel.TypeConversion(784),
               pyVHDLModel.VHDLModel.Constant(785),
               pyVHDLModel.VHDLModel.ConstantSymbol(786),
               pyVHDLModel.VHDLModel.Variable(787),
               pyVHDLModel.VHDLModel.VariableSymbol(788),
               pyVHDLModel.VHDLModel.Signal(789),
               pyVHDLModel.VHDLModel.SignalSymbol(790),
               pyVHDLModel.VHDLModel.Literal(791)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(792),
               pyVHDLModel.VHDLModel.QualifiedExpression(793),
               pyVHDLModel.VHDLModel.FunctionCall(794),
               pyVHDLModel.VHDLModel.TypeConversion(795),
               pyVHDLModel.VHDLModel.Constant(796),
               pyVHDLModel.VHDLModel.ConstantSymbol(797),
               pyVHDLModel.VHDLModel.Variable(798),
               pyVHDLModel.VHDLModel.VariableSymbol(799),
               pyVHDLModel.VHDLModel.Signal(800),
               pyVHDLModel.VHDLModel.SignalSymbol(801),
               pyVHDLModel.VHDLModel.Literal(802)]

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(803)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(804), str(805), str(806)] = ('',
               ' rol ', '')

      -- Method: classmethod parse (node)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(807)

 -- Class: pyGHDL.dom.Expression.QualifiedExpression (subType, operand)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _subtype: Union[pyVHDLModel.VHDLModel.SubType(808),
               pyVHDLModel.VHDLModel.SubTypeSymbol(809)]

      -- Attribute: _operand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(810),
               pyVHDLModel.VHDLModel.QualifiedExpression(811),
               pyVHDLModel.VHDLModel.FunctionCall(812),
               pyVHDLModel.VHDLModel.TypeConversion(813),
               pyVHDLModel.VHDLModel.Constant(814),
               pyVHDLModel.VHDLModel.ConstantSymbol(815),
               pyVHDLModel.VHDLModel.Variable(816),
               pyVHDLModel.VHDLModel.VariableSymbol(817),
               pyVHDLModel.VHDLModel.Signal(818),
               pyVHDLModel.VHDLModel.SignalSymbol(819),
               pyVHDLModel.VHDLModel.Literal(820)]

      -- Method: classmethod parse (node)

      -- Method: property Operand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(821)

      -- Method: property SubTyped

      -- Attribute: _abc_impl = <_abc_data object>

      -- Attribute: _is_protocol = False

      -- Attribute: _is_runtime_protocol = False

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(822)

 -- Class: pyGHDL.dom.Expression.Aggregate (elements)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _elements:
               List[pyVHDLModel.VHDLModel.AggregateElement(823)]

      -- Method: classmethod parse (node)

      -- Method: property Elements

          Return type: List(824)[AggregateElement(825)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(826)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(827)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (6)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (10)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (13) https://docs.python.org/3.6/library/stdtypes.html#str

   (14) https://docs.python.org/3.6/library/stdtypes.html#str

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (23)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (26)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (28) https://docs.python.org/3.6/library/stdtypes.html#str

   (29) https://docs.python.org/3.6/library/stdtypes.html#str

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (32)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (34)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (35)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (36)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (37)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (38)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (39)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (40)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (42)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (43) https://docs.python.org/3.6/library/stdtypes.html#str

   (44) https://docs.python.org/3.6/library/stdtypes.html#str

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (46)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (47)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (48)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (49)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (50)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (51)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (52)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (53)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (54)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (55)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (56)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (57)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (58) https://docs.python.org/3.6/library/stdtypes.html#str

   (59) https://docs.python.org/3.6/library/stdtypes.html#str

   (60)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (61)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (62)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (63)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (64)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (65)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (66)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (67)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (68)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (69)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (70)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (71)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (72)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (73) https://docs.python.org/3.6/library/stdtypes.html#str

   (74) https://docs.python.org/3.6/library/stdtypes.html#str

   (75)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (76)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (77)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (78)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (79)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (80)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (81)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (82)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (83)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (84)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (85)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (86)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (87)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (88) https://docs.python.org/3.6/library/stdtypes.html#str

   (89) https://docs.python.org/3.6/library/stdtypes.html#str

   (90)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (91)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (92)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (93)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (94)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (95)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (96)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (97)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (98)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (99)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (100)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (101)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (102)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (103) https://docs.python.org/3.6/library/stdtypes.html#str

   (104) https://docs.python.org/3.6/library/stdtypes.html#str

   (105)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (106)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (107)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (108)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (109)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (110)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (111)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (112)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (113)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (114)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (115)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (116)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (117)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (118)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (119)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (120)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (121)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (122)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (123)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (124)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (125)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (126)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (127)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (128)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (129) https://docs.python.org/3.6/library/stdtypes.html#str

   (130) https://docs.python.org/3.6/library/stdtypes.html#str

   (131) https://docs.python.org/3.6/library/stdtypes.html#str

   (132)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (133)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (134)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (135)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (136)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (137)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (138)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (139)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (140)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (141)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (142)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (143)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (144)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (145)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (146)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (147)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (148)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (149)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (150)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (151)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (152)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (153)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (154)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (155)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (156) https://docs.python.org/3.6/library/stdtypes.html#str

   (157) https://docs.python.org/3.6/library/stdtypes.html#str

   (158) https://docs.python.org/3.6/library/stdtypes.html#str

   (159)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (160)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (161)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (162)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (163)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (164)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (165)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (166)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (167)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (168)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (169)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (170)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (171)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (172)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (173)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (174)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (175)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (176)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (177)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (178)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (179)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (180)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (181)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (182)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (183) https://docs.python.org/3.6/library/stdtypes.html#str

   (184) https://docs.python.org/3.6/library/stdtypes.html#str

   (185) https://docs.python.org/3.6/library/stdtypes.html#str

   (186)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (187)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (188)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (189)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (190)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (191)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (192)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (193)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (194)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (195)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (196)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (197)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (198)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (199)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (200)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (201)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (202)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (203)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (204)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (205)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (206)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (207)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (208)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (209)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (210) https://docs.python.org/3.6/library/stdtypes.html#str

   (211) https://docs.python.org/3.6/library/stdtypes.html#str

   (212) https://docs.python.org/3.6/library/stdtypes.html#str

   (213)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (214)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (215)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (216)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (217)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (218)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (219)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (220)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (221)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (222)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (223)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (224)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (225)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (226)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (227)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (228)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (229)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (230)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (231)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (232)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (233)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (234)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (235)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (236)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (237) https://docs.python.org/3.6/library/stdtypes.html#str

   (238) https://docs.python.org/3.6/library/stdtypes.html#str

   (239) https://docs.python.org/3.6/library/stdtypes.html#str

   (240)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (241)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (242)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (243)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (244)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (245)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (246)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (247)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (248)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (249)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (250)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (251)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (252)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (253)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (254)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (255)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (256)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (257)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (258)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (259)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (260)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (261)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (262)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (263)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (264) https://docs.python.org/3.6/library/stdtypes.html#str

   (265) https://docs.python.org/3.6/library/stdtypes.html#str

   (266) https://docs.python.org/3.6/library/stdtypes.html#str

   (267)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (268)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (269)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (270)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (271)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (272)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (273)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (274)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (275)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (276)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (277)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (278)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (279)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (280)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (281)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (282)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (283)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (284)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (285)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (286)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (287)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (288)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (289)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (290)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (291) https://docs.python.org/3.6/library/stdtypes.html#str

   (292) https://docs.python.org/3.6/library/stdtypes.html#str

   (293) https://docs.python.org/3.6/library/stdtypes.html#str

   (294)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (295)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (296)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (297)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (298)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (299)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (300)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (301)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (302)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (303)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (304)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (305)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (306)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (307)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (308)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (309)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (310)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (311)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (312)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (313)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (314)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (315)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (316)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (317)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (318) https://docs.python.org/3.6/library/stdtypes.html#str

   (319) https://docs.python.org/3.6/library/stdtypes.html#str

   (320) https://docs.python.org/3.6/library/stdtypes.html#str

   (321)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (322)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (323)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (324)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (325)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (326)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (327)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (328)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (329)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (330)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (331)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (332)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (333)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (334)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (335)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (336)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (337)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (338)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (339)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (340)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (341)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (342)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (343)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (344)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (345) https://docs.python.org/3.6/library/stdtypes.html#str

   (346) https://docs.python.org/3.6/library/stdtypes.html#str

   (347) https://docs.python.org/3.6/library/stdtypes.html#str

   (348)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (349)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (350)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (351)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (352)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (353)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (354)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (355)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (356)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (357)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (358)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (359)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (360)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (361)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (362)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (363)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (364)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (365)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (366)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (367)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (368)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (369)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (370)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (371)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (372) https://docs.python.org/3.6/library/stdtypes.html#str

   (373) https://docs.python.org/3.6/library/stdtypes.html#str

   (374) https://docs.python.org/3.6/library/stdtypes.html#str

   (375)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (376)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (377)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (378)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (379)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (380)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (381)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (382)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (383)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (384)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (385)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (386)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (387)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (388)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (389)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (390)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (391)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (392)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (393)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (394)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (395)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (396)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (397)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (398)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (399) https://docs.python.org/3.6/library/stdtypes.html#str

   (400) https://docs.python.org/3.6/library/stdtypes.html#str

   (401) https://docs.python.org/3.6/library/stdtypes.html#str

   (402)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (403)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (404)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (405)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (406)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (407)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (408)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (409)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (410)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (411)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (412)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (413)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (414)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (415)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (416)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (417)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (418)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (419)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (420)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (421)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (422)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (423)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (424)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (425)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (426) https://docs.python.org/3.6/library/stdtypes.html#str

   (427) https://docs.python.org/3.6/library/stdtypes.html#str

   (428) https://docs.python.org/3.6/library/stdtypes.html#str

   (429)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (430)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (431)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (432)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (433)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (434)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (435)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (436)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (437)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (438)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (439)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (440)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (441)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (442)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (443)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (444)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (445)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (446)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (447)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (448)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (449)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (450)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (451)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (452)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (453) https://docs.python.org/3.6/library/stdtypes.html#str

   (454) https://docs.python.org/3.6/library/stdtypes.html#str

   (455) https://docs.python.org/3.6/library/stdtypes.html#str

   (456)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (457)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (458)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (459)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (460)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (461)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (462)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (463)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (464)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (465)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (466)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (467)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (468)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (469)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (470)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (471)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (472)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (473)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (474)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (475)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (476)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (477)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (478)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (479)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (480) https://docs.python.org/3.6/library/stdtypes.html#str

   (481) https://docs.python.org/3.6/library/stdtypes.html#str

   (482) https://docs.python.org/3.6/library/stdtypes.html#str

   (483)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (484)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (485)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (486)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (487)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (488)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (489)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (490)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (491)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (492)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (493)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (494)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (495)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (496)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (497)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (498)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (499)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (500)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (501)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (502)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (503)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (504)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (505)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (506)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (507) https://docs.python.org/3.6/library/stdtypes.html#str

   (508) https://docs.python.org/3.6/library/stdtypes.html#str

   (509) https://docs.python.org/3.6/library/stdtypes.html#str

   (510)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (511)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (512)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (513)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (514)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (515)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (516)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (517)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (518)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (519)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (520)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (521)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (522)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (523)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (524)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (525)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (526)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (527)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (528)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (529)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (530)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (531)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (532)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (533)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (534) https://docs.python.org/3.6/library/stdtypes.html#str

   (535) https://docs.python.org/3.6/library/stdtypes.html#str

   (536) https://docs.python.org/3.6/library/stdtypes.html#str

   (537)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (538)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (539)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (540)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (541)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (542)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (543)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (544)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (545)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (546)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (547)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (548)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (549)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (550)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (551)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (552)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (553)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (554)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (555)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (556)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (557)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (558)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (559)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (560)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (561) https://docs.python.org/3.6/library/stdtypes.html#str

   (562) https://docs.python.org/3.6/library/stdtypes.html#str

   (563) https://docs.python.org/3.6/library/stdtypes.html#str

   (564)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (565)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (566)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (567)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (568)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (569)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (570)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (571)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (572)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (573)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (574)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (575)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (576)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (577)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (578)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (579)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (580)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (581)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (582)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (583)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (584)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (585)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (586)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (587)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (588) https://docs.python.org/3.6/library/stdtypes.html#str

   (589) https://docs.python.org/3.6/library/stdtypes.html#str

   (590) https://docs.python.org/3.6/library/stdtypes.html#str

   (591)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (592)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (593)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (594)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (595)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (596)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (597)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (598)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (599)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (600)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (601)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (602)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (603)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (604)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (605)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (606)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (607)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (608)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (609)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (610)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (611)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (612)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (613)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (614)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (615) https://docs.python.org/3.6/library/stdtypes.html#str

   (616) https://docs.python.org/3.6/library/stdtypes.html#str

   (617) https://docs.python.org/3.6/library/stdtypes.html#str

   (618)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (619)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (620)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (621)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (622)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (623)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (624)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (625)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (626)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (627)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (628)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (629)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (630)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (631)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (632)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (633)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (634)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (635)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (636)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (637)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (638)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (639)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (640)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (641)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (642) https://docs.python.org/3.6/library/stdtypes.html#str

   (643) https://docs.python.org/3.6/library/stdtypes.html#str

   (644) https://docs.python.org/3.6/library/stdtypes.html#str

   (645)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (646)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (647)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (648)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (649)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (650)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (651)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (652)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (653)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (654)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (655)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (656)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (657)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (658)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (659)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (660)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (661)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (662)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (663)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (664)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (665)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (666)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (667)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (668)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (669) https://docs.python.org/3.6/library/stdtypes.html#str

   (670) https://docs.python.org/3.6/library/stdtypes.html#str

   (671) https://docs.python.org/3.6/library/stdtypes.html#str

   (672)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (673)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (674)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (675)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (676)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (677)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (678)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (679)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (680)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (681)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (682)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (683)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (684)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (685)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (686)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (687)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (688)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (689)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (690)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (691)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (692)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (693)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (694)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (695)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (696) https://docs.python.org/3.6/library/stdtypes.html#str

   (697) https://docs.python.org/3.6/library/stdtypes.html#str

   (698) https://docs.python.org/3.6/library/stdtypes.html#str

   (699)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (700)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (701)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (702)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (703)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (704)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (705)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (706)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (707)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (708)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (709)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (710)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (711)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (712)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (713)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (714)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (715)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (716)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (717)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (718)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (719)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (720)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (721)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (722)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (723) https://docs.python.org/3.6/library/stdtypes.html#str

   (724) https://docs.python.org/3.6/library/stdtypes.html#str

   (725) https://docs.python.org/3.6/library/stdtypes.html#str

   (726)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (727)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (728)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (729)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (730)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (731)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (732)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (733)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (734)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (735)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (736)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (737)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (738)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (739)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (740)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (741)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (742)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (743)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (744)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (745)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (746)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (747)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (748)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (749)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (750) https://docs.python.org/3.6/library/stdtypes.html#str

   (751) https://docs.python.org/3.6/library/stdtypes.html#str

   (752) https://docs.python.org/3.6/library/stdtypes.html#str

   (753)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (754)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (755)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (756)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (757)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (758)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (759)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (760)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (761)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (762)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (763)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (764)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (765)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (766)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (767)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (768)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (769)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (770)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (771)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (772)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (773)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (774)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (775)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (776)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (777) https://docs.python.org/3.6/library/stdtypes.html#str

   (778) https://docs.python.org/3.6/library/stdtypes.html#str

   (779) https://docs.python.org/3.6/library/stdtypes.html#str

   (780)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (781)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (782)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (783)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (784)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (785)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (786)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (787)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (788)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (789)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (790)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (791)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (792)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (793)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (794)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (795)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (796)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (797)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (798)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (799)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (800)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (801)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (802)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (803)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (804) https://docs.python.org/3.6/library/stdtypes.html#str

   (805) https://docs.python.org/3.6/library/stdtypes.html#str

   (806) https://docs.python.org/3.6/library/stdtypes.html#str

   (807)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (808)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (809)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (810)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (811)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (812)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (813)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (814)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (815)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (816)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (817)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (818)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (819)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (820)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (821)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (822)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (823)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.AggregateElement

   (824) https://docs.python.org/3.6/library/typing.html#typing.List

   (825)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.AggregateElement

   (826)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (827)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

14.2.5 pyGHDL.dom.InterfaceItem
-------------------------------

`Classes'

   - GenericConstantInterfaceItem.: A ‘GenericInterfaceItem’
     is a mixin class for all generic interface items.

   - PortSignalInterfaceItem.: A ‘PortInterfaceItem’ is a
     mixin class for all port interface items.

   - ParameterConstantInterfaceItem.: A
     ‘ParameterInterfaceItem’ is a mixin class for all parameter
     interface items.

   - ParameterVariableInterfaceItem.: A
     ‘ParameterInterfaceItem’ is a mixin class for all parameter
     interface items.

   - ParameterSignalInterfaceItem.: A
     ‘ParameterInterfaceItem’ is a mixin class for all parameter
     interface items.

 -- Class: pyGHDL.dom.InterfaceItem.GenericConstantInterfaceItem (name,
          mode, subType, defaultExpression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (generic)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(1),
               pyVHDLModel.VHDLModel.SubTypeSymbol(2)]

      -- Attribute: _defaultExpression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(3),
               pyVHDLModel.VHDLModel.QualifiedExpression(4),
               pyVHDLModel.VHDLModel.FunctionCall(5),
               pyVHDLModel.VHDLModel.TypeConversion(6),
               pyVHDLModel.VHDLModel.Constant(7),
               pyVHDLModel.VHDLModel.ConstantSymbol(8),
               pyVHDLModel.VHDLModel.Variable(9),
               pyVHDLModel.VHDLModel.VariableSymbol(10),
               pyVHDLModel.VHDLModel.Signal(11),
               pyVHDLModel.VHDLModel.SignalSymbol(12),
               pyVHDLModel.VHDLModel.Literal(13)]

      -- Method: property DefaultExpression

          Return type: Union(14)[BaseExpression(15),
          QualifiedExpression(16), FunctionCall(17), TypeConversion(18),
          Constant(19), ConstantSymbol(20), Variable(21),
          VariableSymbol(22), Signal(23), SignalSymbol(24), ‘Literal’]

      -- Method: property Mode

          Return type: Mode(25)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(26)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(27)

      -- Method: property SubType

          Return type: Union(28)[SubType(29), SubTypeSymbol(30)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(31)

      -- Attribute: _name: str(32)

      -- Attribute: _mode: pyVHDLModel.VHDLModel.Mode(33)

 -- Class: pyGHDL.dom.InterfaceItem.PortSignalInterfaceItem (name, mode,
          subType, defaultExpression=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (port)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(34),
               pyVHDLModel.VHDLModel.SubTypeSymbol(35)]

      -- Attribute: _defaultExpression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(36),
               pyVHDLModel.VHDLModel.QualifiedExpression(37),
               pyVHDLModel.VHDLModel.FunctionCall(38),
               pyVHDLModel.VHDLModel.TypeConversion(39),
               pyVHDLModel.VHDLModel.Constant(40),
               pyVHDLModel.VHDLModel.ConstantSymbol(41),
               pyVHDLModel.VHDLModel.Variable(42),
               pyVHDLModel.VHDLModel.VariableSymbol(43),
               pyVHDLModel.VHDLModel.Signal(44),
               pyVHDLModel.VHDLModel.SignalSymbol(45),
               pyVHDLModel.VHDLModel.Literal(46)]

      -- Method: property DefaultExpression

          Return type: Union(47)[BaseExpression(48),
          QualifiedExpression(49), FunctionCall(50), TypeConversion(51),
          Constant(52), ConstantSymbol(53), Variable(54),
          VariableSymbol(55), Signal(56), SignalSymbol(57), ‘Literal’]

      -- Method: property Mode

          Return type: Mode(58)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(59)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(60)

      -- Method: property SubType

          Return type: Union(61)[SubType(62), SubTypeSymbol(63)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(64)

      -- Attribute: _name: str(65)

      -- Attribute: _mode: pyVHDLModel.VHDLModel.Mode(66)

 -- Class: pyGHDL.dom.InterfaceItem.ParameterConstantInterfaceItem
          (name, mode, subType, defaultExpression=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (parameter)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(67),
               pyVHDLModel.VHDLModel.SubTypeSymbol(68)]

      -- Attribute: _defaultExpression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(69),
               pyVHDLModel.VHDLModel.QualifiedExpression(70),
               pyVHDLModel.VHDLModel.FunctionCall(71),
               pyVHDLModel.VHDLModel.TypeConversion(72),
               pyVHDLModel.VHDLModel.Constant(73),
               pyVHDLModel.VHDLModel.ConstantSymbol(74),
               pyVHDLModel.VHDLModel.Variable(75),
               pyVHDLModel.VHDLModel.VariableSymbol(76),
               pyVHDLModel.VHDLModel.Signal(77),
               pyVHDLModel.VHDLModel.SignalSymbol(78),
               pyVHDLModel.VHDLModel.Literal(79)]

      -- Method: property DefaultExpression

          Return type: Union(80)[BaseExpression(81),
          QualifiedExpression(82), FunctionCall(83), TypeConversion(84),
          Constant(85), ConstantSymbol(86), Variable(87),
          VariableSymbol(88), Signal(89), SignalSymbol(90), ‘Literal’]

      -- Method: property Mode

          Return type: Mode(91)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(92)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(93)

      -- Method: property SubType

          Return type: Union(94)[SubType(95), SubTypeSymbol(96)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(97)

      -- Attribute: _name: str(98)

      -- Attribute: _mode: pyVHDLModel.VHDLModel.Mode(99)

 -- Class: pyGHDL.dom.InterfaceItem.ParameterVariableInterfaceItem
          (name, mode, subType, defaultExpression=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (parameter)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(100),
               pyVHDLModel.VHDLModel.SubTypeSymbol(101)]

      -- Attribute: _defaultExpression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(102),
               pyVHDLModel.VHDLModel.QualifiedExpression(103),
               pyVHDLModel.VHDLModel.FunctionCall(104),
               pyVHDLModel.VHDLModel.TypeConversion(105),
               pyVHDLModel.VHDLModel.Constant(106),
               pyVHDLModel.VHDLModel.ConstantSymbol(107),
               pyVHDLModel.VHDLModel.Variable(108),
               pyVHDLModel.VHDLModel.VariableSymbol(109),
               pyVHDLModel.VHDLModel.Signal(110),
               pyVHDLModel.VHDLModel.SignalSymbol(111),
               pyVHDLModel.VHDLModel.Literal(112)]

      -- Method: property DefaultExpression

          Return type: Union(113)[BaseExpression(114),
          QualifiedExpression(115), FunctionCall(116),
          TypeConversion(117), Constant(118), ConstantSymbol(119),
          Variable(120), VariableSymbol(121), Signal(122),
          SignalSymbol(123), ‘Literal’]

      -- Method: property Mode

          Return type: Mode(124)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(125)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(126)

      -- Method: property SubType

          Return type: Union(127)[SubType(128), SubTypeSymbol(129)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(130)

      -- Attribute: _name: str(131)

      -- Attribute: _mode: pyVHDLModel.VHDLModel.Mode(132)

 -- Class: pyGHDL.dom.InterfaceItem.ParameterSignalInterfaceItem (name,
          mode, subType, defaultExpression=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (parameter)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(133),
               pyVHDLModel.VHDLModel.SubTypeSymbol(134)]

      -- Attribute: _defaultExpression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(135),
               pyVHDLModel.VHDLModel.QualifiedExpression(136),
               pyVHDLModel.VHDLModel.FunctionCall(137),
               pyVHDLModel.VHDLModel.TypeConversion(138),
               pyVHDLModel.VHDLModel.Constant(139),
               pyVHDLModel.VHDLModel.ConstantSymbol(140),
               pyVHDLModel.VHDLModel.Variable(141),
               pyVHDLModel.VHDLModel.VariableSymbol(142),
               pyVHDLModel.VHDLModel.Signal(143),
               pyVHDLModel.VHDLModel.SignalSymbol(144),
               pyVHDLModel.VHDLModel.Literal(145)]

      -- Method: property DefaultExpression

          Return type: Union(146)[BaseExpression(147),
          QualifiedExpression(148), FunctionCall(149),
          TypeConversion(150), Constant(151), ConstantSymbol(152),
          Variable(153), VariableSymbol(154), Signal(155),
          SignalSymbol(156), ‘Literal’]

      -- Method: property Mode

          Return type: Mode(157)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(158)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(159)

      -- Method: property SubType

          Return type: Union(160)[SubType(161), SubTypeSymbol(162)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(163)

      -- Attribute: _name: str(164)

      -- Attribute: _mode: pyVHDLModel.VHDLModel.Mode(165)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (6)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (10)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (14) https://docs.python.org/3.6/library/typing.html#typing.Union

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (23)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (26) https://docs.python.org/3.6/library/stdtypes.html#str

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (28) https://docs.python.org/3.6/library/typing.html#typing.Union

   (29)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (32) https://docs.python.org/3.6/library/stdtypes.html#str

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (34)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (35)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (36)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (37)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (38)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (39)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (40)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (42)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (43)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (44)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (46)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (47) https://docs.python.org/3.6/library/typing.html#typing.Union

   (48)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (49)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (50)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (51)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (52)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (53)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (54)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (55)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (56)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (57)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (58)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (59) https://docs.python.org/3.6/library/stdtypes.html#str

   (60)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (61) https://docs.python.org/3.6/library/typing.html#typing.Union

   (62)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (63)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (64)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (65) https://docs.python.org/3.6/library/stdtypes.html#str

   (66)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (67)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (68)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (69)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (70)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (71)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (72)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (73)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (74)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (75)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (76)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (77)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (78)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (79)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (80) https://docs.python.org/3.6/library/typing.html#typing.Union

   (81)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (82)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (83)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (84)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (85)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (86)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (87)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (88)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (89)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (90)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (91)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (92) https://docs.python.org/3.6/library/stdtypes.html#str

   (93)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (94) https://docs.python.org/3.6/library/typing.html#typing.Union

   (95)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (96)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (97)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (98) https://docs.python.org/3.6/library/stdtypes.html#str

   (99)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (100)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (101)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (102)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (103)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (104)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (105)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (106)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (107)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (108)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (109)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (110)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (111)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (112)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (113) https://docs.python.org/3.6/library/typing.html#typing.Union

   (114)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (115)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (116)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (117)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (118)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (119)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (120)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (121)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (122)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (123)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (124)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (125) https://docs.python.org/3.6/library/stdtypes.html#str

   (126)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (127) https://docs.python.org/3.6/library/typing.html#typing.Union

   (128)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (129)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (130)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (131) https://docs.python.org/3.6/library/stdtypes.html#str

   (132)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (133)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (134)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (135)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (136)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (137)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (138)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (139)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (140)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (141)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (142)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (143)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (144)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (145)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (146) https://docs.python.org/3.6/library/typing.html#typing.Union

   (147)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (148)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (149)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (150)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (151)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (152)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (153)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (154)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (155)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (156)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (157)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

   (158) https://docs.python.org/3.6/library/stdtypes.html#str

   (159)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (160) https://docs.python.org/3.6/library/typing.html#typing.Union

   (161)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (162)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (163)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (164) https://docs.python.org/3.6/library/stdtypes.html#str

   (165)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

14.2.6 pyGHDL.dom.Literal
-------------------------

`Classes'

   - EnumerationLiteral.: A ‘Literal’ is a base-class for all
     literals.

   - IntegerLiteral.: A ‘NumericLiteral’ is a base-class for
     all numeric literals.

   - FloatingPointLiteral.: A ‘NumericLiteral’ is a
     base-class for all numeric literals.

   - PhysicalIntegerLiteral.: A ‘NumericLiteral’ is a
     base-class for all numeric literals.

   - PhysicalFloatingLiteral.: A ‘NumericLiteral’ is a
     base-class for all numeric literals.

   - CharacterLiteral.: A ‘Literal’ is a base-class for all
     literals.

   - StringLiteral.: A ‘Literal’ is a base-class for all
     literals.

 -- Class: pyGHDL.dom.Literal.EnumerationLiteral (value)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (literalNode)

          Return type: EnumerationLiteral.

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(1)

      -- Method: property Value

          Return type: str(2)

      -- Attribute: _value: str(3)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(4)

 -- Class: pyGHDL.dom.Literal.IntegerLiteral (value)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

          Return type: IntegerLiteral.

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(5)

      -- Method: property Value

          Return type: int(6)

      -- Attribute: _value: int(7)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(8)

 -- Class: pyGHDL.dom.Literal.FloatingPointLiteral (value)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

          Return type: FloatingPointLiteral.

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(9)

      -- Method: property Value

          Return type: float(10)

      -- Attribute: _value: float(11)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(12)

 -- Class: pyGHDL.dom.Literal.PhysicalIntegerLiteral (value, unitName)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

          Return type: PhysicalIntegerLiteral.

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(13)

      -- Method: property UnitName

          Return type: str(14)

      -- Method: property Value

          Return type: int(15)

      -- Attribute: _value: int(16)

      -- Attribute: _unitName: str(17)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(18)

 -- Class: pyGHDL.dom.Literal.PhysicalFloatingLiteral (value, unitName)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

          Return type: PhysicalFloatingLiteral.

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(19)

      -- Method: property UnitName

          Return type: str(20)

      -- Method: property Value

          Return type: float(21)

      -- Attribute: _value: float(22)

      -- Attribute: _unitName: str(23)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(24)

 -- Class: pyGHDL.dom.Literal.CharacterLiteral (value)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

          Return type: CharacterLiteral.

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(25)

      -- Method: property Value

          Return type: str(26)

      -- Attribute: _value: str(27)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(28)

 -- Class: pyGHDL.dom.Literal.StringLiteral (value)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

          Return type: StringLiteral.

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(29)

      -- Method: property Value

          Return type: str(30)

      -- Attribute: _value: str(31)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(32)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (2) https://docs.python.org/3.6/library/stdtypes.html#str

   (3) https://docs.python.org/3.6/library/stdtypes.html#str

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (6) https://docs.python.org/3.6/library/functions.html#int

   (7) https://docs.python.org/3.6/library/functions.html#int

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (10) https://docs.python.org/3.6/library/functions.html#float

   (11) https://docs.python.org/3.6/library/functions.html#float

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (14) https://docs.python.org/3.6/library/stdtypes.html#str

   (15) https://docs.python.org/3.6/library/functions.html#int

   (16) https://docs.python.org/3.6/library/functions.html#int

   (17) https://docs.python.org/3.6/library/stdtypes.html#str

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (20) https://docs.python.org/3.6/library/stdtypes.html#str

   (21) https://docs.python.org/3.6/library/functions.html#float

   (22) https://docs.python.org/3.6/library/functions.html#float

   (23) https://docs.python.org/3.6/library/stdtypes.html#str

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (26) https://docs.python.org/3.6/library/stdtypes.html#str

   (27) https://docs.python.org/3.6/library/stdtypes.html#str

   (28)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (29)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (30) https://docs.python.org/3.6/library/stdtypes.html#str

   (31) https://docs.python.org/3.6/library/stdtypes.html#str

   (32)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

14.2.7 pyGHDL.dom.Misc
----------------------

     Todo: Add a module documentation.

`Classes'

   - Position.: Undocumented.

   - Alias.: ‘ModelEntity’ is the base class for all classes
     in the VHDL language model,

 -- Class: pyGHDL.dom.Misc.Position (filename, line, column)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _filename: str(1)

      -- Attribute: _line: int(2)

      -- Attribute: _column: int(3)

      -- Method: property Filename

      -- Method: property Line

      -- Method: property Column

 -- Class: pyGHDL.dom.Misc.Alias (aliasName)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(4)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(5)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(6)

      -- Attribute: _name: str(7)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/stdtypes.html#str

   (2) https://docs.python.org/3.6/library/functions.html#int

   (3) https://docs.python.org/3.6/library/functions.html#int

   (4) https://docs.python.org/3.6/library/stdtypes.html#str

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (6)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (7) https://docs.python.org/3.6/library/stdtypes.html#str

14.2.8 pyGHDL.dom.NonStandard
-----------------------------

     Todo: Add a module documentation.

`Classes'

   - Design.: A ‘Design’ represents all loaded files (see
     Document(1))

   - Library.: A ‘Library’ represents a VHDL library.  It
     contains all `primary' design

   - Document.: A ‘Document’ represents a sourcefile.  It
     contains primary and secondary

 -- Class: pyGHDL.dom.NonStandard.Design

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: AddDocument (document, library)

          Return type: None(2)

      -- Method: property Documents

          Returns a list of all documents (files) loaded for this
          design.

          Return type: List(3)[Document(4)]

      -- Method: GetLibrary (libraryName)

          Return type: Library(5)

      -- Method: property Libraries

          Returns a list of all libraries specified for this design.

          Return type: Dict(6)[str(7), Library(8)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(9)

      -- Attribute: _libraries: Dict[str(10),
               pyVHDLModel.VHDLModel.Library(11)]

      -- Attribute: _documents: List[pyVHDLModel.VHDLModel.Document(12)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(13)

 -- Class: pyGHDL.dom.NonStandard.Library (name)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: property Configurations

          Returns a list of all configuration declarations loaded for
          this design.

          Return type: List(14)[Configuration(15)]

      -- Method: property Contexts

          Returns a list of all context declarations loaded for this
          design.

          Return type: List(16)[Context(17)]

      -- Method: property Entities

          Returns a list of all entity declarations loaded for this
          design.

          Return type: List(18)[Entity(19)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(20)

      -- Method: property Packages

          Returns a list of all package declarations loaded for this
          design.

          Return type: List(21)[Package(22)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(23)

      -- Attribute: _contexts: List[pyVHDLModel.VHDLModel.Context(24)]

      -- Attribute: _configurations:
               List[pyVHDLModel.VHDLModel.Configuration(25)]

      -- Attribute: _entities: List[pyVHDLModel.VHDLModel.Entity(26)]

      -- Attribute: _packages: List[pyVHDLModel.VHDLModel.Package(27)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(28)

      -- Attribute: _name: str(29)

 -- Class: pyGHDL.dom.NonStandard.Document (path=None, dontParse=False)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: parse ()

      -- Method: property Architectures

          Returns a list of all architecture declarations found in this
          document.

          Return type: List(30)[Architecture(31)]

      -- Method: property Configurations

          Returns a list of all configuration declarations found in this
          document.

          Return type: List(32)[Configuration(33)]

      -- Method: property Contexts

          Returns a list of all context declarations found in this
          document.

          Return type: List(34)[Context(35)]

      -- Method: property Entities

          Returns a list of all entity declarations found in this
          document.

          Return type: List(36)[Entity(37)]

      -- Method: property PackageBodies

          Returns a list of all package body declarations found in this
          document.

          Return type: List(38)[PackageBody(39)]

      -- Method: property Packages

          Returns a list of all package declarations found in this
          document.

          Return type: List(40)[Package(41)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(42)

      -- Method: property Path

          Return type: Path(43)

      -- Attribute: _path: pathlib.Path(44)

      -- Attribute: _contexts: List[pyVHDLModel.VHDLModel.Context(45)]

      -- Attribute: _configurations:
               List[pyVHDLModel.VHDLModel.Configuration(46)]

      -- Attribute: _entities: List[pyVHDLModel.VHDLModel.Entity(47)]

      -- Attribute: _architectures:
               List[pyVHDLModel.VHDLModel.Architecture(48)]

      -- Attribute: _packages: List[pyVHDLModel.VHDLModel.Package(49)]

      -- Attribute: _packageBodies:
               List[pyVHDLModel.VHDLModel.PackageBody(50)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(51)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Document

   (2) https://docs.python.org/3.6/library/constants.html#None

   (3) https://docs.python.org/3.6/library/typing.html#typing.List

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Document

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Library

   (6) https://docs.python.org/3.6/library/typing.html#typing.Dict

   (7) https://docs.python.org/3.6/library/stdtypes.html#str

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Library

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (10) https://docs.python.org/3.6/library/stdtypes.html#str

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Library

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Document

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (14) https://docs.python.org/3.6/library/typing.html#typing.List

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Configuration

   (16) https://docs.python.org/3.6/library/typing.html#typing.List

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (18) https://docs.python.org/3.6/library/typing.html#typing.List

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Entity

   (20) https://docs.python.org/3.6/library/stdtypes.html#str

   (21) https://docs.python.org/3.6/library/typing.html#typing.List

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Package

   (23)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Configuration

   (26)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Entity

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Package

   (28)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (29) https://docs.python.org/3.6/library/stdtypes.html#str

   (30) https://docs.python.org/3.6/library/typing.html#typing.List

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Architecture

   (32) https://docs.python.org/3.6/library/typing.html#typing.List

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Configuration

   (34) https://docs.python.org/3.6/library/typing.html#typing.List

   (35)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (36) https://docs.python.org/3.6/library/typing.html#typing.List

   (37)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Entity

   (38) https://docs.python.org/3.6/library/typing.html#typing.List

   (39)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.PackageBody

   (40) https://docs.python.org/3.6/library/typing.html#typing.List

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Package

   (42)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (43) https://docs.python.org/3.6/library/pathlib.html#pathlib.Path

   (44) https://docs.python.org/3.6/library/pathlib.html#pathlib.Path

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Context

   (46)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Configuration

   (47)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Entity

   (48)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Architecture

   (49)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Package

   (50)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.PackageBody

   (51)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

14.2.9 pyGHDL.dom.Object
------------------------

`Classes'

   - Constant.: ‘ModelEntity’ is the base class for all
     classes in the VHDL language model,

   - DeferredConstant.: ‘ModelEntity’ is the base class for
     all classes in the VHDL language model,

   - Variable.: ‘ModelEntity’ is the base class for all
     classes in the VHDL language model,

   - SharedVariable.: ‘ModelEntity’ is the base class for all
     classes in the VHDL language model,

   - Signal.: ‘ModelEntity’ is the base class for all classes
     in the VHDL language model,

 -- Class: pyGHDL.dom.Object.Constant (name, subType, defaultExpression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _name: str(1)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(2),
               pyVHDLModel.VHDLModel.SubTypeSymbol(3)]

      -- Attribute: _defaultExpression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(4),
               pyVHDLModel.VHDLModel.QualifiedExpression(5),
               pyVHDLModel.VHDLModel.FunctionCall(6),
               pyVHDLModel.VHDLModel.TypeConversion(7),
               pyVHDLModel.VHDLModel.Constant(8),
               pyVHDLModel.VHDLModel.ConstantSymbol(9),
               pyVHDLModel.VHDLModel.Variable(10),
               pyVHDLModel.VHDLModel.VariableSymbol(11),
               pyVHDLModel.VHDLModel.Signal(12),
               pyVHDLModel.VHDLModel.SignalSymbol(13),
               pyVHDLModel.VHDLModel.Literal(14)]

      -- Method: classmethod parse (node)

      -- Method: property DefaultExpression

          Return type: Union(15)[BaseExpression(16),
          QualifiedExpression(17), FunctionCall(18), TypeConversion(19),
          Constant(20), ConstantSymbol(21), Variable(22),
          VariableSymbol(23), Signal(24), SignalSymbol(25), ‘Literal’]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(26)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(27)

      -- Method: property SubType

          Return type: Union(28)[SubType(29), SubTypeSymbol(30)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(31)

 -- Class: pyGHDL.dom.Object.DeferredConstant (name, subType)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _name: str(32)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(33),
               pyVHDLModel.VHDLModel.SubTypeSymbol(34)]

      -- Method: classmethod parse (node)

      -- Method: property ConstantReference

          Return type: Constant(35)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(36)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(37)

      -- Method: property SubType

          Return type: Union(38)[SubType(39), SubTypeSymbol(40)]

      -- Attribute: _constantReference:
               pyVHDLModel.VHDLModel.Constant(41)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(42)

 -- Class: pyGHDL.dom.Object.Variable (name, subType, defaultExpression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _name: str(43)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(44),
               pyVHDLModel.VHDLModel.SubTypeSymbol(45)]

      -- Attribute: _defaultExpression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(46),
               pyVHDLModel.VHDLModel.QualifiedExpression(47),
               pyVHDLModel.VHDLModel.FunctionCall(48),
               pyVHDLModel.VHDLModel.TypeConversion(49),
               pyVHDLModel.VHDLModel.Constant(50),
               pyVHDLModel.VHDLModel.ConstantSymbol(51),
               pyVHDLModel.VHDLModel.Variable(52),
               pyVHDLModel.VHDLModel.VariableSymbol(53),
               pyVHDLModel.VHDLModel.Signal(54),
               pyVHDLModel.VHDLModel.SignalSymbol(55),
               pyVHDLModel.VHDLModel.Literal(56)]

      -- Method: classmethod parse (node)

      -- Method: property DefaultExpression

          Return type: Union(57)[BaseExpression(58),
          QualifiedExpression(59), FunctionCall(60), TypeConversion(61),
          Constant(62), ConstantSymbol(63), Variable(64),
          VariableSymbol(65), Signal(66), SignalSymbol(67), ‘Literal’]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(68)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(69)

      -- Method: property SubType

          Return type: Union(70)[SubType(71), SubTypeSymbol(72)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(73)

 -- Class: pyGHDL.dom.Object.SharedVariable (name, subType)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _name: str(74)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(75),
               pyVHDLModel.VHDLModel.SubTypeSymbol(76)]

      -- Method: classmethod parse (node)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(77)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(78)

      -- Method: property SubType

          Return type: Union(79)[SubType(80), SubTypeSymbol(81)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(82)

 -- Class: pyGHDL.dom.Object.Signal (name, subType, defaultExpression)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _name: str(83)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(84),
               pyVHDLModel.VHDLModel.SubTypeSymbol(85)]

      -- Attribute: _defaultExpression:
               Union[pyVHDLModel.VHDLModel.BaseExpression(86),
               pyVHDLModel.VHDLModel.QualifiedExpression(87),
               pyVHDLModel.VHDLModel.FunctionCall(88),
               pyVHDLModel.VHDLModel.TypeConversion(89),
               pyVHDLModel.VHDLModel.Constant(90),
               pyVHDLModel.VHDLModel.ConstantSymbol(91),
               pyVHDLModel.VHDLModel.Variable(92),
               pyVHDLModel.VHDLModel.VariableSymbol(93),
               pyVHDLModel.VHDLModel.Signal(94),
               pyVHDLModel.VHDLModel.SignalSymbol(95),
               pyVHDLModel.VHDLModel.Literal(96)]

      -- Method: classmethod parse (node)

      -- Method: property DefaultExpression

          Return type: Union(97)[BaseExpression(98),
          QualifiedExpression(99), FunctionCall(100),
          TypeConversion(101), Constant(102), ConstantSymbol(103),
          Variable(104), VariableSymbol(105), Signal(106),
          SignalSymbol(107), ‘Literal’]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(108)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(109)

      -- Method: property SubType

          Return type: Union(110)[SubType(111), SubTypeSymbol(112)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(113)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/stdtypes.html#str

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (6)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (10)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (14)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (15) https://docs.python.org/3.6/library/typing.html#typing.Union

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (23)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (26) https://docs.python.org/3.6/library/stdtypes.html#str

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (28) https://docs.python.org/3.6/library/typing.html#typing.Union

   (29)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (32) https://docs.python.org/3.6/library/stdtypes.html#str

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (34)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (35)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (36) https://docs.python.org/3.6/library/stdtypes.html#str

   (37)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (38) https://docs.python.org/3.6/library/typing.html#typing.Union

   (39)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (40)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (42)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (43) https://docs.python.org/3.6/library/stdtypes.html#str

   (44)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (46)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (47)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (48)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (49)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (50)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (51)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (52)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (53)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (54)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (55)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (56)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (57) https://docs.python.org/3.6/library/typing.html#typing.Union

   (58)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (59)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (60)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (61)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (62)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (63)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (64)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (65)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (66)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (67)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (68) https://docs.python.org/3.6/library/stdtypes.html#str

   (69)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (70) https://docs.python.org/3.6/library/typing.html#typing.Union

   (71)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (72)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (73)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (74) https://docs.python.org/3.6/library/stdtypes.html#str

   (75)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (76)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (77) https://docs.python.org/3.6/library/stdtypes.html#str

   (78)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (79) https://docs.python.org/3.6/library/typing.html#typing.Union

   (80)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (81)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (82)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (83) https://docs.python.org/3.6/library/stdtypes.html#str

   (84)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (85)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (86)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (87)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (88)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (89)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (90)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (91)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (92)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (93)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (94)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (95)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (96)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (97) https://docs.python.org/3.6/library/typing.html#typing.Union

   (98)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (99)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (100)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (101)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (102)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (103)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (104)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (105)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (106)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (107)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (108) https://docs.python.org/3.6/library/stdtypes.html#str

   (109)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (110) https://docs.python.org/3.6/library/typing.html#typing.Union

   (111)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (112)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (113)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

14.2.10 pyGHDL.dom.Range
------------------------

`Classes'

   - Range.: ‘ModelEntity’ is the base class for all classes
     in the VHDL language model,

   - RangeExpression.: A ‘BinaryExpression’ is a base-class
     for all binary expressions.

 -- Class: pyGHDL.dom.Range.Range (left, right, direction)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftBound:
               Union[pyVHDLModel.VHDLModel.BaseExpression(1),
               pyVHDLModel.VHDLModel.QualifiedExpression(2),
               pyVHDLModel.VHDLModel.FunctionCall(3),
               pyVHDLModel.VHDLModel.TypeConversion(4),
               pyVHDLModel.VHDLModel.Constant(5),
               pyVHDLModel.VHDLModel.ConstantSymbol(6),
               pyVHDLModel.VHDLModel.Variable(7),
               pyVHDLModel.VHDLModel.VariableSymbol(8),
               pyVHDLModel.VHDLModel.Signal(9),
               pyVHDLModel.VHDLModel.SignalSymbol(10),
               pyVHDLModel.VHDLModel.Literal(11)]

      -- Attribute: _rightBound:
               Union[pyVHDLModel.VHDLModel.BaseExpression(12),
               pyVHDLModel.VHDLModel.QualifiedExpression(13),
               pyVHDLModel.VHDLModel.FunctionCall(14),
               pyVHDLModel.VHDLModel.TypeConversion(15),
               pyVHDLModel.VHDLModel.Constant(16),
               pyVHDLModel.VHDLModel.ConstantSymbol(17),
               pyVHDLModel.VHDLModel.Variable(18),
               pyVHDLModel.VHDLModel.VariableSymbol(19),
               pyVHDLModel.VHDLModel.Signal(20),
               pyVHDLModel.VHDLModel.SignalSymbol(21),
               pyVHDLModel.VHDLModel.Literal(22)]

      -- Attribute: _direction: pyVHDLModel.VHDLModel.Direction(23)

      -- Method: property Direction

          Return type: Direction(24)

      -- Method: property LeftBound

          Return type: Union(25)[BaseExpression(26),
          QualifiedExpression(27), FunctionCall(28), TypeConversion(29),
          Constant(30), ConstantSymbol(31), Variable(32),
          VariableSymbol(33), Signal(34), SignalSymbol(35), ‘Literal’]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(36)

      -- Method: property RightBound

          Return type: Union(37)[BaseExpression(38),
          QualifiedExpression(39), FunctionCall(40), TypeConversion(41),
          Constant(42), ConstantSymbol(43), Variable(44),
          VariableSymbol(45), Signal(46), SignalSymbol(47), ‘Literal’]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(48)

 -- Class: pyGHDL.dom.Range.RangeExpression (range)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: property LeftOperand

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(49)

      -- Method: property RightOperand

      -- Attribute: _FORMAT: Tuple[str(50), str(51), str(52)]

      -- Attribute: _leftOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(53),
               pyVHDLModel.VHDLModel.QualifiedExpression(54),
               pyVHDLModel.VHDLModel.FunctionCall(55),
               pyVHDLModel.VHDLModel.TypeConversion(56),
               pyVHDLModel.VHDLModel.Constant(57),
               pyVHDLModel.VHDLModel.ConstantSymbol(58),
               pyVHDLModel.VHDLModel.Variable(59),
               pyVHDLModel.VHDLModel.VariableSymbol(60),
               pyVHDLModel.VHDLModel.Signal(61),
               pyVHDLModel.VHDLModel.SignalSymbol(62),
               pyVHDLModel.VHDLModel.Literal(63)]

      -- Attribute: _rightOperand:
               Union[pyVHDLModel.VHDLModel.BaseExpression(64),
               pyVHDLModel.VHDLModel.QualifiedExpression(65),
               pyVHDLModel.VHDLModel.FunctionCall(66),
               pyVHDLModel.VHDLModel.TypeConversion(67),
               pyVHDLModel.VHDLModel.Constant(68),
               pyVHDLModel.VHDLModel.ConstantSymbol(69),
               pyVHDLModel.VHDLModel.Variable(70),
               pyVHDLModel.VHDLModel.VariableSymbol(71),
               pyVHDLModel.VHDLModel.Signal(72),
               pyVHDLModel.VHDLModel.SignalSymbol(73),
               pyVHDLModel.VHDLModel.Literal(74)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(75)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (6)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (10)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (14)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (23)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Direction

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Direction

   (25) https://docs.python.org/3.6/library/typing.html#typing.Union

   (26)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (28)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (29)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (32)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (34)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (35)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (36)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (37) https://docs.python.org/3.6/library/typing.html#typing.Union

   (38)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (39)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (40)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (42)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (43)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (44)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (46)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (47)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (48)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (49)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (50) https://docs.python.org/3.6/library/stdtypes.html#str

   (51) https://docs.python.org/3.6/library/stdtypes.html#str

   (52) https://docs.python.org/3.6/library/stdtypes.html#str

   (53)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (54)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (55)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (56)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (57)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (58)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (59)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (60)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (61)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (62)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (63)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (64)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (65)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (66)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (67)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (68)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (69)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (70)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (71)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (72)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (73)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (74)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (75)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

14.2.11 pyGHDL.dom.Subprogram
-----------------------------

`Classes'

   - Function.: ‘ModelEntity’ is the base class for all
     classes in the VHDL language model,

   - Procedure.: ‘ModelEntity’ is the base class for all
     classes in the VHDL language model,

 -- Class: pyGHDL.dom.Subprogram.Function (functionName, returnType,
          genericItems=None, parameterItems=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _genericItems:
               List[pyVHDLModel.VHDLModel.GenericInterfaceItem(1)]

      -- Attribute: _parameterItems:
               List[pyVHDLModel.VHDLModel.ParameterInterfaceItem(2)]

      -- Attribute: _returnType: pyVHDLModel.VHDLModel.SubType(3)

      -- Method: classmethod parse (node)

      -- Method: property BodyItems

          Return type: List(4)[SequentialStatement(5)]

      -- Method: property DeclaredItems

          Return type: List(6)

      -- Method: property GenericItems

          Return type: List(7)[GenericInterfaceItem(8)]

      -- Method: property IsPure

          Return type: bool(9)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(10)

      -- Method: property ParameterItems

          Return type: List(11)[ParameterInterfaceItem(12)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(13)

      -- Method: property ReturnType

          Return type: SubType(14)

      -- Attribute: _declaredItems: List

      -- Attribute: _bodyItems:
               List[pyVHDLModel.VHDLModel.SequentialStatement(15)]

      -- Attribute: _isPure: bool(16)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(17)

      -- Attribute: _name: str(18)

 -- Class: pyGHDL.dom.Subprogram.Procedure (procedureName,
          genericItems=None, parameterItems=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _genericItems:
               List[pyVHDLModel.VHDLModel.GenericInterfaceItem(19)]

      -- Attribute: _parameterItems:
               List[pyVHDLModel.VHDLModel.ParameterInterfaceItem(20)]

      -- Method: classmethod parse (node)

      -- Method: property BodyItems

          Return type: List(21)[SequentialStatement(22)]

      -- Method: property DeclaredItems

          Return type: List(23)

      -- Method: property GenericItems

          Return type: List(24)[GenericInterfaceItem(25)]

      -- Method: property IsPure

          Return type: bool(26)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(27)

      -- Method: property ParameterItems

          Return type: List(28)[ParameterInterfaceItem(29)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(30)

      -- Attribute: _isPure: bool(31) = False

      -- Attribute: _declaredItems: List

      -- Attribute: _bodyItems:
               List[pyVHDLModel.VHDLModel.SequentialStatement(32)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(33)

      -- Attribute: _name: str(34)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ParameterInterfaceItem

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (4) https://docs.python.org/3.6/library/typing.html#typing.List

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SequentialStatement

   (6) https://docs.python.org/3.6/library/typing.html#typing.List

   (7) https://docs.python.org/3.6/library/typing.html#typing.List

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (9) https://docs.python.org/3.6/library/functions.html#bool

   (10) https://docs.python.org/3.6/library/stdtypes.html#str

   (11) https://docs.python.org/3.6/library/typing.html#typing.List

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ParameterInterfaceItem

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (14)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SequentialStatement

   (16) https://docs.python.org/3.6/library/functions.html#bool

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (18) https://docs.python.org/3.6/library/stdtypes.html#str

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ParameterInterfaceItem

   (21) https://docs.python.org/3.6/library/typing.html#typing.List

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SequentialStatement

   (23) https://docs.python.org/3.6/library/typing.html#typing.List

   (24) https://docs.python.org/3.6/library/typing.html#typing.List

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (26) https://docs.python.org/3.6/library/functions.html#bool

   (27) https://docs.python.org/3.6/library/stdtypes.html#str

   (28) https://docs.python.org/3.6/library/typing.html#typing.List

   (29)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ParameterInterfaceItem

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (31) https://docs.python.org/3.6/library/functions.html#bool

   (32)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SequentialStatement

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (34) https://docs.python.org/3.6/library/stdtypes.html#str

14.2.12 pyGHDL.dom.Symbol
-------------------------

`Classes'

   - EntitySymbol.: ‘ModelEntity’ is the base class for all
     classes in the VHDL language model,

   - EnumerationLiteralSymbol.: ‘ModelEntity’ is the base
     class for all classes in the VHDL language model,

   - SimpleSubTypeSymbol.: ‘ModelEntity’ is the base class
     for all classes in the VHDL language model,

   - ConstrainedScalarSubTypeSymbol.: ‘ModelEntity’ is the
     base class for all classes in the VHDL language model,

   - ConstrainedCompositeSubTypeSymbol.: ‘ModelEntity’ is the
     base class for all classes in the VHDL language model,

   - SimpleObjectOrFunctionCallSymbol.: ‘ModelEntity’ is the
     base class for all classes in the VHDL language model,

   - IndexedObjectOrFunctionCallSymbol.: ‘ModelEntity’ is the
     base class for all classes in the VHDL language model,

 -- Class: pyGHDL.dom.Symbol.EntitySymbol (entityName)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: property Package

          Return type: Entity(1)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(2)

      -- Method: property SymbolName

          Return type: Name(3)

      -- Attribute: _entity: pyVHDLModel.VHDLModel.Entity(4)

      -- Attribute: _symbolName: pyVHDLModel.VHDLModel.Name(5)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(6)

 -- Class: pyGHDL.dom.Symbol.EnumerationLiteralSymbol (literalName)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(7)

      -- Method: property SymbolName

          Return type: Name(8)

      -- Attribute: _symbolName: pyVHDLModel.VHDLModel.Name(9)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(10)

 -- Class: pyGHDL.dom.Symbol.SimpleSubTypeSymbol (subTypeName)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(11)

      -- Method: property SubType

          Return type: SubType(12)

      -- Method: property SymbolName

          Return type: Name(13)

      -- Attribute: _subType: pyVHDLModel.VHDLModel.SubType(14)

      -- Attribute: _symbolName: pyVHDLModel.VHDLModel.Name(15)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(16)

 -- Class: pyGHDL.dom.Symbol.ConstrainedScalarSubTypeSymbol
          (subTypeName, range=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(17)

      -- Method: property Range

          Return type: Range(18)

      -- Method: property SubType

          Return type: SubType(19)

      -- Method: property SymbolName

          Return type: Name(20)

      -- Attribute: _range: pyVHDLModel.VHDLModel.Range(21)

      -- Attribute: _subType: pyVHDLModel.VHDLModel.SubType(22)

      -- Attribute: _symbolName: pyVHDLModel.VHDLModel.Name(23)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(24)

 -- Class: pyGHDL.dom.Symbol.ConstrainedCompositeSubTypeSymbol
          (subTypeName, constraints=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

      -- Method: property Constraints

          Return type: List(25)[Union(26)[RangeExpression(27),
          RangeAttribute(28), RangeSubtype(29)]]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(30)

      -- Method: property SubType

          Return type: SubType(31)

      -- Method: property SymbolName

          Return type: Name(32)

      -- Attribute: _constraints:
               List[Union[pyVHDLModel.VHDLModel.RangeExpression(33),
               pyVHDLModel.VHDLModel.RangeAttribute(34),
               pyVHDLModel.VHDLModel.RangeSubtype(35)]]

      -- Attribute: _subType: pyVHDLModel.VHDLModel.SubType(36)

      -- Attribute: _symbolName: pyVHDLModel.VHDLModel.Name(37)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(38)

 -- Class: pyGHDL.dom.Symbol.SimpleObjectOrFunctionCallSymbol
          (objectName)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

      -- Method: property Object

          Return type: Union(39)[Constant(40), Signal(41), Variable(42),
          Function(43)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(44)

      -- Method: property SymbolName

          Return type: Name(45)

      -- Attribute: _object: Union[pyVHDLModel.VHDLModel.Constant(46),
               pyVHDLModel.VHDLModel.Signal(47),
               pyVHDLModel.VHDLModel.Variable(48),
               pyVHDLModel.VHDLModel.Function(49)]

      -- Attribute: _symbolName: pyVHDLModel.VHDLModel.Name(50)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(51)

 -- Class: pyGHDL.dom.Symbol.IndexedObjectOrFunctionCallSymbol (name,
          associations)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (node)

      -- Method: property Object

          Return type: Union(52)[Constant(53), Signal(54), Variable(55),
          Function(56)]

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(57)

      -- Method: property SymbolName

          Return type: Name(58)

      -- Attribute: _object: Union[pyVHDLModel.VHDLModel.Constant(59),
               pyVHDLModel.VHDLModel.Signal(60),
               pyVHDLModel.VHDLModel.Variable(61),
               pyVHDLModel.VHDLModel.Function(62)]

      -- Attribute: _symbolName: pyVHDLModel.VHDLModel.Name(63)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(64)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Entity

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Entity

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (6)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (10)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (14)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Range

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Range

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (23)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (25) https://docs.python.org/3.6/library/typing.html#typing.List

   (26) https://docs.python.org/3.6/library/typing.html#typing.Union

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RangeExpression

   (28)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RangeAttribute

   (29)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RangeSubtype

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (32)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RangeExpression

   (34)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RangeAttribute

   (35)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RangeSubtype

   (36)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (37)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (38)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (39) https://docs.python.org/3.6/library/typing.html#typing.Union

   (40)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (42)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (43)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Function

   (44)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (46)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (47)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (48)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (49)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Function

   (50)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (51)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (52) https://docs.python.org/3.6/library/typing.html#typing.Union

   (53)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (54)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (55)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (56)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Function

   (57)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (58)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (59)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (60)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (61)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (62)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Function

   (63)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Name

   (64)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

14.2.13 pyGHDL.dom.Type
-----------------------

`Classes'

   - IntegerType.: A ‘RangedScalarType’ is a base-class for
     all scalar types with a range.

   - EnumeratedType.: A ‘ScalarType’ is a base-class for all
     scalar types.

   - ArrayType.: A ‘CompositeType’ is a base-class for all
     composite types.

   - RecordTypeElement.: ‘ModelEntity’ is the base class for
     all classes in the VHDL language model,

   - RecordType.: A ‘CompositeType’ is a base-class for all
     composite types.

   - AccessType.: ‘BaseType’ is the base class of all type
     entities in this model.

   - SubType.: ‘BaseType’ is the base class of all type
     entities in this model.

 -- Class: pyGHDL.dom.Type.IntegerType (typeName, range)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _leftBound:
               Union[pyVHDLModel.VHDLModel.BaseExpression(1),
               pyVHDLModel.VHDLModel.QualifiedExpression(2),
               pyVHDLModel.VHDLModel.FunctionCall(3),
               pyVHDLModel.VHDLModel.TypeConversion(4),
               pyVHDLModel.VHDLModel.Constant(5),
               pyVHDLModel.VHDLModel.ConstantSymbol(6),
               pyVHDLModel.VHDLModel.Variable(7),
               pyVHDLModel.VHDLModel.VariableSymbol(8),
               pyVHDLModel.VHDLModel.Signal(9),
               pyVHDLModel.VHDLModel.SignalSymbol(10),
               pyVHDLModel.VHDLModel.Literal(11)]

      -- Attribute: _rightBound:
               Union[pyVHDLModel.VHDLModel.BaseExpression(12),
               pyVHDLModel.VHDLModel.QualifiedExpression(13),
               pyVHDLModel.VHDLModel.FunctionCall(14),
               pyVHDLModel.VHDLModel.TypeConversion(15),
               pyVHDLModel.VHDLModel.Constant(16),
               pyVHDLModel.VHDLModel.ConstantSymbol(17),
               pyVHDLModel.VHDLModel.Variable(18),
               pyVHDLModel.VHDLModel.VariableSymbol(19),
               pyVHDLModel.VHDLModel.Signal(20),
               pyVHDLModel.VHDLModel.SignalSymbol(21),
               pyVHDLModel.VHDLModel.Literal(22)]

      -- Method: property LeftBound

          Return type: Union(23)[BaseExpression(24),
          QualifiedExpression(25), FunctionCall(26), TypeConversion(27),
          Constant(28), ConstantSymbol(29), Variable(30),
          VariableSymbol(31), Signal(32), SignalSymbol(33), ‘Literal’]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(34)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(35)

      -- Method: property RightBound

          Return type: Union(36)[BaseExpression(37),
          QualifiedExpression(38), FunctionCall(39), TypeConversion(40),
          Constant(41), ConstantSymbol(42), Variable(43),
          VariableSymbol(44), Signal(45), SignalSymbol(46), ‘Literal’]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(47)

      -- Attribute: _name: str(48)

 -- Class: pyGHDL.dom.Type.EnumeratedType (name, literals)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (typeName, typeDefinitionNode)

          Return type: EnumeratedType.

      -- Method: property Literals

          Return type: List(49)[EnumerationLiteral(50)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(51)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(52)

      -- Attribute: _literals:
               List[pyVHDLModel.VHDLModel.EnumerationLiteral(53)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(54)

      -- Attribute: _name: str(55)

 -- Class: pyGHDL.dom.Type.ArrayType (name, indices, elementSubType)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (typeName, typeDefinitionNode)

          Return type: ArrayType.

      -- Method: property Dimensions

          Return type: List(56)[Range(57)]

      -- Method: property ElementType

          Return type: SubType(58)

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(59)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(60)

      -- Attribute: _dimensions: List[pyVHDLModel.VHDLModel.Range(61)]

      -- Attribute: _elementType: pyVHDLModel.VHDLModel.SubType(62)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(63)

      -- Attribute: _name: str(64)

 -- Class: pyGHDL.dom.Type.RecordTypeElement (name, subType)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (elementDeclarationNode)

          Return type: RecordTypeElement.

      -- Method: property Name

          Return type: str(65)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(66)

      -- Method: property SubType

          Return type: Union(67)[SubType(68), SubTypeSymbol(69)]

      -- Attribute: _name: str(70)

      -- Attribute: _subType: Union[pyVHDLModel.VHDLModel.SubType(71),
               pyVHDLModel.VHDLModel.SubTypeSymbol(72)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(73)

 -- Class: pyGHDL.dom.Type.RecordType (name, elements=None)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (typeName, typeDefinitionNode)

          Return type: RecordType.

      -- Method: property Elements

          Return type: List(74)[RecordTypeElement(75)]

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(76)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(77)

      -- Attribute: _elements:
               List[pyVHDLModel.VHDLModel.RecordTypeElement(78)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(79)

      -- Attribute: _name: str(80)

 -- Class: pyGHDL.dom.Type.AccessType (name, designatedSubType)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: classmethod parse (typeName, typeDefinitionNode)

          Return type: AccessType.

      -- Method: property DesignatedSubtype

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(81)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(82)

      -- Attribute: _designatedSubType:
               Union[pyVHDLModel.VHDLModel.SubType(83),
               pyVHDLModel.VHDLModel.SubTypeSymbol(84)]

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(85)

      -- Attribute: _name: str(86)

 -- Class: pyGHDL.dom.Type.SubType (subtypeName)

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: property BaseType

          Return type: <property object at 0x000002b5562de3b0>

      -- Method: property Name

          Returns a model entity’s name.

          Return type: str(87)

      -- Method: property Parent

          Returns a reference to the parent entity.

          Return type: ModelEntity(88)

      -- Method: property Range

          Return type: Range(89)

      -- Method: property ResolutionFunction

          Return type: Function(90)

      -- Method: property Type

          Return type: SubType(91)

      -- Attribute: _type: pyVHDLModel.VHDLModel.SubType(92)

      -- Attribute: _baseType: pyVHDLModel.VHDLModel.Type(93)

      -- Attribute: _range: pyVHDLModel.VHDLModel.Range(94)

      -- Attribute: _resolutionFunction:
               pyVHDLModel.VHDLModel.Function(95)

      -- Attribute: _parent: pyVHDLModel.VHDLModel.ModelEntity(96)

      -- Attribute: _name: str(97)

   ---------- Footnotes ----------

   (1)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (2)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (6)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (8)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (10)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (12)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (14)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Literal

   (23) https://docs.python.org/3.6/library/typing.html#typing.Union

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (25)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (26)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (27)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (28)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (29)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (30)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (31)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (32)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (33)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (34) https://docs.python.org/3.6/library/stdtypes.html#str

   (35)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (36) https://docs.python.org/3.6/library/typing.html#typing.Union

   (37)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (38)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (39)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (40)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (41)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (42)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (43)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (44)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (45)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (46)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (47)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (48) https://docs.python.org/3.6/library/stdtypes.html#str

   (49) https://docs.python.org/3.6/library/typing.html#typing.List

   (50)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.EnumerationLiteral

   (51) https://docs.python.org/3.6/library/stdtypes.html#str

   (52)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (53)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.EnumerationLiteral

   (54)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (55) https://docs.python.org/3.6/library/stdtypes.html#str

   (56) https://docs.python.org/3.6/library/typing.html#typing.List

   (57)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Range

   (58)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (59) https://docs.python.org/3.6/library/stdtypes.html#str

   (60)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (61)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Range

   (62)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (63)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (64) https://docs.python.org/3.6/library/stdtypes.html#str

   (65) https://docs.python.org/3.6/library/stdtypes.html#str

   (66)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (67) https://docs.python.org/3.6/library/typing.html#typing.Union

   (68)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (69)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (70) https://docs.python.org/3.6/library/stdtypes.html#str

   (71)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (72)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (73)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (74) https://docs.python.org/3.6/library/typing.html#typing.List

   (75)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RecordTypeElement

   (76) https://docs.python.org/3.6/library/stdtypes.html#str

   (77)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (78)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RecordTypeElement

   (79)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (80) https://docs.python.org/3.6/library/stdtypes.html#str

   (81) https://docs.python.org/3.6/library/stdtypes.html#str

   (82)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (83)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (84)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (85)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (86) https://docs.python.org/3.6/library/stdtypes.html#str

   (87) https://docs.python.org/3.6/library/stdtypes.html#str

   (88)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (89)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Range

   (90)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Function

   (91)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (92)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubType

   (93)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Type

   (94)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Range

   (95)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Function

   (96)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ModelEntity

   (97) https://docs.python.org/3.6/library/stdtypes.html#str

14.2.14 pyGHDL.dom._Translate
-----------------------------

`Functions'

   - GetArrayConstraintsFromSubtypeIndication().:
     Undocumented.

   - GetTypeFromNode().: Undocumented.

   - GetSubTypeIndicationFromNode().: Undocumented.

   - GetSubTypeIndicationFromIndicationNode().: Undocumented.

   - GetSimpleTypeFromNode().: Undocumented.

   - GetScalarConstrainedSubTypeFromNode().: Undocumented.

   - GetCompositeConstrainedSubTypeFromNode().: Undocumented.

   - GetSubTypeFromNode().: Undocumented.

   - GetRangeFromNode().: Undocumented.

   - GetExpressionFromNode().: Undocumented.

   - GetGenericsFromChainedNodes().: Undocumented.

   - GetPortsFromChainedNodes().: Undocumented.

   - GetParameterFromChainedNodes().: Undocumented.

`Functions'

 -- Function:
          pyGHDL.dom._Translate.GetArrayConstraintsFromSubtypeIndication
          (subTypeIndication)

     Return type: List(1)[Union(2)[see RangeExpression,
     RangeAttribute(3), RangeSubtype(4)]]

 -- Function: pyGHDL.dom._Translate.GetTypeFromNode (node)

     Return type: BaseType(5)

 -- Function: pyGHDL.dom._Translate.GetSubTypeIndicationFromNode (node,
          entity, name)

     Return type: Union(6)[see SubType, SubTypeSymbol(7)]

 -- Function:
          pyGHDL.dom._Translate.GetSubTypeIndicationFromIndicationNode
          (subTypeIndicationNode, entity, name)

     Return type: Union(8)[see SubType, SubTypeSymbol(9)]

 -- Function: pyGHDL.dom._Translate.GetSimpleTypeFromNode
          (subTypeIndicationNode)

     Return type: SimpleSubTypeSymbol.

 -- Function: pyGHDL.dom._Translate.GetScalarConstrainedSubTypeFromNode
          (subTypeIndicationNode)

     Return type: ConstrainedScalarSubTypeSymbol.

 -- Function:
          pyGHDL.dom._Translate.GetCompositeConstrainedSubTypeFromNode
          (subTypeIndicationNode)

     Return type: ConstrainedCompositeSubTypeSymbol.

 -- Function: pyGHDL.dom._Translate.GetSubTypeFromNode (node)

     Return type: Union(10)[see SubType, SubTypeSymbol(11)]

 -- Function: pyGHDL.dom._Translate.GetRangeFromNode (node)

     Return type: Range.

 -- Function: pyGHDL.dom._Translate.GetExpressionFromNode (node)

     Return type: Union(12)[BaseExpression(13), QualifiedExpression(14),
     FunctionCall(15), TypeConversion(16), Constant(17),
     ConstantSymbol(18), Variable(19), VariableSymbol(20), Signal(21),
     SignalSymbol(22), ‘Literal’]

 -- Function: pyGHDL.dom._Translate.GetGenericsFromChainedNodes
          (nodeChain)

     Return type: Generator(23)[GenericInterfaceItem(24), None(25),
     None(26)]

 -- Function: pyGHDL.dom._Translate.GetPortsFromChainedNodes (nodeChain)

     Return type: Generator(27)[PortInterfaceItem(28), None(29),
     None(30)]

 -- Function: pyGHDL.dom._Translate.GetParameterFromChainedNodes
          (nodeChain)

     Return type: Generator(31)[ParameterInterfaceItem(32), None(33),
     None(34)]

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/typing.html#typing.List

   (2) https://docs.python.org/3.6/library/typing.html#typing.Union

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RangeAttribute

   (4)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.RangeSubtype

   (5)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseType

   (6) https://docs.python.org/3.6/library/typing.html#typing.Union

   (7)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (8) https://docs.python.org/3.6/library/typing.html#typing.Union

   (9)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (10) https://docs.python.org/3.6/library/typing.html#typing.Union

   (11)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SubTypeSymbol

   (12) https://docs.python.org/3.6/library/typing.html#typing.Union

   (13)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.BaseExpression

   (14)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.QualifiedExpression

   (15)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.FunctionCall

   (16)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.TypeConversion

   (17)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Constant

   (18)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ConstantSymbol

   (19)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Variable

   (20)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.VariableSymbol

   (21)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Signal

   (22)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.SignalSymbol

   (23) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (24)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.GenericInterfaceItem

   (25) https://docs.python.org/3.6/library/constants.html#None

   (26) https://docs.python.org/3.6/library/constants.html#None

   (27) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (28)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.PortInterfaceItem

   (29) https://docs.python.org/3.6/library/constants.html#None

   (30) https://docs.python.org/3.6/library/constants.html#None

   (31) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (32)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.ParameterInterfaceItem

   (33) https://docs.python.org/3.6/library/constants.html#None

   (34) https://docs.python.org/3.6/library/constants.html#None

14.2.15 pyGHDL.dom._Utils
-------------------------

`Functions'

   - CheckForErrors().: Undocumented.

   - GetIirKindOfNode().: Return the kind of a node in the
     IIR tree.

   - GetNameOfNode().: Return the python string from node
     ‘node’ identifier.

   - GetSelectedName().: Undocumented.

   - GetModeOfNode().: Return the mode of a ‘node’.

   - GetPositionOfNode().: Return the source code position of
     a IIR node.

`Functions'

 -- Function: pyGHDL.dom._Utils.CheckForErrors ()

     Return type: None(1)

 -- Function: pyGHDL.dom._Utils.GetIirKindOfNode (node)

     Return the kind of a node in the IIR tree.

     Return type: Iir_Kind.

 -- Function: pyGHDL.dom._Utils.GetNameOfNode (node)

     Return the python string from node ‘node’ identifier.

     Return type: str(2)

 -- Function: pyGHDL.dom._Utils.GetSelectedName (node)

 -- Function: pyGHDL.dom._Utils.GetModeOfNode (node)

     Return the mode of a ‘node’.

     Return type: Mode(3)

 -- Function: pyGHDL.dom._Utils.GetPositionOfNode (node)

     Return the source code position of a IIR node.

     Return type: Position.

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/constants.html#None

   (2) https://docs.python.org/3.6/library/stdtypes.html#str

   (3)
https://vhdl.github.io/pyVHDLModel/pyVHDLModel/pyVHDLModel.VHDLModel.html#pyVHDLModel.VHDLModel.Mode

14.2.16 pyGHDL.dom.formatting
-----------------------------

`Submodules'

14.2.16.1 pyGHDL.dom.formatting.prettyprint
...........................................

`Exceptions'

   - PrettyPrintException.: Common base class for all
     non-exit exceptions.

`Classes'

   - PrettyPrint.: Undocumented.

 -- Exception: pyGHDL.dom.formatting.prettyprint.PrettyPrintException

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: args

      -- Method: with_traceback ()

          Exception.with_traceback(tb) – set self.__traceback__ to tb
          and return self.

 -- Class: pyGHDL.dom.formatting.prettyprint.PrettyPrint

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Method: formatDesign (design, level=0)

          Return type: List(1)[str(2)]

      -- Method: formatLibrary (library, level=0)

          Return type: List(3)[str(4)]

      -- Method: formatDocument (document, level=0)

          Return type: List(5)[str(6)]

      -- Method: formatEntity (entity, level=0)

          Return type: List(7)[str(8)]

      -- Method: formatArchitecture (architecture, level=0)

          Return type: List(9)[str(10)]

      -- Method: formatComponent (component, level=0)

          Return type: List(11)[str(12)]

      -- Method: formatPackage (package, level=0)

          Return type: List(13)[str(14)]

      -- Method: formatPackageBody (packageBody, level=0)

          Return type: List(15)[str(16)]

      -- Method: formatConfiguration (configuration, level=0)

          Return type: List(17)[str(18)]

      -- Method: formatContext (context, level=0)

          Return type: List(19)[str(20)]

      -- Method: formatGeneric (generic, level=0)

          Return type: List(21)[str(22)]

      -- Method: formatPort (port, level=0)

          Return type: List(23)[str(24)]

      -- Method: formatGenericConstant (generic, level=0)

          Return type: List(25)[str(26)]

      -- Method: formatPortSignal (port, level=0)

          Return type: List(27)[str(28)]

      -- Method: formatDeclaredItems (item, level=0)

          Return type: List(29)[str(30)]

      -- Method: formatType (item)

          Return type: str(31)

      -- Method: formatSubtypeIndication (subTypeIndication, entity,
               name)

          Return type: str(32)

      -- Method: formatInitialValue (item)

          Return type: str(33)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/typing.html#typing.List

   (2) https://docs.python.org/3.6/library/stdtypes.html#str

   (3) https://docs.python.org/3.6/library/typing.html#typing.List

   (4) https://docs.python.org/3.6/library/stdtypes.html#str

   (5) https://docs.python.org/3.6/library/typing.html#typing.List

   (6) https://docs.python.org/3.6/library/stdtypes.html#str

   (7) https://docs.python.org/3.6/library/typing.html#typing.List

   (8) https://docs.python.org/3.6/library/stdtypes.html#str

   (9) https://docs.python.org/3.6/library/typing.html#typing.List

   (10) https://docs.python.org/3.6/library/stdtypes.html#str

   (11) https://docs.python.org/3.6/library/typing.html#typing.List

   (12) https://docs.python.org/3.6/library/stdtypes.html#str

   (13) https://docs.python.org/3.6/library/typing.html#typing.List

   (14) https://docs.python.org/3.6/library/stdtypes.html#str

   (15) https://docs.python.org/3.6/library/typing.html#typing.List

   (16) https://docs.python.org/3.6/library/stdtypes.html#str

   (17) https://docs.python.org/3.6/library/typing.html#typing.List

   (18) https://docs.python.org/3.6/library/stdtypes.html#str

   (19) https://docs.python.org/3.6/library/typing.html#typing.List

   (20) https://docs.python.org/3.6/library/stdtypes.html#str

   (21) https://docs.python.org/3.6/library/typing.html#typing.List

   (22) https://docs.python.org/3.6/library/stdtypes.html#str

   (23) https://docs.python.org/3.6/library/typing.html#typing.List

   (24) https://docs.python.org/3.6/library/stdtypes.html#str

   (25) https://docs.python.org/3.6/library/typing.html#typing.List

   (26) https://docs.python.org/3.6/library/stdtypes.html#str

   (27) https://docs.python.org/3.6/library/typing.html#typing.List

   (28) https://docs.python.org/3.6/library/stdtypes.html#str

   (29) https://docs.python.org/3.6/library/typing.html#typing.List

   (30) https://docs.python.org/3.6/library/stdtypes.html#str

   (31) https://docs.python.org/3.6/library/stdtypes.html#str

   (32) https://docs.python.org/3.6/library/stdtypes.html#str

   (33) https://docs.python.org/3.6/library/stdtypes.html#str

14.3 pyGHDL.libghdl
===================

`Submodules'

14.3.1 pyGHDL.libghdl._decorator
--------------------------------

`Functions'

   - EnumLookupTable().: Decorator to precalculate a enum
     lookup table (LUT) for enum position to

`Functions'

 -- Function: pyGHDL.libghdl._decorator.EnumLookupTable (cls)

     Decorator to precalculate a enum lookup table (LUT) for enum
     position to enum literal name.

     Parameters: ‘cls’ – Enumerator class for which a LUT shall be
     pre-calculated.

     Return type: Callable(1)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/typing.html#typing.Callable

14.3.2 pyGHDL.libghdl._types
----------------------------

`Variables'

   - ErrorIndex.

   - MessageIdWarnings.

   - NameId.

   - SourceFileEntry.

   - Iir.

   - IirKind.

`Classes'

   - TriStateType.: An enumeration.

   - DirectionType.: An enumeration.

 -- Data: pyGHDL.libghdl._types.ErrorIndex

     Type variable.

     Usage:

          T = TypeVar('T')  # Can be anything
          A = TypeVar('A', str, bytes)  # Must be str or bytes

     Type variables exist primarily for the benefit of static type
     checkers.  They serve as the parameters for generic types as well
     as for generic function definitions.  See class Generic for more
     information on generic types.  Generic functions work as follows:

          def repeat(x: T, n: int) -> List[T]:

               ‘’’Return a list containing n references to x.’’’ return
               [x]*n

          def longest(x: A, y: A) -> A:

               ‘’’Return the longest of two strings.’’’ return x if
               len(x) >= len(y) else y

     The latter example’s signature is essentially the overloading of
     (str, str) -> str and (bytes, bytes) -> bytes.  Also note that if
     the arguments are instances of some subclass of str, the return
     type is still plain str.

     At runtime, isinstance(x, T) and issubclass(C, T) will raise
     TypeError.

     Type variables defined with covariant=True or contravariant=True
     can be used to declare covariant or contravariant generic types.
     See PEP 484 for more details.  By default generic types are
     invariant in all type variables.

     Type variables can be introspected.  e.g.:

          T.__name__ == ‘T’ T.__constraints__ == () T.__covariant__ ==
          False T.__contravariant__ = False A.__constraints__ == (str,
          bytes)

     Note that only type variables defined in global scope can be
     pickled.

          ~ErrorIndex

 -- Data: pyGHDL.libghdl._types.MessageIdWarnings

     Type variable.

     Usage:

          T = TypeVar('T')  # Can be anything
          A = TypeVar('A', str, bytes)  # Must be str or bytes

     Type variables exist primarily for the benefit of static type
     checkers.  They serve as the parameters for generic types as well
     as for generic function definitions.  See class Generic for more
     information on generic types.  Generic functions work as follows:

          def repeat(x: T, n: int) -> List[T]:

               ‘’’Return a list containing n references to x.’’’ return
               [x]*n

          def longest(x: A, y: A) -> A:

               ‘’’Return the longest of two strings.’’’ return x if
               len(x) >= len(y) else y

     The latter example’s signature is essentially the overloading of
     (str, str) -> str and (bytes, bytes) -> bytes.  Also note that if
     the arguments are instances of some subclass of str, the return
     type is still plain str.

     At runtime, isinstance(x, T) and issubclass(C, T) will raise
     TypeError.

     Type variables defined with covariant=True or contravariant=True
     can be used to declare covariant or contravariant generic types.
     See PEP 484 for more details.  By default generic types are
     invariant in all type variables.

     Type variables can be introspected.  e.g.:

          T.__name__ == ‘T’ T.__constraints__ == () T.__covariant__ ==
          False T.__contravariant__ = False A.__constraints__ == (str,
          bytes)

     Note that only type variables defined in global scope can be
     pickled.

          ~MessageIdWarnings

 -- Data: pyGHDL.libghdl._types.NameId

     Type variable.

     Usage:

          T = TypeVar('T')  # Can be anything
          A = TypeVar('A', str, bytes)  # Must be str or bytes

     Type variables exist primarily for the benefit of static type
     checkers.  They serve as the parameters for generic types as well
     as for generic function definitions.  See class Generic for more
     information on generic types.  Generic functions work as follows:

          def repeat(x: T, n: int) -> List[T]:

               ‘’’Return a list containing n references to x.’’’ return
               [x]*n

          def longest(x: A, y: A) -> A:

               ‘’’Return the longest of two strings.’’’ return x if
               len(x) >= len(y) else y

     The latter example’s signature is essentially the overloading of
     (str, str) -> str and (bytes, bytes) -> bytes.  Also note that if
     the arguments are instances of some subclass of str, the return
     type is still plain str.

     At runtime, isinstance(x, T) and issubclass(C, T) will raise
     TypeError.

     Type variables defined with covariant=True or contravariant=True
     can be used to declare covariant or contravariant generic types.
     See PEP 484 for more details.  By default generic types are
     invariant in all type variables.

     Type variables can be introspected.  e.g.:

          T.__name__ == ‘T’ T.__constraints__ == () T.__covariant__ ==
          False T.__contravariant__ = False A.__constraints__ == (str,
          bytes)

     Note that only type variables defined in global scope can be
     pickled.

          ~NameId

 -- Data: pyGHDL.libghdl._types.SourceFileEntry

     Type variable.

     Usage:

          T = TypeVar('T')  # Can be anything
          A = TypeVar('A', str, bytes)  # Must be str or bytes

     Type variables exist primarily for the benefit of static type
     checkers.  They serve as the parameters for generic types as well
     as for generic function definitions.  See class Generic for more
     information on generic types.  Generic functions work as follows:

          def repeat(x: T, n: int) -> List[T]:

               ‘’’Return a list containing n references to x.’’’ return
               [x]*n

          def longest(x: A, y: A) -> A:

               ‘’’Return the longest of two strings.’’’ return x if
               len(x) >= len(y) else y

     The latter example’s signature is essentially the overloading of
     (str, str) -> str and (bytes, bytes) -> bytes.  Also note that if
     the arguments are instances of some subclass of str, the return
     type is still plain str.

     At runtime, isinstance(x, T) and issubclass(C, T) will raise
     TypeError.

     Type variables defined with covariant=True or contravariant=True
     can be used to declare covariant or contravariant generic types.
     See PEP 484 for more details.  By default generic types are
     invariant in all type variables.

     Type variables can be introspected.  e.g.:

          T.__name__ == ‘T’ T.__constraints__ == () T.__covariant__ ==
          False T.__contravariant__ = False A.__constraints__ == (str,
          bytes)

     Note that only type variables defined in global scope can be
     pickled.

          ~SourceFileEntry

 -- Data: pyGHDL.libghdl._types.Iir

     Type variable.

     Usage:

          T = TypeVar('T')  # Can be anything
          A = TypeVar('A', str, bytes)  # Must be str or bytes

     Type variables exist primarily for the benefit of static type
     checkers.  They serve as the parameters for generic types as well
     as for generic function definitions.  See class Generic for more
     information on generic types.  Generic functions work as follows:

          def repeat(x: T, n: int) -> List[T]:

               ‘’’Return a list containing n references to x.’’’ return
               [x]*n

          def longest(x: A, y: A) -> A:

               ‘’’Return the longest of two strings.’’’ return x if
               len(x) >= len(y) else y

     The latter example’s signature is essentially the overloading of
     (str, str) -> str and (bytes, bytes) -> bytes.  Also note that if
     the arguments are instances of some subclass of str, the return
     type is still plain str.

     At runtime, isinstance(x, T) and issubclass(C, T) will raise
     TypeError.

     Type variables defined with covariant=True or contravariant=True
     can be used to declare covariant or contravariant generic types.
     See PEP 484 for more details.  By default generic types are
     invariant in all type variables.

     Type variables can be introspected.  e.g.:

          T.__name__ == ‘T’ T.__constraints__ == () T.__covariant__ ==
          False T.__contravariant__ = False A.__constraints__ == (str,
          bytes)

     Note that only type variables defined in global scope can be
     pickled.

          ~Iir

 -- Data: pyGHDL.libghdl._types.IirKind

     Type variable.

     Usage:

          T = TypeVar('T')  # Can be anything
          A = TypeVar('A', str, bytes)  # Must be str or bytes

     Type variables exist primarily for the benefit of static type
     checkers.  They serve as the parameters for generic types as well
     as for generic function definitions.  See class Generic for more
     information on generic types.  Generic functions work as follows:

          def repeat(x: T, n: int) -> List[T]:

               ‘’’Return a list containing n references to x.’’’ return
               [x]*n

          def longest(x: A, y: A) -> A:

               ‘’’Return the longest of two strings.’’’ return x if
               len(x) >= len(y) else y

     The latter example’s signature is essentially the overloading of
     (str, str) -> str and (bytes, bytes) -> bytes.  Also note that if
     the arguments are instances of some subclass of str, the return
     type is still plain str.

     At runtime, isinstance(x, T) and issubclass(C, T) will raise
     TypeError.

     Type variables defined with covariant=True or contravariant=True
     can be used to declare covariant or contravariant generic types.
     See PEP 484 for more details.  By default generic types are
     invariant in all type variables.

     Type variables can be introspected.  e.g.:

          T.__name__ == ‘T’ T.__constraints__ == () T.__covariant__ ==
          False T.__contravariant__ = False A.__constraints__ == (str,
          bytes)

     Note that only type variables defined in global scope can be
     pickled.

          ~IirKind

 -- Class: pyGHDL.libghdl._types.TriStateType (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Unknown = 0

      -- Attribute: TFalse = 1

      -- Attribute: TTrue = 2

 -- Class: pyGHDL.libghdl._types.DirectionType (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: To = 0

      -- Attribute: Downto = 1

14.3.3 pyGHDL.libghdl.errorout
------------------------------

`Classes'

   - Msgid.: An enumeration.

`Functions'

   - Enable_Warning().:

 -- Class: pyGHDL.libghdl.errorout.Msgid (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Msgid_Note = 0

      -- Attribute: Warnid_Library = 1

      -- Attribute: Warnid_Deprecated_Option = 2

      -- Attribute: Warnid_Unexpected_Option = 3

      -- Attribute: Warnid_Missing_Xref = 4

      -- Attribute: Warnid_Default_Binding = 5

      -- Attribute: Warnid_Binding = 6

      -- Attribute: Warnid_Port = 7

      -- Attribute: Warnid_Reserved_Word = 8

      -- Attribute: Warnid_Pragma = 9

      -- Attribute: Warnid_Nested_Comment = 10

      -- Attribute: Warnid_Directive = 11

      -- Attribute: Warnid_Parenthesis = 12

      -- Attribute: Warnid_Vital_Generic = 13

      -- Attribute: Warnid_Delayed_Checks = 14

      -- Attribute: Warnid_Body = 15

      -- Attribute: Warnid_Specs = 16

      -- Attribute: Warnid_Universal = 17

      -- Attribute: Warnid_Port_Bounds = 18

      -- Attribute: Warnid_Runtime_Error = 19

      -- Attribute: Warnid_Delta_Cycle = 20

      -- Attribute: Warnid_No_Wait = 21

      -- Attribute: Warnid_Shared = 22

      -- Attribute: Warnid_Hide = 23

      -- Attribute: Warnid_Unused = 24

      -- Attribute: Warnid_Others = 25

      -- Attribute: Warnid_Pure = 26

      -- Attribute: Warnid_Analyze_Assert = 27

      -- Attribute: Warnid_Attribute = 28

      -- Attribute: Warnid_Static = 29

      -- Attribute: Msgid_Warning = 30

      -- Attribute: Msgid_Error = 31

      -- Attribute: Msgid_Fatal = 32

`Functions'

 -- Function: pyGHDL.libghdl.errorout.Enable_Warning (Id, Enable)

     Return type: None(1)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/constants.html#None

14.3.4 pyGHDL.libghdl.errorout_console
--------------------------------------

`Functions'

   - Install_Handler().: Install the handlers for reporting
     errors.

`Functions'

 -- Function: pyGHDL.libghdl.errorout_console.Install_Handler ()

     Install the handlers for reporting errors.

     Return type: None(1)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/constants.html#None

14.3.5 pyGHDL.libghdl.errorout_memory
-------------------------------------

`Classes'

   - Error_Message.: Id : Msgid_Type

`Functions'

   - Install_Handler().: Install the handlers for reporting
     errors.

   - Get_Nbr_Messages().: Get number of error messages
     available.

   - Get_Error_Record().: Get error messages by index ‘Idy’
     as structure Error_Message.

   - Get_Error_Message().: Get error messages by index ‘Idx’
     as string.

   - Clear_Errors().: Remove all error messages.

 -- Class: pyGHDL.libghdl.errorout_memory.Error_Message

     Id : Msgid_Type

          Message error/warning id

     Group : Group_Type;

          Whether this is an single message or a related one.

     File : Source_File_Entry;

          Error soure file.

     Line : Natural;

          The first line is line 1, 0 can be used when line number is
          not relevant.

     Offset : Natural;

          Offset in the line.  The first character is at offset 0.

     Length : Natural;

          Length of the location (for a range).  It is assumed to be on
          the same line; use 0 when unknown.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _fields_ = [('id', <class 'ctypes.c_byte'>),
               ('group', <class 'ctypes.c_byte'>), ('file', <class
               'ctypes.c_long'>), ('line', <class 'ctypes.c_long'>),
               ('offset', <class 'ctypes.c_long'>), ('length', <class
               'ctypes.c_long'>)]

      -- Attribute: _b_base_

          the base object

      -- Attribute: _b_needsfree_

          whether the object owns the memory or not

      -- Attribute: _objects

          internal objects tree (NEVER CHANGE THIS OBJECT!)

      -- Attribute: file

          Structure/Union member

      -- Attribute: group

          Structure/Union member

      -- Attribute: id

          Structure/Union member

      -- Attribute: length

          Structure/Union member

      -- Attribute: line

          Structure/Union member

      -- Attribute: offset

          Structure/Union member

`Functions'

 -- Function: pyGHDL.libghdl.errorout_memory.Install_Handler ()

     Install the handlers for reporting errors.

     Return type: None(1)

 -- Function: pyGHDL.libghdl.errorout_memory.Get_Nbr_Messages ()

     Get number of error messages available.

     Return type: ~ErrorIndex

     Returns: Number of messages available.

 -- Function: pyGHDL.libghdl.errorout_memory.Get_Error_Record (Idx)

     Get error messages by index ‘Idy’ as structure Error_Message.

     Parameters: ‘Idx’ (‘~ErrorIndex’) – Index from 1 to ‘Nbr_Messages’
     See Get_Nbr_Messages().

     Return type: Error_Message.

     Returns: Type: ‘Error_Message’

 -- Function: pyGHDL.libghdl.errorout_memory.Get_Error_Message (Idx)

     Get error messages by index ‘Idx’ as string.

     Parameters: ‘Idx’ (‘~ErrorIndex’) – Index from 1 to ‘Nbr_Messages’
     See Get_Nbr_Messages().

     Return type: str(2)

     Returns: Error message.

 -- Function: pyGHDL.libghdl.errorout_memory.Clear_Errors ()

     Remove all error messages.

     Return type: None(3)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/constants.html#None

   (2) https://docs.python.org/3.6/library/stdtypes.html#str

   (3) https://docs.python.org/3.6/library/constants.html#None

14.3.6 pyGHDL.libghdl.files_map
-------------------------------

`Variables'

   - EOT.

   - No_Source_File_Entry.

   - No_Location.

`Functions'

   - Location_To_File().: Convert ‘Location’ to a source
     file.

   - Location_File_To_Pos().: Convert ‘Location’ and ‘File’
     to a position (offset) into the source file.

   - Location_File_To_Line().: Convert ‘Location’ and ‘File’
     to a line number.

   - Location_File_Line_To_Offset().: Get the offset in
     ‘Line’ of ‘Location’.

   - Location_File_Line_To_Col().: Get logical column (with
     HT expanded) from ‘Location’, ‘File’ and

   - File_To_Location().: Convert a ‘File’ into a location.

   - File_Pos_To_Location().: Convert a ‘File’ and an offset
     ‘Pos’ in the file into a location.

   - File_Line_To_Position().: Convert a ‘File’ and ‘Line’
     into a position.

   - Get_File_Name().: Return the name of the file.

   - Get_Directory_Name().: Return the directory of the file.

   - Get_File_Buffer().: Return a buffer (access to the
     contents of the file) for a file entry.

   - Get_File_Length().: Get the position of the first EOT
     character.

   - Set_File_Length().: Set the length of the file (which is
     less than the size of the file buffer).

   - Reserve_Source_File().: Reserve an entry, but do not
     read any file.

   - Discard_Source_File().: Mark ‘File’ as unavailable:
     clear the name and directory.

   - Free_Source_File().: Free resources used by ‘File’, but
     keep the entry.

   - Get_Last_Source_File_Entry().: Returns the entry of the
     last known file.

 -- Data: pyGHDL.libghdl.files_map.EOT

     bytes(iterable_of_ints) -> bytes bytes(string, encoding[, errors])
     -> bytes bytes(bytes_or_buffer) -> immutable copy of
     bytes_or_buffer bytes(int) -> bytes object of size given by the
     parameter initialized with null bytes bytes() -> empty bytes object

     Construct an immutable array of bytes from:

             - an iterable yielding integers in range(256)

             - a text string encoded using the specified encoding

             - any object implementing the buffer API.

             - an integer

          b'\x04'

 -- Data: pyGHDL.libghdl.files_map.No_Source_File_Entry

     int([x]) -> integer int(x, base=10) -> integer

     Convert a number or string to an integer, or return 0 if no
     arguments are given.  If x is a number, return x.__int__().  For
     floating point numbers, this truncates towards zero.

     If x is not a number or if base is given, then x must be a string,
     bytes, or bytearray instance representing an integer literal in the
     given base.  The literal can be preceded by ‘+’ or ‘-‘ and be
     surrounded by whitespace.  The base defaults to 10.  Valid bases
     are 0 and 2-36.  Base 0 means to interpret the base from the string
     as an integer literal.  >>> int(‘0b100’, base=0) 4

          0

 -- Data: pyGHDL.libghdl.files_map.No_Location

     int([x]) -> integer int(x, base=10) -> integer

     Convert a number or string to an integer, or return 0 if no
     arguments are given.  If x is a number, return x.__int__().  For
     floating point numbers, this truncates towards zero.

     If x is not a number or if base is given, then x must be a string,
     bytes, or bytearray instance representing an integer literal in the
     given base.  The literal can be preceded by ‘+’ or ‘-‘ and be
     surrounded by whitespace.  The base defaults to 10.  Valid bases
     are 0 and 2-36.  Base 0 means to interpret the base from the string
     as an integer literal.  >>> int(‘0b100’, base=0) 4

          0

`Functions'

 -- Function: pyGHDL.libghdl.files_map.Location_To_File (Location)

     Convert ‘Location’ to a source file.

     Parameters: ‘Location’ (‘~LocationType’) – Location

     Return type: ~SourceFileEntry

     Returns: Source file.  Return ‘No_Source_File_Entry’ if location is
     incorrect.

 -- Function: pyGHDL.libghdl.files_map.Location_File_To_Pos (Location,
          File)

     Convert ‘Location’ and ‘File’ to a position (offset) into the
     source file.

     Parameters:

        * ‘Location’ (‘~LocationType’) – Location

        * ‘File’ (‘~SourceFileEntry’) – Source file

     Return type: int(1)

     Returns: Offset

 -- Function: pyGHDL.libghdl.files_map.Location_File_To_Line (Location,
          File)

     Convert ‘Location’ and ‘File’ to a line number.

     Parameters:

        * ‘Location’ (‘~LocationType’) – Location

        * ‘File’ (‘~SourceFileEntry’) – Source file

     Return type: int(2)

     Returns: Line number

 -- Function: pyGHDL.libghdl.files_map.Location_File_Line_To_Offset
          (Location, File, Line)

     Get the offset in ‘Line’ of ‘Location’.

     Parameters:

        * ‘Location’ (‘~LocationType’) – Location

        * ‘File’ (‘~SourceFileEntry’) – Source file

        * ‘Line’ (int(3)) – Line number

     Return type: int(4)

     Returns: Offset

 -- Function: pyGHDL.libghdl.files_map.Location_File_Line_To_Col
          (Location, File, Line)

     Get logical column (with HT expanded) from ‘Location’, ‘File’ and
     ‘Line’.

     Parameters:

        * ‘Location’ (‘~LocationType’) – Location

        * ‘File’ (‘~SourceFileEntry’) – Source file

        * ‘Line’ (int(5)) – Line number

     Return type: int(6)

     Returns: logical column (horizontal tabs are expanded)

 -- Function: pyGHDL.libghdl.files_map.File_To_Location (File)

     Convert a ‘File’ into a location.

     Parameters: ‘File’ (‘~SourceFileEntry’) – Source file

     Return type: ~LocationType

     Returns: Location.

 -- Function: pyGHDL.libghdl.files_map.File_Pos_To_Location (File, Pos)

     Convert a ‘File’ and an offset ‘Pos’ in the file into a location.

     Parameters:

        * ‘File’ (‘~SourceFileEntry’) – Source file

        * ‘Pos’ (int(7)) – Offset in the file

     Return type: ~LocationType

     Returns: Location.

 -- Function: pyGHDL.libghdl.files_map.File_Line_To_Position (File,
          Line)

     Convert a ‘File’ and ‘Line’ into a position.

     Parameters:

        * ‘File’ (‘~SourceFileEntry’) – Source file

        * ‘Line’ (int(8)) – Line number

     Return type: int(9)

     Returns: Return ‘Source_Ptr_Bad’ in case of error (‘Line’ out of
     bounds).

 -- Function: pyGHDL.libghdl.files_map.Get_File_Name (File)

     Return the name of the file.

     Parameters: ‘File’ (‘~SourceFileEntry’) – Source file to get the
     filename from.

     Return type: ~NameId

     Returns: NameId for the filename.

 -- Function: pyGHDL.libghdl.files_map.Get_Directory_Name (File)

     Return the directory of the file.

     Parameters: ‘File’ (‘~SourceFileEntry’) – Source file to get the
     directory name from.

     Return type: ~NameId

     Returns: NameId for the directory.

 -- Function: pyGHDL.libghdl.files_map.Get_File_Buffer (File)

     Return a buffer (access to the contents of the file) for a file
     entry.

     Parameters: ‘File’ (‘~SourceFileEntry’) – Source file to get the
     buffer from.

     Return type: bytes(10)

     Returns: Type: ‘File_Buffer_Ptr’

 -- Function: pyGHDL.libghdl.files_map.Get_File_Length (File)

     Get the position of the first EOT character.

     Parameters: ‘File’ (‘~SourceFileEntry’) – Source file

     Return type: int(11)

     Returns: Type: ‘Source_Ptr’

 -- Function: pyGHDL.libghdl.files_map.Set_File_Length (File, Length)

     Set the length of the file (which is less than the size of the file
     buffer).

     Set also append two EOT at the end of the file.

     Parameters:

        * ‘File’ (‘~SourceFileEntry’) – Source file

        * ‘Length’ (int(12)) – Length for the file.  Type: ‘Source_Ptr’

     Return type: None(13)

 -- Function: pyGHDL.libghdl.files_map.Reserve_Source_File (Directory,
          Name, Length)

     Reserve an entry, but do not read any file.

     The length should includes the two terminal EOT.

     Parameters:

        * ‘Directory’ (‘~NameId’) – Directory name

        * ‘Name’ (‘~NameId’) – File name

        * ‘Length’ (int(14)) – Length to reserve.  Type: ‘Source_Ptr’

     Return type: ~SourceFileEntry

     Returns: SourceFile

 -- Function: pyGHDL.libghdl.files_map.Discard_Source_File (File)

     Mark ‘File’ as unavailable: clear the name and directory.

          Hint: This is needed before creating a new source file with
          the same name.

     Parameters: ‘File’ (‘~SourceFileEntry’) – Source file to discard.

     Return type: None(15)

 -- Function: pyGHDL.libghdl.files_map.Free_Source_File (File)

     Free resources used by ‘File’, but keep the entry.

          Note: It could be recycled for files that could fit - not
          implemented.

     Parameters: ‘File’ (‘~SourceFileEntry’) – Source file to free.

     Return type: None(16)

 -- Function: pyGHDL.libghdl.files_map.Get_Last_Source_File_Entry ()

     Returns the entry of the last known file.

          Hint: This allows creating a table of ‘SourceFileEntry’.

     Return type: ~SourceFileEntry

     Returns: Last SourceFileEntry.  Type: ‘SourceFileEntry’

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#int

   (2) https://docs.python.org/3.6/library/functions.html#int

   (3) https://docs.python.org/3.6/library/functions.html#int

   (4) https://docs.python.org/3.6/library/functions.html#int

   (5) https://docs.python.org/3.6/library/functions.html#int

   (6) https://docs.python.org/3.6/library/functions.html#int

   (7) https://docs.python.org/3.6/library/functions.html#int

   (8) https://docs.python.org/3.6/library/functions.html#int

   (9) https://docs.python.org/3.6/library/functions.html#int

   (10) https://docs.python.org/3.6/library/stdtypes.html#bytes

   (11) https://docs.python.org/3.6/library/functions.html#int

   (12) https://docs.python.org/3.6/library/functions.html#int

   (13) https://docs.python.org/3.6/library/constants.html#None

   (14) https://docs.python.org/3.6/library/functions.html#int

   (15) https://docs.python.org/3.6/library/constants.html#None

   (16) https://docs.python.org/3.6/library/constants.html#None

14.3.7 pyGHDL.libghdl.files_map_editor
--------------------------------------

`Functions'

   - Replace_Text().: Replace [START; END) by TEXT.

   - Fill_Text().: Replace the content of ‘File’ with TEXT.

   - Check_Buffer_Content().: Check that content of ‘File’ is
     STR[1 ..  STR_LEN].

   - Copy_Source_File().: Copy content of ‘Src’ to ‘Dest’.

`Functions'

 -- Function: pyGHDL.libghdl.files_map_editor.Replace_Text (File,
          Start_Line, Start_Offset, End_Line, End_Offset, Text)

     Replace [START; END) by TEXT.

     Parameters:

        * ‘File’ (‘~SourceFileEntry’) – File where to replace a text
          section.

        * ‘Start_Line’ (int(1)) – undocumented

        * ‘Start_Offset’ (int(2)) – undocumented

        * ‘End_Line’ (int(3)) – undocumented

        * ‘End_Offset’ (int(4)) – undocumented

        * ‘Text’ (str(5)) – undocumented

     Return type: bool(6)

     Returns: Return True in case of success, False in case of failure
     (the gap is too small).

 -- Function: pyGHDL.libghdl.files_map_editor.Fill_Text (File,
          Text_Pointer, Text_Length)

     Replace the content of ‘File’ with TEXT.

          Todo: Replace ‘Text_Pointer’ and ‘Text_Length’ with Python
          string

     Parameters:

        * ‘File’ (‘~SourceFileEntry’) – File where to replace the
          content.

        * ‘Text_Pointer’ – Type: ‘File_Buffer_Ptr’

        * ‘Text_Length’ (int(7)) – Type: ‘Source_Ptr’

     Return type: None(8)

 -- Function: pyGHDL.libghdl.files_map_editor.Check_Buffer_Content
          (File, String_Pointer, String_Length)

     Check that content of ‘File’ is STR[1 ..  STR_LEN].

          Todo: Replace ‘String_Pointer’ and ‘String_Length’ with Python
          string

     Parameters:

        * ‘File’ (‘~SourceFileEntry’) – File to check the content.

        * ‘String_Pointer’ – Type: ‘File_Buffer_Ptr’

        * ‘String_Length’ (int(9)) – Type: ‘Source_Ptr’

     Return type: None(10)

 -- Function: pyGHDL.libghdl.files_map_editor.Copy_Source_File (Dest,
          Src)

     Copy content of ‘Src’ to ‘Dest’.

          Warning: The size of ‘Dest’ must be large enough.

     Clear lines table of ‘Dest’.

     Return type: None(11)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#int

   (2) https://docs.python.org/3.6/library/functions.html#int

   (3) https://docs.python.org/3.6/library/functions.html#int

   (4) https://docs.python.org/3.6/library/functions.html#int

   (5) https://docs.python.org/3.6/library/stdtypes.html#str

   (6) https://docs.python.org/3.6/library/functions.html#bool

   (7) https://docs.python.org/3.6/library/functions.html#int

   (8) https://docs.python.org/3.6/library/constants.html#None

   (9) https://docs.python.org/3.6/library/functions.html#int

   (10) https://docs.python.org/3.6/library/constants.html#None

   (11) https://docs.python.org/3.6/library/constants.html#None

14.3.8 pyGHDL.libghdl.flags
---------------------------

`Variables'

   - Flag_Elocations.

   - Verbose.

   - Flag_Elaborate_With_Outdated.

   - Flag_Force_Analysis.

 -- Data: pyGHDL.libghdl.flags.Flag_Elocations

          c_bool(False)

 -- Data: pyGHDL.libghdl.flags.Verbose

          c_bool(False)

 -- Data: pyGHDL.libghdl.flags.Flag_Elaborate_With_Outdated

          c_bool(False)

 -- Data: pyGHDL.libghdl.flags.Flag_Force_Analysis

          c_bool(False)

14.3.9 pyGHDL.libghdl.libraries
-------------------------------

`Variables'

   - Library_Location.

   - Work_Library.

`Functions'

   - Get_Libraries_Chain().: Get the chain of libraries.  Can
     be used only to read (it mustn’t be modified).

   - Add_Design_Unit_Into_Library().: Add or replace an
     design unit in the work library.  DECL must not have a chain

   - Purge_Design_File().: Remove the same file as
     ‘Design_File’ from work library and all of its units.

   - Find_Entity_For_Component().: Find an entity whose name
     is ‘Name’ in any library.

   - Get_Library_No_Create().: Get the library named ‘Ident’.

   - Find_Primary_Unit().: Just return the design_unit for
     ‘Name’, or ‘NULL’ if not found.

 -- Data: pyGHDL.libghdl.libraries.Library_Location

     A location for library declarations (such as library WORK). Use
     ‘.value’ to access this variable inside libghdl.

          c_long(1)

 -- Data: pyGHDL.libghdl.libraries.Work_Library

     Library declaration for the work library.  Note: the identifier of
     the work_library is ‘work_library_name’, which may be different
     from ‘WORK’.  Use ‘.value’ to access this variable inside libghdl.

          c_long(0)

`Functions'

 -- Function: pyGHDL.libghdl.libraries.Get_Libraries_Chain ()

     Get the chain of libraries.  Can be used only to read (it mustn’t
     be modified).

     Return type: ~Iir_Library_Declaration

     Returns: undocumented

 -- Function: pyGHDL.libghdl.libraries.Add_Design_Unit_Into_Library
          (Unit, Keep_Obsolete)

     Add or replace an design unit in the work library.  DECL must not
     have a chain (because it may be modified).

     If the design_file of UNIT is not already in the library, a new one
     is created.

     Units are always appended to the design_file.  Therefore, the order
     is kept.

     Parameters:

        * ‘Unit’ (‘~Iir_Design_Unit’) – undocumented

        * ‘Keep_Obsolete’ (bool(1)) – If ‘Keep_Obsolete’ is True,
          obsoleted units are kept in the library.

          This is used when a whole design file has to be added in the
          library and then processed (without that feature, redefined
          units would disappear).

     Return type: None(2)

 -- Function: pyGHDL.libghdl.libraries.Purge_Design_File (Design_File)

     Remove the same file as ‘Design_File’ from work library and all of
     its units.

     Parameters: ‘Design_File’ (‘~Iir_Design_File’) – undocumented

     Return type: None(3)

 -- Function: pyGHDL.libghdl.libraries.Find_Entity_For_Component (Name)

     Find an entity whose name is ‘Name’ in any library.  If there is no
     such entity, return ‘Null_Iir’.  If there are several entities,
     return ‘Null_Iir’;

     Parameters: ‘Name’ (‘~NameId’) – Entity name to search for.

     Return type: ~Iir_Design_Unit

     Returns: undocumented

 -- Function: pyGHDL.libghdl.libraries.Get_Library_No_Create (Ident)

     Get the library named ‘Ident’.

     Parameters: ‘Ident’ (‘~NameId’) – Library to look for.

     Return type: ~Iir_Library_Declaration

     Returns: Return ‘Null_Iir’ if it doesn’t exist.

 -- Function: pyGHDL.libghdl.libraries.Find_Primary_Unit (Library, Name)

     Just return the design_unit for ‘Name’, or ‘NULL’ if not found.

     Parameters:

        * ‘Library’ (‘~Iir_Library_Declaration’) – Library to look in.

        * ‘Name’ (‘~NameId’) – Primary unit to search for.

     Return type: ~Iir_Design_Unit

     Returns: undocumented

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#bool

   (2) https://docs.python.org/3.6/library/constants.html#None

   (3) https://docs.python.org/3.6/library/constants.html#None

14.3.10 pyGHDL.libghdl.name_table
---------------------------------

`Variables'

   - Null_Identifier.

`Functions'

   - Get_Name_Length().: Get the length of an identifier
     denoted by a ‘NameId’.

   - Get_Name_Ptr().: Get the string corresponding to
     identifier ID. The address is valid until

   - Get_Character().: Get the string corresponding to
     character identifier ID.

   - Get_Identifier().: Get or create an entry in the name
     table.

 -- Data: pyGHDL.libghdl.name_table.Null_Identifier

     int([x]) -> integer int(x, base=10) -> integer

     Convert a number or string to an integer, or return 0 if no
     arguments are given.  If x is a number, return x.__int__().  For
     floating point numbers, this truncates towards zero.

     If x is not a number or if base is given, then x must be a string,
     bytes, or bytearray instance representing an integer literal in the
     given base.  The literal can be preceded by ‘+’ or ‘-‘ and be
     surrounded by whitespace.  The base defaults to 10.  Valid bases
     are 0 and 2-36.  Base 0 means to interpret the base from the string
     as an integer literal.  >>> int(‘0b100’, base=0) 4

          0

`Functions'

 -- Function: pyGHDL.libghdl.name_table.Get_Name_Length (Id)

     Get the length of an identifier denoted by a ‘NameId’.

     Parameters: ‘Id’ (‘~NameId’) – NameId for the identifier to query.

     Return type: int(1)

     Returns: Length of the identifier.

 -- Function: pyGHDL.libghdl.name_table.Get_Name_Ptr (Id)

     Get the string corresponding to identifier ID. The address is valid
     until the next call to Get_Identifier (which may reallocate the
     string table).  The string is NUL-terminated (this is done by
     get_identifier).

     Parameters: ‘Id’ (‘~NameId’) – NameId for the identifier to query.

     Return type: str(2)

     Returns: Identifier as string.

 -- Function: pyGHDL.libghdl.name_table.Get_Character (Id)

     Get the string corresponding to character identifier ID.

          Note: This is used for character literals and enumeration
          literals.

     Parameters: ‘Id’ (‘~NameId’) – NameId for the identifier to query.

     Return type: str(3)

     Returns: Get the character of the identifier.

 -- Function: pyGHDL.libghdl.name_table.Get_Identifier (string)

     Get or create an entry in the name table.

          Note:
             * an identifier is represented in all lower case letter,

             * an extended identifier is represented in backslashes,
               double internal backslashes are simplified.

     Parameters: ‘string’ (str(4)) – String to create or lookup.

     Return type: ~NameId

     Returns: Id in name table.

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#int

   (2) https://docs.python.org/3.6/library/stdtypes.html#str

   (3) https://docs.python.org/3.6/library/stdtypes.html#str

   (4) https://docs.python.org/3.6/library/stdtypes.html#str

14.3.11 pyGHDL.libghdl.std_names
--------------------------------

`Classes'

   - Name.: Undocumented.

 -- Class: pyGHDL.libghdl.std_names.Name

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: First_Character = 1

      -- Attribute: Last_Character = 256

      -- Attribute: First_Keyword = 257

      -- Attribute: Mod = 257

      -- Attribute: Rem = 258

      -- Attribute: Abs = 259

      -- Attribute: Not = 260

      -- Attribute: Access = 261

      -- Attribute: After = 262

      -- Attribute: Alias = 263

      -- Attribute: All = 264

      -- Attribute: Architecture = 265

      -- Attribute: Array = 266

      -- Attribute: Assert = 267

      -- Attribute: Attribute = 268

      -- Attribute: Begin = 269

      -- Attribute: Block = 270

      -- Attribute: Body = 271

      -- Attribute: Buffer = 272

      -- Attribute: Bus = 273

      -- Attribute: Case = 274

      -- Attribute: Component = 275

      -- Attribute: Configuration = 276

      -- Attribute: Constant = 277

      -- Attribute: Disconnect = 278

      -- Attribute: Downto = 279

      -- Attribute: Else = 280

      -- Attribute: Elsif = 281

      -- Attribute: End = 282

      -- Attribute: Entity = 283

      -- Attribute: Exit = 284

      -- Attribute: File = 285

      -- Attribute: For = 286

      -- Attribute: Function = 287

      -- Attribute: Generate = 288

      -- Attribute: Generic = 289

      -- Attribute: Guarded = 290

      -- Attribute: If = 291

      -- Attribute: In = 292

      -- Attribute: Inout = 293

      -- Attribute: Is = 294

      -- Attribute: Label = 295

      -- Attribute: Library = 296

      -- Attribute: Linkage = 297

      -- Attribute: Loop = 298

      -- Attribute: Map = 299

      -- Attribute: New = 300

      -- Attribute: Next = 301

      -- Attribute: Null = 302

      -- Attribute: Of = 303

      -- Attribute: On = 304

      -- Attribute: Open = 305

      -- Attribute: Others = 306

      -- Attribute: Out = 307

      -- Attribute: Package = 308

      -- Attribute: Port = 309

      -- Attribute: Procedure = 310

      -- Attribute: Process = 311

      -- Attribute: Range = 312

      -- Attribute: Record = 313

      -- Attribute: Register = 314

      -- Attribute: Report = 315

      -- Attribute: Return = 316

      -- Attribute: Select = 317

      -- Attribute: Severity = 318

      -- Attribute: Signal = 319

      -- Attribute: Subtype = 320

      -- Attribute: Then = 321

      -- Attribute: To = 322

      -- Attribute: Transport = 323

      -- Attribute: Type = 324

      -- Attribute: Units = 325

      -- Attribute: Until = 326

      -- Attribute: Use = 327

      -- Attribute: Variable = 328

      -- Attribute: Wait = 329

      -- Attribute: When = 330

      -- Attribute: While = 331

      -- Attribute: With = 332

      -- Attribute: And = 333

      -- Attribute: Or = 334

      -- Attribute: Xor = 335

      -- Attribute: Nand = 336

      -- Attribute: Nor = 337

      -- Attribute: Last_Vhdl87 = 337

      -- Attribute: Xnor = 338

      -- Attribute: Group = 339

      -- Attribute: Impure = 340

      -- Attribute: Inertial = 341

      -- Attribute: Literal = 342

      -- Attribute: Postponed = 343

      -- Attribute: Pure = 344

      -- Attribute: Reject = 345

      -- Attribute: Shared = 346

      -- Attribute: Unaffected = 347

      -- Attribute: Sll = 348

      -- Attribute: Sla = 349

      -- Attribute: Sra = 350

      -- Attribute: Srl = 351

      -- Attribute: Rol = 352

      -- Attribute: Ror = 353

      -- Attribute: Last_Vhdl93 = 353

      -- Attribute: Protected = 354

      -- Attribute: Last_Vhdl00 = 354

      -- Attribute: Assume = 355

      -- Attribute: Context = 356

      -- Attribute: Cover = 357

      -- Attribute: Default = 358

      -- Attribute: Force = 359

      -- Attribute: Parameter = 360

      -- Attribute: Property = 361

      -- Attribute: Release = 362

      -- Attribute: Restrict = 363

      -- Attribute: Restrict_Guarantee = 364

      -- Attribute: Sequence = 365

      -- Attribute: Vmode = 366

      -- Attribute: Vprop = 367

      -- Attribute: Vunit = 368

      -- Attribute: Last_Vhdl08 = 368

      -- Attribute: First_Ams_Keyword = 369

      -- Attribute: Across = 369

      -- Attribute: Break = 370

      -- Attribute: Limit = 371

      -- Attribute: Nature = 372

      -- Attribute: Noise = 373

      -- Attribute: Procedural = 374

      -- Attribute: Quantity = 375

      -- Attribute: Reference = 376

      -- Attribute: Spectrum = 377

      -- Attribute: Subnature = 378

      -- Attribute: Terminal = 379

      -- Attribute: Through = 380

      -- Attribute: Tolerance = 381

      -- Attribute: Last_AMS_Vhdl = 381

      -- Attribute: Last_Keyword = 381

      -- Attribute: First_Verilog = 382

      -- Attribute: Always = 382

      -- Attribute: Assign = 383

      -- Attribute: Buf = 384

      -- Attribute: Bufif0 = 385

      -- Attribute: Bufif1 = 386

      -- Attribute: Casex = 387

      -- Attribute: Casez = 388

      -- Attribute: Cmos = 389

      -- Attribute: Deassign = 390

      -- Attribute: Defparam = 391

      -- Attribute: Disable = 392

      -- Attribute: Edge = 393

      -- Attribute: Endcase = 394

      -- Attribute: Endfunction = 395

      -- Attribute: Endmodule = 396

      -- Attribute: Endprimitive = 397

      -- Attribute: Endspecify = 398

      -- Attribute: Endtable = 399

      -- Attribute: Endtask = 400

      -- Attribute: Forever = 401

      -- Attribute: Fork = 402

      -- Attribute: Highz0 = 403

      -- Attribute: Highz1 = 404

      -- Attribute: Ifnone = 405

      -- Attribute: Initial = 406

      -- Attribute: Input = 407

      -- Attribute: Join = 408

      -- Attribute: Large = 409

      -- Attribute: Macromodule = 410

      -- Attribute: Medium = 411

      -- Attribute: Module = 412

      -- Attribute: Negedge = 413

      -- Attribute: Nmos = 414

      -- Attribute: Notif0 = 415

      -- Attribute: Notif1 = 416

      -- Attribute: Output = 417

      -- Attribute: Pmos = 418

      -- Attribute: Posedge = 419

      -- Attribute: Primitive = 420

      -- Attribute: Pull0 = 421

      -- Attribute: Pull1 = 422

      -- Attribute: Pulldown = 423

      -- Attribute: Pullup = 424

      -- Attribute: Realtime = 425

      -- Attribute: Reg = 426

      -- Attribute: Repeat = 427

      -- Attribute: Rcmos = 428

      -- Attribute: Rnmos = 429

      -- Attribute: Rpmos = 430

      -- Attribute: Rtran = 431

      -- Attribute: Rtranif0 = 432

      -- Attribute: Rtranif1 = 433

      -- Attribute: Scalared = 434

      -- Attribute: Small = 435

      -- Attribute: Specify = 436

      -- Attribute: Specparam = 437

      -- Attribute: Strong0 = 438

      -- Attribute: Strong1 = 439

      -- Attribute: Supply0 = 440

      -- Attribute: Supply1 = 441

      -- Attribute: Tablex = 442

      -- Attribute: Task = 443

      -- Attribute: Tran = 444

      -- Attribute: Tranif0 = 445

      -- Attribute: Tranif1 = 446

      -- Attribute: Tri = 447

      -- Attribute: Tri0 = 448

      -- Attribute: Tri1 = 449

      -- Attribute: Triand = 450

      -- Attribute: Trior = 451

      -- Attribute: Trireg = 452

      -- Attribute: Vectored = 453

      -- Attribute: Wand = 454

      -- Attribute: Weak0 = 455

      -- Attribute: Weak1 = 456

      -- Attribute: Wire = 457

      -- Attribute: Wor = 458

      -- Attribute: Last_Verilog = 458

      -- Attribute: First_V2001 = 459

      -- Attribute: Automatic = 459

      -- Attribute: Endgenerate = 460

      -- Attribute: Genvar = 461

      -- Attribute: Localparam = 462

      -- Attribute: Unsigned = 463

      -- Attribute: Signed = 464

      -- Attribute: Last_V2001 = 464

      -- Attribute: Uwire = 465

      -- Attribute: First_SV3_0 = 466

      -- Attribute: Always_Comb = 466

      -- Attribute: Always_Ff = 467

      -- Attribute: Always_Latch = 468

      -- Attribute: Bit = 469

      -- Attribute: Byte = 470

      -- Attribute: Changed = 471

      -- Attribute: Char = 472

      -- Attribute: Const = 473

      -- Attribute: Continue = 474

      -- Attribute: Do = 475

      -- Attribute: Endinterface = 476

      -- Attribute: Endtransition = 477

      -- Attribute: Enum = 478

      -- Attribute: Export = 479

      -- Attribute: Extern = 480

      -- Attribute: Forkjoin = 481

      -- Attribute: Iff = 482

      -- Attribute: Import = 483

      -- Attribute: Int = 484

      -- Attribute: Interface = 485

      -- Attribute: Logic = 486

      -- Attribute: Longint = 487

      -- Attribute: Longreal = 488

      -- Attribute: Modport = 489

      -- Attribute: Packed = 490

      -- Attribute: Priority = 491

      -- Attribute: Shortint = 492

      -- Attribute: Shortreal = 493

      -- Attribute: Static = 494

      -- Attribute: Struct = 495

      -- Attribute: Timeprecision = 496

      -- Attribute: Timeunit = 497

      -- Attribute: Transition = 498

      -- Attribute: Typedef = 499

      -- Attribute: Union = 500

      -- Attribute: Unique = 501

      -- Attribute: Unique0 = 502

      -- Attribute: Void = 503

      -- Attribute: Last_SV3_0 = 503

      -- Attribute: First_SV3_1 = 504

      -- Attribute: Chandle = 504

      -- Attribute: Class = 505

      -- Attribute: Clocking = 506

      -- Attribute: Constraint = 507

      -- Attribute: Dist = 508

      -- Attribute: Endclass = 509

      -- Attribute: Endclocking = 510

      -- Attribute: Endprogram = 511

      -- Attribute: Endproperty = 512

      -- Attribute: Endsequence = 513

      -- Attribute: Extends = 514

      -- Attribute: Final = 515

      -- Attribute: First_Match = 516

      -- Attribute: Inside = 517

      -- Attribute: Intersect = 518

      -- Attribute: Join_Any = 519

      -- Attribute: Join_None = 520

      -- Attribute: Local = 521

      -- Attribute: Program = 522

      -- Attribute: Rand = 523

      -- Attribute: Randc = 524

      -- Attribute: Ref = 525

      -- Attribute: Solve = 526

      -- Attribute: String = 527

      -- Attribute: Super = 528

      -- Attribute: This = 529

      -- Attribute: Throughout = 530

      -- Attribute: Var = 531

      -- Attribute: Virtual = 532

      -- Attribute: Wait_Order = 533

      -- Attribute: Last_SV3_1 = 533

      -- Attribute: First_SV3_1a = 534

      -- Attribute: Covergroup = 534

      -- Attribute: Coverpoint = 535

      -- Attribute: Endgroup = 536

      -- Attribute: Endpackage = 537

      -- Attribute: Expect = 538

      -- Attribute: Foreach = 539

      -- Attribute: Ignore_Bins = 540

      -- Attribute: Illegal_Bins = 541

      -- Attribute: Matches = 542

      -- Attribute: Randcase = 543

      -- Attribute: Randsequence = 544

      -- Attribute: Tagged = 545

      -- Attribute: Wildcard = 546

      -- Attribute: Last_SV3_1a = 546

      -- Attribute: First_SV2009 = 547

      -- Attribute: Implies = 547

      -- Attribute: S_Until = 548

      -- Attribute: S_Until_With = 549

      -- Attribute: Until_With = 550

      -- Attribute: Last_SV2009 = 550

      -- Attribute: First_Operator = 551

      -- Attribute: Op_Equality = 551

      -- Attribute: Op_Inequality = 552

      -- Attribute: Op_Less = 553

      -- Attribute: Op_Less_Equal = 554

      -- Attribute: Op_Greater = 555

      -- Attribute: Op_Greater_Equal = 556

      -- Attribute: Op_Plus = 557

      -- Attribute: Op_Minus = 558

      -- Attribute: Op_Mul = 559

      -- Attribute: Op_Div = 560

      -- Attribute: Op_Exp = 561

      -- Attribute: Op_Concatenation = 562

      -- Attribute: Op_Condition = 563

      -- Attribute: Op_Match_Equality = 564

      -- Attribute: Op_Match_Inequality = 565

      -- Attribute: Op_Match_Less = 566

      -- Attribute: Op_Match_Less_Equal = 567

      -- Attribute: Op_Match_Greater = 568

      -- Attribute: Op_Match_Greater_Equal = 569

      -- Attribute: Last_Operator = 569

      -- Attribute: First_Attribute = 570

      -- Attribute: Base = 570

      -- Attribute: Left = 571

      -- Attribute: Right = 572

      -- Attribute: High = 573

      -- Attribute: Low = 574

      -- Attribute: Pos = 575

      -- Attribute: Val = 576

      -- Attribute: Succ = 577

      -- Attribute: Pred = 578

      -- Attribute: Leftof = 579

      -- Attribute: Rightof = 580

      -- Attribute: Reverse_Range = 581

      -- Attribute: Length = 582

      -- Attribute: Delayed = 583

      -- Attribute: Stable = 584

      -- Attribute: Quiet = 585

      -- Attribute: Transaction = 586

      -- Attribute: Event = 587

      -- Attribute: Active = 588

      -- Attribute: Last_Event = 589

      -- Attribute: Last_Active = 590

      -- Attribute: Last_Value = 591

      -- Attribute: Last_Attribute = 591

      -- Attribute: First_Vhdl87_Attribute = 592

      -- Attribute: Behavior = 592

      -- Attribute: Structure = 593

      -- Attribute: Last_Vhdl87_Attribute = 593

      -- Attribute: First_Vhdl93_Attribute = 594

      -- Attribute: Ascending = 594

      -- Attribute: Image = 595

      -- Attribute: Value = 596

      -- Attribute: Driving = 597

      -- Attribute: Driving_Value = 598

      -- Attribute: Simple_Name = 599

      -- Attribute: Instance_Name = 600

      -- Attribute: Path_Name = 601

      -- Attribute: Last_Vhdl93_Attribute = 601

      -- Attribute: First_Vhdl08_Attribute = 602

      -- Attribute: Element = 602

      -- Attribute: Last_Vhdl08_Attribute = 602

      -- Attribute: First_AMS_Attribute = 603

      -- Attribute: Contribution = 603

      -- Attribute: Dot = 604

      -- Attribute: Integ = 605

      -- Attribute: Above = 606

      -- Attribute: Zoh = 607

      -- Attribute: Ltf = 608

      -- Attribute: Ztf = 609

      -- Attribute: Ramp = 610

      -- Attribute: Slew = 611

      -- Attribute: Last_AMS_Attribute = 611

      -- Attribute: First_Standard = 612

      -- Attribute: Std = 612

      -- Attribute: Standard = 613

      -- Attribute: Boolean = 614

      -- Attribute: NFalse = 615

      -- Attribute: NTrue = 616

      -- Attribute: Character = 617

      -- Attribute: Severity_Level = 618

      -- Attribute: Note = 619

      -- Attribute: Warning = 620

      -- Attribute: Error = 621

      -- Attribute: Failure = 622

      -- Attribute: Universal_Integer = 623

      -- Attribute: Universal_Real = 624

      -- Attribute: Convertible_Integer = 625

      -- Attribute: Convertible_Real = 626

      -- Attribute: Integer = 627

      -- Attribute: Real = 628

      -- Attribute: Time = 629

      -- Attribute: Fs = 630

      -- Attribute: Ps = 631

      -- Attribute: Ns = 632

      -- Attribute: Us = 633

      -- Attribute: Ms = 634

      -- Attribute: Sec = 635

      -- Attribute: Min = 636

      -- Attribute: Hr = 637

      -- Attribute: Max = 638

      -- Attribute: Delay_Length = 639

      -- Attribute: Now = 640

      -- Attribute: Natural = 641

      -- Attribute: Positive = 642

      -- Attribute: Bit_Vector = 643

      -- Attribute: File_Open_Kind = 644

      -- Attribute: Read_Mode = 645

      -- Attribute: Write_Mode = 646

      -- Attribute: Append_Mode = 647

      -- Attribute: File_Open_Status = 648

      -- Attribute: Open_Ok = 649

      -- Attribute: Status_Error = 650

      -- Attribute: Name_Error = 651

      -- Attribute: Mode_Error = 652

      -- Attribute: Foreign = 653

      -- Attribute: Boolean_Vector = 654

      -- Attribute: To_Bstring = 655

      -- Attribute: To_Binary_String = 656

      -- Attribute: To_Ostring = 657

      -- Attribute: To_Octal_String = 658

      -- Attribute: To_Hstring = 659

      -- Attribute: To_Hex_String = 660

      -- Attribute: Integer_Vector = 661

      -- Attribute: Real_Vector = 662

      -- Attribute: Time_Vector = 663

      -- Attribute: Digits = 664

      -- Attribute: Format = 665

      -- Attribute: Unit = 666

      -- Attribute: Domain_Type = 667

      -- Attribute: Quiescent_Domain = 668

      -- Attribute: Time_Domain = 669

      -- Attribute: Frequency_Domain = 670

      -- Attribute: Domain = 671

      -- Attribute: Frequency = 672

      -- Attribute: Last_Standard = 672

      -- Attribute: First_Charname = 673

      -- Attribute: Nul = 673

      -- Attribute: Soh = 674

      -- Attribute: Stx = 675

      -- Attribute: Etx = 676

      -- Attribute: Eot = 677

      -- Attribute: Enq = 678

      -- Attribute: Ack = 679

      -- Attribute: Bel = 680

      -- Attribute: Bs = 681

      -- Attribute: Ht = 682

      -- Attribute: Lf = 683

      -- Attribute: Vt = 684

      -- Attribute: Ff = 685

      -- Attribute: Cr = 686

      -- Attribute: So = 687

      -- Attribute: Si = 688

      -- Attribute: Dle = 689

      -- Attribute: Dc1 = 690

      -- Attribute: Dc2 = 691

      -- Attribute: Dc3 = 692

      -- Attribute: Dc4 = 693

      -- Attribute: Nak = 694

      -- Attribute: Syn = 695

      -- Attribute: Etb = 696

      -- Attribute: Can = 697

      -- Attribute: Em = 698

      -- Attribute: Sub = 699

      -- Attribute: Esc = 700

      -- Attribute: Fsp = 701

      -- Attribute: Gsp = 702

      -- Attribute: Rsp = 703

      -- Attribute: Usp = 704

      -- Attribute: Del = 705

      -- Attribute: C128 = 706

      -- Attribute: C129 = 707

      -- Attribute: C130 = 708

      -- Attribute: C131 = 709

      -- Attribute: C132 = 710

      -- Attribute: C133 = 711

      -- Attribute: C134 = 712

      -- Attribute: C135 = 713

      -- Attribute: C136 = 714

      -- Attribute: C137 = 715

      -- Attribute: C138 = 716

      -- Attribute: C139 = 717

      -- Attribute: C140 = 718

      -- Attribute: C141 = 719

      -- Attribute: C142 = 720

      -- Attribute: C143 = 721

      -- Attribute: C144 = 722

      -- Attribute: C145 = 723

      -- Attribute: C146 = 724

      -- Attribute: C147 = 725

      -- Attribute: C148 = 726

      -- Attribute: C149 = 727

      -- Attribute: C150 = 728

      -- Attribute: C151 = 729

      -- Attribute: C152 = 730

      -- Attribute: C153 = 731

      -- Attribute: C154 = 732

      -- Attribute: C155 = 733

      -- Attribute: C156 = 734

      -- Attribute: C157 = 735

      -- Attribute: C158 = 736

      -- Attribute: C159 = 737

      -- Attribute: Last_Charname = 737

      -- Attribute: First_Misc = 738

      -- Attribute: Guard = 738

      -- Attribute: Deallocate = 739

      -- Attribute: File_Open = 740

      -- Attribute: File_Close = 741

      -- Attribute: Read = 742

      -- Attribute: Write = 743

      -- Attribute: Flush = 744

      -- Attribute: Endfile = 745

      -- Attribute: I = 746

      -- Attribute: J = 747

      -- Attribute: F = 748

      -- Attribute: L = 749

      -- Attribute: P = 750

      -- Attribute: R = 751

      -- Attribute: S = 752

      -- Attribute: V = 753

      -- Attribute: External_Name = 754

      -- Attribute: Open_Kind = 755

      -- Attribute: First = 756

      -- Attribute: Last = 757

      -- Attribute: Textio = 758

      -- Attribute: Work = 759

      -- Attribute: Text = 760

      -- Attribute: To_String = 761

      -- Attribute: Minimum = 762

      -- Attribute: Maximum = 763

      -- Attribute: Untruncated_Text_Read = 764

      -- Attribute: Textio_Read_Real = 765

      -- Attribute: Textio_Write_Real = 766

      -- Attribute: Get_Resolution_Limit = 767

      -- Attribute: Control_Simulation = 768

      -- Attribute: Step = 769

      -- Attribute: Index = 770

      -- Attribute: Item = 771

      -- Attribute: Uu_File_Uu = 772

      -- Attribute: Uu_Line_Uu = 773

      -- Attribute: Label_Applies_To = 774

      -- Attribute: Return_Port_Name = 775

      -- Attribute: Map_To_Operator = 776

      -- Attribute: Type_Function = 777

      -- Attribute: Built_In = 778

      -- Attribute: NNone = 779

      -- Attribute: Last_Misc = 779

      -- Attribute: First_Ieee_Pkg = 780

      -- Attribute: Ieee = 780

      -- Attribute: Std_Logic_1164 = 781

      -- Attribute: VITAL_Timing = 782

      -- Attribute: Numeric_Std = 783

      -- Attribute: Numeric_Bit = 784

      -- Attribute: Numeric_Std_Unsigned = 785

      -- Attribute: Std_Logic_Arith = 786

      -- Attribute: Std_Logic_Signed = 787

      -- Attribute: Std_Logic_Unsigned = 788

      -- Attribute: Std_Logic_Textio = 789

      -- Attribute: Std_Logic_Misc = 790

      -- Attribute: Math_Real = 791

      -- Attribute: Last_Ieee_Pkg = 791

      -- Attribute: First_Ieee_Name = 792

      -- Attribute: Std_Ulogic = 792

      -- Attribute: Std_Ulogic_Vector = 793

      -- Attribute: Std_Logic = 794

      -- Attribute: Std_Logic_Vector = 795

      -- Attribute: Rising_Edge = 796

      -- Attribute: Falling_Edge = 797

      -- Attribute: VITAL_Level0 = 798

      -- Attribute: VITAL_Level1 = 799

      -- Attribute: Unresolved_Unsigned = 800

      -- Attribute: Unresolved_Signed = 801

      -- Attribute: To_Integer = 802

      -- Attribute: To_Unsigned = 803

      -- Attribute: To_Signed = 804

      -- Attribute: Resize = 805

      -- Attribute: Std_Match = 806

      -- Attribute: Shift_Left = 807

      -- Attribute: Shift_Right = 808

      -- Attribute: Rotate_Left = 809

      -- Attribute: Rotate_Right = 810

      -- Attribute: To_Bit = 811

      -- Attribute: To_Bitvector = 812

      -- Attribute: To_Stdulogic = 813

      -- Attribute: To_Stdlogicvector = 814

      -- Attribute: To_Stdulogicvector = 815

      -- Attribute: Is_X = 816

      -- Attribute: To_01 = 817

      -- Attribute: To_X01 = 818

      -- Attribute: To_X01Z = 819

      -- Attribute: To_UX01 = 820

      -- Attribute: Conv_Signed = 821

      -- Attribute: Conv_Unsigned = 822

      -- Attribute: Conv_Integer = 823

      -- Attribute: Conv_Std_Logic_Vector = 824

      -- Attribute: And_Reduce = 825

      -- Attribute: Nand_Reduce = 826

      -- Attribute: Or_Reduce = 827

      -- Attribute: Nor_Reduce = 828

      -- Attribute: Xor_Reduce = 829

      -- Attribute: Xnor_Reduce = 830

      -- Attribute: Ceil = 831

      -- Attribute: Floor = 832

      -- Attribute: Round = 833

      -- Attribute: Log2 = 834

      -- Attribute: Sin = 835

      -- Attribute: Cos = 836

      -- Attribute: Arctan = 837

      -- Attribute: Shl = 838

      -- Attribute: Shr = 839

      -- Attribute: Ext = 840

      -- Attribute: Sxt = 841

      -- Attribute: Find_Leftmost = 842

      -- Attribute: Find_Rightmost = 843

      -- Attribute: Last_Ieee_Name = 843

      -- Attribute: First_Synthesis = 844

      -- Attribute: Allconst = 844

      -- Attribute: Allseq = 845

      -- Attribute: Anyconst = 846

      -- Attribute: Anyseq = 847

      -- Attribute: Gclk = 848

      -- Attribute: Loc = 849

      -- Attribute: Last_Synthesis = 849

      -- Attribute: First_Directive = 850

      -- Attribute: Define = 850

      -- Attribute: Endif = 851

      -- Attribute: Ifdef = 852

      -- Attribute: Ifndef = 853

      -- Attribute: Include = 854

      -- Attribute: Timescale = 855

      -- Attribute: Undef = 856

      -- Attribute: Protect = 857

      -- Attribute: Begin_Protected = 858

      -- Attribute: End_Protected = 859

      -- Attribute: Key_Block = 860

      -- Attribute: Data_Block = 861

      -- Attribute: Line = 862

      -- Attribute: Celldefine = 863

      -- Attribute: Endcelldefine = 864

      -- Attribute: Default_Nettype = 865

      -- Attribute: Resetall = 866

      -- Attribute: Last_Directive = 866

      -- Attribute: First_Systask = 867

      -- Attribute: Bits = 867

      -- Attribute: D_Root = 868

      -- Attribute: D_Unit = 869

      -- Attribute: Last_Systask = 869

      -- Attribute: First_SV_Method = 870

      -- Attribute: Size = 870

      -- Attribute: Insert = 871

      -- Attribute: Delete = 872

      -- Attribute: Pop_Front = 873

      -- Attribute: Pop_Back = 874

      -- Attribute: Push_Front = 875

      -- Attribute: Push_Back = 876

      -- Attribute: Name = 877

      -- Attribute: Len = 878

      -- Attribute: Substr = 879

      -- Attribute: Exists = 880

      -- Attribute: Atoi = 881

      -- Attribute: Itoa = 882

      -- Attribute: Find = 883

      -- Attribute: Find_Index = 884

      -- Attribute: Find_First = 885

      -- Attribute: Find_First_Index = 886

      -- Attribute: Find_Last = 887

      -- Attribute: Find_Last_Index = 888

      -- Attribute: Num = 889

      -- Attribute: Randomize = 890

      -- Attribute: Pre_Randomize = 891

      -- Attribute: Post_Randomize = 892

      -- Attribute: Srandom = 893

      -- Attribute: Get_Randstate = 894

      -- Attribute: Set_Randstate = 895

      -- Attribute: Seed = 896

      -- Attribute: State = 897

      -- Attribute: Last_SV_Method = 897

      -- Attribute: First_BSV = 898

      -- Attribute: uAction = 898

      -- Attribute: uActionValue = 899

      -- Attribute: BVI = 900

      -- Attribute: uC = 901

      -- Attribute: uCF = 902

      -- Attribute: uE = 903

      -- Attribute: uSB = 904

      -- Attribute: uSBR = 905

      -- Attribute: Action = 906

      -- Attribute: Endaction = 907

      -- Attribute: Actionvalue = 908

      -- Attribute: Endactionvalue = 909

      -- Attribute: Ancestor = 910

      -- Attribute: Clocked_By = 911

      -- Attribute: Default_Clock = 912

      -- Attribute: Default_Reset = 913

      -- Attribute: Dependencies = 914

      -- Attribute: Deriving = 915

      -- Attribute: Determines = 916

      -- Attribute: Enable = 917

      -- Attribute: Ifc_Inout = 918

      -- Attribute: Input_Clock = 919

      -- Attribute: Input_Reset = 920

      -- Attribute: Instance = 921

      -- Attribute: Endinstance = 922

      -- Attribute: Let = 923

      -- Attribute: Match = 924

      -- Attribute: Method = 925

      -- Attribute: Endmethod = 926

      -- Attribute: Numeric = 927

      -- Attribute: Output_Clock = 928

      -- Attribute: Output_Reset = 929

      -- Attribute: Par = 930

      -- Attribute: Endpar = 931

      -- Attribute: Path = 932

      -- Attribute: Provisos = 933

      -- Attribute: Ready = 934

      -- Attribute: Reset_By = 935

      -- Attribute: Rule = 936

      -- Attribute: Endrule = 937

      -- Attribute: Rules = 938

      -- Attribute: Endrules = 939

      -- Attribute: Same_Family = 940

      -- Attribute: Schedule = 941

      -- Attribute: Seq = 942

      -- Attribute: Endseq = 943

      -- Attribute: Typeclass = 944

      -- Attribute: Endtypeclass = 945

      -- Attribute: Valueof = 946

      -- Attribute: uValueof = 947

      -- Attribute: Last_BSV = 947

      -- Attribute: First_Comment = 948

      -- Attribute: Psl = 948

      -- Attribute: Pragma = 949

      -- Attribute: Synthesis = 950

      -- Attribute: Synopsys = 951

      -- Attribute: Translate_Off = 952

      -- Attribute: Translate_On = 953

      -- Attribute: Translate = 954

      -- Attribute: Synthesis_Off = 955

      -- Attribute: Synthesis_On = 956

      -- Attribute: Off = 957

      -- Attribute: Full_Case = 958

      -- Attribute: Parallel_Case = 959

      -- Attribute: Last_Comment = 959

      -- Attribute: First_PSL = 960

      -- Attribute: A = 960

      -- Attribute: Af = 961

      -- Attribute: Ag = 962

      -- Attribute: Ax = 963

      -- Attribute: Abort = 964

      -- Attribute: Assume_Guarantee = 965

      -- Attribute: Async_Abort = 966

      -- Attribute: Before = 967

      -- Attribute: Clock = 968

      -- Attribute: E = 969

      -- Attribute: Ef = 970

      -- Attribute: Eg = 971

      -- Attribute: Ex = 972

      -- Attribute: Endpoint = 973

      -- Attribute: Eventually = 974

      -- Attribute: Fairness = 975

      -- Attribute: Fell = 976

      -- Attribute: Forall = 977

      -- Attribute: G = 978

      -- Attribute: Inf = 979

      -- Attribute: Inherit = 980

      -- Attribute: Never = 981

      -- Attribute: Next_A = 982

      -- Attribute: Next_E = 983

      -- Attribute: Next_Event = 984

      -- Attribute: Next_Event_A = 985

      -- Attribute: Next_Event_E = 986

      -- Attribute: Onehot = 987

      -- Attribute: Onehot0 = 988

      -- Attribute: Prev = 989

      -- Attribute: Rose = 990

      -- Attribute: Strong = 991

      -- Attribute: Sync_Abort = 992

      -- Attribute: W = 993

      -- Attribute: Whilenot = 994

      -- Attribute: Within = 995

      -- Attribute: X = 996

      -- Attribute: Last_PSL = 996

      -- Attribute: First_Edif = 997

      -- Attribute: Celltype = 1007

      -- Attribute: View = 1008

      -- Attribute: Viewtype = 1009

      -- Attribute: Direction = 1010

      -- Attribute: Contents = 1011

      -- Attribute: Net = 1012

      -- Attribute: Viewref = 1013

      -- Attribute: Cellref = 1014

      -- Attribute: Libraryref = 1015

      -- Attribute: Portinstance = 1016

      -- Attribute: Joined = 1017

      -- Attribute: Portref = 1018

      -- Attribute: Instanceref = 1019

      -- Attribute: Design = 1020

      -- Attribute: Designator = 1021

      -- Attribute: Owner = 1022

      -- Attribute: Member = 1023

      -- Attribute: Number = 1024

      -- Attribute: Rename = 1025

      -- Attribute: Userdata = 1026

      -- Attribute: Last_Edif = 1026

14.3.12 pyGHDL.libghdl.utils
----------------------------

`Functions'

   - name_image().: Lookup a ‘Id’ and return its string.

   - fields_image().: String representation of
     Nodes_Meta.fields ‘idx’.

   - kind_image().: String representation of Nodes.Iir_Kind
     ‘k’.

   - types_image().: String representation of
     Nodes_Meta.Types ‘t’.

   - attr_image().: String representation of Nodes_Meta.Attr
     ‘a’.

   - leftest_location().: Undocumented.

   - fields_iter().: Iterate on fields of node ‘n’.

   - chain_iter().: Iterate of a chain headed by node ‘n’.

   - chain_to_list().: Convert a chain headed by node ‘n’ to
     a Python list.

   - nodes_iter().: Iterate all nodes of ‘n’, including ‘n’.

   - list_iter().: Iterate all element of Iir_List ‘lst’.

   - flist_iter().: Iterate all element of Iir_List ‘lst’.

   - declarations_iter().: Iterate all declarations in node
     ‘n’.

   - concurrent_stmts_iter().: Iterate concurrent statements
     in node ‘n’.

   - constructs_iter().: Iterate library units, concurrent
     statements and declarations

   - sequential_iter().: Iterate sequential statements.  The
     first node must be either

`Functions'

 -- Function: pyGHDL.libghdl.utils.name_image (Id)

     Lookup a ‘Id’ and return its string.

     Return type: str(1)

 -- Function: pyGHDL.libghdl.utils.fields_image (idx)

     String representation of Nodes_Meta.fields ‘idx’.

     Return type: str(2)

 -- Function: pyGHDL.libghdl.utils.kind_image (k)

     String representation of Nodes.Iir_Kind ‘k’.

     Return type: str(3)

 -- Function: pyGHDL.libghdl.utils.types_image (t)

     String representation of Nodes_Meta.Types ‘t’.

     Return type: str(4)

 -- Function: pyGHDL.libghdl.utils.attr_image (a)

     String representation of Nodes_Meta.Attr ‘a’.

     Return type: str(5)

 -- Function: pyGHDL.libghdl.utils.leftest_location (n)

 -- Function: pyGHDL.libghdl.utils.fields_iter (n)

     Iterate on fields of node ‘n’.

     Return type: Generator(6)[Any(7), None(8), None(9)]

 -- Function: pyGHDL.libghdl.utils.chain_iter (n)

     Iterate of a chain headed by node ‘n’.

     Return type: Generator(10)[Any(11), None(12), None(13)]

 -- Function: pyGHDL.libghdl.utils.chain_to_list (n)

     Convert a chain headed by node ‘n’ to a Python list.

     Return type: List(14)[Any(15)]

 -- Function: pyGHDL.libghdl.utils.nodes_iter (n)

     Iterate all nodes of ‘n’, including ‘n’.  Nodes are returned only
     once.

     Return type: Generator(16)[Any(17), None(18), None(19)]

 -- Function: pyGHDL.libghdl.utils.list_iter (lst)

     Iterate all element of Iir_List ‘lst’.

     Return type: Generator(20)[Any(21), None(22), None(23)]

 -- Function: pyGHDL.libghdl.utils.flist_iter (lst)

     Iterate all element of Iir_List ‘lst’.

     Return type: Generator(24)[Any(25), None(26), None(27)]

 -- Function: pyGHDL.libghdl.utils.declarations_iter (n)

     Iterate all declarations in node ‘n’.

     Return type: Generator(28)[Any(29), None(30), None(31)]

 -- Function: pyGHDL.libghdl.utils.concurrent_stmts_iter (n)

     Iterate concurrent statements in node ‘n’.

     Return type: Generator(32)[Any(33), None(34), None(35)]

 -- Function: pyGHDL.libghdl.utils.constructs_iter (n)

     Iterate library units, concurrent statements and declarations that
     appear directly within a declarative part.

     Return type: Generator(36)[Any(37), None(38), None(39)]

 -- Function: pyGHDL.libghdl.utils.sequential_iter (n)

     Iterate sequential statements.  The first node must be either a
     process or a subprogram body.

     Return type: Generator(40)[Any(41), None(42), None(43)]

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/stdtypes.html#str

   (2) https://docs.python.org/3.6/library/stdtypes.html#str

   (3) https://docs.python.org/3.6/library/stdtypes.html#str

   (4) https://docs.python.org/3.6/library/stdtypes.html#str

   (5) https://docs.python.org/3.6/library/stdtypes.html#str

   (6) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (7) https://docs.python.org/3.6/library/typing.html#typing.Any

   (8) https://docs.python.org/3.6/library/constants.html#None

   (9) https://docs.python.org/3.6/library/constants.html#None

   (10) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (11) https://docs.python.org/3.6/library/typing.html#typing.Any

   (12) https://docs.python.org/3.6/library/constants.html#None

   (13) https://docs.python.org/3.6/library/constants.html#None

   (14) https://docs.python.org/3.6/library/typing.html#typing.List

   (15) https://docs.python.org/3.6/library/typing.html#typing.Any

   (16) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (17) https://docs.python.org/3.6/library/typing.html#typing.Any

   (18) https://docs.python.org/3.6/library/constants.html#None

   (19) https://docs.python.org/3.6/library/constants.html#None

   (20) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (21) https://docs.python.org/3.6/library/typing.html#typing.Any

   (22) https://docs.python.org/3.6/library/constants.html#None

   (23) https://docs.python.org/3.6/library/constants.html#None

   (24) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (25) https://docs.python.org/3.6/library/typing.html#typing.Any

   (26) https://docs.python.org/3.6/library/constants.html#None

   (27) https://docs.python.org/3.6/library/constants.html#None

   (28) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (29) https://docs.python.org/3.6/library/typing.html#typing.Any

   (30) https://docs.python.org/3.6/library/constants.html#None

   (31) https://docs.python.org/3.6/library/constants.html#None

   (32) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (33) https://docs.python.org/3.6/library/typing.html#typing.Any

   (34) https://docs.python.org/3.6/library/constants.html#None

   (35) https://docs.python.org/3.6/library/constants.html#None

   (36) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (37) https://docs.python.org/3.6/library/typing.html#typing.Any

   (38) https://docs.python.org/3.6/library/constants.html#None

   (39) https://docs.python.org/3.6/library/constants.html#None

   (40) https://docs.python.org/3.6/library/typing.html#typing.Generator

   (41) https://docs.python.org/3.6/library/typing.html#typing.Any

   (42) https://docs.python.org/3.6/library/constants.html#None

   (43) https://docs.python.org/3.6/library/constants.html#None

14.3.13 pyGHDL.libghdl.version
------------------------------

14.3.14 pyGHDL.libghdl.vhdl
---------------------------

`Submodules'

14.3.14.1 pyGHDL.libghdl.vhdl.canon
...................................

`Variables'

   - Flag_Concurrent_Stmts.

   - Flag_Configurations.

   - Flag_Associations.

 -- Data: pyGHDL.libghdl.vhdl.canon.Flag_Concurrent_Stmts

          c_bool(True)

 -- Data: pyGHDL.libghdl.vhdl.canon.Flag_Configurations

          c_bool(True)

 -- Data: pyGHDL.libghdl.vhdl.canon.Flag_Associations

          c_bool(True)

14.3.14.2 pyGHDL.libghdl.vhdl.elocations
........................................

`Functions'

   - Get_Start_Location().: Undocumented.

   - Set_Start_Location().: Undocumented.

   - Get_Right_Paren_Location().: Undocumented.

   - Set_Right_Paren_Location().: Undocumented.

   - Get_End_Location().: Undocumented.

   - Set_End_Location().: Undocumented.

   - Get_Is_Location().: Undocumented.

   - Set_Is_Location().: Undocumented.

   - Get_Begin_Location().: Undocumented.

   - Set_Begin_Location().: Undocumented.

   - Get_Then_Location().: Undocumented.

   - Set_Then_Location().: Undocumented.

   - Get_Use_Location().: Undocumented.

   - Set_Use_Location().: Undocumented.

   - Get_Loop_Location().: Undocumented.

   - Set_Loop_Location().: Undocumented.

   - Get_Generate_Location().: Undocumented.

   - Set_Generate_Location().: Undocumented.

   - Get_Generic_Location().: Undocumented.

   - Set_Generic_Location().: Undocumented.

   - Get_Port_Location().: Undocumented.

   - Set_Port_Location().: Undocumented.

   - Get_Generic_Map_Location().: Undocumented.

   - Set_Generic_Map_Location().: Undocumented.

   - Get_Port_Map_Location().: Undocumented.

   - Set_Port_Map_Location().: Undocumented.

   - Get_Arrow_Location().: Undocumented.

   - Set_Arrow_Location().: Undocumented.

   - Get_Colon_Location().: Undocumented.

   - Set_Colon_Location().: Undocumented.

   - Get_Assign_Location().: Undocumented.

   - Set_Assign_Location().: Undocumented.

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Start_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Start_Location (obj,
          value)

     Return type: None(1)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Right_Paren_Location
          (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Right_Paren_Location
          (obj, value)

     Return type: None(2)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_End_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_End_Location (obj,
          value)

     Return type: None(3)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Is_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Is_Location (obj,
          value)

     Return type: None(4)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Begin_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Begin_Location (obj,
          value)

     Return type: None(5)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Then_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Then_Location (obj,
          value)

     Return type: None(6)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Use_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Use_Location (obj,
          value)

     Return type: None(7)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Loop_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Loop_Location (obj,
          value)

     Return type: None(8)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Generate_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Generate_Location (obj,
          value)

     Return type: None(9)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Generic_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Generic_Location (obj,
          value)

     Return type: None(10)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Port_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Port_Location (obj,
          value)

     Return type: None(11)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Generic_Map_Location
          (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Generic_Map_Location
          (obj, value)

     Return type: None(12)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Port_Map_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Port_Map_Location (obj,
          value)

     Return type: None(13)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Arrow_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Arrow_Location (obj,
          value)

     Return type: None(14)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Colon_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Colon_Location (obj,
          value)

     Return type: None(15)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Get_Assign_Location (obj)

 -- Function: pyGHDL.libghdl.vhdl.elocations.Set_Assign_Location (obj,
          value)

     Return type: None(16)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/constants.html#None

   (2) https://docs.python.org/3.6/library/constants.html#None

   (3) https://docs.python.org/3.6/library/constants.html#None

   (4) https://docs.python.org/3.6/library/constants.html#None

   (5) https://docs.python.org/3.6/library/constants.html#None

   (6) https://docs.python.org/3.6/library/constants.html#None

   (7) https://docs.python.org/3.6/library/constants.html#None

   (8) https://docs.python.org/3.6/library/constants.html#None

   (9) https://docs.python.org/3.6/library/constants.html#None

   (10) https://docs.python.org/3.6/library/constants.html#None

   (11) https://docs.python.org/3.6/library/constants.html#None

   (12) https://docs.python.org/3.6/library/constants.html#None

   (13) https://docs.python.org/3.6/library/constants.html#None

   (14) https://docs.python.org/3.6/library/constants.html#None

   (15) https://docs.python.org/3.6/library/constants.html#None

   (16) https://docs.python.org/3.6/library/constants.html#None

14.3.14.3 pyGHDL.libghdl.vhdl.flists
....................................

`Variables'

   - Ffirst.

`Classes'

   - Flist_Type.: XXX to be provided

`Functions'

   - Flast().: Last index of ‘FList’.

   - Length().: Get the length of ‘FList’.

   - Get_Nth_Element().: Get the N-th element of ‘FList’.

 -- Data: pyGHDL.libghdl.vhdl.flists.Ffirst

     int([x]) -> integer int(x, base=10) -> integer

     Convert a number or string to an integer, or return 0 if no
     arguments are given.  If x is a number, return x.__int__().  For
     floating point numbers, this truncates towards zero.

     If x is not a number or if base is given, then x must be a string,
     bytes, or bytearray instance representing an integer literal in the
     given base.  The literal can be preceded by ‘+’ or ‘-‘ and be
     surrounded by whitespace.  The base defaults to 10.  Valid bases
     are 0 and 2-36.  Base 0 means to interpret the base from the string
     as an integer literal.  >>> int(‘0b100’, base=0) 4

          0

 -- Attribute: pyGHDL.libghdl.vhdl.flists.Flist_Type

     alias of ctypes.c_long(1)

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.flists.Flast (FList)

     Last index of ‘FList’.

          Hint: Could be used to iterate.

     Parameters: ‘FList’ (int(2)) – List to query.

     Return type: int(3)

     Returns: Index of the last element in the list.

 -- Function: pyGHDL.libghdl.vhdl.flists.Length (FList)

     Get the length of ‘FList’.

     Parameters: ‘FList’ (int(4)) – List to query.

     Return type: int(5)

     Returns: Number of elements in the list.

 -- Function: pyGHDL.libghdl.vhdl.flists.Get_Nth_Element (FList, N)

     Get the N-th element of ‘FList’.

     First element has index 0.

     Parameters: ‘FList’ (int(6)) – List to query.

     Return type: int(7)

     Returns: Type: ‘El_Type’

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/ctypes.html#ctypes.c_long

   (2) https://docs.python.org/3.6/library/functions.html#int

   (3) https://docs.python.org/3.6/library/functions.html#int

   (4) https://docs.python.org/3.6/library/functions.html#int

   (5) https://docs.python.org/3.6/library/functions.html#int

   (6) https://docs.python.org/3.6/library/functions.html#int

   (7) https://docs.python.org/3.6/library/functions.html#int

14.3.14.4 pyGHDL.libghdl.vhdl.formatters
........................................

`Functions'

   - Indent_String().: Reindent all lines of F between
     [First_Line; Last_Line] to ‘Handle’.

   - Allocate_Handle().: ..  todo:: Undocumented in Ada code.

   - Get_Length().: ..  todo:: Undocumented in Ada code.

   - Get_C_String().: ..  todo:: Undocumented in Ada code.

   - Free_Handle().: ..  todo:: Undocumented in Ada code.

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.formatters.Indent_String (File,
          Handle, FirstLine, LastLine)

     Reindent all lines of F between [First_Line; Last_Line] to
     ‘Handle’.

     Parameters:

        * ‘File’ (int(1)) – File to indent lines within.  Type:
          ‘Iir_Design_File’

        * ‘Handle’ (int(2)) – undocumented.  Type: ‘Vstring_Acc’

        * ‘FirstLine’ (int(3)) – undocumented.

        * ‘LastLine’ (int(4)) – undocumented.

     Return type: None(5)

 -- Function: pyGHDL.libghdl.vhdl.formatters.Allocate_Handle ()

          Todo: Undocumented in Ada code.

     Returns: undocumented.  Type: ‘Vstring_Acc’

 -- Function: pyGHDL.libghdl.vhdl.formatters.Get_Length (Handle)

          Todo: Undocumented in Ada code.

     Parameters: ‘Handle’ – undocumented.  Type: ‘Vstring_Acc’

     Return type: int(6)

     Returns: undocumented.

 -- Function: pyGHDL.libghdl.vhdl.formatters.Get_C_String (Handle)

          Todo: Undocumented in Ada code.

     Parameters: ‘Handle’ – undocumented.  Type: ‘Vstring_Acc’

     Returns: Type: ‘Grt.Types.Ghdl_C_String’

 -- Function: pyGHDL.libghdl.vhdl.formatters.Free_Handle (Handle)

          Todo: Undocumented in Ada code.

     Parameters: ‘Handle’ – undocumented.  Type: ‘Vstring_Acc’

     Return type: None(7)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#int

   (2) https://docs.python.org/3.6/library/functions.html#int

   (3) https://docs.python.org/3.6/library/functions.html#int

   (4) https://docs.python.org/3.6/library/functions.html#int

   (5) https://docs.python.org/3.6/library/constants.html#None

   (6) https://docs.python.org/3.6/library/functions.html#int

   (7) https://docs.python.org/3.6/library/constants.html#None

14.3.14.5 pyGHDL.libghdl.vhdl.ieee
..................................

`Variables'

   - Std_Logic_1164_Pkg.

   - Std_Logic_Type.

   - Std_Logic_Vector_Type.

 -- Data: pyGHDL.libghdl.vhdl.ieee.Std_Logic_1164_Pkg

          c_long(0)

 -- Data: pyGHDL.libghdl.vhdl.ieee.Std_Logic_Type

          c_long(0)

 -- Data: pyGHDL.libghdl.vhdl.ieee.Std_Logic_Vector_Type

          c_long(0)

14.3.14.6 pyGHDL.libghdl.vhdl.lists
...................................

`Classes'

   - Iterator.: Structure base class

`Functions'

   - Iterate().: Create an iterator for a given list.

   - Is_Valid().: Check if iterator reached the end.

   - Next().: Move iterator to the next element.

   - Get_Element().: Get the current element from iterator.

   - Get_Nbr_Elements().: Return the number of elements in
     the list.

   - Create_Iir_List().: Create a list.

   - Destroy_Iir_List().: Destroy a list.

 -- Class: pyGHDL.libghdl.vhdl.lists.Iterator

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: _fields_ = [('chunk', <class 'ctypes.c_long'>),
               ('chunk_idx', <class 'ctypes.c_long'>), ('remain', <class
               'ctypes.c_long'>)]

      -- Attribute: _b_base_

          the base object

      -- Attribute: _b_needsfree_

          whether the object owns the memory or not

      -- Attribute: _objects

          internal objects tree (NEVER CHANGE THIS OBJECT!)

      -- Attribute: chunk

          Structure/Union member

      -- Attribute: chunk_idx

          Structure/Union member

      -- Attribute: remain

          Structure/Union member

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.lists.Iterate (List)

     Create an iterator for a given list.

     The idiomatic way to iterate is:

          It = Iterate(List)
          while Is_Valid(It):
            El = Get_Element(It)
              # ...
            Next(It)

     Parameters: ‘List’ (int(1)) – List to create an iterator from.

     Return type: Iterator.

     Returns: Iterator structure.

 -- Function: pyGHDL.libghdl.vhdl.lists.Is_Valid (it)

     Check if iterator reached the end.

     Parameters: ‘it’ (see Iterator) – Iterator to check.

     Return type: bool(2)

     Returns: ‘False’, if iterator has reached the end.

 -- Function: pyGHDL.libghdl.vhdl.lists.Next (it)

     Move iterator to the next element.

     Parameters: ‘it’ (see Iterator) – Iterator to increment.

     Return type: bool(3)

     Returns: ‘False’, if iterator has reached the end.

 -- Function: pyGHDL.libghdl.vhdl.lists.Get_Element (it)

     Get the current element from iterator.

     Parameters: ‘it’ (see Iterator) – Iterator the get the
     element from.

     Return type: int(4)

     Returns: The current element the iterator points to.  Type:
     ‘El_Type’

 -- Function: pyGHDL.libghdl.vhdl.lists.Get_Nbr_Elements (List)

     Return the number of elements in the list.

          Hint: This is also 1 + the position of the last element.

     Parameters: ‘List’ (int(5)) – The list to use.

     Return type: int(6)

     Returns: Number of list elements.

 -- Function: pyGHDL.libghdl.vhdl.lists.Create_Iir_List ()

     Create a list.

     Return type: int(7)

     Returns: undocumented; Type: ‘List_Type’

 -- Function: pyGHDL.libghdl.vhdl.lists.Destroy_Iir_List (List)

     Destroy a list.

     Parameters: ‘List’ (int(8)) – List to destroy.

     Return type: None(9)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#int

   (2) https://docs.python.org/3.6/library/functions.html#bool

   (3) https://docs.python.org/3.6/library/functions.html#bool

   (4) https://docs.python.org/3.6/library/functions.html#int

   (5) https://docs.python.org/3.6/library/functions.html#int

   (6) https://docs.python.org/3.6/library/functions.html#int

   (7) https://docs.python.org/3.6/library/functions.html#int

   (8) https://docs.python.org/3.6/library/functions.html#int

   (9) https://docs.python.org/3.6/library/constants.html#None

14.3.14.7 pyGHDL.libghdl.vhdl.nodes
...................................

`Classes'

   - Iir_Kind.: An enumeration.

   - Iir_Kinds.: Undocumented.

   - Iir_Mode.: An enumeration.

   - ScalarSize.: An enumeration.

   - Iir_Staticness.: An enumeration.

   - Iir_Constraint.: An enumeration.

   - Iir_Delay_Mechanism.: An enumeration.

   - DateStateType.: An enumeration.

   - NumberBaseType.: An enumeration.

   - Iir_Predefined.: An enumeration.

`Functions'

   - Get_Kind().: Get node kind.

   - Get_Location().:

   - Get_First_Design_Unit().:

   - Set_First_Design_Unit().:

   - Get_Last_Design_Unit().:

   - Set_Last_Design_Unit().:

   - Get_Library_Declaration().:

   - Set_Library_Declaration().:

   - Get_File_Checksum().:

   - Set_File_Checksum().:

   - Get_Analysis_Time_Stamp().:

   - Set_Analysis_Time_Stamp().:

   - Get_Design_File_Source().:

   - Set_Design_File_Source().:

   - Get_Library().:

   - Set_Library().:

   - Get_File_Dependence_List().:

   - Set_File_Dependence_List().:

   - Get_Design_File_Filename().:

   - Set_Design_File_Filename().:

   - Get_Design_File_Directory().:

   - Set_Design_File_Directory().:

   - Get_Design_File().:

   - Set_Design_File().:

   - Get_Design_File_Chain().:

   - Set_Design_File_Chain().:

   - Get_Library_Directory().:

   - Set_Library_Directory().:

   - Get_Date().:

   - Set_Date().:

   - Get_Context_Items().:

   - Set_Context_Items().:

   - Get_Dependence_List().:

   - Set_Dependence_List().:

   - Get_Analysis_Checks_List().:

   - Set_Analysis_Checks_List().:

   - Get_Date_State().:

   - Set_Date_State().:

   - Get_Guarded_Target_State().:

   - Set_Guarded_Target_State().:

   - Get_Library_Unit().:

   - Set_Library_Unit().:

   - Get_Hash_Chain().:

   - Set_Hash_Chain().:

   - Get_Design_Unit_Source_Pos().:

   - Set_Design_Unit_Source_Pos().:

   - Get_Design_Unit_Source_Line().:

   - Set_Design_Unit_Source_Line().:

   - Get_Design_Unit_Source_Col().:

   - Set_Design_Unit_Source_Col().:

   - Get_Value().:

   - Set_Value().:

   - Get_Enum_Pos().:

   - Set_Enum_Pos().:

   - Get_Physical_Literal().:

   - Set_Physical_Literal().:

   - Get_Fp_Value().:

   - Set_Fp_Value().:

   - Get_Simple_Aggregate_List().:

   - Set_Simple_Aggregate_List().:

   - Get_String8_Id().:

   - Set_String8_Id().:

   - Get_String_Length().:

   - Set_String_Length().:

   - Get_Bit_String_Base().:

   - Set_Bit_String_Base().:

   - Get_Has_Signed().:

   - Set_Has_Signed().:

   - Get_Has_Sign().:

   - Set_Has_Sign().:

   - Get_Has_Length().:

   - Set_Has_Length().:

   - Get_Literal_Length().:

   - Set_Literal_Length().:

   - Get_Literal_Origin().:

   - Set_Literal_Origin().:

   - Get_Range_Origin().:

   - Set_Range_Origin().:

   - Get_Literal_Subtype().:

   - Set_Literal_Subtype().:

   - Get_Allocator_Subtype().:

   - Set_Allocator_Subtype().:

   - Get_Entity_Class().:

   - Set_Entity_Class().:

   - Get_Entity_Name_List().:

   - Set_Entity_Name_List().:

   - Get_Attribute_Designator().:

   - Set_Attribute_Designator().:

   - Get_Attribute_Specification_Chain().:

   - Set_Attribute_Specification_Chain().:

   - Get_Attribute_Specification().:

   - Set_Attribute_Specification().:

   - Get_Static_Attribute_Flag().:

   - Set_Static_Attribute_Flag().:

   - Get_Signal_List().:

   - Set_Signal_List().:

   - Get_Quantity_List().:

   - Set_Quantity_List().:

   - Get_Designated_Entity().:

   - Set_Designated_Entity().:

   - Get_Formal().:

   - Set_Formal().:

   - Get_Actual().:

   - Set_Actual().:

   - Get_Actual_Conversion().:

   - Set_Actual_Conversion().:

   - Get_Formal_Conversion().:

   - Set_Formal_Conversion().:

   - Get_Whole_Association_Flag().:

   - Set_Whole_Association_Flag().:

   - Get_Collapse_Signal_Flag().:

   - Set_Collapse_Signal_Flag().:

   - Get_Artificial_Flag().:

   - Set_Artificial_Flag().:

   - Get_Open_Flag().:

   - Set_Open_Flag().:

   - Get_After_Drivers_Flag().:

   - Set_After_Drivers_Flag().:

   - Get_We_Value().:

   - Set_We_Value().:

   - Get_Time().:

   - Set_Time().:

   - Get_Associated_Expr().:

   - Set_Associated_Expr().:

   - Get_Associated_Block().:

   - Set_Associated_Block().:

   - Get_Associated_Chain().:

   - Set_Associated_Chain().:

   - Get_Choice_Name().:

   - Set_Choice_Name().:

   - Get_Choice_Expression().:

   - Set_Choice_Expression().:

   - Get_Choice_Range().:

   - Set_Choice_Range().:

   - Get_Same_Alternative_Flag().:

   - Set_Same_Alternative_Flag().:

   - Get_Element_Type_Flag().:

   - Set_Element_Type_Flag().:

   - Get_Architecture().:

   - Set_Architecture().:

   - Get_Block_Specification().:

   - Set_Block_Specification().:

   - Get_Prev_Block_Configuration().:

   - Set_Prev_Block_Configuration().:

   - Get_Configuration_Item_Chain().:

   - Set_Configuration_Item_Chain().:

   - Get_Attribute_Value_Chain().:

   - Set_Attribute_Value_Chain().:

   - Get_Spec_Chain().:

   - Set_Spec_Chain().:

   - Get_Value_Chain().:

   - Set_Value_Chain().:

   - Get_Attribute_Value_Spec_Chain().:

   - Set_Attribute_Value_Spec_Chain().:

   - Get_Entity_Name().:

   - Set_Entity_Name().:

   - Get_Package().:

   - Set_Package().:

   - Get_Package_Body().:

   - Set_Package_Body().:

   - Get_Instance_Package_Body().:

   - Set_Instance_Package_Body().:

   - Get_Need_Body().:

   - Set_Need_Body().:

   - Get_Macro_Expanded_Flag().:

   - Set_Macro_Expanded_Flag().:

   - Get_Need_Instance_Bodies().:

   - Set_Need_Instance_Bodies().:

   - Get_Hierarchical_Name().:

   - Set_Hierarchical_Name().:

   - Get_Inherit_Spec_Chain().:

   - Set_Inherit_Spec_Chain().:

   - Get_Vunit_Item_Chain().:

   - Set_Vunit_Item_Chain().:

   - Get_Bound_Vunit_Chain().:

   - Set_Bound_Vunit_Chain().:

   - Get_Verification_Block_Configuration().:

   - Set_Verification_Block_Configuration().:

   - Get_Block_Configuration().:

   - Set_Block_Configuration().:

   - Get_Concurrent_Statement_Chain().:

   - Set_Concurrent_Statement_Chain().:

   - Get_Chain().:

   - Set_Chain().:

   - Get_Port_Chain().:

   - Set_Port_Chain().:

   - Get_Generic_Chain().:

   - Set_Generic_Chain().:

   - Get_Type().:

   - Set_Type().:

   - Get_Subtype_Indication().:

   - Set_Subtype_Indication().:

   - Get_Discrete_Range().:

   - Set_Discrete_Range().:

   - Get_Type_Definition().:

   - Set_Type_Definition().:

   - Get_Subtype_Definition().:

   - Set_Subtype_Definition().:

   - Get_Incomplete_Type_Declaration().:

   - Set_Incomplete_Type_Declaration().:

   - Get_Interface_Type_Subprograms().:

   - Set_Interface_Type_Subprograms().:

   - Get_Nature_Definition().:

   - Set_Nature_Definition().:

   - Get_Nature().:

   - Set_Nature().:

   - Get_Subnature_Indication().:

   - Set_Subnature_Indication().:

   - Get_Mode().:

   - Set_Mode().:

   - Get_Guarded_Signal_Flag().:

   - Set_Guarded_Signal_Flag().:

   - Get_Signal_Kind().:

   - Set_Signal_Kind().:

   - Get_Base_Name().:

   - Set_Base_Name().:

   - Get_Interface_Declaration_Chain().:

   - Set_Interface_Declaration_Chain().:

   - Get_Subprogram_Specification().:

   - Set_Subprogram_Specification().:

   - Get_Sequential_Statement_Chain().:

   - Set_Sequential_Statement_Chain().:

   - Get_Simultaneous_Statement_Chain().:

   - Set_Simultaneous_Statement_Chain().:

   - Get_Subprogram_Body().:

   - Set_Subprogram_Body().:

   - Get_Overload_Number().:

   - Set_Overload_Number().:

   - Get_Subprogram_Depth().:

   - Set_Subprogram_Depth().:

   - Get_Subprogram_Hash().:

   - Set_Subprogram_Hash().:

   - Get_Impure_Depth().:

   - Set_Impure_Depth().:

   - Get_Return_Type().:

   - Set_Return_Type().:

   - Get_Implicit_Definition().:

   - Set_Implicit_Definition().:

   - Get_Uninstantiated_Subprogram_Name().:

   - Set_Uninstantiated_Subprogram_Name().:

   - Get_Default_Value().:

   - Set_Default_Value().:

   - Get_Deferred_Declaration().:

   - Set_Deferred_Declaration().:

   - Get_Deferred_Declaration_Flag().:

   - Set_Deferred_Declaration_Flag().:

   - Get_Shared_Flag().:

   - Set_Shared_Flag().:

   - Get_Design_Unit().:

   - Set_Design_Unit().:

   - Get_Block_Statement().:

   - Set_Block_Statement().:

   - Get_Signal_Driver().:

   - Set_Signal_Driver().:

   - Get_Declaration_Chain().:

   - Set_Declaration_Chain().:

   - Get_File_Logical_Name().:

   - Set_File_Logical_Name().:

   - Get_File_Open_Kind().:

   - Set_File_Open_Kind().:

   - Get_Element_Position().:

   - Set_Element_Position().:

   - Get_Use_Clause_Chain().:

   - Set_Use_Clause_Chain().:

   - Get_Context_Reference_Chain().:

   - Set_Context_Reference_Chain().:

   - Get_Selected_Name().:

   - Set_Selected_Name().:

   - Get_Type_Declarator().:

   - Set_Type_Declarator().:

   - Get_Complete_Type_Definition().:

   - Set_Complete_Type_Definition().:

   - Get_Incomplete_Type_Ref_Chain().:

   - Set_Incomplete_Type_Ref_Chain().:

   - Get_Associated_Type().:

   - Set_Associated_Type().:

   - Get_Enumeration_Literal_List().:

   - Set_Enumeration_Literal_List().:

   - Get_Entity_Class_Entry_Chain().:

   - Set_Entity_Class_Entry_Chain().:

   - Get_Group_Constituent_List().:

   - Set_Group_Constituent_List().:

   - Get_Unit_Chain().:

   - Set_Unit_Chain().:

   - Get_Primary_Unit().:

   - Set_Primary_Unit().:

   - Get_Identifier().:

   - Set_Identifier().:

   - Get_Label().:

   - Set_Label().:

   - Get_Visible_Flag().:

   - Set_Visible_Flag().:

   - Get_Range_Constraint().:

   - Set_Range_Constraint().:

   - Get_Direction().:

   - Set_Direction().:

   - Get_Left_Limit().:

   - Set_Left_Limit().:

   - Get_Right_Limit().:

   - Set_Right_Limit().:

   - Get_Left_Limit_Expr().:

   - Set_Left_Limit_Expr().:

   - Get_Right_Limit_Expr().:

   - Set_Right_Limit_Expr().:

   - Get_Parent_Type().:

   - Set_Parent_Type().:

   - Get_Simple_Nature().:

   - Set_Simple_Nature().:

   - Get_Base_Nature().:

   - Set_Base_Nature().:

   - Get_Resolution_Indication().:

   - Set_Resolution_Indication().:

   - Get_Record_Element_Resolution_Chain().:

   - Set_Record_Element_Resolution_Chain().:

   - Get_Tolerance().:

   - Set_Tolerance().:

   - Get_Plus_Terminal_Name().:

   - Set_Plus_Terminal_Name().:

   - Get_Minus_Terminal_Name().:

   - Set_Minus_Terminal_Name().:

   - Get_Plus_Terminal().:

   - Set_Plus_Terminal().:

   - Get_Minus_Terminal().:

   - Set_Minus_Terminal().:

   - Get_Magnitude_Expression().:

   - Set_Magnitude_Expression().:

   - Get_Phase_Expression().:

   - Set_Phase_Expression().:

   - Get_Power_Expression().:

   - Set_Power_Expression().:

   - Get_Simultaneous_Left().:

   - Set_Simultaneous_Left().:

   - Get_Simultaneous_Right().:

   - Set_Simultaneous_Right().:

   - Get_Text_File_Flag().:

   - Set_Text_File_Flag().:

   - Get_Only_Characters_Flag().:

   - Set_Only_Characters_Flag().:

   - Get_Is_Character_Type().:

   - Set_Is_Character_Type().:

   - Get_Nature_Staticness().:

   - Set_Nature_Staticness().:

   - Get_Type_Staticness().:

   - Set_Type_Staticness().:

   - Get_Constraint_State().:

   - Set_Constraint_State().:

   - Get_Index_Subtype_List().:

   - Set_Index_Subtype_List().:

   - Get_Index_Subtype_Definition_List().:

   - Set_Index_Subtype_Definition_List().:

   - Get_Element_Subtype_Indication().:

   - Set_Element_Subtype_Indication().:

   - Get_Element_Subtype().:

   - Set_Element_Subtype().:

   - Get_Element_Subnature_Indication().:

   - Set_Element_Subnature_Indication().:

   - Get_Element_Subnature().:

   - Set_Element_Subnature().:

   - Get_Index_Constraint_List().:

   - Set_Index_Constraint_List().:

   - Get_Array_Element_Constraint().:

   - Set_Array_Element_Constraint().:

   - Get_Has_Array_Constraint_Flag().:

   - Set_Has_Array_Constraint_Flag().:

   - Get_Has_Element_Constraint_Flag().:

   - Set_Has_Element_Constraint_Flag().:

   - Get_Elements_Declaration_List().:

   - Set_Elements_Declaration_List().:

   - Get_Owned_Elements_Chain().:

   - Set_Owned_Elements_Chain().:

   - Get_Designated_Type().:

   - Set_Designated_Type().:

   - Get_Designated_Subtype_Indication().:

   - Set_Designated_Subtype_Indication().:

   - Get_Index_List().:

   - Set_Index_List().:

   - Get_Reference().:

   - Set_Reference().:

   - Get_Nature_Declarator().:

   - Set_Nature_Declarator().:

   - Get_Across_Type_Mark().:

   - Set_Across_Type_Mark().:

   - Get_Through_Type_Mark().:

   - Set_Through_Type_Mark().:

   - Get_Across_Type_Definition().:

   - Set_Across_Type_Definition().:

   - Get_Through_Type_Definition().:

   - Set_Through_Type_Definition().:

   - Get_Across_Type().:

   - Set_Across_Type().:

   - Get_Through_Type().:

   - Set_Through_Type().:

   - Get_Target().:

   - Set_Target().:

   - Get_Waveform_Chain().:

   - Set_Waveform_Chain().:

   - Get_Guard().:

   - Set_Guard().:

   - Get_Delay_Mechanism().:

   - Set_Delay_Mechanism().:

   - Get_Reject_Time_Expression().:

   - Set_Reject_Time_Expression().:

   - Get_Force_Mode().:

   - Set_Force_Mode().:

   - Get_Has_Force_Mode().:

   - Set_Has_Force_Mode().:

   - Get_Sensitivity_List().:

   - Set_Sensitivity_List().:

   - Get_Process_Origin().:

   - Set_Process_Origin().:

   - Get_Package_Origin().:

   - Set_Package_Origin().:

   - Get_Condition_Clause().:

   - Set_Condition_Clause().:

   - Get_Break_Element().:

   - Set_Break_Element().:

   - Get_Selector_Quantity().:

   - Set_Selector_Quantity().:

   - Get_Break_Quantity().:

   - Set_Break_Quantity().:

   - Get_Timeout_Clause().:

   - Set_Timeout_Clause().:

   - Get_Postponed_Flag().:

   - Set_Postponed_Flag().:

   - Get_Callees_List().:

   - Set_Callees_List().:

   - Get_Passive_Flag().:

   - Set_Passive_Flag().:

   - Get_Resolution_Function_Flag().:

   - Set_Resolution_Function_Flag().:

   - Get_Wait_State().:

   - Set_Wait_State().:

   - Get_All_Sensitized_State().:

   - Set_All_Sensitized_State().:

   - Get_Seen_Flag().:

   - Set_Seen_Flag().:

   - Get_Pure_Flag().:

   - Set_Pure_Flag().:

   - Get_Foreign_Flag().:

   - Set_Foreign_Flag().:

   - Get_Resolved_Flag().:

   - Set_Resolved_Flag().:

   - Get_Signal_Type_Flag().:

   - Set_Signal_Type_Flag().:

   - Get_Has_Signal_Flag().:

   - Set_Has_Signal_Flag().:

   - Get_Purity_State().:

   - Set_Purity_State().:

   - Get_Elab_Flag().:

   - Set_Elab_Flag().:

   - Get_Vendor_Library_Flag().:

   - Set_Vendor_Library_Flag().:

   - Get_Configuration_Mark_Flag().:

   - Set_Configuration_Mark_Flag().:

   - Get_Configuration_Done_Flag().:

   - Set_Configuration_Done_Flag().:

   - Get_Index_Constraint_Flag().:

   - Set_Index_Constraint_Flag().:

   - Get_Hide_Implicit_Flag().:

   - Set_Hide_Implicit_Flag().:

   - Get_Assertion_Condition().:

   - Set_Assertion_Condition().:

   - Get_Report_Expression().:

   - Set_Report_Expression().:

   - Get_Severity_Expression().:

   - Set_Severity_Expression().:

   - Get_Instantiated_Unit().:

   - Set_Instantiated_Unit().:

   - Get_Generic_Map_Aspect_Chain().:

   - Set_Generic_Map_Aspect_Chain().:

   - Get_Port_Map_Aspect_Chain().:

   - Set_Port_Map_Aspect_Chain().:

   - Get_Configuration_Name().:

   - Set_Configuration_Name().:

   - Get_Component_Configuration().:

   - Set_Component_Configuration().:

   - Get_Configuration_Specification().:

   - Set_Configuration_Specification().:

   - Get_Default_Binding_Indication().:

   - Set_Default_Binding_Indication().:

   - Get_Default_Configuration_Declaration().:

   - Set_Default_Configuration_Declaration().:

   - Get_Expression().:

   - Set_Expression().:

   - Get_Conditional_Expression_Chain().:

   - Set_Conditional_Expression_Chain().:

   - Get_Allocator_Designated_Type().:

   - Set_Allocator_Designated_Type().:

   - Get_Selected_Waveform_Chain().:

   - Set_Selected_Waveform_Chain().:

   - Get_Conditional_Waveform_Chain().:

   - Set_Conditional_Waveform_Chain().:

   - Get_Guard_Expression().:

   - Set_Guard_Expression().:

   - Get_Guard_Decl().:

   - Set_Guard_Decl().:

   - Get_Guard_Sensitivity_List().:

   - Set_Guard_Sensitivity_List().:

   - Get_Signal_Attribute_Chain().:

   - Set_Signal_Attribute_Chain().:

   - Get_Block_Block_Configuration().:

   - Set_Block_Block_Configuration().:

   - Get_Package_Header().:

   - Set_Package_Header().:

   - Get_Block_Header().:

   - Set_Block_Header().:

   - Get_Uninstantiated_Package_Name().:

   - Set_Uninstantiated_Package_Name().:

   - Get_Uninstantiated_Package_Decl().:

   - Set_Uninstantiated_Package_Decl().:

   - Get_Instance_Source_File().:

   - Set_Instance_Source_File().:

   - Get_Generate_Block_Configuration().:

   - Set_Generate_Block_Configuration().:

   - Get_Generate_Statement_Body().:

   - Set_Generate_Statement_Body().:

   - Get_Alternative_Label().:

   - Set_Alternative_Label().:

   - Get_Generate_Else_Clause().:

   - Set_Generate_Else_Clause().:

   - Get_Condition().:

   - Set_Condition().:

   - Get_Else_Clause().:

   - Set_Else_Clause().:

   - Get_Parameter_Specification().:

   - Set_Parameter_Specification().:

   - Get_Parent().:

   - Set_Parent().:

   - Get_Loop_Label().:

   - Set_Loop_Label().:

   - Get_Exit_Flag().:

   - Set_Exit_Flag().:

   - Get_Next_Flag().:

   - Set_Next_Flag().:

   - Get_Component_Name().:

   - Set_Component_Name().:

   - Get_Instantiation_List().:

   - Set_Instantiation_List().:

   - Get_Entity_Aspect().:

   - Set_Entity_Aspect().:

   - Get_Default_Entity_Aspect().:

   - Set_Default_Entity_Aspect().:

   - Get_Binding_Indication().:

   - Set_Binding_Indication().:

   - Get_Named_Entity().:

   - Set_Named_Entity().:

   - Get_Referenced_Name().:

   - Set_Referenced_Name().:

   - Get_Expr_Staticness().:

   - Set_Expr_Staticness().:

   - Get_Scalar_Size().:

   - Set_Scalar_Size().:

   - Get_Error_Origin().:

   - Set_Error_Origin().:

   - Get_Operand().:

   - Set_Operand().:

   - Get_Left().:

   - Set_Left().:

   - Get_Right().:

   - Set_Right().:

   - Get_Unit_Name().:

   - Set_Unit_Name().:

   - Get_Name().:

   - Set_Name().:

   - Get_Group_Template_Name().:

   - Set_Group_Template_Name().:

   - Get_Name_Staticness().:

   - Set_Name_Staticness().:

   - Get_Prefix().:

   - Set_Prefix().:

   - Get_Signature_Prefix().:

   - Set_Signature_Prefix().:

   - Get_External_Pathname().:

   - Set_External_Pathname().:

   - Get_Pathname_Suffix().:

   - Set_Pathname_Suffix().:

   - Get_Pathname_Expression().:

   - Set_Pathname_Expression().:

   - Get_In_Formal_Flag().:

   - Set_In_Formal_Flag().:

   - Get_Slice_Subtype().:

   - Set_Slice_Subtype().:

   - Get_Suffix().:

   - Set_Suffix().:

   - Get_Index_Subtype().:

   - Set_Index_Subtype().:

   - Get_Parameter().:

   - Set_Parameter().:

   - Get_Parameter_2().:

   - Set_Parameter_2().:

   - Get_Parameter_3().:

   - Set_Parameter_3().:

   - Get_Parameter_4().:

   - Set_Parameter_4().:

   - Get_Attr_Chain().:

   - Set_Attr_Chain().:

   - Get_Signal_Attribute_Declaration().:

   - Set_Signal_Attribute_Declaration().:

   - Get_Actual_Type().:

   - Set_Actual_Type().:

   - Get_Actual_Type_Definition().:

   - Set_Actual_Type_Definition().:

   - Get_Association_Chain().:

   - Set_Association_Chain().:

   - Get_Individual_Association_Chain().:

   - Set_Individual_Association_Chain().:

   - Get_Subprogram_Association_Chain().:

   - Set_Subprogram_Association_Chain().:

   - Get_Aggregate_Info().:

   - Set_Aggregate_Info().:

   - Get_Sub_Aggregate_Info().:

   - Set_Sub_Aggregate_Info().:

   - Get_Aggr_Dynamic_Flag().:

   - Set_Aggr_Dynamic_Flag().:

   - Get_Aggr_Min_Length().:

   - Set_Aggr_Min_Length().:

   - Get_Aggr_Low_Limit().:

   - Set_Aggr_Low_Limit().:

   - Get_Aggr_High_Limit().:

   - Set_Aggr_High_Limit().:

   - Get_Aggr_Others_Flag().:

   - Set_Aggr_Others_Flag().:

   - Get_Aggr_Named_Flag().:

   - Set_Aggr_Named_Flag().:

   - Get_Aggregate_Expand_Flag().:

   - Set_Aggregate_Expand_Flag().:

   - Get_Association_Choices_Chain().:

   - Set_Association_Choices_Chain().:

   - Get_Case_Statement_Alternative_Chain().:

   - Set_Case_Statement_Alternative_Chain().:

   - Get_Choice_Staticness().:

   - Set_Choice_Staticness().:

   - Get_Procedure_Call().:

   - Set_Procedure_Call().:

   - Get_Implementation().:

   - Set_Implementation().:

   - Get_Parameter_Association_Chain().:

   - Set_Parameter_Association_Chain().:

   - Get_Method_Object().:

   - Set_Method_Object().:

   - Get_Subtype_Type_Mark().:

   - Set_Subtype_Type_Mark().:

   - Get_Subnature_Nature_Mark().:

   - Set_Subnature_Nature_Mark().:

   - Get_Type_Conversion_Subtype().:

   - Set_Type_Conversion_Subtype().:

   - Get_Type_Mark().:

   - Set_Type_Mark().:

   - Get_File_Type_Mark().:

   - Set_File_Type_Mark().:

   - Get_Return_Type_Mark().:

   - Set_Return_Type_Mark().:

   - Get_Has_Disconnect_Flag().:

   - Set_Has_Disconnect_Flag().:

   - Get_Has_Active_Flag().:

   - Set_Has_Active_Flag().:

   - Get_Is_Within_Flag().:

   - Set_Is_Within_Flag().:

   - Get_Type_Marks_List().:

   - Set_Type_Marks_List().:

   - Get_Implicit_Alias_Flag().:

   - Set_Implicit_Alias_Flag().:

   - Get_Alias_Signature().:

   - Set_Alias_Signature().:

   - Get_Attribute_Signature().:

   - Set_Attribute_Signature().:

   - Get_Overload_List().:

   - Set_Overload_List().:

   - Get_Simple_Name_Identifier().:

   - Set_Simple_Name_Identifier().:

   - Get_Simple_Name_Subtype().:

   - Set_Simple_Name_Subtype().:

   - Get_Protected_Type_Body().:

   - Set_Protected_Type_Body().:

   - Get_Protected_Type_Declaration().:

   - Set_Protected_Type_Declaration().:

   - Get_Use_Flag().:

   - Set_Use_Flag().:

   - Get_End_Has_Reserved_Id().:

   - Set_End_Has_Reserved_Id().:

   - Get_End_Has_Identifier().:

   - Set_End_Has_Identifier().:

   - Get_End_Has_Postponed().:

   - Set_End_Has_Postponed().:

   - Get_Has_Label().:

   - Set_Has_Label().:

   - Get_Has_Begin().:

   - Set_Has_Begin().:

   - Get_Has_End().:

   - Set_Has_End().:

   - Get_Has_Is().:

   - Set_Has_Is().:

   - Get_Has_Pure().:

   - Set_Has_Pure().:

   - Get_Has_Body().:

   - Set_Has_Body().:

   - Get_Has_Parameter().:

   - Set_Has_Parameter().:

   - Get_Has_Component().:

   - Set_Has_Component().:

   - Get_Has_Identifier_List().:

   - Set_Has_Identifier_List().:

   - Get_Has_Mode().:

   - Set_Has_Mode().:

   - Get_Has_Class().:

   - Set_Has_Class().:

   - Get_Has_Delay_Mechanism().:

   - Set_Has_Delay_Mechanism().:

   - Get_Suspend_Flag().:

   - Set_Suspend_Flag().:

   - Get_Is_Ref().:

   - Set_Is_Ref().:

   - Get_Is_Forward_Ref().:

   - Set_Is_Forward_Ref().:

   - Get_Psl_Property().:

   - Set_Psl_Property().:

   - Get_Psl_Sequence().:

   - Set_Psl_Sequence().:

   - Get_Psl_Declaration().:

   - Set_Psl_Declaration().:

   - Get_Psl_Expression().:

   - Set_Psl_Expression().:

   - Get_Psl_Boolean().:

   - Set_Psl_Boolean().:

   - Get_PSL_Clock().:

   - Set_PSL_Clock().:

   - Get_PSL_NFA().:

   - Set_PSL_NFA().:

   - Get_PSL_Nbr_States().:

   - Set_PSL_Nbr_States().:

   - Get_PSL_Clock_Sensitivity().:

   - Set_PSL_Clock_Sensitivity().:

   - Get_PSL_EOS_Flag().:

   - Set_PSL_EOS_Flag().:

   - Get_Count_Expression().:

   - Set_Count_Expression().:

   - Get_Clock_Expression().:

   - Set_Clock_Expression().:

   - Get_Default_Clock().:

   - Set_Default_Clock().:

   - Get_Foreign_Node().:

   - Set_Foreign_Node().:

 -- Class: pyGHDL.libghdl.vhdl.nodes.Iir_Kind (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Unused = 0

      -- Attribute: Error = 1

      -- Attribute: Design_File = 2

      -- Attribute: Design_Unit = 3

      -- Attribute: Foreign_Module = 4

      -- Attribute: Library_Clause = 5

      -- Attribute: Use_Clause = 6

      -- Attribute: Context_Reference = 7

      -- Attribute: Integer_Literal = 8

      -- Attribute: Floating_Point_Literal = 9

      -- Attribute: Null_Literal = 10

      -- Attribute: String_Literal8 = 11

      -- Attribute: Physical_Int_Literal = 12

      -- Attribute: Physical_Fp_Literal = 13

      -- Attribute: Simple_Aggregate = 14

      -- Attribute: Overflow_Literal = 15

      -- Attribute: Unaffected_Waveform = 16

      -- Attribute: Waveform_Element = 17

      -- Attribute: Conditional_Waveform = 18

      -- Attribute: Conditional_Expression = 19

      -- Attribute: Association_Element_By_Expression = 20

      -- Attribute: Association_Element_By_Individual = 21

      -- Attribute: Association_Element_Open = 22

      -- Attribute: Association_Element_Package = 23

      -- Attribute: Association_Element_Type = 24

      -- Attribute: Association_Element_Subprogram = 25

      -- Attribute: Association_Element_Terminal = 26

      -- Attribute: Choice_By_Range = 27

      -- Attribute: Choice_By_Expression = 28

      -- Attribute: Choice_By_Others = 29

      -- Attribute: Choice_By_None = 30

      -- Attribute: Choice_By_Name = 31

      -- Attribute: Entity_Aspect_Entity = 32

      -- Attribute: Entity_Aspect_Configuration = 33

      -- Attribute: Entity_Aspect_Open = 34

      -- Attribute: Psl_Hierarchical_Name = 35

      -- Attribute: Block_Configuration = 36

      -- Attribute: Block_Header = 37

      -- Attribute: Component_Configuration = 38

      -- Attribute: Binding_Indication = 39

      -- Attribute: Entity_Class = 40

      -- Attribute: Attribute_Value = 41

      -- Attribute: Signature = 42

      -- Attribute: Aggregate_Info = 43

      -- Attribute: Procedure_Call = 44

      -- Attribute: Record_Element_Constraint = 45

      -- Attribute: Array_Element_Resolution = 46

      -- Attribute: Record_Resolution = 47

      -- Attribute: Record_Element_Resolution = 48

      -- Attribute: Break_Element = 49

      -- Attribute: Attribute_Specification = 50

      -- Attribute: Disconnection_Specification = 51

      -- Attribute: Step_Limit_Specification = 52

      -- Attribute: Configuration_Specification = 53

      -- Attribute: Access_Type_Definition = 54

      -- Attribute: Incomplete_Type_Definition = 55

      -- Attribute: Interface_Type_Definition = 56

      -- Attribute: File_Type_Definition = 57

      -- Attribute: Protected_Type_Declaration = 58

      -- Attribute: Record_Type_Definition = 59

      -- Attribute: Array_Type_Definition = 60

      -- Attribute: Array_Subtype_Definition = 61

      -- Attribute: Record_Subtype_Definition = 62

      -- Attribute: Access_Subtype_Definition = 63

      -- Attribute: Physical_Subtype_Definition = 64

      -- Attribute: Floating_Subtype_Definition = 65

      -- Attribute: Integer_Subtype_Definition = 66

      -- Attribute: Enumeration_Subtype_Definition = 67

      -- Attribute: Enumeration_Type_Definition = 68

      -- Attribute: Integer_Type_Definition = 69

      -- Attribute: Floating_Type_Definition = 70

      -- Attribute: Physical_Type_Definition = 71

      -- Attribute: Range_Expression = 72

      -- Attribute: Protected_Type_Body = 73

      -- Attribute: Wildcard_Type_Definition = 74

      -- Attribute: Subtype_Definition = 75

      -- Attribute: Scalar_Nature_Definition = 76

      -- Attribute: Record_Nature_Definition = 77

      -- Attribute: Array_Nature_Definition = 78

      -- Attribute: Array_Subnature_Definition = 79

      -- Attribute: Overload_List = 80

      -- Attribute: Entity_Declaration = 81

      -- Attribute: Configuration_Declaration = 82

      -- Attribute: Context_Declaration = 83

      -- Attribute: Package_Declaration = 84

      -- Attribute: Package_Instantiation_Declaration = 85

      -- Attribute: Vmode_Declaration = 86

      -- Attribute: Vprop_Declaration = 87

      -- Attribute: Vunit_Declaration = 88

      -- Attribute: Package_Body = 89

      -- Attribute: Architecture_Body = 90

      -- Attribute: Type_Declaration = 91

      -- Attribute: Anonymous_Type_Declaration = 92

      -- Attribute: Subtype_Declaration = 93

      -- Attribute: Nature_Declaration = 94

      -- Attribute: Subnature_Declaration = 95

      -- Attribute: Package_Header = 96

      -- Attribute: Unit_Declaration = 97

      -- Attribute: Library_Declaration = 98

      -- Attribute: Component_Declaration = 99

      -- Attribute: Attribute_Declaration = 100

      -- Attribute: Group_Template_Declaration = 101

      -- Attribute: Group_Declaration = 102

      -- Attribute: Element_Declaration = 103

      -- Attribute: Nature_Element_Declaration = 104

      -- Attribute: Non_Object_Alias_Declaration = 105

      -- Attribute: Psl_Declaration = 106

      -- Attribute: Psl_Endpoint_Declaration = 107

      -- Attribute: Enumeration_Literal = 108

      -- Attribute: Function_Declaration = 109

      -- Attribute: Procedure_Declaration = 110

      -- Attribute: Function_Body = 111

      -- Attribute: Procedure_Body = 112

      -- Attribute: Function_Instantiation_Declaration = 113

      -- Attribute: Procedure_Instantiation_Declaration = 114

      -- Attribute: Terminal_Declaration = 115

      -- Attribute: Object_Alias_Declaration = 116

      -- Attribute: Free_Quantity_Declaration = 117

      -- Attribute: Spectrum_Quantity_Declaration = 118

      -- Attribute: Noise_Quantity_Declaration = 119

      -- Attribute: Across_Quantity_Declaration = 120

      -- Attribute: Through_Quantity_Declaration = 121

      -- Attribute: File_Declaration = 122

      -- Attribute: Guard_Signal_Declaration = 123

      -- Attribute: Signal_Declaration = 124

      -- Attribute: Variable_Declaration = 125

      -- Attribute: Constant_Declaration = 126

      -- Attribute: Iterator_Declaration = 127

      -- Attribute: Interface_Constant_Declaration = 128

      -- Attribute: Interface_Variable_Declaration = 129

      -- Attribute: Interface_Signal_Declaration = 130

      -- Attribute: Interface_File_Declaration = 131

      -- Attribute: Interface_Quantity_Declaration = 132

      -- Attribute: Interface_Terminal_Declaration = 133

      -- Attribute: Interface_Type_Declaration = 134

      -- Attribute: Interface_Package_Declaration = 135

      -- Attribute: Interface_Function_Declaration = 136

      -- Attribute: Interface_Procedure_Declaration = 137

      -- Attribute: Anonymous_Signal_Declaration = 138

      -- Attribute: Signal_Attribute_Declaration = 139

      -- Attribute: Identity_Operator = 140

      -- Attribute: Negation_Operator = 141

      -- Attribute: Absolute_Operator = 142

      -- Attribute: Not_Operator = 143

      -- Attribute: Implicit_Condition_Operator = 144

      -- Attribute: Condition_Operator = 145

      -- Attribute: Reduction_And_Operator = 146

      -- Attribute: Reduction_Or_Operator = 147

      -- Attribute: Reduction_Nand_Operator = 148

      -- Attribute: Reduction_Nor_Operator = 149

      -- Attribute: Reduction_Xor_Operator = 150

      -- Attribute: Reduction_Xnor_Operator = 151

      -- Attribute: And_Operator = 152

      -- Attribute: Or_Operator = 153

      -- Attribute: Nand_Operator = 154

      -- Attribute: Nor_Operator = 155

      -- Attribute: Xor_Operator = 156

      -- Attribute: Xnor_Operator = 157

      -- Attribute: Equality_Operator = 158

      -- Attribute: Inequality_Operator = 159

      -- Attribute: Less_Than_Operator = 160

      -- Attribute: Less_Than_Or_Equal_Operator = 161

      -- Attribute: Greater_Than_Operator = 162

      -- Attribute: Greater_Than_Or_Equal_Operator = 163

      -- Attribute: Match_Equality_Operator = 164

      -- Attribute: Match_Inequality_Operator = 165

      -- Attribute: Match_Less_Than_Operator = 166

      -- Attribute: Match_Less_Than_Or_Equal_Operator = 167

      -- Attribute: Match_Greater_Than_Operator = 168

      -- Attribute: Match_Greater_Than_Or_Equal_Operator = 169

      -- Attribute: Sll_Operator = 170

      -- Attribute: Sla_Operator = 171

      -- Attribute: Srl_Operator = 172

      -- Attribute: Sra_Operator = 173

      -- Attribute: Rol_Operator = 174

      -- Attribute: Ror_Operator = 175

      -- Attribute: Addition_Operator = 176

      -- Attribute: Substraction_Operator = 177

      -- Attribute: Concatenation_Operator = 178

      -- Attribute: Multiplication_Operator = 179

      -- Attribute: Division_Operator = 180

      -- Attribute: Modulus_Operator = 181

      -- Attribute: Remainder_Operator = 182

      -- Attribute: Exponentiation_Operator = 183

      -- Attribute: Function_Call = 184

      -- Attribute: Aggregate = 185

      -- Attribute: Parenthesis_Expression = 186

      -- Attribute: Qualified_Expression = 187

      -- Attribute: Type_Conversion = 188

      -- Attribute: Allocator_By_Expression = 189

      -- Attribute: Allocator_By_Subtype = 190

      -- Attribute: Selected_Element = 191

      -- Attribute: Dereference = 192

      -- Attribute: Implicit_Dereference = 193

      -- Attribute: Slice_Name = 194

      -- Attribute: Indexed_Name = 195

      -- Attribute: Psl_Prev = 196

      -- Attribute: Psl_Stable = 197

      -- Attribute: Psl_Rose = 198

      -- Attribute: Psl_Fell = 199

      -- Attribute: Psl_Onehot = 200

      -- Attribute: Psl_Onehot0 = 201

      -- Attribute: Psl_Expression = 202

      -- Attribute: Sensitized_Process_Statement = 203

      -- Attribute: Process_Statement = 204

      -- Attribute: Concurrent_Simple_Signal_Assignment = 205

      -- Attribute: Concurrent_Conditional_Signal_Assignment = 206

      -- Attribute: Concurrent_Selected_Signal_Assignment = 207

      -- Attribute: Concurrent_Assertion_Statement = 208

      -- Attribute: Concurrent_Procedure_Call_Statement = 209

      -- Attribute: Concurrent_Break_Statement = 210

      -- Attribute: Psl_Assert_Directive = 211

      -- Attribute: Psl_Assume_Directive = 212

      -- Attribute: Psl_Cover_Directive = 213

      -- Attribute: Psl_Restrict_Directive = 214

      -- Attribute: Block_Statement = 215

      -- Attribute: If_Generate_Statement = 216

      -- Attribute: Case_Generate_Statement = 217

      -- Attribute: For_Generate_Statement = 218

      -- Attribute: Component_Instantiation_Statement = 219

      -- Attribute: Psl_Default_Clock = 220

      -- Attribute: Generate_Statement_Body = 221

      -- Attribute: If_Generate_Else_Clause = 222

      -- Attribute: Simple_Simultaneous_Statement = 223

      -- Attribute: Simultaneous_Null_Statement = 224

      -- Attribute: Simultaneous_Procedural_Statement = 225

      -- Attribute: Simultaneous_Case_Statement = 226

      -- Attribute: Simultaneous_If_Statement = 227

      -- Attribute: Simultaneous_Elsif = 228

      -- Attribute: Simple_Signal_Assignment_Statement = 229

      -- Attribute: Conditional_Signal_Assignment_Statement = 230

      -- Attribute: Selected_Waveform_Assignment_Statement = 231

      -- Attribute: Signal_Force_Assignment_Statement = 232

      -- Attribute: Signal_Release_Assignment_Statement = 233

      -- Attribute: Null_Statement = 234

      -- Attribute: Assertion_Statement = 235

      -- Attribute: Report_Statement = 236

      -- Attribute: Wait_Statement = 237

      -- Attribute: Variable_Assignment_Statement = 238

      -- Attribute: Conditional_Variable_Assignment_Statement = 239

      -- Attribute: Return_Statement = 240

      -- Attribute: For_Loop_Statement = 241

      -- Attribute: While_Loop_Statement = 242

      -- Attribute: Next_Statement = 243

      -- Attribute: Exit_Statement = 244

      -- Attribute: Case_Statement = 245

      -- Attribute: Procedure_Call_Statement = 246

      -- Attribute: Break_Statement = 247

      -- Attribute: If_Statement = 248

      -- Attribute: Elsif = 249

      -- Attribute: Character_Literal = 250

      -- Attribute: Simple_Name = 251

      -- Attribute: Selected_Name = 252

      -- Attribute: Operator_Symbol = 253

      -- Attribute: Reference_Name = 254

      -- Attribute: External_Constant_Name = 255

      -- Attribute: External_Signal_Name = 256

      -- Attribute: External_Variable_Name = 257

      -- Attribute: Selected_By_All_Name = 258

      -- Attribute: Parenthesis_Name = 259

      -- Attribute: Package_Pathname = 260

      -- Attribute: Absolute_Pathname = 261

      -- Attribute: Relative_Pathname = 262

      -- Attribute: Pathname_Element = 263

      -- Attribute: Base_Attribute = 264

      -- Attribute: Subtype_Attribute = 265

      -- Attribute: Element_Attribute = 266

      -- Attribute: Across_Attribute = 267

      -- Attribute: Through_Attribute = 268

      -- Attribute: Nature_Reference_Attribute = 269

      -- Attribute: Left_Type_Attribute = 270

      -- Attribute: Right_Type_Attribute = 271

      -- Attribute: High_Type_Attribute = 272

      -- Attribute: Low_Type_Attribute = 273

      -- Attribute: Ascending_Type_Attribute = 274

      -- Attribute: Image_Attribute = 275

      -- Attribute: Value_Attribute = 276

      -- Attribute: Pos_Attribute = 277

      -- Attribute: Val_Attribute = 278

      -- Attribute: Succ_Attribute = 279

      -- Attribute: Pred_Attribute = 280

      -- Attribute: Leftof_Attribute = 281

      -- Attribute: Rightof_Attribute = 282

      -- Attribute: Signal_Slew_Attribute = 283

      -- Attribute: Quantity_Slew_Attribute = 284

      -- Attribute: Ramp_Attribute = 285

      -- Attribute: Zoh_Attribute = 286

      -- Attribute: Ltf_Attribute = 287

      -- Attribute: Ztf_Attribute = 288

      -- Attribute: Dot_Attribute = 289

      -- Attribute: Integ_Attribute = 290

      -- Attribute: Above_Attribute = 291

      -- Attribute: Quantity_Delayed_Attribute = 292

      -- Attribute: Delayed_Attribute = 293

      -- Attribute: Stable_Attribute = 294

      -- Attribute: Quiet_Attribute = 295

      -- Attribute: Transaction_Attribute = 296

      -- Attribute: Event_Attribute = 297

      -- Attribute: Active_Attribute = 298

      -- Attribute: Last_Event_Attribute = 299

      -- Attribute: Last_Active_Attribute = 300

      -- Attribute: Last_Value_Attribute = 301

      -- Attribute: Driving_Attribute = 302

      -- Attribute: Driving_Value_Attribute = 303

      -- Attribute: Behavior_Attribute = 304

      -- Attribute: Structure_Attribute = 305

      -- Attribute: Simple_Name_Attribute = 306

      -- Attribute: Instance_Name_Attribute = 307

      -- Attribute: Path_Name_Attribute = 308

      -- Attribute: Left_Array_Attribute = 309

      -- Attribute: Right_Array_Attribute = 310

      -- Attribute: High_Array_Attribute = 311

      -- Attribute: Low_Array_Attribute = 312

      -- Attribute: Length_Array_Attribute = 313

      -- Attribute: Ascending_Array_Attribute = 314

      -- Attribute: Range_Array_Attribute = 315

      -- Attribute: Reverse_Range_Array_Attribute = 316

      -- Attribute: Attribute_Name = 317

 -- Class: pyGHDL.libghdl.vhdl.nodes.Iir_Kinds

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Library_Unit = [<Iir_Kind.Entity_Declaration: 81>,
               <Iir_Kind.Configuration_Declaration: 82>,
               <Iir_Kind.Context_Declaration: 83>,
               <Iir_Kind.Package_Declaration: 84>,
               <Iir_Kind.Package_Instantiation_Declaration: 85>,
               <Iir_Kind.Vmode_Declaration: 86>,
               <Iir_Kind.Vprop_Declaration: 87>,
               <Iir_Kind.Vunit_Declaration: 88>, <Iir_Kind.Package_Body:
               89>, <Iir_Kind.Architecture_Body: 90>]

      -- Attribute: Design_Unit = [<Iir_Kind.Design_Unit: 3>,
               <Iir_Kind.Foreign_Module: 4>]

      -- Attribute: Primary_Unit = [<Iir_Kind.Entity_Declaration: 81>,
               <Iir_Kind.Configuration_Declaration: 82>,
               <Iir_Kind.Context_Declaration: 83>,
               <Iir_Kind.Package_Declaration: 84>,
               <Iir_Kind.Package_Instantiation_Declaration: 85>,
               <Iir_Kind.Vmode_Declaration: 86>,
               <Iir_Kind.Vprop_Declaration: 87>,
               <Iir_Kind.Vunit_Declaration: 88>]

      -- Attribute: Secondary_Unit = [<Iir_Kind.Package_Body: 89>,
               <Iir_Kind.Architecture_Body: 90>]

      -- Attribute: Package_Declaration =
               [<Iir_Kind.Package_Declaration: 84>,
               <Iir_Kind.Package_Instantiation_Declaration: 85>]

      -- Attribute: Verification_Unit = [<Iir_Kind.Vmode_Declaration:
               86>, <Iir_Kind.Vprop_Declaration: 87>,
               <Iir_Kind.Vunit_Declaration: 88>]

      -- Attribute: Literal = [<Iir_Kind.Integer_Literal: 8>,
               <Iir_Kind.Floating_Point_Literal: 9>,
               <Iir_Kind.Null_Literal: 10>, <Iir_Kind.String_Literal8:
               11>, <Iir_Kind.Physical_Int_Literal: 12>,
               <Iir_Kind.Physical_Fp_Literal: 13>]

      -- Attribute: Physical_Literal = [<Iir_Kind.Physical_Int_Literal:
               12>, <Iir_Kind.Physical_Fp_Literal: 13>]

      -- Attribute: Array_Type_Definition =
               [<Iir_Kind.Array_Type_Definition: 60>,
               <Iir_Kind.Array_Subtype_Definition: 61>]

      -- Attribute: Type_And_Subtype_Definition =
               [<Iir_Kind.Access_Type_Definition: 54>,
               <Iir_Kind.Incomplete_Type_Definition: 55>,
               <Iir_Kind.Interface_Type_Definition: 56>,
               <Iir_Kind.File_Type_Definition: 57>,
               <Iir_Kind.Protected_Type_Declaration: 58>,
               <Iir_Kind.Record_Type_Definition: 59>,
               <Iir_Kind.Array_Type_Definition: 60>,
               <Iir_Kind.Array_Subtype_Definition: 61>,
               <Iir_Kind.Record_Subtype_Definition: 62>,
               <Iir_Kind.Access_Subtype_Definition: 63>,
               <Iir_Kind.Physical_Subtype_Definition: 64>,
               <Iir_Kind.Floating_Subtype_Definition: 65>,
               <Iir_Kind.Integer_Subtype_Definition: 66>,
               <Iir_Kind.Enumeration_Subtype_Definition: 67>,
               <Iir_Kind.Enumeration_Type_Definition: 68>,
               <Iir_Kind.Integer_Type_Definition: 69>,
               <Iir_Kind.Floating_Type_Definition: 70>,
               <Iir_Kind.Physical_Type_Definition: 71>]

      -- Attribute: Subtype_Definition =
               [<Iir_Kind.Array_Subtype_Definition: 61>,
               <Iir_Kind.Record_Subtype_Definition: 62>,
               <Iir_Kind.Access_Subtype_Definition: 63>,
               <Iir_Kind.Physical_Subtype_Definition: 64>,
               <Iir_Kind.Floating_Subtype_Definition: 65>,
               <Iir_Kind.Integer_Subtype_Definition: 66>,
               <Iir_Kind.Enumeration_Subtype_Definition: 67>]

      -- Attribute: Scalar_Subtype_Definition =
               [<Iir_Kind.Physical_Subtype_Definition: 64>,
               <Iir_Kind.Floating_Subtype_Definition: 65>,
               <Iir_Kind.Integer_Subtype_Definition: 66>,
               <Iir_Kind.Enumeration_Subtype_Definition: 67>]

      -- Attribute: Scalar_Type_And_Subtype_Definition =
               [<Iir_Kind.Physical_Subtype_Definition: 64>,
               <Iir_Kind.Floating_Subtype_Definition: 65>,
               <Iir_Kind.Integer_Subtype_Definition: 66>,
               <Iir_Kind.Enumeration_Subtype_Definition: 67>,
               <Iir_Kind.Enumeration_Type_Definition: 68>,
               <Iir_Kind.Integer_Type_Definition: 69>,
               <Iir_Kind.Floating_Type_Definition: 70>,
               <Iir_Kind.Physical_Type_Definition: 71>]

      -- Attribute: Range_Type_Definition =
               [<Iir_Kind.Physical_Subtype_Definition: 64>,
               <Iir_Kind.Floating_Subtype_Definition: 65>,
               <Iir_Kind.Integer_Subtype_Definition: 66>,
               <Iir_Kind.Enumeration_Subtype_Definition: 67>,
               <Iir_Kind.Enumeration_Type_Definition: 68>]

      -- Attribute: Discrete_Type_Definition =
               [<Iir_Kind.Integer_Subtype_Definition: 66>,
               <Iir_Kind.Enumeration_Subtype_Definition: 67>,
               <Iir_Kind.Enumeration_Type_Definition: 68>,
               <Iir_Kind.Integer_Type_Definition: 69>]

      -- Attribute: Composite_Type_Definition =
               [<Iir_Kind.Record_Type_Definition: 59>,
               <Iir_Kind.Array_Type_Definition: 60>,
               <Iir_Kind.Array_Subtype_Definition: 61>,
               <Iir_Kind.Record_Subtype_Definition: 62>]

      -- Attribute: Composite_Subtype_Definition =
               [<Iir_Kind.Array_Subtype_Definition: 61>,
               <Iir_Kind.Record_Subtype_Definition: 62>]

      -- Attribute: Type_Declaration = [<Iir_Kind.Type_Declaration: 91>,
               <Iir_Kind.Anonymous_Type_Declaration: 92>,
               <Iir_Kind.Subtype_Declaration: 93>]

      -- Attribute: Nature_Definition =
               [<Iir_Kind.Scalar_Nature_Definition: 76>,
               <Iir_Kind.Record_Nature_Definition: 77>,
               <Iir_Kind.Array_Nature_Definition: 78>]

      -- Attribute: Subnature_Definition =
               [<Iir_Kind.Array_Subnature_Definition: 79>]

      -- Attribute: Nature_Indication =
               [<Iir_Kind.Scalar_Nature_Definition: 76>,
               <Iir_Kind.Record_Nature_Definition: 77>,
               <Iir_Kind.Array_Nature_Definition: 78>,
               <Iir_Kind.Array_Subnature_Definition: 79>]

      -- Attribute: Nonoverloadable_Declaration =
               [<Iir_Kind.Type_Declaration: 91>,
               <Iir_Kind.Anonymous_Type_Declaration: 92>,
               <Iir_Kind.Subtype_Declaration: 93>,
               <Iir_Kind.Nature_Declaration: 94>,
               <Iir_Kind.Subnature_Declaration: 95>,
               <Iir_Kind.Package_Header: 96>,
               <Iir_Kind.Unit_Declaration: 97>,
               <Iir_Kind.Library_Declaration: 98>,
               <Iir_Kind.Component_Declaration: 99>,
               <Iir_Kind.Attribute_Declaration: 100>,
               <Iir_Kind.Group_Template_Declaration: 101>,
               <Iir_Kind.Group_Declaration: 102>,
               <Iir_Kind.Element_Declaration: 103>,
               <Iir_Kind.Nature_Element_Declaration: 104>]

      -- Attribute: Monadic_Operator = [<Iir_Kind.Identity_Operator:
               140>, <Iir_Kind.Negation_Operator: 141>,
               <Iir_Kind.Absolute_Operator: 142>,
               <Iir_Kind.Not_Operator: 143>,
               <Iir_Kind.Implicit_Condition_Operator: 144>,
               <Iir_Kind.Condition_Operator: 145>,
               <Iir_Kind.Reduction_And_Operator: 146>,
               <Iir_Kind.Reduction_Or_Operator: 147>,
               <Iir_Kind.Reduction_Nand_Operator: 148>,
               <Iir_Kind.Reduction_Nor_Operator: 149>,
               <Iir_Kind.Reduction_Xor_Operator: 150>,
               <Iir_Kind.Reduction_Xnor_Operator: 151>]

      -- Attribute: Dyadic_Operator = [<Iir_Kind.And_Operator: 152>,
               <Iir_Kind.Or_Operator: 153>, <Iir_Kind.Nand_Operator:
               154>, <Iir_Kind.Nor_Operator: 155>,
               <Iir_Kind.Xor_Operator: 156>, <Iir_Kind.Xnor_Operator:
               157>, <Iir_Kind.Equality_Operator: 158>,
               <Iir_Kind.Inequality_Operator: 159>,
               <Iir_Kind.Less_Than_Operator: 160>,
               <Iir_Kind.Less_Than_Or_Equal_Operator: 161>,
               <Iir_Kind.Greater_Than_Operator: 162>,
               <Iir_Kind.Greater_Than_Or_Equal_Operator: 163>,
               <Iir_Kind.Match_Equality_Operator: 164>,
               <Iir_Kind.Match_Inequality_Operator: 165>,
               <Iir_Kind.Match_Less_Than_Operator: 166>,
               <Iir_Kind.Match_Less_Than_Or_Equal_Operator: 167>,
               <Iir_Kind.Match_Greater_Than_Operator: 168>,
               <Iir_Kind.Match_Greater_Than_Or_Equal_Operator: 169>,
               <Iir_Kind.Sll_Operator: 170>, <Iir_Kind.Sla_Operator:
               171>, <Iir_Kind.Srl_Operator: 172>,
               <Iir_Kind.Sra_Operator: 173>, <Iir_Kind.Rol_Operator:
               174>, <Iir_Kind.Ror_Operator: 175>,
               <Iir_Kind.Addition_Operator: 176>,
               <Iir_Kind.Substraction_Operator: 177>,
               <Iir_Kind.Concatenation_Operator: 178>,
               <Iir_Kind.Multiplication_Operator: 179>,
               <Iir_Kind.Division_Operator: 180>,
               <Iir_Kind.Modulus_Operator: 181>,
               <Iir_Kind.Remainder_Operator: 182>,
               <Iir_Kind.Exponentiation_Operator: 183>]

      -- Attribute: Psl_Builtin = [<Iir_Kind.Psl_Prev: 196>,
               <Iir_Kind.Psl_Stable: 197>, <Iir_Kind.Psl_Rose: 198>,
               <Iir_Kind.Psl_Fell: 199>, <Iir_Kind.Psl_Onehot: 200>,
               <Iir_Kind.Psl_Onehot0: 201>]

      -- Attribute: Functions_And_Literals =
               [<Iir_Kind.Enumeration_Literal: 108>,
               <Iir_Kind.Function_Declaration: 109>]

      -- Attribute: Subprogram_Declaration =
               [<Iir_Kind.Function_Declaration: 109>,
               <Iir_Kind.Procedure_Declaration: 110>]

      -- Attribute: Subprogram_Body = [<Iir_Kind.Function_Body: 111>,
               <Iir_Kind.Procedure_Body: 112>]

      -- Attribute: Process_Statement =
               [<Iir_Kind.Sensitized_Process_Statement: 203>,
               <Iir_Kind.Process_Statement: 204>]

      -- Attribute: Interface_Object_Declaration =
               [<Iir_Kind.Interface_Constant_Declaration: 128>,
               <Iir_Kind.Interface_Variable_Declaration: 129>,
               <Iir_Kind.Interface_Signal_Declaration: 130>,
               <Iir_Kind.Interface_File_Declaration: 131>,
               <Iir_Kind.Interface_Quantity_Declaration: 132>]

      -- Attribute: Interface_Subprogram_Declaration =
               [<Iir_Kind.Interface_Function_Declaration: 136>,
               <Iir_Kind.Interface_Procedure_Declaration: 137>]

      -- Attribute: Interface_Declaration =
               [<Iir_Kind.Interface_Constant_Declaration: 128>,
               <Iir_Kind.Interface_Variable_Declaration: 129>,
               <Iir_Kind.Interface_Signal_Declaration: 130>,
               <Iir_Kind.Interface_File_Declaration: 131>,
               <Iir_Kind.Interface_Quantity_Declaration: 132>,
               <Iir_Kind.Interface_Terminal_Declaration: 133>,
               <Iir_Kind.Interface_Type_Declaration: 134>,
               <Iir_Kind.Interface_Package_Declaration: 135>,
               <Iir_Kind.Interface_Function_Declaration: 136>,
               <Iir_Kind.Interface_Procedure_Declaration: 137>]

      -- Attribute: Object_Declaration =
               [<Iir_Kind.Object_Alias_Declaration: 116>,
               <Iir_Kind.Free_Quantity_Declaration: 117>,
               <Iir_Kind.Spectrum_Quantity_Declaration: 118>,
               <Iir_Kind.Noise_Quantity_Declaration: 119>,
               <Iir_Kind.Across_Quantity_Declaration: 120>,
               <Iir_Kind.Through_Quantity_Declaration: 121>,
               <Iir_Kind.File_Declaration: 122>,
               <Iir_Kind.Guard_Signal_Declaration: 123>,
               <Iir_Kind.Signal_Declaration: 124>,
               <Iir_Kind.Variable_Declaration: 125>,
               <Iir_Kind.Constant_Declaration: 126>,
               <Iir_Kind.Iterator_Declaration: 127>,
               <Iir_Kind.Interface_Constant_Declaration: 128>,
               <Iir_Kind.Interface_Variable_Declaration: 129>,
               <Iir_Kind.Interface_Signal_Declaration: 130>,
               <Iir_Kind.Interface_File_Declaration: 131>,
               <Iir_Kind.Interface_Quantity_Declaration: 132>]

      -- Attribute: Branch_Quantity_Declaration =
               [<Iir_Kind.Across_Quantity_Declaration: 120>,
               <Iir_Kind.Through_Quantity_Declaration: 121>]

      -- Attribute: Source_Quantity_Declaration =
               [<Iir_Kind.Spectrum_Quantity_Declaration: 118>,
               <Iir_Kind.Noise_Quantity_Declaration: 119>]

      -- Attribute: Quantity_Declaration =
               [<Iir_Kind.Free_Quantity_Declaration: 117>,
               <Iir_Kind.Spectrum_Quantity_Declaration: 118>,
               <Iir_Kind.Noise_Quantity_Declaration: 119>,
               <Iir_Kind.Across_Quantity_Declaration: 120>,
               <Iir_Kind.Through_Quantity_Declaration: 121>]

      -- Attribute: Non_Alias_Object_Declaration =
               [<Iir_Kind.File_Declaration: 122>,
               <Iir_Kind.Guard_Signal_Declaration: 123>,
               <Iir_Kind.Signal_Declaration: 124>,
               <Iir_Kind.Variable_Declaration: 125>,
               <Iir_Kind.Constant_Declaration: 126>,
               <Iir_Kind.Iterator_Declaration: 127>,
               <Iir_Kind.Interface_Constant_Declaration: 128>,
               <Iir_Kind.Interface_Variable_Declaration: 129>,
               <Iir_Kind.Interface_Signal_Declaration: 130>,
               <Iir_Kind.Interface_File_Declaration: 131>]

      -- Attribute: Association_Element_Parameters =
               [<Iir_Kind.Association_Element_By_Expression: 20>,
               <Iir_Kind.Association_Element_By_Individual: 21>,
               <Iir_Kind.Association_Element_Open: 22>]

      -- Attribute: Association_Element =
               [<Iir_Kind.Association_Element_By_Expression: 20>,
               <Iir_Kind.Association_Element_By_Individual: 21>,
               <Iir_Kind.Association_Element_Open: 22>,
               <Iir_Kind.Association_Element_Package: 23>,
               <Iir_Kind.Association_Element_Type: 24>,
               <Iir_Kind.Association_Element_Subprogram: 25>,
               <Iir_Kind.Association_Element_Terminal: 26>]

      -- Attribute: Choice = [<Iir_Kind.Choice_By_Range: 27>,
               <Iir_Kind.Choice_By_Expression: 28>,
               <Iir_Kind.Choice_By_Others: 29>,
               <Iir_Kind.Choice_By_None: 30>, <Iir_Kind.Choice_By_Name:
               31>]

      -- Attribute: Case_Choice = [<Iir_Kind.Choice_By_Range: 27>,
               <Iir_Kind.Choice_By_Expression: 28>,
               <Iir_Kind.Choice_By_Others: 29>]

      -- Attribute: Array_Choice = [<Iir_Kind.Choice_By_Range: 27>,
               <Iir_Kind.Choice_By_Expression: 28>,
               <Iir_Kind.Choice_By_Others: 29>,
               <Iir_Kind.Choice_By_None: 30>]

      -- Attribute: Record_Choice = [<Iir_Kind.Choice_By_Others: 29>,
               <Iir_Kind.Choice_By_None: 30>, <Iir_Kind.Choice_By_Name:
               31>]

      -- Attribute: Entity_Aspect = [<Iir_Kind.Entity_Aspect_Entity:
               32>, <Iir_Kind.Entity_Aspect_Configuration: 33>,
               <Iir_Kind.Entity_Aspect_Open: 34>]

      -- Attribute: Denoting_Name = [<Iir_Kind.Character_Literal: 250>,
               <Iir_Kind.Simple_Name: 251>, <Iir_Kind.Selected_Name:
               252>, <Iir_Kind.Operator_Symbol: 253>,
               <Iir_Kind.Reference_Name: 254>]

      -- Attribute: Denoting_And_External_Name =
               [<Iir_Kind.Character_Literal: 250>,
               <Iir_Kind.Simple_Name: 251>, <Iir_Kind.Selected_Name:
               252>, <Iir_Kind.Operator_Symbol: 253>,
               <Iir_Kind.Reference_Name: 254>,
               <Iir_Kind.External_Constant_Name: 255>,
               <Iir_Kind.External_Signal_Name: 256>,
               <Iir_Kind.External_Variable_Name: 257>]

      -- Attribute: Name = [<Iir_Kind.Character_Literal: 250>,
               <Iir_Kind.Simple_Name: 251>, <Iir_Kind.Selected_Name:
               252>, <Iir_Kind.Operator_Symbol: 253>,
               <Iir_Kind.Reference_Name: 254>,
               <Iir_Kind.External_Constant_Name: 255>,
               <Iir_Kind.External_Signal_Name: 256>,
               <Iir_Kind.External_Variable_Name: 257>,
               <Iir_Kind.Selected_By_All_Name: 258>,
               <Iir_Kind.Parenthesis_Name: 259>]

      -- Attribute: Dereference = [<Iir_Kind.Dereference: 192>,
               <Iir_Kind.Implicit_Dereference: 193>]

      -- Attribute: External_Name = [<Iir_Kind.External_Constant_Name:
               255>, <Iir_Kind.External_Signal_Name: 256>,
               <Iir_Kind.External_Variable_Name: 257>]

      -- Attribute: Expression_Attribute =
               [<Iir_Kind.Left_Type_Attribute: 270>,
               <Iir_Kind.Right_Type_Attribute: 271>,
               <Iir_Kind.High_Type_Attribute: 272>,
               <Iir_Kind.Low_Type_Attribute: 273>,
               <Iir_Kind.Ascending_Type_Attribute: 274>,
               <Iir_Kind.Image_Attribute: 275>,
               <Iir_Kind.Value_Attribute: 276>, <Iir_Kind.Pos_Attribute:
               277>, <Iir_Kind.Val_Attribute: 278>,
               <Iir_Kind.Succ_Attribute: 279>, <Iir_Kind.Pred_Attribute:
               280>, <Iir_Kind.Leftof_Attribute: 281>,
               <Iir_Kind.Rightof_Attribute: 282>,
               <Iir_Kind.Signal_Slew_Attribute: 283>,
               <Iir_Kind.Quantity_Slew_Attribute: 284>,
               <Iir_Kind.Ramp_Attribute: 285>, <Iir_Kind.Zoh_Attribute:
               286>, <Iir_Kind.Ltf_Attribute: 287>,
               <Iir_Kind.Ztf_Attribute: 288>, <Iir_Kind.Dot_Attribute:
               289>, <Iir_Kind.Integ_Attribute: 290>,
               <Iir_Kind.Above_Attribute: 291>,
               <Iir_Kind.Quantity_Delayed_Attribute: 292>,
               <Iir_Kind.Delayed_Attribute: 293>,
               <Iir_Kind.Stable_Attribute: 294>,
               <Iir_Kind.Quiet_Attribute: 295>,
               <Iir_Kind.Transaction_Attribute: 296>,
               <Iir_Kind.Event_Attribute: 297>,
               <Iir_Kind.Active_Attribute: 298>,
               <Iir_Kind.Last_Event_Attribute: 299>,
               <Iir_Kind.Last_Active_Attribute: 300>,
               <Iir_Kind.Last_Value_Attribute: 301>,
               <Iir_Kind.Driving_Attribute: 302>,
               <Iir_Kind.Driving_Value_Attribute: 303>,
               <Iir_Kind.Behavior_Attribute: 304>,
               <Iir_Kind.Structure_Attribute: 305>,
               <Iir_Kind.Simple_Name_Attribute: 306>,
               <Iir_Kind.Instance_Name_Attribute: 307>,
               <Iir_Kind.Path_Name_Attribute: 308>,
               <Iir_Kind.Left_Array_Attribute: 309>,
               <Iir_Kind.Right_Array_Attribute: 310>,
               <Iir_Kind.High_Array_Attribute: 311>,
               <Iir_Kind.Low_Array_Attribute: 312>,
               <Iir_Kind.Length_Array_Attribute: 313>,
               <Iir_Kind.Ascending_Array_Attribute: 314>]

      -- Attribute: Attribute = [<Iir_Kind.Base_Attribute: 264>,
               <Iir_Kind.Subtype_Attribute: 265>,
               <Iir_Kind.Element_Attribute: 266>,
               <Iir_Kind.Across_Attribute: 267>,
               <Iir_Kind.Through_Attribute: 268>,
               <Iir_Kind.Nature_Reference_Attribute: 269>,
               <Iir_Kind.Left_Type_Attribute: 270>,
               <Iir_Kind.Right_Type_Attribute: 271>,
               <Iir_Kind.High_Type_Attribute: 272>,
               <Iir_Kind.Low_Type_Attribute: 273>,
               <Iir_Kind.Ascending_Type_Attribute: 274>,
               <Iir_Kind.Image_Attribute: 275>,
               <Iir_Kind.Value_Attribute: 276>, <Iir_Kind.Pos_Attribute:
               277>, <Iir_Kind.Val_Attribute: 278>,
               <Iir_Kind.Succ_Attribute: 279>, <Iir_Kind.Pred_Attribute:
               280>, <Iir_Kind.Leftof_Attribute: 281>,
               <Iir_Kind.Rightof_Attribute: 282>,
               <Iir_Kind.Signal_Slew_Attribute: 283>,
               <Iir_Kind.Quantity_Slew_Attribute: 284>,
               <Iir_Kind.Ramp_Attribute: 285>, <Iir_Kind.Zoh_Attribute:
               286>, <Iir_Kind.Ltf_Attribute: 287>,
               <Iir_Kind.Ztf_Attribute: 288>, <Iir_Kind.Dot_Attribute:
               289>, <Iir_Kind.Integ_Attribute: 290>,
               <Iir_Kind.Above_Attribute: 291>,
               <Iir_Kind.Quantity_Delayed_Attribute: 292>,
               <Iir_Kind.Delayed_Attribute: 293>,
               <Iir_Kind.Stable_Attribute: 294>,
               <Iir_Kind.Quiet_Attribute: 295>,
               <Iir_Kind.Transaction_Attribute: 296>,
               <Iir_Kind.Event_Attribute: 297>,
               <Iir_Kind.Active_Attribute: 298>,
               <Iir_Kind.Last_Event_Attribute: 299>,
               <Iir_Kind.Last_Active_Attribute: 300>,
               <Iir_Kind.Last_Value_Attribute: 301>,
               <Iir_Kind.Driving_Attribute: 302>,
               <Iir_Kind.Driving_Value_Attribute: 303>,
               <Iir_Kind.Behavior_Attribute: 304>,
               <Iir_Kind.Structure_Attribute: 305>,
               <Iir_Kind.Simple_Name_Attribute: 306>,
               <Iir_Kind.Instance_Name_Attribute: 307>,
               <Iir_Kind.Path_Name_Attribute: 308>,
               <Iir_Kind.Left_Array_Attribute: 309>,
               <Iir_Kind.Right_Array_Attribute: 310>,
               <Iir_Kind.High_Array_Attribute: 311>,
               <Iir_Kind.Low_Array_Attribute: 312>,
               <Iir_Kind.Length_Array_Attribute: 313>,
               <Iir_Kind.Ascending_Array_Attribute: 314>,
               <Iir_Kind.Range_Array_Attribute: 315>,
               <Iir_Kind.Reverse_Range_Array_Attribute: 316>]

      -- Attribute: Type_Attribute = [<Iir_Kind.Left_Type_Attribute:
               270>, <Iir_Kind.Right_Type_Attribute: 271>,
               <Iir_Kind.High_Type_Attribute: 272>,
               <Iir_Kind.Low_Type_Attribute: 273>,
               <Iir_Kind.Ascending_Type_Attribute: 274>]

      -- Attribute: Subtype_Attribute = [<Iir_Kind.Base_Attribute: 264>,
               <Iir_Kind.Subtype_Attribute: 265>,
               <Iir_Kind.Element_Attribute: 266>]

      -- Attribute: Scalar_Type_Attribute = [<Iir_Kind.Pos_Attribute:
               277>, <Iir_Kind.Val_Attribute: 278>,
               <Iir_Kind.Succ_Attribute: 279>, <Iir_Kind.Pred_Attribute:
               280>, <Iir_Kind.Leftof_Attribute: 281>,
               <Iir_Kind.Rightof_Attribute: 282>]

      -- Attribute: Array_Attribute = [<Iir_Kind.Left_Array_Attribute:
               309>, <Iir_Kind.Right_Array_Attribute: 310>,
               <Iir_Kind.High_Array_Attribute: 311>,
               <Iir_Kind.Low_Array_Attribute: 312>,
               <Iir_Kind.Length_Array_Attribute: 313>,
               <Iir_Kind.Ascending_Array_Attribute: 314>,
               <Iir_Kind.Range_Array_Attribute: 315>,
               <Iir_Kind.Reverse_Range_Array_Attribute: 316>]

      -- Attribute: Range_Attribute = [<Iir_Kind.Range_Array_Attribute:
               315>, <Iir_Kind.Reverse_Range_Array_Attribute: 316>]

      -- Attribute: Signal_Attribute = [<Iir_Kind.Delayed_Attribute:
               293>, <Iir_Kind.Stable_Attribute: 294>,
               <Iir_Kind.Quiet_Attribute: 295>,
               <Iir_Kind.Transaction_Attribute: 296>]

      -- Attribute: Signal_Value_Attribute = [<Iir_Kind.Event_Attribute:
               297>, <Iir_Kind.Active_Attribute: 298>,
               <Iir_Kind.Last_Event_Attribute: 299>,
               <Iir_Kind.Last_Active_Attribute: 300>,
               <Iir_Kind.Last_Value_Attribute: 301>,
               <Iir_Kind.Driving_Attribute: 302>,
               <Iir_Kind.Driving_Value_Attribute: 303>]

      -- Attribute: Name_Attribute = [<Iir_Kind.Simple_Name_Attribute:
               306>, <Iir_Kind.Instance_Name_Attribute: 307>,
               <Iir_Kind.Path_Name_Attribute: 308>]

      -- Attribute: Concurrent_Statement =
               [<Iir_Kind.Sensitized_Process_Statement: 203>,
               <Iir_Kind.Process_Statement: 204>,
               <Iir_Kind.Concurrent_Simple_Signal_Assignment: 205>,
               <Iir_Kind.Concurrent_Conditional_Signal_Assignment: 206>,
               <Iir_Kind.Concurrent_Selected_Signal_Assignment: 207>,
               <Iir_Kind.Concurrent_Assertion_Statement: 208>,
               <Iir_Kind.Concurrent_Procedure_Call_Statement: 209>,
               <Iir_Kind.Concurrent_Break_Statement: 210>,
               <Iir_Kind.Psl_Assert_Directive: 211>,
               <Iir_Kind.Psl_Assume_Directive: 212>,
               <Iir_Kind.Psl_Cover_Directive: 213>,
               <Iir_Kind.Psl_Restrict_Directive: 214>,
               <Iir_Kind.Block_Statement: 215>,
               <Iir_Kind.If_Generate_Statement: 216>,
               <Iir_Kind.Case_Generate_Statement: 217>,
               <Iir_Kind.For_Generate_Statement: 218>,
               <Iir_Kind.Component_Instantiation_Statement: 219>,
               <Iir_Kind.Psl_Default_Clock: 220>]

      -- Attribute: Simple_Concurrent_Statement =
               [<Iir_Kind.Sensitized_Process_Statement: 203>,
               <Iir_Kind.Process_Statement: 204>,
               <Iir_Kind.Concurrent_Simple_Signal_Assignment: 205>,
               <Iir_Kind.Concurrent_Conditional_Signal_Assignment: 206>,
               <Iir_Kind.Concurrent_Selected_Signal_Assignment: 207>,
               <Iir_Kind.Concurrent_Assertion_Statement: 208>,
               <Iir_Kind.Concurrent_Procedure_Call_Statement: 209>,
               <Iir_Kind.Concurrent_Break_Statement: 210>,
               <Iir_Kind.Psl_Assert_Directive: 211>,
               <Iir_Kind.Psl_Assume_Directive: 212>,
               <Iir_Kind.Psl_Cover_Directive: 213>,
               <Iir_Kind.Psl_Restrict_Directive: 214>]

      -- Attribute: Generate_Statement =
               [<Iir_Kind.If_Generate_Statement: 216>,
               <Iir_Kind.Case_Generate_Statement: 217>,
               <Iir_Kind.For_Generate_Statement: 218>]

      -- Attribute: Concurrent_Signal_Assignment =
               [<Iir_Kind.Concurrent_Simple_Signal_Assignment: 205>,
               <Iir_Kind.Concurrent_Conditional_Signal_Assignment: 206>,
               <Iir_Kind.Concurrent_Selected_Signal_Assignment: 207>]

      -- Attribute: If_Case_Generate_Statement =
               [<Iir_Kind.If_Generate_Statement: 216>,
               <Iir_Kind.Case_Generate_Statement: 217>]

      -- Attribute: Simultaneous_Statement =
               [<Iir_Kind.Simple_Simultaneous_Statement: 223>,
               <Iir_Kind.Simultaneous_Null_Statement: 224>,
               <Iir_Kind.Simultaneous_Procedural_Statement: 225>,
               <Iir_Kind.Simultaneous_Case_Statement: 226>,
               <Iir_Kind.Simultaneous_If_Statement: 227>]

      -- Attribute: Sequential_Statement =
               [<Iir_Kind.Simple_Signal_Assignment_Statement: 229>,
               <Iir_Kind.Conditional_Signal_Assignment_Statement: 230>,
               <Iir_Kind.Selected_Waveform_Assignment_Statement: 231>,
               <Iir_Kind.Signal_Force_Assignment_Statement: 232>,
               <Iir_Kind.Signal_Release_Assignment_Statement: 233>,
               <Iir_Kind.Null_Statement: 234>,
               <Iir_Kind.Assertion_Statement: 235>,
               <Iir_Kind.Report_Statement: 236>,
               <Iir_Kind.Wait_Statement: 237>,
               <Iir_Kind.Variable_Assignment_Statement: 238>,
               <Iir_Kind.Conditional_Variable_Assignment_Statement:
               239>, <Iir_Kind.Return_Statement: 240>,
               <Iir_Kind.For_Loop_Statement: 241>,
               <Iir_Kind.While_Loop_Statement: 242>,
               <Iir_Kind.Next_Statement: 243>, <Iir_Kind.Exit_Statement:
               244>, <Iir_Kind.Case_Statement: 245>,
               <Iir_Kind.Procedure_Call_Statement: 246>,
               <Iir_Kind.Break_Statement: 247>, <Iir_Kind.If_Statement:
               248>]

      -- Attribute: Next_Exit_Statement = [<Iir_Kind.Next_Statement:
               243>, <Iir_Kind.Exit_Statement: 244>]

      -- Attribute: Variable_Assignment_Statement =
               [<Iir_Kind.Variable_Assignment_Statement: 238>,
               <Iir_Kind.Conditional_Variable_Assignment_Statement:
               239>]

      -- Attribute: Allocator = [<Iir_Kind.Allocator_By_Expression:
               189>, <Iir_Kind.Allocator_By_Subtype: 190>]

      -- Attribute: Clause = [<Iir_Kind.Library_Clause: 5>,
               <Iir_Kind.Use_Clause: 6>, <Iir_Kind.Context_Reference:
               7>]

      -- Attribute: Specification = [<Iir_Kind.Attribute_Specification:
               50>, <Iir_Kind.Disconnection_Specification: 51>,
               <Iir_Kind.Step_Limit_Specification: 52>,
               <Iir_Kind.Configuration_Specification: 53>]

 -- Class: pyGHDL.libghdl.vhdl.nodes.Iir_Mode (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Unknown_Mode = 0

      -- Attribute: Linkage_Mode = 1

      -- Attribute: Buffer_Mode = 2

      -- Attribute: Out_Mode = 3

      -- Attribute: Inout_Mode = 4

      -- Attribute: In_Mode = 5

 -- Class: pyGHDL.libghdl.vhdl.nodes.ScalarSize (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Scalar_8 = 0

      -- Attribute: Scalar_16 = 1

      -- Attribute: Scalar_32 = 2

      -- Attribute: Scalar_64 = 3

 -- Class: pyGHDL.libghdl.vhdl.nodes.Iir_Staticness (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Unknown = 0

      -- Attribute: PNone = 1

      -- Attribute: Globally = 2

      -- Attribute: Locally = 3

 -- Class: pyGHDL.libghdl.vhdl.nodes.Iir_Constraint (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Unconstrained = 0

      -- Attribute: Partially_Constrained = 1

      -- Attribute: Fully_Constrained = 2

 -- Class: pyGHDL.libghdl.vhdl.nodes.Iir_Delay_Mechanism (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Inertial_Delay = 0

      -- Attribute: Transport_Delay = 1

 -- Class: pyGHDL.libghdl.vhdl.nodes.DateStateType (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Extern = 0

      -- Attribute: Disk = 1

      -- Attribute: Parse = 2

      -- Attribute: Analyze = 3

 -- Class: pyGHDL.libghdl.vhdl.nodes.NumberBaseType (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Base_None = 0

      -- Attribute: Base_2 = 1

      -- Attribute: Base_8 = 2

      -- Attribute: Base_10 = 3

      -- Attribute: Base_16 = 4

 -- Class: pyGHDL.libghdl.vhdl.nodes.Iir_Predefined (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Error = 0

      -- Attribute: Boolean_And = 1

      -- Attribute: Boolean_Or = 2

      -- Attribute: Boolean_Nand = 3

      -- Attribute: Boolean_Nor = 4

      -- Attribute: Boolean_Xor = 5

      -- Attribute: Boolean_Xnor = 6

      -- Attribute: Boolean_Not = 7

      -- Attribute: Boolean_Rising_Edge = 8

      -- Attribute: Boolean_Falling_Edge = 9

      -- Attribute: Enum_Equality = 10

      -- Attribute: Enum_Inequality = 11

      -- Attribute: Enum_Less = 12

      -- Attribute: Enum_Less_Equal = 13

      -- Attribute: Enum_Greater = 14

      -- Attribute: Enum_Greater_Equal = 15

      -- Attribute: Enum_Minimum = 16

      -- Attribute: Enum_Maximum = 17

      -- Attribute: Enum_To_String = 18

      -- Attribute: Bit_And = 19

      -- Attribute: Bit_Or = 20

      -- Attribute: Bit_Nand = 21

      -- Attribute: Bit_Nor = 22

      -- Attribute: Bit_Xor = 23

      -- Attribute: Bit_Xnor = 24

      -- Attribute: Bit_Not = 25

      -- Attribute: Bit_Match_Equality = 26

      -- Attribute: Bit_Match_Inequality = 27

      -- Attribute: Bit_Match_Less = 28

      -- Attribute: Bit_Match_Less_Equal = 29

      -- Attribute: Bit_Match_Greater = 30

      -- Attribute: Bit_Match_Greater_Equal = 31

      -- Attribute: Bit_Condition = 32

      -- Attribute: Bit_Rising_Edge = 33

      -- Attribute: Bit_Falling_Edge = 34

      -- Attribute: Integer_Equality = 35

      -- Attribute: Integer_Inequality = 36

      -- Attribute: Integer_Less = 37

      -- Attribute: Integer_Less_Equal = 38

      -- Attribute: Integer_Greater = 39

      -- Attribute: Integer_Greater_Equal = 40

      -- Attribute: Integer_Identity = 41

      -- Attribute: Integer_Negation = 42

      -- Attribute: Integer_Absolute = 43

      -- Attribute: Integer_Plus = 44

      -- Attribute: Integer_Minus = 45

      -- Attribute: Integer_Mul = 46

      -- Attribute: Integer_Div = 47

      -- Attribute: Integer_Mod = 48

      -- Attribute: Integer_Rem = 49

      -- Attribute: Integer_Exp = 50

      -- Attribute: Integer_Minimum = 51

      -- Attribute: Integer_Maximum = 52

      -- Attribute: Integer_To_String = 53

      -- Attribute: Floating_Equality = 54

      -- Attribute: Floating_Inequality = 55

      -- Attribute: Floating_Less = 56

      -- Attribute: Floating_Less_Equal = 57

      -- Attribute: Floating_Greater = 58

      -- Attribute: Floating_Greater_Equal = 59

      -- Attribute: Floating_Identity = 60

      -- Attribute: Floating_Negation = 61

      -- Attribute: Floating_Absolute = 62

      -- Attribute: Floating_Plus = 63

      -- Attribute: Floating_Minus = 64

      -- Attribute: Floating_Mul = 65

      -- Attribute: Floating_Div = 66

      -- Attribute: Floating_Exp = 67

      -- Attribute: Floating_Minimum = 68

      -- Attribute: Floating_Maximum = 69

      -- Attribute: Floating_To_String = 70

      -- Attribute: Real_To_String_Digits = 71

      -- Attribute: Real_To_String_Format = 72

      -- Attribute: Universal_R_I_Mul = 73

      -- Attribute: Universal_I_R_Mul = 74

      -- Attribute: Universal_R_I_Div = 75

      -- Attribute: Physical_Equality = 76

      -- Attribute: Physical_Inequality = 77

      -- Attribute: Physical_Less = 78

      -- Attribute: Physical_Less_Equal = 79

      -- Attribute: Physical_Greater = 80

      -- Attribute: Physical_Greater_Equal = 81

      -- Attribute: Physical_Identity = 82

      -- Attribute: Physical_Negation = 83

      -- Attribute: Physical_Absolute = 84

      -- Attribute: Physical_Plus = 85

      -- Attribute: Physical_Minus = 86

      -- Attribute: Physical_Integer_Mul = 87

      -- Attribute: Physical_Real_Mul = 88

      -- Attribute: Integer_Physical_Mul = 89

      -- Attribute: Real_Physical_Mul = 90

      -- Attribute: Physical_Integer_Div = 91

      -- Attribute: Physical_Real_Div = 92

      -- Attribute: Physical_Physical_Div = 93

      -- Attribute: Physical_Minimum = 94

      -- Attribute: Physical_Maximum = 95

      -- Attribute: Physical_To_String = 96

      -- Attribute: Time_To_String_Unit = 97

      -- Attribute: Access_Equality = 98

      -- Attribute: Access_Inequality = 99

      -- Attribute: Record_Equality = 100

      -- Attribute: Record_Inequality = 101

      -- Attribute: Array_Equality = 102

      -- Attribute: Array_Inequality = 103

      -- Attribute: Array_Less = 104

      -- Attribute: Array_Less_Equal = 105

      -- Attribute: Array_Greater = 106

      -- Attribute: Array_Greater_Equal = 107

      -- Attribute: Array_Array_Concat = 108

      -- Attribute: Array_Element_Concat = 109

      -- Attribute: Element_Array_Concat = 110

      -- Attribute: Element_Element_Concat = 111

      -- Attribute: Array_Minimum = 112

      -- Attribute: Array_Maximum = 113

      -- Attribute: Vector_Minimum = 114

      -- Attribute: Vector_Maximum = 115

      -- Attribute: Array_Sll = 116

      -- Attribute: Array_Srl = 117

      -- Attribute: Array_Sla = 118

      -- Attribute: Array_Sra = 119

      -- Attribute: Array_Rol = 120

      -- Attribute: Array_Ror = 121

      -- Attribute: TF_Array_And = 122

      -- Attribute: TF_Array_Or = 123

      -- Attribute: TF_Array_Nand = 124

      -- Attribute: TF_Array_Nor = 125

      -- Attribute: TF_Array_Xor = 126

      -- Attribute: TF_Array_Xnor = 127

      -- Attribute: TF_Array_Not = 128

      -- Attribute: TF_Reduction_And = 129

      -- Attribute: TF_Reduction_Or = 130

      -- Attribute: TF_Reduction_Nand = 131

      -- Attribute: TF_Reduction_Nor = 132

      -- Attribute: TF_Reduction_Xor = 133

      -- Attribute: TF_Reduction_Xnor = 134

      -- Attribute: TF_Reduction_Not = 135

      -- Attribute: TF_Array_Element_And = 136

      -- Attribute: TF_Element_Array_And = 137

      -- Attribute: TF_Array_Element_Or = 138

      -- Attribute: TF_Element_Array_Or = 139

      -- Attribute: TF_Array_Element_Nand = 140

      -- Attribute: TF_Element_Array_Nand = 141

      -- Attribute: TF_Array_Element_Nor = 142

      -- Attribute: TF_Element_Array_Nor = 143

      -- Attribute: TF_Array_Element_Xor = 144

      -- Attribute: TF_Element_Array_Xor = 145

      -- Attribute: TF_Array_Element_Xnor = 146

      -- Attribute: TF_Element_Array_Xnor = 147

      -- Attribute: Bit_Array_Match_Equality = 148

      -- Attribute: Bit_Array_Match_Inequality = 149

      -- Attribute: Array_Char_To_String = 150

      -- Attribute: Bit_Vector_To_Ostring = 151

      -- Attribute: Bit_Vector_To_Hstring = 152

      -- Attribute: Std_Ulogic_Match_Equality = 153

      -- Attribute: Std_Ulogic_Match_Inequality = 154

      -- Attribute: Std_Ulogic_Match_Less = 155

      -- Attribute: Std_Ulogic_Match_Less_Equal = 156

      -- Attribute: Std_Ulogic_Match_Greater = 157

      -- Attribute: Std_Ulogic_Match_Greater_Equal = 158

      -- Attribute: Std_Ulogic_Array_Match_Equality = 159

      -- Attribute: Std_Ulogic_Array_Match_Inequality = 160

      -- Attribute: Deallocate = 161

      -- Attribute: File_Open = 162

      -- Attribute: File_Open_Status = 163

      -- Attribute: File_Close = 164

      -- Attribute: Read = 165

      -- Attribute: Read_Length = 166

      -- Attribute: Flush = 167

      -- Attribute: Write = 168

      -- Attribute: Endfile = 169

      -- Attribute: Now_Function = 170

      -- Attribute: Real_Now_Function = 171

      -- Attribute: Frequency_Function = 172

      -- Attribute: PNone = 173

      -- Attribute: Foreign_Untruncated_Text_Read = 174

      -- Attribute: Foreign_Textio_Read_Real = 175

      -- Attribute: Foreign_Textio_Write_Real = 176

      -- Attribute: Ieee_1164_Scalar_And = 177

      -- Attribute: Ieee_1164_Scalar_Nand = 178

      -- Attribute: Ieee_1164_Scalar_Or = 179

      -- Attribute: Ieee_1164_Scalar_Nor = 180

      -- Attribute: Ieee_1164_Scalar_Xor = 181

      -- Attribute: Ieee_1164_Scalar_Xnor = 182

      -- Attribute: Ieee_1164_Scalar_Not = 183

      -- Attribute: Ieee_1164_Vector_And = 184

      -- Attribute: Ieee_1164_Vector_Nand = 185

      -- Attribute: Ieee_1164_Vector_Or = 186

      -- Attribute: Ieee_1164_Vector_Nor = 187

      -- Attribute: Ieee_1164_Vector_Xor = 188

      -- Attribute: Ieee_1164_Vector_Xnor = 189

      -- Attribute: Ieee_1164_Vector_Not = 190

      -- Attribute: Ieee_1164_To_Bit = 191

      -- Attribute: Ieee_1164_To_Bitvector = 192

      -- Attribute: Ieee_1164_To_Stdulogic = 193

      -- Attribute: Ieee_1164_To_Stdlogicvector_Bv = 194

      -- Attribute: Ieee_1164_To_Stdlogicvector_Suv = 195

      -- Attribute: Ieee_1164_To_Stdulogicvector_Bv = 196

      -- Attribute: Ieee_1164_To_Stdulogicvector_Slv = 197

      -- Attribute: Ieee_1164_To_X01_Slv = 198

      -- Attribute: Ieee_1164_To_X01_Suv = 199

      -- Attribute: Ieee_1164_To_X01_Log = 200

      -- Attribute: Ieee_1164_To_X01_Bv_Slv = 201

      -- Attribute: Ieee_1164_To_X01_Bv_Suv = 202

      -- Attribute: Ieee_1164_To_X01_Bit_Log = 203

      -- Attribute: Ieee_1164_To_X01Z_Slv = 204

      -- Attribute: Ieee_1164_To_X01Z_Suv = 205

      -- Attribute: Ieee_1164_To_X01Z_Log = 206

      -- Attribute: Ieee_1164_To_X01Z_Bv_Slv = 207

      -- Attribute: Ieee_1164_To_X01Z_Bv_Suv = 208

      -- Attribute: Ieee_1164_To_X01Z_Bit_Log = 209

      -- Attribute: Ieee_1164_To_UX01_Slv = 210

      -- Attribute: Ieee_1164_To_UX01_Suv = 211

      -- Attribute: Ieee_1164_To_UX01_Log = 212

      -- Attribute: Ieee_1164_To_UX01_Bv_Slv = 213

      -- Attribute: Ieee_1164_To_UX01_Bv_Suv = 214

      -- Attribute: Ieee_1164_To_UX01_Bit_Log = 215

      -- Attribute: Ieee_1164_Vector_Is_X = 216

      -- Attribute: Ieee_1164_Scalar_Is_X = 217

      -- Attribute: Ieee_1164_Rising_Edge = 218

      -- Attribute: Ieee_1164_Falling_Edge = 219

      -- Attribute: Ieee_1164_And_Suv_Log = 220

      -- Attribute: Ieee_1164_And_Log_Suv = 221

      -- Attribute: Ieee_1164_Nand_Suv_Log = 222

      -- Attribute: Ieee_1164_Nand_Log_Suv = 223

      -- Attribute: Ieee_1164_Or_Suv_Log = 224

      -- Attribute: Ieee_1164_Or_Log_Suv = 225

      -- Attribute: Ieee_1164_Nor_Suv_Log = 226

      -- Attribute: Ieee_1164_Nor_Log_Suv = 227

      -- Attribute: Ieee_1164_Xor_Suv_Log = 228

      -- Attribute: Ieee_1164_Xor_Log_Suv = 229

      -- Attribute: Ieee_1164_Xnor_Suv_Log = 230

      -- Attribute: Ieee_1164_Xnor_Log_Suv = 231

      -- Attribute: Ieee_1164_And_Suv = 232

      -- Attribute: Ieee_1164_Nand_Suv = 233

      -- Attribute: Ieee_1164_Or_Suv = 234

      -- Attribute: Ieee_1164_Nor_Suv = 235

      -- Attribute: Ieee_1164_Xor_Suv = 236

      -- Attribute: Ieee_1164_Xnor_Suv = 237

      -- Attribute: Ieee_1164_Vector_Sll = 238

      -- Attribute: Ieee_1164_Vector_Srl = 239

      -- Attribute: Ieee_1164_Vector_Rol = 240

      -- Attribute: Ieee_1164_Vector_Ror = 241

      -- Attribute: Ieee_1164_Condition_Operator = 242

      -- Attribute: Ieee_Numeric_Std_Toint_Uns_Nat = 243

      -- Attribute: Ieee_Numeric_Std_Toint_Sgn_Int = 244

      -- Attribute: Ieee_Numeric_Std_Touns_Nat_Nat_Uns = 245

      -- Attribute: Ieee_Numeric_Std_Touns_Nat_Uns_Uns = 246

      -- Attribute: Ieee_Numeric_Std_Tosgn_Int_Nat_Sgn = 247

      -- Attribute: Ieee_Numeric_Std_Tosgn_Int_Sgn_Sgn = 248

      -- Attribute: Ieee_Numeric_Std_Resize_Uns_Nat = 249

      -- Attribute: Ieee_Numeric_Std_Resize_Sgn_Nat = 250

      -- Attribute: Ieee_Numeric_Std_Resize_Uns_Uns = 251

      -- Attribute: Ieee_Numeric_Std_Resize_Sgn_Sgn = 252

      -- Attribute: Ieee_Numeric_Std_Add_Uns_Uns = 253

      -- Attribute: Ieee_Numeric_Std_Add_Uns_Nat = 254

      -- Attribute: Ieee_Numeric_Std_Add_Nat_Uns = 255

      -- Attribute: Ieee_Numeric_Std_Add_Uns_Log = 256

      -- Attribute: Ieee_Numeric_Std_Add_Log_Uns = 257

      -- Attribute: Ieee_Numeric_Std_Add_Sgn_Sgn = 258

      -- Attribute: Ieee_Numeric_Std_Add_Sgn_Int = 259

      -- Attribute: Ieee_Numeric_Std_Add_Int_Sgn = 260

      -- Attribute: Ieee_Numeric_Std_Add_Sgn_Log = 261

      -- Attribute: Ieee_Numeric_Std_Add_Log_Sgn = 262

      -- Attribute: Ieee_Numeric_Std_Sub_Uns_Uns = 263

      -- Attribute: Ieee_Numeric_Std_Sub_Uns_Nat = 264

      -- Attribute: Ieee_Numeric_Std_Sub_Nat_Uns = 265

      -- Attribute: Ieee_Numeric_Std_Sub_Uns_Log = 266

      -- Attribute: Ieee_Numeric_Std_Sub_Log_Uns = 267

      -- Attribute: Ieee_Numeric_Std_Sub_Sgn_Sgn = 268

      -- Attribute: Ieee_Numeric_Std_Sub_Sgn_Int = 269

      -- Attribute: Ieee_Numeric_Std_Sub_Int_Sgn = 270

      -- Attribute: Ieee_Numeric_Std_Sub_Sgn_Log = 271

      -- Attribute: Ieee_Numeric_Std_Sub_Log_Sgn = 272

      -- Attribute: Ieee_Numeric_Std_Mul_Uns_Uns = 273

      -- Attribute: Ieee_Numeric_Std_Mul_Uns_Nat = 274

      -- Attribute: Ieee_Numeric_Std_Mul_Nat_Uns = 275

      -- Attribute: Ieee_Numeric_Std_Mul_Sgn_Sgn = 276

      -- Attribute: Ieee_Numeric_Std_Mul_Sgn_Int = 277

      -- Attribute: Ieee_Numeric_Std_Mul_Int_Sgn = 278

      -- Attribute: Ieee_Numeric_Std_Div_Uns_Uns = 279

      -- Attribute: Ieee_Numeric_Std_Div_Uns_Nat = 280

      -- Attribute: Ieee_Numeric_Std_Div_Nat_Uns = 281

      -- Attribute: Ieee_Numeric_Std_Div_Sgn_Sgn = 282

      -- Attribute: Ieee_Numeric_Std_Div_Sgn_Int = 283

      -- Attribute: Ieee_Numeric_Std_Div_Int_Sgn = 284

      -- Attribute: Ieee_Numeric_Std_Rem_Uns_Uns = 285

      -- Attribute: Ieee_Numeric_Std_Rem_Uns_Nat = 286

      -- Attribute: Ieee_Numeric_Std_Rem_Nat_Uns = 287

      -- Attribute: Ieee_Numeric_Std_Rem_Sgn_Sgn = 288

      -- Attribute: Ieee_Numeric_Std_Rem_Sgn_Int = 289

      -- Attribute: Ieee_Numeric_Std_Rem_Int_Sgn = 290

      -- Attribute: Ieee_Numeric_Std_Mod_Uns_Uns = 291

      -- Attribute: Ieee_Numeric_Std_Mod_Uns_Nat = 292

      -- Attribute: Ieee_Numeric_Std_Mod_Nat_Uns = 293

      -- Attribute: Ieee_Numeric_Std_Mod_Sgn_Sgn = 294

      -- Attribute: Ieee_Numeric_Std_Mod_Sgn_Int = 295

      -- Attribute: Ieee_Numeric_Std_Mod_Int_Sgn = 296

      -- Attribute: Ieee_Numeric_Std_Gt_Uns_Uns = 297

      -- Attribute: Ieee_Numeric_Std_Gt_Uns_Nat = 298

      -- Attribute: Ieee_Numeric_Std_Gt_Nat_Uns = 299

      -- Attribute: Ieee_Numeric_Std_Gt_Sgn_Sgn = 300

      -- Attribute: Ieee_Numeric_Std_Gt_Sgn_Int = 301

      -- Attribute: Ieee_Numeric_Std_Gt_Int_Sgn = 302

      -- Attribute: Ieee_Numeric_Std_Lt_Uns_Uns = 303

      -- Attribute: Ieee_Numeric_Std_Lt_Uns_Nat = 304

      -- Attribute: Ieee_Numeric_Std_Lt_Nat_Uns = 305

      -- Attribute: Ieee_Numeric_Std_Lt_Sgn_Sgn = 306

      -- Attribute: Ieee_Numeric_Std_Lt_Sgn_Int = 307

      -- Attribute: Ieee_Numeric_Std_Lt_Int_Sgn = 308

      -- Attribute: Ieee_Numeric_Std_Le_Uns_Uns = 309

      -- Attribute: Ieee_Numeric_Std_Le_Uns_Nat = 310

      -- Attribute: Ieee_Numeric_Std_Le_Nat_Uns = 311

      -- Attribute: Ieee_Numeric_Std_Le_Sgn_Sgn = 312

      -- Attribute: Ieee_Numeric_Std_Le_Sgn_Int = 313

      -- Attribute: Ieee_Numeric_Std_Le_Int_Sgn = 314

      -- Attribute: Ieee_Numeric_Std_Ge_Uns_Uns = 315

      -- Attribute: Ieee_Numeric_Std_Ge_Uns_Nat = 316

      -- Attribute: Ieee_Numeric_Std_Ge_Nat_Uns = 317

      -- Attribute: Ieee_Numeric_Std_Ge_Sgn_Sgn = 318

      -- Attribute: Ieee_Numeric_Std_Ge_Sgn_Int = 319

      -- Attribute: Ieee_Numeric_Std_Ge_Int_Sgn = 320

      -- Attribute: Ieee_Numeric_Std_Eq_Uns_Uns = 321

      -- Attribute: Ieee_Numeric_Std_Eq_Uns_Nat = 322

      -- Attribute: Ieee_Numeric_Std_Eq_Nat_Uns = 323

      -- Attribute: Ieee_Numeric_Std_Eq_Sgn_Sgn = 324

      -- Attribute: Ieee_Numeric_Std_Eq_Sgn_Int = 325

      -- Attribute: Ieee_Numeric_Std_Eq_Int_Sgn = 326

      -- Attribute: Ieee_Numeric_Std_Ne_Uns_Uns = 327

      -- Attribute: Ieee_Numeric_Std_Ne_Uns_Nat = 328

      -- Attribute: Ieee_Numeric_Std_Ne_Nat_Uns = 329

      -- Attribute: Ieee_Numeric_Std_Ne_Sgn_Sgn = 330

      -- Attribute: Ieee_Numeric_Std_Ne_Sgn_Int = 331

      -- Attribute: Ieee_Numeric_Std_Ne_Int_Sgn = 332

      -- Attribute: Ieee_Numeric_Std_Match_Gt_Uns_Uns = 333

      -- Attribute: Ieee_Numeric_Std_Match_Gt_Uns_Nat = 334

      -- Attribute: Ieee_Numeric_Std_Match_Gt_Nat_Uns = 335

      -- Attribute: Ieee_Numeric_Std_Match_Gt_Sgn_Sgn = 336

      -- Attribute: Ieee_Numeric_Std_Match_Gt_Sgn_Int = 337

      -- Attribute: Ieee_Numeric_Std_Match_Gt_Int_Sgn = 338

      -- Attribute: Ieee_Numeric_Std_Match_Lt_Uns_Uns = 339

      -- Attribute: Ieee_Numeric_Std_Match_Lt_Uns_Nat = 340

      -- Attribute: Ieee_Numeric_Std_Match_Lt_Nat_Uns = 341

      -- Attribute: Ieee_Numeric_Std_Match_Lt_Sgn_Sgn = 342

      -- Attribute: Ieee_Numeric_Std_Match_Lt_Sgn_Int = 343

      -- Attribute: Ieee_Numeric_Std_Match_Lt_Int_Sgn = 344

      -- Attribute: Ieee_Numeric_Std_Match_Le_Uns_Uns = 345

      -- Attribute: Ieee_Numeric_Std_Match_Le_Uns_Nat = 346

      -- Attribute: Ieee_Numeric_Std_Match_Le_Nat_Uns = 347

      -- Attribute: Ieee_Numeric_Std_Match_Le_Sgn_Sgn = 348

      -- Attribute: Ieee_Numeric_Std_Match_Le_Sgn_Int = 349

      -- Attribute: Ieee_Numeric_Std_Match_Le_Int_Sgn = 350

      -- Attribute: Ieee_Numeric_Std_Match_Ge_Uns_Uns = 351

      -- Attribute: Ieee_Numeric_Std_Match_Ge_Uns_Nat = 352

      -- Attribute: Ieee_Numeric_Std_Match_Ge_Nat_Uns = 353

      -- Attribute: Ieee_Numeric_Std_Match_Ge_Sgn_Sgn = 354

      -- Attribute: Ieee_Numeric_Std_Match_Ge_Sgn_Int = 355

      -- Attribute: Ieee_Numeric_Std_Match_Ge_Int_Sgn = 356

      -- Attribute: Ieee_Numeric_Std_Match_Eq_Uns_Uns = 357

      -- Attribute: Ieee_Numeric_Std_Match_Eq_Uns_Nat = 358

      -- Attribute: Ieee_Numeric_Std_Match_Eq_Nat_Uns = 359

      -- Attribute: Ieee_Numeric_Std_Match_Eq_Sgn_Sgn = 360

      -- Attribute: Ieee_Numeric_Std_Match_Eq_Sgn_Int = 361

      -- Attribute: Ieee_Numeric_Std_Match_Eq_Int_Sgn = 362

      -- Attribute: Ieee_Numeric_Std_Match_Ne_Uns_Uns = 363

      -- Attribute: Ieee_Numeric_Std_Match_Ne_Uns_Nat = 364

      -- Attribute: Ieee_Numeric_Std_Match_Ne_Nat_Uns = 365

      -- Attribute: Ieee_Numeric_Std_Match_Ne_Sgn_Sgn = 366

      -- Attribute: Ieee_Numeric_Std_Match_Ne_Sgn_Int = 367

      -- Attribute: Ieee_Numeric_Std_Match_Ne_Int_Sgn = 368

      -- Attribute: Ieee_Numeric_Std_Sll_Uns_Int = 369

      -- Attribute: Ieee_Numeric_Std_Sll_Sgn_Int = 370

      -- Attribute: Ieee_Numeric_Std_Srl_Uns_Int = 371

      -- Attribute: Ieee_Numeric_Std_Srl_Sgn_Int = 372

      -- Attribute: Ieee_Numeric_Std_Sla_Uns_Int = 373

      -- Attribute: Ieee_Numeric_Std_Sla_Sgn_Int = 374

      -- Attribute: Ieee_Numeric_Std_Sra_Uns_Int = 375

      -- Attribute: Ieee_Numeric_Std_Sra_Sgn_Int = 376

      -- Attribute: Ieee_Numeric_Std_And_Uns_Uns = 377

      -- Attribute: Ieee_Numeric_Std_And_Sgn_Sgn = 378

      -- Attribute: Ieee_Numeric_Std_Or_Uns_Uns = 379

      -- Attribute: Ieee_Numeric_Std_Or_Sgn_Sgn = 380

      -- Attribute: Ieee_Numeric_Std_Nand_Uns_Uns = 381

      -- Attribute: Ieee_Numeric_Std_Nand_Sgn_Sgn = 382

      -- Attribute: Ieee_Numeric_Std_Nor_Uns_Uns = 383

      -- Attribute: Ieee_Numeric_Std_Nor_Sgn_Sgn = 384

      -- Attribute: Ieee_Numeric_Std_Xor_Uns_Uns = 385

      -- Attribute: Ieee_Numeric_Std_Xor_Sgn_Sgn = 386

      -- Attribute: Ieee_Numeric_Std_Xnor_Uns_Uns = 387

      -- Attribute: Ieee_Numeric_Std_Xnor_Sgn_Sgn = 388

      -- Attribute: Ieee_Numeric_Std_Not_Uns = 389

      -- Attribute: Ieee_Numeric_Std_Not_Sgn = 390

      -- Attribute: Ieee_Numeric_Std_Abs_Sgn = 391

      -- Attribute: Ieee_Numeric_Std_Neg_Uns = 392

      -- Attribute: Ieee_Numeric_Std_Neg_Sgn = 393

      -- Attribute: Ieee_Numeric_Std_Min_Uns_Uns = 394

      -- Attribute: Ieee_Numeric_Std_Min_Uns_Nat = 395

      -- Attribute: Ieee_Numeric_Std_Min_Nat_Uns = 396

      -- Attribute: Ieee_Numeric_Std_Min_Sgn_Sgn = 397

      -- Attribute: Ieee_Numeric_Std_Min_Sgn_Int = 398

      -- Attribute: Ieee_Numeric_Std_Min_Int_Sgn = 399

      -- Attribute: Ieee_Numeric_Std_Max_Uns_Uns = 400

      -- Attribute: Ieee_Numeric_Std_Max_Uns_Nat = 401

      -- Attribute: Ieee_Numeric_Std_Max_Nat_Uns = 402

      -- Attribute: Ieee_Numeric_Std_Max_Sgn_Sgn = 403

      -- Attribute: Ieee_Numeric_Std_Max_Sgn_Int = 404

      -- Attribute: Ieee_Numeric_Std_Max_Int_Sgn = 405

      -- Attribute: Ieee_Numeric_Std_Shf_Left_Uns_Nat = 406

      -- Attribute: Ieee_Numeric_Std_Shf_Right_Uns_Nat = 407

      -- Attribute: Ieee_Numeric_Std_Shf_Left_Sgn_Nat = 408

      -- Attribute: Ieee_Numeric_Std_Shf_Right_Sgn_Nat = 409

      -- Attribute: Ieee_Numeric_Std_Rot_Left_Uns_Nat = 410

      -- Attribute: Ieee_Numeric_Std_Rot_Right_Uns_Nat = 411

      -- Attribute: Ieee_Numeric_Std_Rot_Left_Sgn_Nat = 412

      -- Attribute: Ieee_Numeric_Std_Rot_Right_Sgn_Nat = 413

      -- Attribute: Ieee_Numeric_Std_And_Sgn = 414

      -- Attribute: Ieee_Numeric_Std_Nand_Sgn = 415

      -- Attribute: Ieee_Numeric_Std_Or_Sgn = 416

      -- Attribute: Ieee_Numeric_Std_Nor_Sgn = 417

      -- Attribute: Ieee_Numeric_Std_Xor_Sgn = 418

      -- Attribute: Ieee_Numeric_Std_Xnor_Sgn = 419

      -- Attribute: Ieee_Numeric_Std_And_Uns = 420

      -- Attribute: Ieee_Numeric_Std_Nand_Uns = 421

      -- Attribute: Ieee_Numeric_Std_Or_Uns = 422

      -- Attribute: Ieee_Numeric_Std_Nor_Uns = 423

      -- Attribute: Ieee_Numeric_Std_Xor_Uns = 424

      -- Attribute: Ieee_Numeric_Std_Xnor_Uns = 425

      -- Attribute: Ieee_Numeric_Std_Find_Leftmost_Uns = 426

      -- Attribute: Ieee_Numeric_Std_Find_Rightmost_Uns = 427

      -- Attribute: Ieee_Numeric_Std_Find_Leftmost_Sgn = 428

      -- Attribute: Ieee_Numeric_Std_Find_Rightmost_Sgn = 429

      -- Attribute: Ieee_Numeric_Std_Match_Log = 430

      -- Attribute: Ieee_Numeric_Std_Match_Uns = 431

      -- Attribute: Ieee_Numeric_Std_Match_Sgn = 432

      -- Attribute: Ieee_Numeric_Std_Match_Slv = 433

      -- Attribute: Ieee_Numeric_Std_Match_Suv = 434

      -- Attribute: Ieee_Numeric_Std_To_01_Uns = 435

      -- Attribute: Ieee_Numeric_Std_To_01_Sgn = 436

      -- Attribute: Ieee_Numeric_Std_Unsigned_To_Integer_Slv_Nat = 437

      -- Attribute: Ieee_Numeric_Std_Unsigned_To_Slv_Nat_Nat_Slv = 438

      -- Attribute: Ieee_Math_Real_Ceil = 439

      -- Attribute: Ieee_Math_Real_Floor = 440

      -- Attribute: Ieee_Math_Real_Round = 441

      -- Attribute: Ieee_Math_Real_Log2 = 442

      -- Attribute: Ieee_Math_Real_Sin = 443

      -- Attribute: Ieee_Math_Real_Cos = 444

      -- Attribute: Ieee_Math_Real_Arctan = 445

      -- Attribute: Ieee_Math_Real_Pow = 446

      -- Attribute: Ieee_Std_Logic_Unsigned_Add_Slv_Slv = 447

      -- Attribute: Ieee_Std_Logic_Unsigned_Add_Slv_Int = 448

      -- Attribute: Ieee_Std_Logic_Unsigned_Add_Int_Slv = 449

      -- Attribute: Ieee_Std_Logic_Unsigned_Add_Slv_Log = 450

      -- Attribute: Ieee_Std_Logic_Unsigned_Add_Log_Slv = 451

      -- Attribute: Ieee_Std_Logic_Unsigned_Sub_Slv_Slv = 452

      -- Attribute: Ieee_Std_Logic_Unsigned_Sub_Slv_Int = 453

      -- Attribute: Ieee_Std_Logic_Unsigned_Sub_Int_Slv = 454

      -- Attribute: Ieee_Std_Logic_Unsigned_Sub_Slv_Log = 455

      -- Attribute: Ieee_Std_Logic_Unsigned_Sub_Log_Slv = 456

      -- Attribute: Ieee_Std_Logic_Unsigned_Id_Slv = 457

      -- Attribute: Ieee_Std_Logic_Unsigned_Mul_Slv_Slv = 458

      -- Attribute: Ieee_Std_Logic_Unsigned_Lt_Slv_Slv = 459

      -- Attribute: Ieee_Std_Logic_Unsigned_Lt_Slv_Int = 460

      -- Attribute: Ieee_Std_Logic_Unsigned_Lt_Int_Slv = 461

      -- Attribute: Ieee_Std_Logic_Unsigned_Le_Slv_Slv = 462

      -- Attribute: Ieee_Std_Logic_Unsigned_Le_Slv_Int = 463

      -- Attribute: Ieee_Std_Logic_Unsigned_Le_Int_Slv = 464

      -- Attribute: Ieee_Std_Logic_Unsigned_Gt_Slv_Slv = 465

      -- Attribute: Ieee_Std_Logic_Unsigned_Gt_Slv_Int = 466

      -- Attribute: Ieee_Std_Logic_Unsigned_Gt_Int_Slv = 467

      -- Attribute: Ieee_Std_Logic_Unsigned_Ge_Slv_Slv = 468

      -- Attribute: Ieee_Std_Logic_Unsigned_Ge_Slv_Int = 469

      -- Attribute: Ieee_Std_Logic_Unsigned_Ge_Int_Slv = 470

      -- Attribute: Ieee_Std_Logic_Unsigned_Eq_Slv_Slv = 471

      -- Attribute: Ieee_Std_Logic_Unsigned_Eq_Slv_Int = 472

      -- Attribute: Ieee_Std_Logic_Unsigned_Eq_Int_Slv = 473

      -- Attribute: Ieee_Std_Logic_Unsigned_Ne_Slv_Slv = 474

      -- Attribute: Ieee_Std_Logic_Unsigned_Ne_Slv_Int = 475

      -- Attribute: Ieee_Std_Logic_Unsigned_Ne_Int_Slv = 476

      -- Attribute: Ieee_Std_Logic_Unsigned_Conv_Integer = 477

      -- Attribute: Ieee_Std_Logic_Unsigned_Shl = 478

      -- Attribute: Ieee_Std_Logic_Unsigned_Shr = 479

      -- Attribute: Ieee_Std_Logic_Signed_Add_Slv_Slv = 480

      -- Attribute: Ieee_Std_Logic_Signed_Add_Slv_Int = 481

      -- Attribute: Ieee_Std_Logic_Signed_Add_Int_Slv = 482

      -- Attribute: Ieee_Std_Logic_Signed_Add_Slv_Log = 483

      -- Attribute: Ieee_Std_Logic_Signed_Add_Log_Slv = 484

      -- Attribute: Ieee_Std_Logic_Signed_Sub_Slv_Slv = 485

      -- Attribute: Ieee_Std_Logic_Signed_Sub_Slv_Int = 486

      -- Attribute: Ieee_Std_Logic_Signed_Sub_Int_Slv = 487

      -- Attribute: Ieee_Std_Logic_Signed_Sub_Slv_Log = 488

      -- Attribute: Ieee_Std_Logic_Signed_Sub_Log_Slv = 489

      -- Attribute: Ieee_Std_Logic_Signed_Id_Slv = 490

      -- Attribute: Ieee_Std_Logic_Signed_Neg_Slv = 491

      -- Attribute: Ieee_Std_Logic_Signed_Abs_Slv = 492

      -- Attribute: Ieee_Std_Logic_Signed_Mul_Slv_Slv = 493

      -- Attribute: Ieee_Std_Logic_Signed_Lt_Slv_Slv = 494

      -- Attribute: Ieee_Std_Logic_Signed_Lt_Slv_Int = 495

      -- Attribute: Ieee_Std_Logic_Signed_Lt_Int_Slv = 496

      -- Attribute: Ieee_Std_Logic_Signed_Le_Slv_Slv = 497

      -- Attribute: Ieee_Std_Logic_Signed_Le_Slv_Int = 498

      -- Attribute: Ieee_Std_Logic_Signed_Le_Int_Slv = 499

      -- Attribute: Ieee_Std_Logic_Signed_Gt_Slv_Slv = 500

      -- Attribute: Ieee_Std_Logic_Signed_Gt_Slv_Int = 501

      -- Attribute: Ieee_Std_Logic_Signed_Gt_Int_Slv = 502

      -- Attribute: Ieee_Std_Logic_Signed_Ge_Slv_Slv = 503

      -- Attribute: Ieee_Std_Logic_Signed_Ge_Slv_Int = 504

      -- Attribute: Ieee_Std_Logic_Signed_Ge_Int_Slv = 505

      -- Attribute: Ieee_Std_Logic_Signed_Eq_Slv_Slv = 506

      -- Attribute: Ieee_Std_Logic_Signed_Eq_Slv_Int = 507

      -- Attribute: Ieee_Std_Logic_Signed_Eq_Int_Slv = 508

      -- Attribute: Ieee_Std_Logic_Signed_Ne_Slv_Slv = 509

      -- Attribute: Ieee_Std_Logic_Signed_Ne_Slv_Int = 510

      -- Attribute: Ieee_Std_Logic_Signed_Ne_Int_Slv = 511

      -- Attribute: Ieee_Std_Logic_Signed_Conv_Integer = 512

      -- Attribute: Ieee_Std_Logic_Signed_Shl = 513

      -- Attribute: Ieee_Std_Logic_Signed_Shr = 514

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Unsigned_Int = 515

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Unsigned_Uns = 516

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Unsigned_Sgn = 517

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Unsigned_Log = 518

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Integer_Int = 519

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Integer_Uns = 520

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Integer_Sgn = 521

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Integer_Log = 522

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Vector_Int = 523

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Vector_Uns = 524

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Vector_Sgn = 525

      -- Attribute: Ieee_Std_Logic_Arith_Conv_Vector_Log = 526

      -- Attribute: Ieee_Std_Logic_Arith_Ext = 527

      -- Attribute: Ieee_Std_Logic_Arith_Sxt = 528

      -- Attribute: Ieee_Std_Logic_Arith_Id_Uns_Uns = 529

      -- Attribute: Ieee_Std_Logic_Arith_Id_Sgn_Sgn = 530

      -- Attribute: Ieee_Std_Logic_Arith_Neg_Sgn_Sgn = 531

      -- Attribute: Ieee_Std_Logic_Arith_Abs_Sgn_Sgn = 532

      -- Attribute: Ieee_Std_Logic_Arith_Shl_Uns = 533

      -- Attribute: Ieee_Std_Logic_Arith_Shl_Sgn = 534

      -- Attribute: Ieee_Std_Logic_Arith_Shr_Uns = 535

      -- Attribute: Ieee_Std_Logic_Arith_Shr_Sgn = 536

      -- Attribute: Ieee_Std_Logic_Arith_Id_Uns_Slv = 537

      -- Attribute: Ieee_Std_Logic_Arith_Id_Sgn_Slv = 538

      -- Attribute: Ieee_Std_Logic_Arith_Neg_Sgn_Slv = 539

      -- Attribute: Ieee_Std_Logic_Arith_Abs_Sgn_Slv = 540

      -- Attribute: Ieee_Std_Logic_Arith_Mul_Uns_Uns_Uns = 541

      -- Attribute: Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Sgn = 542

      -- Attribute: Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Sgn = 543

      -- Attribute: Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Sgn = 544

      -- Attribute: Ieee_Std_Logic_Arith_Mul_Uns_Uns_Slv = 545

      -- Attribute: Ieee_Std_Logic_Arith_Mul_Sgn_Sgn_Slv = 546

      -- Attribute: Ieee_Std_Logic_Arith_Mul_Sgn_Uns_Slv = 547

      -- Attribute: Ieee_Std_Logic_Arith_Mul_Uns_Sgn_Slv = 548

      -- Attribute: Ieee_Std_Logic_Arith_Add_Uns_Uns_Uns = 549

      -- Attribute: Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Sgn = 550

      -- Attribute: Ieee_Std_Logic_Arith_Add_Uns_Sgn_Sgn = 551

      -- Attribute: Ieee_Std_Logic_Arith_Add_Sgn_Uns_Sgn = 552

      -- Attribute: Ieee_Std_Logic_Arith_Add_Uns_Int_Uns = 553

      -- Attribute: Ieee_Std_Logic_Arith_Add_Int_Uns_Uns = 554

      -- Attribute: Ieee_Std_Logic_Arith_Add_Sgn_Int_Sgn = 555

      -- Attribute: Ieee_Std_Logic_Arith_Add_Int_Sgn_Sgn = 556

      -- Attribute: Ieee_Std_Logic_Arith_Add_Uns_Log_Uns = 557

      -- Attribute: Ieee_Std_Logic_Arith_Add_Log_Uns_Uns = 558

      -- Attribute: Ieee_Std_Logic_Arith_Add_Sgn_Log_Sgn = 559

      -- Attribute: Ieee_Std_Logic_Arith_Add_Log_Sgn_Sgn = 560

      -- Attribute: Ieee_Std_Logic_Arith_Add_Uns_Uns_Slv = 561

      -- Attribute: Ieee_Std_Logic_Arith_Add_Sgn_Sgn_Slv = 562

      -- Attribute: Ieee_Std_Logic_Arith_Add_Uns_Sgn_Slv = 563

      -- Attribute: Ieee_Std_Logic_Arith_Add_Sgn_Uns_Slv = 564

      -- Attribute: Ieee_Std_Logic_Arith_Add_Uns_Int_Slv = 565

      -- Attribute: Ieee_Std_Logic_Arith_Add_Int_Uns_Slv = 566

      -- Attribute: Ieee_Std_Logic_Arith_Add_Sgn_Int_Slv = 567

      -- Attribute: Ieee_Std_Logic_Arith_Add_Int_Sgn_Slv = 568

      -- Attribute: Ieee_Std_Logic_Arith_Add_Uns_Log_Slv = 569

      -- Attribute: Ieee_Std_Logic_Arith_Add_Log_Uns_Slv = 570

      -- Attribute: Ieee_Std_Logic_Arith_Add_Sgn_Log_Slv = 571

      -- Attribute: Ieee_Std_Logic_Arith_Add_Log_Sgn_Slv = 572

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Uns_Uns_Uns = 573

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Sgn = 574

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Sgn = 575

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Sgn = 576

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Uns_Int_Uns = 577

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Int_Uns_Uns = 578

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Sgn_Int_Sgn = 579

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Int_Sgn_Sgn = 580

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Uns_Log_Uns = 581

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Log_Uns_Uns = 582

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Sgn_Log_Sgn = 583

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Log_Sgn_Sgn = 584

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Uns_Uns_Slv = 585

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Sgn_Sgn_Slv = 586

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Uns_Sgn_Slv = 587

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Sgn_Uns_Slv = 588

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Uns_Int_Slv = 589

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Int_Uns_Slv = 590

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Sgn_Int_Slv = 591

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Int_Sgn_Slv = 592

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Uns_Log_Slv = 593

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Log_Uns_Slv = 594

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Sgn_Log_Slv = 595

      -- Attribute: Ieee_Std_Logic_Arith_Sub_Log_Sgn_Slv = 596

      -- Attribute: Ieee_Std_Logic_Arith_Lt_Uns_Uns = 597

      -- Attribute: Ieee_Std_Logic_Arith_Lt_Sgn_Sgn = 598

      -- Attribute: Ieee_Std_Logic_Arith_Lt_Uns_Sgn = 599

      -- Attribute: Ieee_Std_Logic_Arith_Lt_Sgn_Uns = 600

      -- Attribute: Ieee_Std_Logic_Arith_Lt_Uns_Int = 601

      -- Attribute: Ieee_Std_Logic_Arith_Lt_Int_Uns = 602

      -- Attribute: Ieee_Std_Logic_Arith_Lt_Sgn_Int = 603

      -- Attribute: Ieee_Std_Logic_Arith_Lt_Int_Sgn = 604

      -- Attribute: Ieee_Std_Logic_Arith_Le_Uns_Uns = 605

      -- Attribute: Ieee_Std_Logic_Arith_Le_Sgn_Sgn = 606

      -- Attribute: Ieee_Std_Logic_Arith_Le_Uns_Sgn = 607

      -- Attribute: Ieee_Std_Logic_Arith_Le_Sgn_Uns = 608

      -- Attribute: Ieee_Std_Logic_Arith_Le_Uns_Int = 609

      -- Attribute: Ieee_Std_Logic_Arith_Le_Int_Uns = 610

      -- Attribute: Ieee_Std_Logic_Arith_Le_Sgn_Int = 611

      -- Attribute: Ieee_Std_Logic_Arith_Le_Int_Sgn = 612

      -- Attribute: Ieee_Std_Logic_Arith_Gt_Uns_Uns = 613

      -- Attribute: Ieee_Std_Logic_Arith_Gt_Sgn_Sgn = 614

      -- Attribute: Ieee_Std_Logic_Arith_Gt_Uns_Sgn = 615

      -- Attribute: Ieee_Std_Logic_Arith_Gt_Sgn_Uns = 616

      -- Attribute: Ieee_Std_Logic_Arith_Gt_Uns_Int = 617

      -- Attribute: Ieee_Std_Logic_Arith_Gt_Int_Uns = 618

      -- Attribute: Ieee_Std_Logic_Arith_Gt_Sgn_Int = 619

      -- Attribute: Ieee_Std_Logic_Arith_Gt_Int_Sgn = 620

      -- Attribute: Ieee_Std_Logic_Arith_Ge_Uns_Uns = 621

      -- Attribute: Ieee_Std_Logic_Arith_Ge_Sgn_Sgn = 622

      -- Attribute: Ieee_Std_Logic_Arith_Ge_Uns_Sgn = 623

      -- Attribute: Ieee_Std_Logic_Arith_Ge_Sgn_Uns = 624

      -- Attribute: Ieee_Std_Logic_Arith_Ge_Uns_Int = 625

      -- Attribute: Ieee_Std_Logic_Arith_Ge_Int_Uns = 626

      -- Attribute: Ieee_Std_Logic_Arith_Ge_Sgn_Int = 627

      -- Attribute: Ieee_Std_Logic_Arith_Ge_Int_Sgn = 628

      -- Attribute: Ieee_Std_Logic_Arith_Eq_Uns_Uns = 629

      -- Attribute: Ieee_Std_Logic_Arith_Eq_Sgn_Sgn = 630

      -- Attribute: Ieee_Std_Logic_Arith_Eq_Uns_Sgn = 631

      -- Attribute: Ieee_Std_Logic_Arith_Eq_Sgn_Uns = 632

      -- Attribute: Ieee_Std_Logic_Arith_Eq_Uns_Int = 633

      -- Attribute: Ieee_Std_Logic_Arith_Eq_Int_Uns = 634

      -- Attribute: Ieee_Std_Logic_Arith_Eq_Sgn_Int = 635

      -- Attribute: Ieee_Std_Logic_Arith_Eq_Int_Sgn = 636

      -- Attribute: Ieee_Std_Logic_Arith_Ne_Uns_Uns = 637

      -- Attribute: Ieee_Std_Logic_Arith_Ne_Sgn_Sgn = 638

      -- Attribute: Ieee_Std_Logic_Arith_Ne_Uns_Sgn = 639

      -- Attribute: Ieee_Std_Logic_Arith_Ne_Sgn_Uns = 640

      -- Attribute: Ieee_Std_Logic_Arith_Ne_Uns_Int = 641

      -- Attribute: Ieee_Std_Logic_Arith_Ne_Int_Uns = 642

      -- Attribute: Ieee_Std_Logic_Arith_Ne_Sgn_Int = 643

      -- Attribute: Ieee_Std_Logic_Arith_Ne_Int_Sgn = 644

      -- Attribute: Ieee_Std_Logic_Misc_And_Reduce_Slv = 645

      -- Attribute: Ieee_Std_Logic_Misc_And_Reduce_Suv = 646

      -- Attribute: Ieee_Std_Logic_Misc_Nand_Reduce_Slv = 647

      -- Attribute: Ieee_Std_Logic_Misc_Nand_Reduce_Suv = 648

      -- Attribute: Ieee_Std_Logic_Misc_Or_Reduce_Slv = 649

      -- Attribute: Ieee_Std_Logic_Misc_Or_Reduce_Suv = 650

      -- Attribute: Ieee_Std_Logic_Misc_Nor_Reduce_Slv = 651

      -- Attribute: Ieee_Std_Logic_Misc_Nor_Reduce_Suv = 652

      -- Attribute: Ieee_Std_Logic_Misc_Xor_Reduce_Slv = 653

      -- Attribute: Ieee_Std_Logic_Misc_Xor_Reduce_Suv = 654

      -- Attribute: Ieee_Std_Logic_Misc_Xnor_Reduce_Slv = 655

      -- Attribute: Ieee_Std_Logic_Misc_Xnor_Reduce_Suv = 656

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Kind (node)

     Get node kind.

     Return type: ~IirKind

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Location (node)

     Return type: ~LocationType

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_First_Design_Unit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_First_Design_Unit (obj,
          value)

     Return type: None(1)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Last_Design_Unit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Last_Design_Unit (obj,
          value)

     Return type: None(2)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Library_Declaration (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Library_Declaration (obj,
          value)

     Return type: None(3)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_File_Checksum (obj)

     Return type: ~FileChecksumId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_File_Checksum (obj, value)

     Return type: None(4)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Analysis_Time_Stamp (obj)

     Return type: ~TimeStampId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Analysis_Time_Stamp (obj,
          value)

     Return type: None(5)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_File_Source (obj)

     Return type: ~SourceFileEntry

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_File_Source (obj,
          value)

     Return type: None(6)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Library (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Library (obj, value)

     Return type: None(7)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_File_Dependence_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_File_Dependence_List (obj,
          value)

     Return type: None(8)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_File_Filename (obj)

     Return type: ~NameId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_File_Filename (obj,
          value)

     Return type: None(9)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_File_Directory (obj)

     Return type: ~NameId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_File_Directory (obj,
          value)

     Return type: None(10)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_File (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_File (obj, value)

     Return type: None(11)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_File_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_File_Chain (obj,
          value)

     Return type: None(12)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Library_Directory (obj)

     Return type: ~NameId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Library_Directory (obj,
          value)

     Return type: None(13)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Date (obj)

     Return type: ~DateType

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Date (obj, value)

     Return type: None(14)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Context_Items (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Context_Items (obj, value)

     Return type: None(15)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Dependence_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Dependence_List (obj, value)

     Return type: None(16)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Analysis_Checks_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Analysis_Checks_List (obj,
          value)

     Return type: None(17)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Date_State (obj)

     Return type: DateStateType.

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Date_State (obj, value)

     Return type: None(18)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Guarded_Target_State (obj)

     Return type: TriStateType.

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Guarded_Target_State (obj,
          value)

     Return type: None(19)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Library_Unit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Library_Unit (obj, value)

     Return type: None(20)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Hash_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Hash_Chain (obj, value)

     Return type: None(21)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_Unit_Source_Pos (obj)

     Return type: ~SourcePtr

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_Unit_Source_Pos (obj,
          value)

     Return type: None(22)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_Unit_Source_Line
          (obj)

     Return type: ~Int32

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_Unit_Source_Line
          (obj, value)

     Return type: None(23)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_Unit_Source_Col (obj)

     Return type: ~Int32

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_Unit_Source_Col (obj,
          value)

     Return type: None(24)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Value (obj)

     Return type: ~Int64

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Value (obj, value)

     Return type: None(25)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Enum_Pos (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Enum_Pos (obj, value)

     Return type: None(26)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Physical_Literal (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Physical_Literal (obj,
          value)

     Return type: None(27)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Fp_Value (obj)

     Return type: ~Fp64

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Fp_Value (obj, value)

     Return type: None(28)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Simple_Aggregate_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Simple_Aggregate_List (obj,
          value)

     Return type: None(29)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_String8_Id (obj)

     Return type: ~String8Id

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_String8_Id (obj, value)

     Return type: None(30)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_String_Length (obj)

     Return type: ~Int32

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_String_Length (obj, value)

     Return type: None(31)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Bit_String_Base (obj)

     Return type: NumberBaseType.

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Bit_String_Base (obj, value)

     Return type: None(32)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Signed (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Signed (obj, value)

     Return type: None(33)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Sign (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Sign (obj, value)

     Return type: None(34)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Length (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Length (obj, value)

     Return type: None(35)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Literal_Length (obj)

     Return type: ~Int32

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Literal_Length (obj, value)

     Return type: None(36)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Literal_Origin (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Literal_Origin (obj, value)

     Return type: None(37)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Range_Origin (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Range_Origin (obj, value)

     Return type: None(38)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Literal_Subtype (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Literal_Subtype (obj, value)

     Return type: None(39)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Allocator_Subtype (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Allocator_Subtype (obj,
          value)

     Return type: None(40)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Entity_Class (obj)

     Return type: Tok.

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Entity_Class (obj, value)

     Return type: None(41)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Entity_Name_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Entity_Name_List (obj,
          value)

     Return type: None(42)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Attribute_Designator (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Attribute_Designator (obj,
          value)

     Return type: None(43)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Get_Attribute_Specification_Chain
          (obj)

     Return type: ~Iir

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Set_Attribute_Specification_Chain
          (obj, value)

     Return type: None(44)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Attribute_Specification
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Attribute_Specification
          (obj, value)

     Return type: None(45)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Static_Attribute_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Static_Attribute_Flag (obj,
          value)

     Return type: None(46)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Signal_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Signal_List (obj, value)

     Return type: None(47)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Quantity_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Quantity_List (obj, value)

     Return type: None(48)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Designated_Entity (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Designated_Entity (obj,
          value)

     Return type: None(49)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Formal (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Formal (obj, value)

     Return type: None(50)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Actual (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Actual (obj, value)

     Return type: None(51)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Actual_Conversion (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Actual_Conversion (obj,
          value)

     Return type: None(52)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Formal_Conversion (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Formal_Conversion (obj,
          value)

     Return type: None(53)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Whole_Association_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Whole_Association_Flag (obj,
          value)

     Return type: None(54)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Collapse_Signal_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Collapse_Signal_Flag (obj,
          value)

     Return type: None(55)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Artificial_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Artificial_Flag (obj, value)

     Return type: None(56)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Open_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Open_Flag (obj, value)

     Return type: None(57)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_After_Drivers_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_After_Drivers_Flag (obj,
          value)

     Return type: None(58)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_We_Value (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_We_Value (obj, value)

     Return type: None(59)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Time (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Time (obj, value)

     Return type: None(60)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Associated_Expr (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Associated_Expr (obj, value)

     Return type: None(61)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Associated_Block (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Associated_Block (obj,
          value)

     Return type: None(62)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Associated_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Associated_Chain (obj,
          value)

     Return type: None(63)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Choice_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Choice_Name (obj, value)

     Return type: None(64)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Choice_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Choice_Expression (obj,
          value)

     Return type: None(65)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Choice_Range (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Choice_Range (obj, value)

     Return type: None(66)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Same_Alternative_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Same_Alternative_Flag (obj,
          value)

     Return type: None(67)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Element_Type_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Element_Type_Flag (obj,
          value)

     Return type: None(68)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Architecture (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Architecture (obj, value)

     Return type: None(69)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Block_Specification (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Block_Specification (obj,
          value)

     Return type: None(70)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Prev_Block_Configuration
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Prev_Block_Configuration
          (obj, value)

     Return type: None(71)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Configuration_Item_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Configuration_Item_Chain
          (obj, value)

     Return type: None(72)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Attribute_Value_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Attribute_Value_Chain (obj,
          value)

     Return type: None(73)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Spec_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Spec_Chain (obj, value)

     Return type: None(74)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Value_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Value_Chain (obj, value)

     Return type: None(75)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Attribute_Value_Spec_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Attribute_Value_Spec_Chain
          (obj, value)

     Return type: None(76)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Entity_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Entity_Name (obj, value)

     Return type: None(77)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Package (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Package (obj, value)

     Return type: None(78)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Package_Body (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Package_Body (obj, value)

     Return type: None(79)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Instance_Package_Body (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Instance_Package_Body (obj,
          value)

     Return type: None(80)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Need_Body (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Need_Body (obj, value)

     Return type: None(81)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Macro_Expanded_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Macro_Expanded_Flag (obj,
          value)

     Return type: None(82)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Need_Instance_Bodies (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Need_Instance_Bodies (obj,
          value)

     Return type: None(83)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Hierarchical_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Hierarchical_Name (obj,
          value)

     Return type: None(84)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Inherit_Spec_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Inherit_Spec_Chain (obj,
          value)

     Return type: None(85)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Vunit_Item_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Vunit_Item_Chain (obj,
          value)

     Return type: None(86)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Bound_Vunit_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Bound_Vunit_Chain (obj,
          value)

     Return type: None(87)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Get_Verification_Block_Configuration
          (obj)

     Return type: ~Iir

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Set_Verification_Block_Configuration
          (obj, value)

     Return type: None(88)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Block_Configuration (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Block_Configuration (obj,
          value)

     Return type: None(89)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Concurrent_Statement_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Concurrent_Statement_Chain
          (obj, value)

     Return type: None(90)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Chain (obj, value)

     Return type: None(91)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Port_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Port_Chain (obj, value)

     Return type: None(92)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Generic_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Generic_Chain (obj, value)

     Return type: None(93)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Type (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Type (obj, value)

     Return type: None(94)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subtype_Indication (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subtype_Indication (obj,
          value)

     Return type: None(95)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Discrete_Range (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Discrete_Range (obj, value)

     Return type: None(96)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Type_Definition (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Type_Definition (obj, value)

     Return type: None(97)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subtype_Definition (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subtype_Definition (obj,
          value)

     Return type: None(98)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Incomplete_Type_Declaration
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Incomplete_Type_Declaration
          (obj, value)

     Return type: None(99)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Interface_Type_Subprograms
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Interface_Type_Subprograms
          (obj, value)

     Return type: None(100)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Nature_Definition (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Nature_Definition (obj,
          value)

     Return type: None(101)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Nature (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Nature (obj, value)

     Return type: None(102)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subnature_Indication (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subnature_Indication (obj,
          value)

     Return type: None(103)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Mode (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Mode (obj, value)

     Return type: None(104)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Guarded_Signal_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Guarded_Signal_Flag (obj,
          value)

     Return type: None(105)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Signal_Kind (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Signal_Kind (obj, value)

     Return type: None(106)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Base_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Base_Name (obj, value)

     Return type: None(107)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Interface_Declaration_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Interface_Declaration_Chain
          (obj, value)

     Return type: None(108)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subprogram_Specification
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subprogram_Specification
          (obj, value)

     Return type: None(109)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Sequential_Statement_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Sequential_Statement_Chain
          (obj, value)

     Return type: None(110)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Simultaneous_Statement_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Simultaneous_Statement_Chain
          (obj, value)

     Return type: None(111)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subprogram_Body (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subprogram_Body (obj, value)

     Return type: None(112)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Overload_Number (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Overload_Number (obj, value)

     Return type: None(113)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subprogram_Depth (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subprogram_Depth (obj,
          value)

     Return type: None(114)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subprogram_Hash (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subprogram_Hash (obj, value)

     Return type: None(115)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Impure_Depth (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Impure_Depth (obj, value)

     Return type: None(116)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Return_Type (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Return_Type (obj, value)

     Return type: None(117)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Implicit_Definition (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Implicit_Definition (obj,
          value)

     Return type: None(118)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Get_Uninstantiated_Subprogram_Name
          (obj)

     Return type: ~Iir

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Set_Uninstantiated_Subprogram_Name
          (obj, value)

     Return type: None(119)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Default_Value (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Default_Value (obj, value)

     Return type: None(120)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Deferred_Declaration (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Deferred_Declaration (obj,
          value)

     Return type: None(121)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Deferred_Declaration_Flag
          (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Deferred_Declaration_Flag
          (obj, value)

     Return type: None(122)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Shared_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Shared_Flag (obj, value)

     Return type: None(123)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Design_Unit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Design_Unit (obj, value)

     Return type: None(124)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Block_Statement (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Block_Statement (obj, value)

     Return type: None(125)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Signal_Driver (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Signal_Driver (obj, value)

     Return type: None(126)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Declaration_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Declaration_Chain (obj,
          value)

     Return type: None(127)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_File_Logical_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_File_Logical_Name (obj,
          value)

     Return type: None(128)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_File_Open_Kind (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_File_Open_Kind (obj, value)

     Return type: None(129)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Element_Position (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Element_Position (obj,
          value)

     Return type: None(130)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Use_Clause_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Use_Clause_Chain (obj,
          value)

     Return type: None(131)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Context_Reference_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Context_Reference_Chain
          (obj, value)

     Return type: None(132)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Selected_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Selected_Name (obj, value)

     Return type: None(133)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Type_Declarator (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Type_Declarator (obj, value)

     Return type: None(134)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Complete_Type_Definition
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Complete_Type_Definition
          (obj, value)

     Return type: None(135)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Incomplete_Type_Ref_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Incomplete_Type_Ref_Chain
          (obj, value)

     Return type: None(136)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Associated_Type (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Associated_Type (obj, value)

     Return type: None(137)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Enumeration_Literal_List
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Enumeration_Literal_List
          (obj, value)

     Return type: None(138)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Entity_Class_Entry_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Entity_Class_Entry_Chain
          (obj, value)

     Return type: None(139)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Group_Constituent_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Group_Constituent_List (obj,
          value)

     Return type: None(140)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Unit_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Unit_Chain (obj, value)

     Return type: None(141)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Primary_Unit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Primary_Unit (obj, value)

     Return type: None(142)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Identifier (obj)

     Return type: ~NameId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Identifier (obj, value)

     Return type: None(143)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Label (obj)

     Return type: ~NameId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Label (obj, value)

     Return type: None(144)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Visible_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Visible_Flag (obj, value)

     Return type: None(145)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Range_Constraint (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Range_Constraint (obj,
          value)

     Return type: None(146)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Direction (obj)

     Return type: DirectionType.

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Direction (obj, value)

     Return type: None(147)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Left_Limit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Left_Limit (obj, value)

     Return type: None(148)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Right_Limit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Right_Limit (obj, value)

     Return type: None(149)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Left_Limit_Expr (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Left_Limit_Expr (obj, value)

     Return type: None(150)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Right_Limit_Expr (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Right_Limit_Expr (obj,
          value)

     Return type: None(151)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Parent_Type (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Parent_Type (obj, value)

     Return type: None(152)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Simple_Nature (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Simple_Nature (obj, value)

     Return type: None(153)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Base_Nature (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Base_Nature (obj, value)

     Return type: None(154)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Resolution_Indication (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Resolution_Indication (obj,
          value)

     Return type: None(155)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Get_Record_Element_Resolution_Chain
          (obj)

     Return type: ~Iir

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Set_Record_Element_Resolution_Chain
          (obj, value)

     Return type: None(156)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Tolerance (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Tolerance (obj, value)

     Return type: None(157)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Plus_Terminal_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Plus_Terminal_Name (obj,
          value)

     Return type: None(158)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Minus_Terminal_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Minus_Terminal_Name (obj,
          value)

     Return type: None(159)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Plus_Terminal (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Plus_Terminal (obj, value)

     Return type: None(160)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Minus_Terminal (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Minus_Terminal (obj, value)

     Return type: None(161)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Magnitude_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Magnitude_Expression (obj,
          value)

     Return type: None(162)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Phase_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Phase_Expression (obj,
          value)

     Return type: None(163)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Power_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Power_Expression (obj,
          value)

     Return type: None(164)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Simultaneous_Left (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Simultaneous_Left (obj,
          value)

     Return type: None(165)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Simultaneous_Right (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Simultaneous_Right (obj,
          value)

     Return type: None(166)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Text_File_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Text_File_Flag (obj, value)

     Return type: None(167)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Only_Characters_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Only_Characters_Flag (obj,
          value)

     Return type: None(168)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Is_Character_Type (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Is_Character_Type (obj,
          value)

     Return type: None(169)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Nature_Staticness (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Nature_Staticness (obj,
          value)

     Return type: None(170)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Type_Staticness (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Type_Staticness (obj, value)

     Return type: None(171)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Constraint_State (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Constraint_State (obj,
          value)

     Return type: None(172)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Index_Subtype_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Index_Subtype_List (obj,
          value)

     Return type: None(173)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Get_Index_Subtype_Definition_List
          (obj)

     Return type: ~Iir

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Set_Index_Subtype_Definition_List
          (obj, value)

     Return type: None(174)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Element_Subtype_Indication
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Element_Subtype_Indication
          (obj, value)

     Return type: None(175)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Element_Subtype (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Element_Subtype (obj, value)

     Return type: None(176)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Element_Subnature_Indication
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Element_Subnature_Indication
          (obj, value)

     Return type: None(177)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Element_Subnature (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Element_Subnature (obj,
          value)

     Return type: None(178)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Index_Constraint_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Index_Constraint_List (obj,
          value)

     Return type: None(179)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Array_Element_Constraint
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Array_Element_Constraint
          (obj, value)

     Return type: None(180)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Array_Constraint_Flag
          (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Array_Constraint_Flag
          (obj, value)

     Return type: None(181)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Element_Constraint_Flag
          (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Element_Constraint_Flag
          (obj, value)

     Return type: None(182)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Elements_Declaration_List
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Elements_Declaration_List
          (obj, value)

     Return type: None(183)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Owned_Elements_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Owned_Elements_Chain (obj,
          value)

     Return type: None(184)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Designated_Type (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Designated_Type (obj, value)

     Return type: None(185)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Get_Designated_Subtype_Indication
          (obj)

     Return type: ~Iir

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Set_Designated_Subtype_Indication
          (obj, value)

     Return type: None(186)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Index_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Index_List (obj, value)

     Return type: None(187)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Reference (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Reference (obj, value)

     Return type: None(188)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Nature_Declarator (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Nature_Declarator (obj,
          value)

     Return type: None(189)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Across_Type_Mark (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Across_Type_Mark (obj,
          value)

     Return type: None(190)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Through_Type_Mark (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Through_Type_Mark (obj,
          value)

     Return type: None(191)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Across_Type_Definition (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Across_Type_Definition (obj,
          value)

     Return type: None(192)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Through_Type_Definition
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Through_Type_Definition
          (obj, value)

     Return type: None(193)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Across_Type (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Across_Type (obj, value)

     Return type: None(194)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Through_Type (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Through_Type (obj, value)

     Return type: None(195)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Target (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Target (obj, value)

     Return type: None(196)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Waveform_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Waveform_Chain (obj, value)

     Return type: None(197)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Guard (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Guard (obj, value)

     Return type: None(198)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Delay_Mechanism (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Delay_Mechanism (obj, value)

     Return type: None(199)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Reject_Time_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Reject_Time_Expression (obj,
          value)

     Return type: None(200)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Force_Mode (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Force_Mode (obj, value)

     Return type: None(201)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Force_Mode (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Force_Mode (obj, value)

     Return type: None(202)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Sensitivity_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Sensitivity_List (obj,
          value)

     Return type: None(203)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Process_Origin (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Process_Origin (obj, value)

     Return type: None(204)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Package_Origin (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Package_Origin (obj, value)

     Return type: None(205)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Condition_Clause (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Condition_Clause (obj,
          value)

     Return type: None(206)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Break_Element (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Break_Element (obj, value)

     Return type: None(207)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Selector_Quantity (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Selector_Quantity (obj,
          value)

     Return type: None(208)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Break_Quantity (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Break_Quantity (obj, value)

     Return type: None(209)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Timeout_Clause (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Timeout_Clause (obj, value)

     Return type: None(210)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Postponed_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Postponed_Flag (obj, value)

     Return type: None(211)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Callees_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Callees_List (obj, value)

     Return type: None(212)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Passive_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Passive_Flag (obj, value)

     Return type: None(213)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Resolution_Function_Flag
          (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Resolution_Function_Flag
          (obj, value)

     Return type: None(214)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Wait_State (obj)

     Return type: TriStateType.

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Wait_State (obj, value)

     Return type: None(215)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_All_Sensitized_State (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_All_Sensitized_State (obj,
          value)

     Return type: None(216)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Seen_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Seen_Flag (obj, value)

     Return type: None(217)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Pure_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Pure_Flag (obj, value)

     Return type: None(218)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Foreign_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Foreign_Flag (obj, value)

     Return type: None(219)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Resolved_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Resolved_Flag (obj, value)

     Return type: None(220)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Signal_Type_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Signal_Type_Flag (obj,
          value)

     Return type: None(221)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Signal_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Signal_Flag (obj, value)

     Return type: None(222)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Purity_State (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Purity_State (obj, value)

     Return type: None(223)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Elab_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Elab_Flag (obj, value)

     Return type: None(224)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Vendor_Library_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Vendor_Library_Flag (obj,
          value)

     Return type: None(225)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Configuration_Mark_Flag
          (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Configuration_Mark_Flag
          (obj, value)

     Return type: None(226)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Configuration_Done_Flag
          (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Configuration_Done_Flag
          (obj, value)

     Return type: None(227)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Index_Constraint_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Index_Constraint_Flag (obj,
          value)

     Return type: None(228)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Hide_Implicit_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Hide_Implicit_Flag (obj,
          value)

     Return type: None(229)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Assertion_Condition (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Assertion_Condition (obj,
          value)

     Return type: None(230)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Report_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Report_Expression (obj,
          value)

     Return type: None(231)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Severity_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Severity_Expression (obj,
          value)

     Return type: None(232)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Instantiated_Unit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Instantiated_Unit (obj,
          value)

     Return type: None(233)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Generic_Map_Aspect_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Generic_Map_Aspect_Chain
          (obj, value)

     Return type: None(234)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Port_Map_Aspect_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Port_Map_Aspect_Chain (obj,
          value)

     Return type: None(235)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Configuration_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Configuration_Name (obj,
          value)

     Return type: None(236)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Component_Configuration
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Component_Configuration
          (obj, value)

     Return type: None(237)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Configuration_Specification
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Configuration_Specification
          (obj, value)

     Return type: None(238)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Default_Binding_Indication
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Default_Binding_Indication
          (obj, value)

     Return type: None(239)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Get_Default_Configuration_Declaration
          (obj)

     Return type: ~Iir

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Set_Default_Configuration_Declaration
          (obj, value)

     Return type: None(240)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Expression (obj, value)

     Return type: None(241)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Conditional_Expression_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Conditional_Expression_Chain
          (obj, value)

     Return type: None(242)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Allocator_Designated_Type
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Allocator_Designated_Type
          (obj, value)

     Return type: None(243)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Selected_Waveform_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Selected_Waveform_Chain
          (obj, value)

     Return type: None(244)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Conditional_Waveform_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Conditional_Waveform_Chain
          (obj, value)

     Return type: None(245)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Guard_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Guard_Expression (obj,
          value)

     Return type: None(246)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Guard_Decl (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Guard_Decl (obj, value)

     Return type: None(247)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Guard_Sensitivity_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Guard_Sensitivity_List (obj,
          value)

     Return type: None(248)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Signal_Attribute_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Signal_Attribute_Chain (obj,
          value)

     Return type: None(249)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Block_Block_Configuration
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Block_Block_Configuration
          (obj, value)

     Return type: None(250)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Package_Header (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Package_Header (obj, value)

     Return type: None(251)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Block_Header (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Block_Header (obj, value)

     Return type: None(252)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Uninstantiated_Package_Name
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Uninstantiated_Package_Name
          (obj, value)

     Return type: None(253)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Uninstantiated_Package_Decl
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Uninstantiated_Package_Decl
          (obj, value)

     Return type: None(254)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Instance_Source_File (obj)

     Return type: ~SourceFileEntry

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Instance_Source_File (obj,
          value)

     Return type: None(255)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Generate_Block_Configuration
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Generate_Block_Configuration
          (obj, value)

     Return type: None(256)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Generate_Statement_Body
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Generate_Statement_Body
          (obj, value)

     Return type: None(257)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Alternative_Label (obj)

     Return type: ~NameId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Alternative_Label (obj,
          value)

     Return type: None(258)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Generate_Else_Clause (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Generate_Else_Clause (obj,
          value)

     Return type: None(259)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Condition (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Condition (obj, value)

     Return type: None(260)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Else_Clause (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Else_Clause (obj, value)

     Return type: None(261)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Parameter_Specification
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Parameter_Specification
          (obj, value)

     Return type: None(262)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Parent (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Parent (obj, value)

     Return type: None(263)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Loop_Label (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Loop_Label (obj, value)

     Return type: None(264)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Exit_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Exit_Flag (obj, value)

     Return type: None(265)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Next_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Next_Flag (obj, value)

     Return type: None(266)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Component_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Component_Name (obj, value)

     Return type: None(267)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Instantiation_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Instantiation_List (obj,
          value)

     Return type: None(268)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Entity_Aspect (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Entity_Aspect (obj, value)

     Return type: None(269)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Default_Entity_Aspect (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Default_Entity_Aspect (obj,
          value)

     Return type: None(270)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Binding_Indication (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Binding_Indication (obj,
          value)

     Return type: None(271)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Named_Entity (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Named_Entity (obj, value)

     Return type: None(272)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Referenced_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Referenced_Name (obj, value)

     Return type: None(273)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Expr_Staticness (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Expr_Staticness (obj, value)

     Return type: None(274)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Scalar_Size (obj)

     Return type: ScalarSize.

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Scalar_Size (obj, value)

     Return type: None(275)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Error_Origin (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Error_Origin (obj, value)

     Return type: None(276)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Operand (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Operand (obj, value)

     Return type: None(277)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Left (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Left (obj, value)

     Return type: None(278)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Right (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Right (obj, value)

     Return type: None(279)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Unit_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Unit_Name (obj, value)

     Return type: None(280)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Name (obj, value)

     Return type: None(281)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Group_Template_Name (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Group_Template_Name (obj,
          value)

     Return type: None(282)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Name_Staticness (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Name_Staticness (obj, value)

     Return type: None(283)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Prefix (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Prefix (obj, value)

     Return type: None(284)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Signature_Prefix (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Signature_Prefix (obj,
          value)

     Return type: None(285)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_External_Pathname (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_External_Pathname (obj,
          value)

     Return type: None(286)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Pathname_Suffix (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Pathname_Suffix (obj, value)

     Return type: None(287)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Pathname_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Pathname_Expression (obj,
          value)

     Return type: None(288)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_In_Formal_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_In_Formal_Flag (obj, value)

     Return type: None(289)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Slice_Subtype (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Slice_Subtype (obj, value)

     Return type: None(290)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Suffix (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Suffix (obj, value)

     Return type: None(291)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Index_Subtype (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Index_Subtype (obj, value)

     Return type: None(292)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Parameter (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Parameter (obj, value)

     Return type: None(293)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Parameter_2 (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Parameter_2 (obj, value)

     Return type: None(294)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Parameter_3 (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Parameter_3 (obj, value)

     Return type: None(295)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Parameter_4 (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Parameter_4 (obj, value)

     Return type: None(296)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Attr_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Attr_Chain (obj, value)

     Return type: None(297)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Signal_Attribute_Declaration
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Signal_Attribute_Declaration
          (obj, value)

     Return type: None(298)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Actual_Type (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Actual_Type (obj, value)

     Return type: None(299)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Actual_Type_Definition (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Actual_Type_Definition (obj,
          value)

     Return type: None(300)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Association_Chain (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Association_Chain (obj,
          value)

     Return type: None(301)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Individual_Association_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Individual_Association_Chain
          (obj, value)

     Return type: None(302)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subprogram_Association_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subprogram_Association_Chain
          (obj, value)

     Return type: None(303)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Aggregate_Info (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Aggregate_Info (obj, value)

     Return type: None(304)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Sub_Aggregate_Info (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Sub_Aggregate_Info (obj,
          value)

     Return type: None(305)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Aggr_Dynamic_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Aggr_Dynamic_Flag (obj,
          value)

     Return type: None(306)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Aggr_Min_Length (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Aggr_Min_Length (obj, value)

     Return type: None(307)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Aggr_Low_Limit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Aggr_Low_Limit (obj, value)

     Return type: None(308)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Aggr_High_Limit (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Aggr_High_Limit (obj, value)

     Return type: None(309)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Aggr_Others_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Aggr_Others_Flag (obj,
          value)

     Return type: None(310)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Aggr_Named_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Aggr_Named_Flag (obj, value)

     Return type: None(311)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Aggregate_Expand_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Aggregate_Expand_Flag (obj,
          value)

     Return type: None(312)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Association_Choices_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Association_Choices_Chain
          (obj, value)

     Return type: None(313)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Get_Case_Statement_Alternative_Chain
          (obj)

     Return type: ~Iir

 -- Function:
          pyGHDL.libghdl.vhdl.nodes.Set_Case_Statement_Alternative_Chain
          (obj, value)

     Return type: None(314)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Choice_Staticness (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Choice_Staticness (obj,
          value)

     Return type: None(315)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Procedure_Call (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Procedure_Call (obj, value)

     Return type: None(316)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Implementation (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Implementation (obj, value)

     Return type: None(317)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Parameter_Association_Chain
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Parameter_Association_Chain
          (obj, value)

     Return type: None(318)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Method_Object (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Method_Object (obj, value)

     Return type: None(319)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subtype_Type_Mark (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subtype_Type_Mark (obj,
          value)

     Return type: None(320)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Subnature_Nature_Mark (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Subnature_Nature_Mark (obj,
          value)

     Return type: None(321)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Type_Conversion_Subtype
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Type_Conversion_Subtype
          (obj, value)

     Return type: None(322)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Type_Mark (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Type_Mark (obj, value)

     Return type: None(323)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_File_Type_Mark (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_File_Type_Mark (obj, value)

     Return type: None(324)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Return_Type_Mark (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Return_Type_Mark (obj,
          value)

     Return type: None(325)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Disconnect_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Disconnect_Flag (obj,
          value)

     Return type: None(326)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Active_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Active_Flag (obj, value)

     Return type: None(327)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Is_Within_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Is_Within_Flag (obj, value)

     Return type: None(328)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Type_Marks_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Type_Marks_List (obj, value)

     Return type: None(329)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Implicit_Alias_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Implicit_Alias_Flag (obj,
          value)

     Return type: None(330)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Alias_Signature (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Alias_Signature (obj, value)

     Return type: None(331)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Attribute_Signature (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Attribute_Signature (obj,
          value)

     Return type: None(332)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Overload_List (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Overload_List (obj, value)

     Return type: None(333)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Simple_Name_Identifier (obj)

     Return type: ~NameId

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Simple_Name_Identifier (obj,
          value)

     Return type: None(334)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Simple_Name_Subtype (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Simple_Name_Subtype (obj,
          value)

     Return type: None(335)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Protected_Type_Body (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Protected_Type_Body (obj,
          value)

     Return type: None(336)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Protected_Type_Declaration
          (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Protected_Type_Declaration
          (obj, value)

     Return type: None(337)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Use_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Use_Flag (obj, value)

     Return type: None(338)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_End_Has_Reserved_Id (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_End_Has_Reserved_Id (obj,
          value)

     Return type: None(339)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_End_Has_Identifier (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_End_Has_Identifier (obj,
          value)

     Return type: None(340)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_End_Has_Postponed (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_End_Has_Postponed (obj,
          value)

     Return type: None(341)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Label (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Label (obj, value)

     Return type: None(342)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Begin (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Begin (obj, value)

     Return type: None(343)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_End (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_End (obj, value)

     Return type: None(344)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Is (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Is (obj, value)

     Return type: None(345)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Pure (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Pure (obj, value)

     Return type: None(346)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Body (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Body (obj, value)

     Return type: None(347)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Parameter (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Parameter (obj, value)

     Return type: None(348)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Component (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Component (obj, value)

     Return type: None(349)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Identifier_List (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Identifier_List (obj,
          value)

     Return type: None(350)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Mode (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Mode (obj, value)

     Return type: None(351)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Class (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Class (obj, value)

     Return type: None(352)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Has_Delay_Mechanism (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Has_Delay_Mechanism (obj,
          value)

     Return type: None(353)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Suspend_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Suspend_Flag (obj, value)

     Return type: None(354)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Is_Ref (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Is_Ref (obj, value)

     Return type: None(355)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Is_Forward_Ref (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Is_Forward_Ref (obj, value)

     Return type: None(356)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Psl_Property (obj)

     Return type: ~PSLNode

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Psl_Property (obj, value)

     Return type: None(357)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Psl_Sequence (obj)

     Return type: ~PSLNode

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Psl_Sequence (obj, value)

     Return type: None(358)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Psl_Declaration (obj)

     Return type: ~PSLNode

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Psl_Declaration (obj, value)

     Return type: None(359)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Psl_Expression (obj)

     Return type: ~PSLNode

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Psl_Expression (obj, value)

     Return type: None(360)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Psl_Boolean (obj)

     Return type: ~PSLNode

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Psl_Boolean (obj, value)

     Return type: None(361)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_PSL_Clock (obj)

     Return type: ~PSLNode

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_PSL_Clock (obj, value)

     Return type: None(362)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_PSL_NFA (obj)

     Return type: ~PSLNFA

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_PSL_NFA (obj, value)

     Return type: None(363)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_PSL_Nbr_States (obj)

     Return type: ~Int32

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_PSL_Nbr_States (obj, value)

     Return type: None(364)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_PSL_Clock_Sensitivity (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_PSL_Clock_Sensitivity (obj,
          value)

     Return type: None(365)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_PSL_EOS_Flag (obj)

     Return type: ~Boolean

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_PSL_EOS_Flag (obj, value)

     Return type: None(366)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Count_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Count_Expression (obj,
          value)

     Return type: None(367)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Clock_Expression (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Clock_Expression (obj,
          value)

     Return type: None(368)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Default_Clock (obj)

     Return type: ~Iir

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Default_Clock (obj, value)

     Return type: None(369)

 -- Function: pyGHDL.libghdl.vhdl.nodes.Get_Foreign_Node (obj)

     Return type: ~Int32

 -- Function: pyGHDL.libghdl.vhdl.nodes.Set_Foreign_Node (obj, value)

     Return type: None(370)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/constants.html#None

   (2) https://docs.python.org/3.6/library/constants.html#None

   (3) https://docs.python.org/3.6/library/constants.html#None

   (4) https://docs.python.org/3.6/library/constants.html#None

   (5) https://docs.python.org/3.6/library/constants.html#None

   (6) https://docs.python.org/3.6/library/constants.html#None

   (7) https://docs.python.org/3.6/library/constants.html#None

   (8) https://docs.python.org/3.6/library/constants.html#None

   (9) https://docs.python.org/3.6/library/constants.html#None

   (10) https://docs.python.org/3.6/library/constants.html#None

   (11) https://docs.python.org/3.6/library/constants.html#None

   (12) https://docs.python.org/3.6/library/constants.html#None

   (13) https://docs.python.org/3.6/library/constants.html#None

   (14) https://docs.python.org/3.6/library/constants.html#None

   (15) https://docs.python.org/3.6/library/constants.html#None

   (16) https://docs.python.org/3.6/library/constants.html#None

   (17) https://docs.python.org/3.6/library/constants.html#None

   (18) https://docs.python.org/3.6/library/constants.html#None

   (19) https://docs.python.org/3.6/library/constants.html#None

   (20) https://docs.python.org/3.6/library/constants.html#None

   (21) https://docs.python.org/3.6/library/constants.html#None

   (22) https://docs.python.org/3.6/library/constants.html#None

   (23) https://docs.python.org/3.6/library/constants.html#None

   (24) https://docs.python.org/3.6/library/constants.html#None

   (25) https://docs.python.org/3.6/library/constants.html#None

   (26) https://docs.python.org/3.6/library/constants.html#None

   (27) https://docs.python.org/3.6/library/constants.html#None

   (28) https://docs.python.org/3.6/library/constants.html#None

   (29) https://docs.python.org/3.6/library/constants.html#None

   (30) https://docs.python.org/3.6/library/constants.html#None

   (31) https://docs.python.org/3.6/library/constants.html#None

   (32) https://docs.python.org/3.6/library/constants.html#None

   (33) https://docs.python.org/3.6/library/constants.html#None

   (34) https://docs.python.org/3.6/library/constants.html#None

   (35) https://docs.python.org/3.6/library/constants.html#None

   (36) https://docs.python.org/3.6/library/constants.html#None

   (37) https://docs.python.org/3.6/library/constants.html#None

   (38) https://docs.python.org/3.6/library/constants.html#None

   (39) https://docs.python.org/3.6/library/constants.html#None

   (40) https://docs.python.org/3.6/library/constants.html#None

   (41) https://docs.python.org/3.6/library/constants.html#None

   (42) https://docs.python.org/3.6/library/constants.html#None

   (43) https://docs.python.org/3.6/library/constants.html#None

   (44) https://docs.python.org/3.6/library/constants.html#None

   (45) https://docs.python.org/3.6/library/constants.html#None

   (46) https://docs.python.org/3.6/library/constants.html#None

   (47) https://docs.python.org/3.6/library/constants.html#None

   (48) https://docs.python.org/3.6/library/constants.html#None

   (49) https://docs.python.org/3.6/library/constants.html#None

   (50) https://docs.python.org/3.6/library/constants.html#None

   (51) https://docs.python.org/3.6/library/constants.html#None

   (52) https://docs.python.org/3.6/library/constants.html#None

   (53) https://docs.python.org/3.6/library/constants.html#None

   (54) https://docs.python.org/3.6/library/constants.html#None

   (55) https://docs.python.org/3.6/library/constants.html#None

   (56) https://docs.python.org/3.6/library/constants.html#None

   (57) https://docs.python.org/3.6/library/constants.html#None

   (58) https://docs.python.org/3.6/library/constants.html#None

   (59) https://docs.python.org/3.6/library/constants.html#None

   (60) https://docs.python.org/3.6/library/constants.html#None

   (61) https://docs.python.org/3.6/library/constants.html#None

   (62) https://docs.python.org/3.6/library/constants.html#None

   (63) https://docs.python.org/3.6/library/constants.html#None

   (64) https://docs.python.org/3.6/library/constants.html#None

   (65) https://docs.python.org/3.6/library/constants.html#None

   (66) https://docs.python.org/3.6/library/constants.html#None

   (67) https://docs.python.org/3.6/library/constants.html#None

   (68) https://docs.python.org/3.6/library/constants.html#None

   (69) https://docs.python.org/3.6/library/constants.html#None

   (70) https://docs.python.org/3.6/library/constants.html#None

   (71) https://docs.python.org/3.6/library/constants.html#None

   (72) https://docs.python.org/3.6/library/constants.html#None

   (73) https://docs.python.org/3.6/library/constants.html#None

   (74) https://docs.python.org/3.6/library/constants.html#None

   (75) https://docs.python.org/3.6/library/constants.html#None

   (76) https://docs.python.org/3.6/library/constants.html#None

   (77) https://docs.python.org/3.6/library/constants.html#None

   (78) https://docs.python.org/3.6/library/constants.html#None

   (79) https://docs.python.org/3.6/library/constants.html#None

   (80) https://docs.python.org/3.6/library/constants.html#None

   (81) https://docs.python.org/3.6/library/constants.html#None

   (82) https://docs.python.org/3.6/library/constants.html#None

   (83) https://docs.python.org/3.6/library/constants.html#None

   (84) https://docs.python.org/3.6/library/constants.html#None

   (85) https://docs.python.org/3.6/library/constants.html#None

   (86) https://docs.python.org/3.6/library/constants.html#None

   (87) https://docs.python.org/3.6/library/constants.html#None

   (88) https://docs.python.org/3.6/library/constants.html#None

   (89) https://docs.python.org/3.6/library/constants.html#None

   (90) https://docs.python.org/3.6/library/constants.html#None

   (91) https://docs.python.org/3.6/library/constants.html#None

   (92) https://docs.python.org/3.6/library/constants.html#None

   (93) https://docs.python.org/3.6/library/constants.html#None

   (94) https://docs.python.org/3.6/library/constants.html#None

   (95) https://docs.python.org/3.6/library/constants.html#None

   (96) https://docs.python.org/3.6/library/constants.html#None

   (97) https://docs.python.org/3.6/library/constants.html#None

   (98) https://docs.python.org/3.6/library/constants.html#None

   (99) https://docs.python.org/3.6/library/constants.html#None

   (100) https://docs.python.org/3.6/library/constants.html#None

   (101) https://docs.python.org/3.6/library/constants.html#None

   (102) https://docs.python.org/3.6/library/constants.html#None

   (103) https://docs.python.org/3.6/library/constants.html#None

   (104) https://docs.python.org/3.6/library/constants.html#None

   (105) https://docs.python.org/3.6/library/constants.html#None

   (106) https://docs.python.org/3.6/library/constants.html#None

   (107) https://docs.python.org/3.6/library/constants.html#None

   (108) https://docs.python.org/3.6/library/constants.html#None

   (109) https://docs.python.org/3.6/library/constants.html#None

   (110) https://docs.python.org/3.6/library/constants.html#None

   (111) https://docs.python.org/3.6/library/constants.html#None

   (112) https://docs.python.org/3.6/library/constants.html#None

   (113) https://docs.python.org/3.6/library/constants.html#None

   (114) https://docs.python.org/3.6/library/constants.html#None

   (115) https://docs.python.org/3.6/library/constants.html#None

   (116) https://docs.python.org/3.6/library/constants.html#None

   (117) https://docs.python.org/3.6/library/constants.html#None

   (118) https://docs.python.org/3.6/library/constants.html#None

   (119) https://docs.python.org/3.6/library/constants.html#None

   (120) https://docs.python.org/3.6/library/constants.html#None

   (121) https://docs.python.org/3.6/library/constants.html#None

   (122) https://docs.python.org/3.6/library/constants.html#None

   (123) https://docs.python.org/3.6/library/constants.html#None

   (124) https://docs.python.org/3.6/library/constants.html#None

   (125) https://docs.python.org/3.6/library/constants.html#None

   (126) https://docs.python.org/3.6/library/constants.html#None

   (127) https://docs.python.org/3.6/library/constants.html#None

   (128) https://docs.python.org/3.6/library/constants.html#None

   (129) https://docs.python.org/3.6/library/constants.html#None

   (130) https://docs.python.org/3.6/library/constants.html#None

   (131) https://docs.python.org/3.6/library/constants.html#None

   (132) https://docs.python.org/3.6/library/constants.html#None

   (133) https://docs.python.org/3.6/library/constants.html#None

   (134) https://docs.python.org/3.6/library/constants.html#None

   (135) https://docs.python.org/3.6/library/constants.html#None

   (136) https://docs.python.org/3.6/library/constants.html#None

   (137) https://docs.python.org/3.6/library/constants.html#None

   (138) https://docs.python.org/3.6/library/constants.html#None

   (139) https://docs.python.org/3.6/library/constants.html#None

   (140) https://docs.python.org/3.6/library/constants.html#None

   (141) https://docs.python.org/3.6/library/constants.html#None

   (142) https://docs.python.org/3.6/library/constants.html#None

   (143) https://docs.python.org/3.6/library/constants.html#None

   (144) https://docs.python.org/3.6/library/constants.html#None

   (145) https://docs.python.org/3.6/library/constants.html#None

   (146) https://docs.python.org/3.6/library/constants.html#None

   (147) https://docs.python.org/3.6/library/constants.html#None

   (148) https://docs.python.org/3.6/library/constants.html#None

   (149) https://docs.python.org/3.6/library/constants.html#None

   (150) https://docs.python.org/3.6/library/constants.html#None

   (151) https://docs.python.org/3.6/library/constants.html#None

   (152) https://docs.python.org/3.6/library/constants.html#None

   (153) https://docs.python.org/3.6/library/constants.html#None

   (154) https://docs.python.org/3.6/library/constants.html#None

   (155) https://docs.python.org/3.6/library/constants.html#None

   (156) https://docs.python.org/3.6/library/constants.html#None

   (157) https://docs.python.org/3.6/library/constants.html#None

   (158) https://docs.python.org/3.6/library/constants.html#None

   (159) https://docs.python.org/3.6/library/constants.html#None

   (160) https://docs.python.org/3.6/library/constants.html#None

   (161) https://docs.python.org/3.6/library/constants.html#None

   (162) https://docs.python.org/3.6/library/constants.html#None

   (163) https://docs.python.org/3.6/library/constants.html#None

   (164) https://docs.python.org/3.6/library/constants.html#None

   (165) https://docs.python.org/3.6/library/constants.html#None

   (166) https://docs.python.org/3.6/library/constants.html#None

   (167) https://docs.python.org/3.6/library/constants.html#None

   (168) https://docs.python.org/3.6/library/constants.html#None

   (169) https://docs.python.org/3.6/library/constants.html#None

   (170) https://docs.python.org/3.6/library/constants.html#None

   (171) https://docs.python.org/3.6/library/constants.html#None

   (172) https://docs.python.org/3.6/library/constants.html#None

   (173) https://docs.python.org/3.6/library/constants.html#None

   (174) https://docs.python.org/3.6/library/constants.html#None

   (175) https://docs.python.org/3.6/library/constants.html#None

   (176) https://docs.python.org/3.6/library/constants.html#None

   (177) https://docs.python.org/3.6/library/constants.html#None

   (178) https://docs.python.org/3.6/library/constants.html#None

   (179) https://docs.python.org/3.6/library/constants.html#None

   (180) https://docs.python.org/3.6/library/constants.html#None

   (181) https://docs.python.org/3.6/library/constants.html#None

   (182) https://docs.python.org/3.6/library/constants.html#None

   (183) https://docs.python.org/3.6/library/constants.html#None

   (184) https://docs.python.org/3.6/library/constants.html#None

   (185) https://docs.python.org/3.6/library/constants.html#None

   (186) https://docs.python.org/3.6/library/constants.html#None

   (187) https://docs.python.org/3.6/library/constants.html#None

   (188) https://docs.python.org/3.6/library/constants.html#None

   (189) https://docs.python.org/3.6/library/constants.html#None

   (190) https://docs.python.org/3.6/library/constants.html#None

   (191) https://docs.python.org/3.6/library/constants.html#None

   (192) https://docs.python.org/3.6/library/constants.html#None

   (193) https://docs.python.org/3.6/library/constants.html#None

   (194) https://docs.python.org/3.6/library/constants.html#None

   (195) https://docs.python.org/3.6/library/constants.html#None

   (196) https://docs.python.org/3.6/library/constants.html#None

   (197) https://docs.python.org/3.6/library/constants.html#None

   (198) https://docs.python.org/3.6/library/constants.html#None

   (199) https://docs.python.org/3.6/library/constants.html#None

   (200) https://docs.python.org/3.6/library/constants.html#None

   (201) https://docs.python.org/3.6/library/constants.html#None

   (202) https://docs.python.org/3.6/library/constants.html#None

   (203) https://docs.python.org/3.6/library/constants.html#None

   (204) https://docs.python.org/3.6/library/constants.html#None

   (205) https://docs.python.org/3.6/library/constants.html#None

   (206) https://docs.python.org/3.6/library/constants.html#None

   (207) https://docs.python.org/3.6/library/constants.html#None

   (208) https://docs.python.org/3.6/library/constants.html#None

   (209) https://docs.python.org/3.6/library/constants.html#None

   (210) https://docs.python.org/3.6/library/constants.html#None

   (211) https://docs.python.org/3.6/library/constants.html#None

   (212) https://docs.python.org/3.6/library/constants.html#None

   (213) https://docs.python.org/3.6/library/constants.html#None

   (214) https://docs.python.org/3.6/library/constants.html#None

   (215) https://docs.python.org/3.6/library/constants.html#None

   (216) https://docs.python.org/3.6/library/constants.html#None

   (217) https://docs.python.org/3.6/library/constants.html#None

   (218) https://docs.python.org/3.6/library/constants.html#None

   (219) https://docs.python.org/3.6/library/constants.html#None

   (220) https://docs.python.org/3.6/library/constants.html#None

   (221) https://docs.python.org/3.6/library/constants.html#None

   (222) https://docs.python.org/3.6/library/constants.html#None

   (223) https://docs.python.org/3.6/library/constants.html#None

   (224) https://docs.python.org/3.6/library/constants.html#None

   (225) https://docs.python.org/3.6/library/constants.html#None

   (226) https://docs.python.org/3.6/library/constants.html#None

   (227) https://docs.python.org/3.6/library/constants.html#None

   (228) https://docs.python.org/3.6/library/constants.html#None

   (229) https://docs.python.org/3.6/library/constants.html#None

   (230) https://docs.python.org/3.6/library/constants.html#None

   (231) https://docs.python.org/3.6/library/constants.html#None

   (232) https://docs.python.org/3.6/library/constants.html#None

   (233) https://docs.python.org/3.6/library/constants.html#None

   (234) https://docs.python.org/3.6/library/constants.html#None

   (235) https://docs.python.org/3.6/library/constants.html#None

   (236) https://docs.python.org/3.6/library/constants.html#None

   (237) https://docs.python.org/3.6/library/constants.html#None

   (238) https://docs.python.org/3.6/library/constants.html#None

   (239) https://docs.python.org/3.6/library/constants.html#None

   (240) https://docs.python.org/3.6/library/constants.html#None

   (241) https://docs.python.org/3.6/library/constants.html#None

   (242) https://docs.python.org/3.6/library/constants.html#None

   (243) https://docs.python.org/3.6/library/constants.html#None

   (244) https://docs.python.org/3.6/library/constants.html#None

   (245) https://docs.python.org/3.6/library/constants.html#None

   (246) https://docs.python.org/3.6/library/constants.html#None

   (247) https://docs.python.org/3.6/library/constants.html#None

   (248) https://docs.python.org/3.6/library/constants.html#None

   (249) https://docs.python.org/3.6/library/constants.html#None

   (250) https://docs.python.org/3.6/library/constants.html#None

   (251) https://docs.python.org/3.6/library/constants.html#None

   (252) https://docs.python.org/3.6/library/constants.html#None

   (253) https://docs.python.org/3.6/library/constants.html#None

   (254) https://docs.python.org/3.6/library/constants.html#None

   (255) https://docs.python.org/3.6/library/constants.html#None

   (256) https://docs.python.org/3.6/library/constants.html#None

   (257) https://docs.python.org/3.6/library/constants.html#None

   (258) https://docs.python.org/3.6/library/constants.html#None

   (259) https://docs.python.org/3.6/library/constants.html#None

   (260) https://docs.python.org/3.6/library/constants.html#None

   (261) https://docs.python.org/3.6/library/constants.html#None

   (262) https://docs.python.org/3.6/library/constants.html#None

   (263) https://docs.python.org/3.6/library/constants.html#None

   (264) https://docs.python.org/3.6/library/constants.html#None

   (265) https://docs.python.org/3.6/library/constants.html#None

   (266) https://docs.python.org/3.6/library/constants.html#None

   (267) https://docs.python.org/3.6/library/constants.html#None

   (268) https://docs.python.org/3.6/library/constants.html#None

   (269) https://docs.python.org/3.6/library/constants.html#None

   (270) https://docs.python.org/3.6/library/constants.html#None

   (271) https://docs.python.org/3.6/library/constants.html#None

   (272) https://docs.python.org/3.6/library/constants.html#None

   (273) https://docs.python.org/3.6/library/constants.html#None

   (274) https://docs.python.org/3.6/library/constants.html#None

   (275) https://docs.python.org/3.6/library/constants.html#None

   (276) https://docs.python.org/3.6/library/constants.html#None

   (277) https://docs.python.org/3.6/library/constants.html#None

   (278) https://docs.python.org/3.6/library/constants.html#None

   (279) https://docs.python.org/3.6/library/constants.html#None

   (280) https://docs.python.org/3.6/library/constants.html#None

   (281) https://docs.python.org/3.6/library/constants.html#None

   (282) https://docs.python.org/3.6/library/constants.html#None

   (283) https://docs.python.org/3.6/library/constants.html#None

   (284) https://docs.python.org/3.6/library/constants.html#None

   (285) https://docs.python.org/3.6/library/constants.html#None

   (286) https://docs.python.org/3.6/library/constants.html#None

   (287) https://docs.python.org/3.6/library/constants.html#None

   (288) https://docs.python.org/3.6/library/constants.html#None

   (289) https://docs.python.org/3.6/library/constants.html#None

   (290) https://docs.python.org/3.6/library/constants.html#None

   (291) https://docs.python.org/3.6/library/constants.html#None

   (292) https://docs.python.org/3.6/library/constants.html#None

   (293) https://docs.python.org/3.6/library/constants.html#None

   (294) https://docs.python.org/3.6/library/constants.html#None

   (295) https://docs.python.org/3.6/library/constants.html#None

   (296) https://docs.python.org/3.6/library/constants.html#None

   (297) https://docs.python.org/3.6/library/constants.html#None

   (298) https://docs.python.org/3.6/library/constants.html#None

   (299) https://docs.python.org/3.6/library/constants.html#None

   (300) https://docs.python.org/3.6/library/constants.html#None

   (301) https://docs.python.org/3.6/library/constants.html#None

   (302) https://docs.python.org/3.6/library/constants.html#None

   (303) https://docs.python.org/3.6/library/constants.html#None

   (304) https://docs.python.org/3.6/library/constants.html#None

   (305) https://docs.python.org/3.6/library/constants.html#None

   (306) https://docs.python.org/3.6/library/constants.html#None

   (307) https://docs.python.org/3.6/library/constants.html#None

   (308) https://docs.python.org/3.6/library/constants.html#None

   (309) https://docs.python.org/3.6/library/constants.html#None

   (310) https://docs.python.org/3.6/library/constants.html#None

   (311) https://docs.python.org/3.6/library/constants.html#None

   (312) https://docs.python.org/3.6/library/constants.html#None

   (313) https://docs.python.org/3.6/library/constants.html#None

   (314) https://docs.python.org/3.6/library/constants.html#None

   (315) https://docs.python.org/3.6/library/constants.html#None

   (316) https://docs.python.org/3.6/library/constants.html#None

   (317) https://docs.python.org/3.6/library/constants.html#None

   (318) https://docs.python.org/3.6/library/constants.html#None

   (319) https://docs.python.org/3.6/library/constants.html#None

   (320) https://docs.python.org/3.6/library/constants.html#None

   (321) https://docs.python.org/3.6/library/constants.html#None

   (322) https://docs.python.org/3.6/library/constants.html#None

   (323) https://docs.python.org/3.6/library/constants.html#None

   (324) https://docs.python.org/3.6/library/constants.html#None

   (325) https://docs.python.org/3.6/library/constants.html#None

   (326) https://docs.python.org/3.6/library/constants.html#None

   (327) https://docs.python.org/3.6/library/constants.html#None

   (328) https://docs.python.org/3.6/library/constants.html#None

   (329) https://docs.python.org/3.6/library/constants.html#None

   (330) https://docs.python.org/3.6/library/constants.html#None

   (331) https://docs.python.org/3.6/library/constants.html#None

   (332) https://docs.python.org/3.6/library/constants.html#None

   (333) https://docs.python.org/3.6/library/constants.html#None

   (334) https://docs.python.org/3.6/library/constants.html#None

   (335) https://docs.python.org/3.6/library/constants.html#None

   (336) https://docs.python.org/3.6/library/constants.html#None

   (337) https://docs.python.org/3.6/library/constants.html#None

   (338) https://docs.python.org/3.6/library/constants.html#None

   (339) https://docs.python.org/3.6/library/constants.html#None

   (340) https://docs.python.org/3.6/library/constants.html#None

   (341) https://docs.python.org/3.6/library/constants.html#None

   (342) https://docs.python.org/3.6/library/constants.html#None

   (343) https://docs.python.org/3.6/library/constants.html#None

   (344) https://docs.python.org/3.6/library/constants.html#None

   (345) https://docs.python.org/3.6/library/constants.html#None

   (346) https://docs.python.org/3.6/library/constants.html#None

   (347) https://docs.python.org/3.6/library/constants.html#None

   (348) https://docs.python.org/3.6/library/constants.html#None

   (349) https://docs.python.org/3.6/library/constants.html#None

   (350) https://docs.python.org/3.6/library/constants.html#None

   (351) https://docs.python.org/3.6/library/constants.html#None

   (352) https://docs.python.org/3.6/library/constants.html#None

   (353) https://docs.python.org/3.6/library/constants.html#None

   (354) https://docs.python.org/3.6/library/constants.html#None

   (355) https://docs.python.org/3.6/library/constants.html#None

   (356) https://docs.python.org/3.6/library/constants.html#None

   (357) https://docs.python.org/3.6/library/constants.html#None

   (358) https://docs.python.org/3.6/library/constants.html#None

   (359) https://docs.python.org/3.6/library/constants.html#None

   (360) https://docs.python.org/3.6/library/constants.html#None

   (361) https://docs.python.org/3.6/library/constants.html#None

   (362) https://docs.python.org/3.6/library/constants.html#None

   (363) https://docs.python.org/3.6/library/constants.html#None

   (364) https://docs.python.org/3.6/library/constants.html#None

   (365) https://docs.python.org/3.6/library/constants.html#None

   (366) https://docs.python.org/3.6/library/constants.html#None

   (367) https://docs.python.org/3.6/library/constants.html#None

   (368) https://docs.python.org/3.6/library/constants.html#None

   (369) https://docs.python.org/3.6/library/constants.html#None

   (370) https://docs.python.org/3.6/library/constants.html#None

14.3.14.8 pyGHDL.libghdl.vhdl.nodes_meta
........................................

`Classes'

   - types.: An enumeration.

   - Attr.: An enumeration.

   - fields.: An enumeration.

`Functions'

   - get_fields_first().: Return the list of fields for node
     ‘K’.

   - get_fields_last().: Return the list of fields for node
     ‘K’.

   - get_field_by_index().:

   - get_field_type().: Undocumented.

   - get_field_attribute().: Undocumented.

   - Has_First_Design_Unit().:

   - Has_Last_Design_Unit().:

   - Has_Library_Declaration().:

   - Has_File_Checksum().:

   - Has_Analysis_Time_Stamp().:

   - Has_Design_File_Source().:

   - Has_Library().:

   - Has_File_Dependence_List().:

   - Has_Design_File_Filename().:

   - Has_Design_File_Directory().:

   - Has_Design_File().:

   - Has_Design_File_Chain().:

   - Has_Library_Directory().:

   - Has_Date().:

   - Has_Context_Items().:

   - Has_Dependence_List().:

   - Has_Analysis_Checks_List().:

   - Has_Date_State().:

   - Has_Guarded_Target_State().:

   - Has_Library_Unit().:

   - Has_Hash_Chain().:

   - Has_Design_Unit_Source_Pos().:

   - Has_Design_Unit_Source_Line().:

   - Has_Design_Unit_Source_Col().:

   - Has_Value().:

   - Has_Enum_Pos().:

   - Has_Physical_Literal().:

   - Has_Fp_Value().:

   - Has_Simple_Aggregate_List().:

   - Has_String8_Id().:

   - Has_String_Length().:

   - Has_Bit_String_Base().:

   - Has_Has_Signed().:

   - Has_Has_Sign().:

   - Has_Has_Length().:

   - Has_Literal_Length().:

   - Has_Literal_Origin().:

   - Has_Range_Origin().:

   - Has_Literal_Subtype().:

   - Has_Allocator_Subtype().:

   - Has_Entity_Class().:

   - Has_Entity_Name_List().:

   - Has_Attribute_Designator().:

   - Has_Attribute_Specification_Chain().:

   - Has_Attribute_Specification().:

   - Has_Static_Attribute_Flag().:

   - Has_Signal_List().:

   - Has_Quantity_List().:

   - Has_Designated_Entity().:

   - Has_Formal().:

   - Has_Actual().:

   - Has_Actual_Conversion().:

   - Has_Formal_Conversion().:

   - Has_Whole_Association_Flag().:

   - Has_Collapse_Signal_Flag().:

   - Has_Artificial_Flag().:

   - Has_Open_Flag().:

   - Has_After_Drivers_Flag().:

   - Has_We_Value().:

   - Has_Time().:

   - Has_Associated_Expr().:

   - Has_Associated_Block().:

   - Has_Associated_Chain().:

   - Has_Choice_Name().:

   - Has_Choice_Expression().:

   - Has_Choice_Range().:

   - Has_Same_Alternative_Flag().:

   - Has_Element_Type_Flag().:

   - Has_Architecture().:

   - Has_Block_Specification().:

   - Has_Prev_Block_Configuration().:

   - Has_Configuration_Item_Chain().:

   - Has_Attribute_Value_Chain().:

   - Has_Spec_Chain().:

   - Has_Value_Chain().:

   - Has_Attribute_Value_Spec_Chain().:

   - Has_Entity_Name().:

   - Has_Package().:

   - Has_Package_Body().:

   - Has_Instance_Package_Body().:

   - Has_Need_Body().:

   - Has_Macro_Expanded_Flag().:

   - Has_Need_Instance_Bodies().:

   - Has_Hierarchical_Name().:

   - Has_Inherit_Spec_Chain().:

   - Has_Vunit_Item_Chain().:

   - Has_Bound_Vunit_Chain().:

   - Has_Verification_Block_Configuration().:

   - Has_Block_Configuration().:

   - Has_Concurrent_Statement_Chain().:

   - Has_Chain().:

   - Has_Port_Chain().:

   - Has_Generic_Chain().:

   - Has_Type().:

   - Has_Subtype_Indication().:

   - Has_Discrete_Range().:

   - Has_Type_Definition().:

   - Has_Subtype_Definition().:

   - Has_Incomplete_Type_Declaration().:

   - Has_Interface_Type_Subprograms().:

   - Has_Nature_Definition().:

   - Has_Nature().:

   - Has_Subnature_Indication().:

   - Has_Mode().:

   - Has_Guarded_Signal_Flag().:

   - Has_Signal_Kind().:

   - Has_Base_Name().:

   - Has_Interface_Declaration_Chain().:

   - Has_Subprogram_Specification().:

   - Has_Sequential_Statement_Chain().:

   - Has_Simultaneous_Statement_Chain().:

   - Has_Subprogram_Body().:

   - Has_Overload_Number().:

   - Has_Subprogram_Depth().:

   - Has_Subprogram_Hash().:

   - Has_Impure_Depth().:

   - Has_Return_Type().:

   - Has_Implicit_Definition().:

   - Has_Uninstantiated_Subprogram_Name().:

   - Has_Default_Value().:

   - Has_Deferred_Declaration().:

   - Has_Deferred_Declaration_Flag().:

   - Has_Shared_Flag().:

   - Has_Design_Unit().:

   - Has_Block_Statement().:

   - Has_Signal_Driver().:

   - Has_Declaration_Chain().:

   - Has_File_Logical_Name().:

   - Has_File_Open_Kind().:

   - Has_Element_Position().:

   - Has_Use_Clause_Chain().:

   - Has_Context_Reference_Chain().:

   - Has_Selected_Name().:

   - Has_Type_Declarator().:

   - Has_Complete_Type_Definition().:

   - Has_Incomplete_Type_Ref_Chain().:

   - Has_Associated_Type().:

   - Has_Enumeration_Literal_List().:

   - Has_Entity_Class_Entry_Chain().:

   - Has_Group_Constituent_List().:

   - Has_Unit_Chain().:

   - Has_Primary_Unit().:

   - Has_Identifier().:

   - Has_Label().:

   - Has_Visible_Flag().:

   - Has_Range_Constraint().:

   - Has_Direction().:

   - Has_Left_Limit().:

   - Has_Right_Limit().:

   - Has_Left_Limit_Expr().:

   - Has_Right_Limit_Expr().:

   - Has_Parent_Type().:

   - Has_Simple_Nature().:

   - Has_Base_Nature().:

   - Has_Resolution_Indication().:

   - Has_Record_Element_Resolution_Chain().:

   - Has_Tolerance().:

   - Has_Plus_Terminal_Name().:

   - Has_Minus_Terminal_Name().:

   - Has_Plus_Terminal().:

   - Has_Minus_Terminal().:

   - Has_Magnitude_Expression().:

   - Has_Phase_Expression().:

   - Has_Power_Expression().:

   - Has_Simultaneous_Left().:

   - Has_Simultaneous_Right().:

   - Has_Text_File_Flag().:

   - Has_Only_Characters_Flag().:

   - Has_Is_Character_Type().:

   - Has_Nature_Staticness().:

   - Has_Type_Staticness().:

   - Has_Constraint_State().:

   - Has_Index_Subtype_List().:

   - Has_Index_Subtype_Definition_List().:

   - Has_Element_Subtype_Indication().:

   - Has_Element_Subtype().:

   - Has_Element_Subnature_Indication().:

   - Has_Element_Subnature().:

   - Has_Index_Constraint_List().:

   - Has_Array_Element_Constraint().:

   - Has_Has_Array_Constraint_Flag().:

   - Has_Has_Element_Constraint_Flag().:

   - Has_Elements_Declaration_List().:

   - Has_Owned_Elements_Chain().:

   - Has_Designated_Type().:

   - Has_Designated_Subtype_Indication().:

   - Has_Index_List().:

   - Has_Reference().:

   - Has_Nature_Declarator().:

   - Has_Across_Type_Mark().:

   - Has_Through_Type_Mark().:

   - Has_Across_Type_Definition().:

   - Has_Through_Type_Definition().:

   - Has_Across_Type().:

   - Has_Through_Type().:

   - Has_Target().:

   - Has_Waveform_Chain().:

   - Has_Guard().:

   - Has_Delay_Mechanism().:

   - Has_Reject_Time_Expression().:

   - Has_Force_Mode().:

   - Has_Has_Force_Mode().:

   - Has_Sensitivity_List().:

   - Has_Process_Origin().:

   - Has_Package_Origin().:

   - Has_Condition_Clause().:

   - Has_Break_Element().:

   - Has_Selector_Quantity().:

   - Has_Break_Quantity().:

   - Has_Timeout_Clause().:

   - Has_Postponed_Flag().:

   - Has_Callees_List().:

   - Has_Passive_Flag().:

   - Has_Resolution_Function_Flag().:

   - Has_Wait_State().:

   - Has_All_Sensitized_State().:

   - Has_Seen_Flag().:

   - Has_Pure_Flag().:

   - Has_Foreign_Flag().:

   - Has_Resolved_Flag().:

   - Has_Signal_Type_Flag().:

   - Has_Has_Signal_Flag().:

   - Has_Purity_State().:

   - Has_Elab_Flag().:

   - Has_Vendor_Library_Flag().:

   - Has_Configuration_Mark_Flag().:

   - Has_Configuration_Done_Flag().:

   - Has_Index_Constraint_Flag().:

   - Has_Hide_Implicit_Flag().:

   - Has_Assertion_Condition().:

   - Has_Report_Expression().:

   - Has_Severity_Expression().:

   - Has_Instantiated_Unit().:

   - Has_Generic_Map_Aspect_Chain().:

   - Has_Port_Map_Aspect_Chain().:

   - Has_Configuration_Name().:

   - Has_Component_Configuration().:

   - Has_Configuration_Specification().:

   - Has_Default_Binding_Indication().:

   - Has_Default_Configuration_Declaration().:

   - Has_Expression().:

   - Has_Conditional_Expression_Chain().:

   - Has_Allocator_Designated_Type().:

   - Has_Selected_Waveform_Chain().:

   - Has_Conditional_Waveform_Chain().:

   - Has_Guard_Expression().:

   - Has_Guard_Decl().:

   - Has_Guard_Sensitivity_List().:

   - Has_Signal_Attribute_Chain().:

   - Has_Block_Block_Configuration().:

   - Has_Package_Header().:

   - Has_Block_Header().:

   - Has_Uninstantiated_Package_Name().:

   - Has_Uninstantiated_Package_Decl().:

   - Has_Instance_Source_File().:

   - Has_Generate_Block_Configuration().:

   - Has_Generate_Statement_Body().:

   - Has_Alternative_Label().:

   - Has_Generate_Else_Clause().:

   - Has_Condition().:

   - Has_Else_Clause().:

   - Has_Parameter_Specification().:

   - Has_Parent().:

   - Has_Loop_Label().:

   - Has_Exit_Flag().:

   - Has_Next_Flag().:

   - Has_Component_Name().:

   - Has_Instantiation_List().:

   - Has_Entity_Aspect().:

   - Has_Default_Entity_Aspect().:

   - Has_Binding_Indication().:

   - Has_Named_Entity().:

   - Has_Referenced_Name().:

   - Has_Expr_Staticness().:

   - Has_Scalar_Size().:

   - Has_Error_Origin().:

   - Has_Operand().:

   - Has_Left().:

   - Has_Right().:

   - Has_Unit_Name().:

   - Has_Name().:

   - Has_Group_Template_Name().:

   - Has_Name_Staticness().:

   - Has_Prefix().:

   - Has_Signature_Prefix().:

   - Has_External_Pathname().:

   - Has_Pathname_Suffix().:

   - Has_Pathname_Expression().:

   - Has_In_Formal_Flag().:

   - Has_Slice_Subtype().:

   - Has_Suffix().:

   - Has_Index_Subtype().:

   - Has_Parameter().:

   - Has_Parameter_2().:

   - Has_Parameter_3().:

   - Has_Parameter_4().:

   - Has_Attr_Chain().:

   - Has_Signal_Attribute_Declaration().:

   - Has_Actual_Type().:

   - Has_Actual_Type_Definition().:

   - Has_Association_Chain().:

   - Has_Individual_Association_Chain().:

   - Has_Subprogram_Association_Chain().:

   - Has_Aggregate_Info().:

   - Has_Sub_Aggregate_Info().:

   - Has_Aggr_Dynamic_Flag().:

   - Has_Aggr_Min_Length().:

   - Has_Aggr_Low_Limit().:

   - Has_Aggr_High_Limit().:

   - Has_Aggr_Others_Flag().:

   - Has_Aggr_Named_Flag().:

   - Has_Aggregate_Expand_Flag().:

   - Has_Association_Choices_Chain().:

   - Has_Case_Statement_Alternative_Chain().:

   - Has_Choice_Staticness().:

   - Has_Procedure_Call().:

   - Has_Implementation().:

   - Has_Parameter_Association_Chain().:

   - Has_Method_Object().:

   - Has_Subtype_Type_Mark().:

   - Has_Subnature_Nature_Mark().:

   - Has_Type_Conversion_Subtype().:

   - Has_Type_Mark().:

   - Has_File_Type_Mark().:

   - Has_Return_Type_Mark().:

   - Has_Has_Disconnect_Flag().:

   - Has_Has_Active_Flag().:

   - Has_Is_Within_Flag().:

   - Has_Type_Marks_List().:

   - Has_Implicit_Alias_Flag().:

   - Has_Alias_Signature().:

   - Has_Attribute_Signature().:

   - Has_Overload_List().:

   - Has_Simple_Name_Identifier().:

   - Has_Simple_Name_Subtype().:

   - Has_Protected_Type_Body().:

   - Has_Protected_Type_Declaration().:

   - Has_Use_Flag().:

   - Has_End_Has_Reserved_Id().:

   - Has_End_Has_Identifier().:

   - Has_End_Has_Postponed().:

   - Has_Has_Label().:

   - Has_Has_Begin().:

   - Has_Has_End().:

   - Has_Has_Is().:

   - Has_Has_Pure().:

   - Has_Has_Body().:

   - Has_Has_Parameter().:

   - Has_Has_Component().:

   - Has_Has_Identifier_List().:

   - Has_Has_Mode().:

   - Has_Has_Class().:

   - Has_Has_Delay_Mechanism().:

   - Has_Suspend_Flag().:

   - Has_Is_Ref().:

   - Has_Is_Forward_Ref().:

   - Has_Psl_Property().:

   - Has_Psl_Sequence().:

   - Has_Psl_Declaration().:

   - Has_Psl_Expression().:

   - Has_Psl_Boolean().:

   - Has_PSL_Clock().:

   - Has_PSL_NFA().:

   - Has_PSL_Nbr_States().:

   - Has_PSL_Clock_Sensitivity().:

   - Has_PSL_EOS_Flag().:

   - Has_Count_Expression().:

   - Has_Clock_Expression().:

   - Has_Default_Clock().:

   - Has_Foreign_Node().:

 -- Class: pyGHDL.libghdl.vhdl.nodes_meta.types (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Boolean = 0

      -- Attribute: Date_State_Type = 1

      -- Attribute: Date_Type = 2

      -- Attribute: Direction_Type = 3

      -- Attribute: File_Checksum_Id = 4

      -- Attribute: Fp64 = 5

      -- Attribute: Iir = 6

      -- Attribute: Iir_All_Sensitized = 7

      -- Attribute: Iir_Constraint = 8

      -- Attribute: Iir_Delay_Mechanism = 9

      -- Attribute: Iir_Flist = 10

      -- Attribute: Iir_Force_Mode = 11

      -- Attribute: Iir_Index32 = 12

      -- Attribute: Iir_Int32 = 13

      -- Attribute: Iir_List = 14

      -- Attribute: Iir_Mode = 15

      -- Attribute: Iir_Predefined_Functions = 16

      -- Attribute: Iir_Pure_State = 17

      -- Attribute: Iir_Signal_Kind = 18

      -- Attribute: Iir_Staticness = 19

      -- Attribute: Int32 = 20

      -- Attribute: Int64 = 21

      -- Attribute: Name_Id = 22

      -- Attribute: Number_Base_Type = 23

      -- Attribute: PSL_NFA = 24

      -- Attribute: PSL_Node = 25

      -- Attribute: Scalar_Size = 26

      -- Attribute: Source_File_Entry = 27

      -- Attribute: Source_Ptr = 28

      -- Attribute: String8_Id = 29

      -- Attribute: Time_Stamp_Id = 30

      -- Attribute: Token_Type = 31

      -- Attribute: Tri_State_Type = 32

 -- Class: pyGHDL.libghdl.vhdl.nodes_meta.Attr (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: ANone = 0

      -- Attribute: Chain = 1

      -- Attribute: Chain_Next = 2

      -- Attribute: Forward_Ref = 3

      -- Attribute: Maybe_Forward_Ref = 4

      -- Attribute: Maybe_Ref = 5

      -- Attribute: Of_Maybe_Ref = 6

      -- Attribute: Of_Ref = 7

      -- Attribute: Ref = 8

 -- Class: pyGHDL.libghdl.vhdl.nodes_meta.fields (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: First_Design_Unit = 0

      -- Attribute: Last_Design_Unit = 1

      -- Attribute: Library_Declaration = 2

      -- Attribute: File_Checksum = 3

      -- Attribute: Analysis_Time_Stamp = 4

      -- Attribute: Design_File_Source = 5

      -- Attribute: Library = 6

      -- Attribute: File_Dependence_List = 7

      -- Attribute: Design_File_Filename = 8

      -- Attribute: Design_File_Directory = 9

      -- Attribute: Design_File = 10

      -- Attribute: Design_File_Chain = 11

      -- Attribute: Library_Directory = 12

      -- Attribute: Date = 13

      -- Attribute: Context_Items = 14

      -- Attribute: Dependence_List = 15

      -- Attribute: Analysis_Checks_List = 16

      -- Attribute: Date_State = 17

      -- Attribute: Guarded_Target_State = 18

      -- Attribute: Library_Unit = 19

      -- Attribute: Hash_Chain = 20

      -- Attribute: Design_Unit_Source_Pos = 21

      -- Attribute: Design_Unit_Source_Line = 22

      -- Attribute: Design_Unit_Source_Col = 23

      -- Attribute: Value = 24

      -- Attribute: Enum_Pos = 25

      -- Attribute: Physical_Literal = 26

      -- Attribute: Fp_Value = 27

      -- Attribute: Simple_Aggregate_List = 28

      -- Attribute: String8_Id = 29

      -- Attribute: String_Length = 30

      -- Attribute: Bit_String_Base = 31

      -- Attribute: Has_Signed = 32

      -- Attribute: Has_Sign = 33

      -- Attribute: Has_Length = 34

      -- Attribute: Literal_Length = 35

      -- Attribute: Literal_Origin = 36

      -- Attribute: Range_Origin = 37

      -- Attribute: Literal_Subtype = 38

      -- Attribute: Allocator_Subtype = 39

      -- Attribute: Entity_Class = 40

      -- Attribute: Entity_Name_List = 41

      -- Attribute: Attribute_Designator = 42

      -- Attribute: Attribute_Specification_Chain = 43

      -- Attribute: Attribute_Specification = 44

      -- Attribute: Static_Attribute_Flag = 45

      -- Attribute: Signal_List = 46

      -- Attribute: Quantity_List = 47

      -- Attribute: Designated_Entity = 48

      -- Attribute: Formal = 49

      -- Attribute: Actual = 50

      -- Attribute: Actual_Conversion = 51

      -- Attribute: Formal_Conversion = 52

      -- Attribute: Whole_Association_Flag = 53

      -- Attribute: Collapse_Signal_Flag = 54

      -- Attribute: Artificial_Flag = 55

      -- Attribute: Open_Flag = 56

      -- Attribute: After_Drivers_Flag = 57

      -- Attribute: We_Value = 58

      -- Attribute: Time = 59

      -- Attribute: Associated_Expr = 60

      -- Attribute: Associated_Block = 61

      -- Attribute: Associated_Chain = 62

      -- Attribute: Choice_Name = 63

      -- Attribute: Choice_Expression = 64

      -- Attribute: Choice_Range = 65

      -- Attribute: Same_Alternative_Flag = 66

      -- Attribute: Element_Type_Flag = 67

      -- Attribute: Architecture = 68

      -- Attribute: Block_Specification = 69

      -- Attribute: Prev_Block_Configuration = 70

      -- Attribute: Configuration_Item_Chain = 71

      -- Attribute: Attribute_Value_Chain = 72

      -- Attribute: Spec_Chain = 73

      -- Attribute: Value_Chain = 74

      -- Attribute: Attribute_Value_Spec_Chain = 75

      -- Attribute: Entity_Name = 76

      -- Attribute: Package = 77

      -- Attribute: Package_Body = 78

      -- Attribute: Instance_Package_Body = 79

      -- Attribute: Need_Body = 80

      -- Attribute: Macro_Expanded_Flag = 81

      -- Attribute: Need_Instance_Bodies = 82

      -- Attribute: Hierarchical_Name = 83

      -- Attribute: Inherit_Spec_Chain = 84

      -- Attribute: Vunit_Item_Chain = 85

      -- Attribute: Bound_Vunit_Chain = 86

      -- Attribute: Verification_Block_Configuration = 87

      -- Attribute: Block_Configuration = 88

      -- Attribute: Concurrent_Statement_Chain = 89

      -- Attribute: Chain = 90

      -- Attribute: Port_Chain = 91

      -- Attribute: Generic_Chain = 92

      -- Attribute: Type = 93

      -- Attribute: Subtype_Indication = 94

      -- Attribute: Discrete_Range = 95

      -- Attribute: Type_Definition = 96

      -- Attribute: Subtype_Definition = 97

      -- Attribute: Incomplete_Type_Declaration = 98

      -- Attribute: Interface_Type_Subprograms = 99

      -- Attribute: Nature_Definition = 100

      -- Attribute: Nature = 101

      -- Attribute: Subnature_Indication = 102

      -- Attribute: Mode = 103

      -- Attribute: Guarded_Signal_Flag = 104

      -- Attribute: Signal_Kind = 105

      -- Attribute: Base_Name = 106

      -- Attribute: Interface_Declaration_Chain = 107

      -- Attribute: Subprogram_Specification = 108

      -- Attribute: Sequential_Statement_Chain = 109

      -- Attribute: Simultaneous_Statement_Chain = 110

      -- Attribute: Subprogram_Body = 111

      -- Attribute: Overload_Number = 112

      -- Attribute: Subprogram_Depth = 113

      -- Attribute: Subprogram_Hash = 114

      -- Attribute: Impure_Depth = 115

      -- Attribute: Return_Type = 116

      -- Attribute: Implicit_Definition = 117

      -- Attribute: Uninstantiated_Subprogram_Name = 118

      -- Attribute: Default_Value = 119

      -- Attribute: Deferred_Declaration = 120

      -- Attribute: Deferred_Declaration_Flag = 121

      -- Attribute: Shared_Flag = 122

      -- Attribute: Design_Unit = 123

      -- Attribute: Block_Statement = 124

      -- Attribute: Signal_Driver = 125

      -- Attribute: Declaration_Chain = 126

      -- Attribute: File_Logical_Name = 127

      -- Attribute: File_Open_Kind = 128

      -- Attribute: Element_Position = 129

      -- Attribute: Use_Clause_Chain = 130

      -- Attribute: Context_Reference_Chain = 131

      -- Attribute: Selected_Name = 132

      -- Attribute: Type_Declarator = 133

      -- Attribute: Complete_Type_Definition = 134

      -- Attribute: Incomplete_Type_Ref_Chain = 135

      -- Attribute: Associated_Type = 136

      -- Attribute: Enumeration_Literal_List = 137

      -- Attribute: Entity_Class_Entry_Chain = 138

      -- Attribute: Group_Constituent_List = 139

      -- Attribute: Unit_Chain = 140

      -- Attribute: Primary_Unit = 141

      -- Attribute: Identifier = 142

      -- Attribute: Label = 143

      -- Attribute: Visible_Flag = 144

      -- Attribute: Range_Constraint = 145

      -- Attribute: Direction = 146

      -- Attribute: Left_Limit = 147

      -- Attribute: Right_Limit = 148

      -- Attribute: Left_Limit_Expr = 149

      -- Attribute: Right_Limit_Expr = 150

      -- Attribute: Parent_Type = 151

      -- Attribute: Simple_Nature = 152

      -- Attribute: Base_Nature = 153

      -- Attribute: Resolution_Indication = 154

      -- Attribute: Record_Element_Resolution_Chain = 155

      -- Attribute: Tolerance = 156

      -- Attribute: Plus_Terminal_Name = 157

      -- Attribute: Minus_Terminal_Name = 158

      -- Attribute: Plus_Terminal = 159

      -- Attribute: Minus_Terminal = 160

      -- Attribute: Magnitude_Expression = 161

      -- Attribute: Phase_Expression = 162

      -- Attribute: Power_Expression = 163

      -- Attribute: Simultaneous_Left = 164

      -- Attribute: Simultaneous_Right = 165

      -- Attribute: Text_File_Flag = 166

      -- Attribute: Only_Characters_Flag = 167

      -- Attribute: Is_Character_Type = 168

      -- Attribute: Nature_Staticness = 169

      -- Attribute: Type_Staticness = 170

      -- Attribute: Constraint_State = 171

      -- Attribute: Index_Subtype_List = 172

      -- Attribute: Index_Subtype_Definition_List = 173

      -- Attribute: Element_Subtype_Indication = 174

      -- Attribute: Element_Subtype = 175

      -- Attribute: Element_Subnature_Indication = 176

      -- Attribute: Element_Subnature = 177

      -- Attribute: Index_Constraint_List = 178

      -- Attribute: Array_Element_Constraint = 179

      -- Attribute: Has_Array_Constraint_Flag = 180

      -- Attribute: Has_Element_Constraint_Flag = 181

      -- Attribute: Elements_Declaration_List = 182

      -- Attribute: Owned_Elements_Chain = 183

      -- Attribute: Designated_Type = 184

      -- Attribute: Designated_Subtype_Indication = 185

      -- Attribute: Index_List = 186

      -- Attribute: Reference = 187

      -- Attribute: Nature_Declarator = 188

      -- Attribute: Across_Type_Mark = 189

      -- Attribute: Through_Type_Mark = 190

      -- Attribute: Across_Type_Definition = 191

      -- Attribute: Through_Type_Definition = 192

      -- Attribute: Across_Type = 193

      -- Attribute: Through_Type = 194

      -- Attribute: Target = 195

      -- Attribute: Waveform_Chain = 196

      -- Attribute: Guard = 197

      -- Attribute: Delay_Mechanism = 198

      -- Attribute: Reject_Time_Expression = 199

      -- Attribute: Force_Mode = 200

      -- Attribute: Has_Force_Mode = 201

      -- Attribute: Sensitivity_List = 202

      -- Attribute: Process_Origin = 203

      -- Attribute: Package_Origin = 204

      -- Attribute: Condition_Clause = 205

      -- Attribute: Break_Element = 206

      -- Attribute: Selector_Quantity = 207

      -- Attribute: Break_Quantity = 208

      -- Attribute: Timeout_Clause = 209

      -- Attribute: Postponed_Flag = 210

      -- Attribute: Callees_List = 211

      -- Attribute: Passive_Flag = 212

      -- Attribute: Resolution_Function_Flag = 213

      -- Attribute: Wait_State = 214

      -- Attribute: All_Sensitized_State = 215

      -- Attribute: Seen_Flag = 216

      -- Attribute: Pure_Flag = 217

      -- Attribute: Foreign_Flag = 218

      -- Attribute: Resolved_Flag = 219

      -- Attribute: Signal_Type_Flag = 220

      -- Attribute: Has_Signal_Flag = 221

      -- Attribute: Purity_State = 222

      -- Attribute: Elab_Flag = 223

      -- Attribute: Vendor_Library_Flag = 224

      -- Attribute: Configuration_Mark_Flag = 225

      -- Attribute: Configuration_Done_Flag = 226

      -- Attribute: Index_Constraint_Flag = 227

      -- Attribute: Hide_Implicit_Flag = 228

      -- Attribute: Assertion_Condition = 229

      -- Attribute: Report_Expression = 230

      -- Attribute: Severity_Expression = 231

      -- Attribute: Instantiated_Unit = 232

      -- Attribute: Generic_Map_Aspect_Chain = 233

      -- Attribute: Port_Map_Aspect_Chain = 234

      -- Attribute: Configuration_Name = 235

      -- Attribute: Component_Configuration = 236

      -- Attribute: Configuration_Specification = 237

      -- Attribute: Default_Binding_Indication = 238

      -- Attribute: Default_Configuration_Declaration = 239

      -- Attribute: Expression = 240

      -- Attribute: Conditional_Expression_Chain = 241

      -- Attribute: Allocator_Designated_Type = 242

      -- Attribute: Selected_Waveform_Chain = 243

      -- Attribute: Conditional_Waveform_Chain = 244

      -- Attribute: Guard_Expression = 245

      -- Attribute: Guard_Decl = 246

      -- Attribute: Guard_Sensitivity_List = 247

      -- Attribute: Signal_Attribute_Chain = 248

      -- Attribute: Block_Block_Configuration = 249

      -- Attribute: Package_Header = 250

      -- Attribute: Block_Header = 251

      -- Attribute: Uninstantiated_Package_Name = 252

      -- Attribute: Uninstantiated_Package_Decl = 253

      -- Attribute: Instance_Source_File = 254

      -- Attribute: Generate_Block_Configuration = 255

      -- Attribute: Generate_Statement_Body = 256

      -- Attribute: Alternative_Label = 257

      -- Attribute: Generate_Else_Clause = 258

      -- Attribute: Condition = 259

      -- Attribute: Else_Clause = 260

      -- Attribute: Parameter_Specification = 261

      -- Attribute: Parent = 262

      -- Attribute: Loop_Label = 263

      -- Attribute: Exit_Flag = 264

      -- Attribute: Next_Flag = 265

      -- Attribute: Component_Name = 266

      -- Attribute: Instantiation_List = 267

      -- Attribute: Entity_Aspect = 268

      -- Attribute: Default_Entity_Aspect = 269

      -- Attribute: Binding_Indication = 270

      -- Attribute: Named_Entity = 271

      -- Attribute: Referenced_Name = 272

      -- Attribute: Expr_Staticness = 273

      -- Attribute: Scalar_Size = 274

      -- Attribute: Error_Origin = 275

      -- Attribute: Operand = 276

      -- Attribute: Left = 277

      -- Attribute: Right = 278

      -- Attribute: Unit_Name = 279

      -- Attribute: Name = 280

      -- Attribute: Group_Template_Name = 281

      -- Attribute: Name_Staticness = 282

      -- Attribute: Prefix = 283

      -- Attribute: Signature_Prefix = 284

      -- Attribute: External_Pathname = 285

      -- Attribute: Pathname_Suffix = 286

      -- Attribute: Pathname_Expression = 287

      -- Attribute: In_Formal_Flag = 288

      -- Attribute: Slice_Subtype = 289

      -- Attribute: Suffix = 290

      -- Attribute: Index_Subtype = 291

      -- Attribute: Parameter = 292

      -- Attribute: Parameter_2 = 293

      -- Attribute: Parameter_3 = 294

      -- Attribute: Parameter_4 = 295

      -- Attribute: Attr_Chain = 296

      -- Attribute: Signal_Attribute_Declaration = 297

      -- Attribute: Actual_Type = 298

      -- Attribute: Actual_Type_Definition = 299

      -- Attribute: Association_Chain = 300

      -- Attribute: Individual_Association_Chain = 301

      -- Attribute: Subprogram_Association_Chain = 302

      -- Attribute: Aggregate_Info = 303

      -- Attribute: Sub_Aggregate_Info = 304

      -- Attribute: Aggr_Dynamic_Flag = 305

      -- Attribute: Aggr_Min_Length = 306

      -- Attribute: Aggr_Low_Limit = 307

      -- Attribute: Aggr_High_Limit = 308

      -- Attribute: Aggr_Others_Flag = 309

      -- Attribute: Aggr_Named_Flag = 310

      -- Attribute: Aggregate_Expand_Flag = 311

      -- Attribute: Association_Choices_Chain = 312

      -- Attribute: Case_Statement_Alternative_Chain = 313

      -- Attribute: Choice_Staticness = 314

      -- Attribute: Procedure_Call = 315

      -- Attribute: Implementation = 316

      -- Attribute: Parameter_Association_Chain = 317

      -- Attribute: Method_Object = 318

      -- Attribute: Subtype_Type_Mark = 319

      -- Attribute: Subnature_Nature_Mark = 320

      -- Attribute: Type_Conversion_Subtype = 321

      -- Attribute: Type_Mark = 322

      -- Attribute: File_Type_Mark = 323

      -- Attribute: Return_Type_Mark = 324

      -- Attribute: Has_Disconnect_Flag = 325

      -- Attribute: Has_Active_Flag = 326

      -- Attribute: Is_Within_Flag = 327

      -- Attribute: Type_Marks_List = 328

      -- Attribute: Implicit_Alias_Flag = 329

      -- Attribute: Alias_Signature = 330

      -- Attribute: Attribute_Signature = 331

      -- Attribute: Overload_List = 332

      -- Attribute: Simple_Name_Identifier = 333

      -- Attribute: Simple_Name_Subtype = 334

      -- Attribute: Protected_Type_Body = 335

      -- Attribute: Protected_Type_Declaration = 336

      -- Attribute: Use_Flag = 337

      -- Attribute: End_Has_Reserved_Id = 338

      -- Attribute: End_Has_Identifier = 339

      -- Attribute: End_Has_Postponed = 340

      -- Attribute: Has_Label = 341

      -- Attribute: Has_Begin = 342

      -- Attribute: Has_End = 343

      -- Attribute: Has_Is = 344

      -- Attribute: Has_Pure = 345

      -- Attribute: Has_Body = 346

      -- Attribute: Has_Parameter = 347

      -- Attribute: Has_Component = 348

      -- Attribute: Has_Identifier_List = 349

      -- Attribute: Has_Mode = 350

      -- Attribute: Has_Class = 351

      -- Attribute: Has_Delay_Mechanism = 352

      -- Attribute: Suspend_Flag = 353

      -- Attribute: Is_Ref = 354

      -- Attribute: Is_Forward_Ref = 355

      -- Attribute: Psl_Property = 356

      -- Attribute: Psl_Sequence = 357

      -- Attribute: Psl_Declaration = 358

      -- Attribute: Psl_Expression = 359

      -- Attribute: Psl_Boolean = 360

      -- Attribute: PSL_Clock = 361

      -- Attribute: PSL_NFA = 362

      -- Attribute: PSL_Nbr_States = 363

      -- Attribute: PSL_Clock_Sensitivity = 364

      -- Attribute: PSL_EOS_Flag = 365

      -- Attribute: Count_Expression = 366

      -- Attribute: Clock_Expression = 367

      -- Attribute: Default_Clock = 368

      -- Attribute: Foreign_Node = 369

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.get_fields_first (K)

     Return the list of fields for node ‘K’.

     In Ada ‘Vhdl.Nodes_Meta.Get_Fields’ returns a ‘Fields_Array’.  To
     emulate this array access, the API provides ‘get_fields_first’ and
     get_fields_last().

     The fields are sorted: first the non nodes/list of nodes, then the
     nodes/lists that aren’t reference, and then the reference.

     Parameters: ‘K’ (‘~IirKind’) – Node to get first array index from.

     Return type: int(1)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.get_fields_last (K)

     Return the list of fields for node ‘K’.

     In Ada ‘Vhdl.Nodes_Meta.Get_Fields’ returns a ‘Fields_Array’.  To
     emulate this array access, the API provides
     get_fields_first() and ‘get_fields_last’.

     The fields are sorted: first the non nodes/list of nodes, then the
     nodes/lists that aren’t reference, and then the reference.

     Parameters: ‘K’ (‘~IirKind’) – Node to get last array index from.

     Return type: int(2)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.get_field_by_index (K)

     Return type: int(3)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.get_field_type (*args)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.get_field_attribute (*args)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_First_Design_Unit
          (kind)

     Return type: bool(4)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Last_Design_Unit (kind)

     Return type: bool(5)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Library_Declaration
          (kind)

     Return type: bool(6)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_File_Checksum (kind)

     Return type: bool(7)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Analysis_Time_Stamp
          (kind)

     Return type: bool(8)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_File_Source
          (kind)

     Return type: bool(9)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Library (kind)

     Return type: bool(10)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_File_Dependence_List
          (kind)

     Return type: bool(11)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_File_Filename
          (kind)

     Return type: bool(12)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_File_Directory
          (kind)

     Return type: bool(13)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_File (kind)

     Return type: bool(14)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_File_Chain
          (kind)

     Return type: bool(15)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Library_Directory
          (kind)

     Return type: bool(16)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Date (kind)

     Return type: bool(17)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Context_Items (kind)

     Return type: bool(18)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Dependence_List (kind)

     Return type: bool(19)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Analysis_Checks_List
          (kind)

     Return type: bool(20)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Date_State (kind)

     Return type: bool(21)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Guarded_Target_State
          (kind)

     Return type: bool(22)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Library_Unit (kind)

     Return type: bool(23)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Hash_Chain (kind)

     Return type: bool(24)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_Unit_Source_Pos
          (kind)

     Return type: bool(25)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_Unit_Source_Line
          (kind)

     Return type: bool(26)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_Unit_Source_Col
          (kind)

     Return type: bool(27)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Value (kind)

     Return type: bool(28)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Enum_Pos (kind)

     Return type: bool(29)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Physical_Literal (kind)

     Return type: bool(30)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Fp_Value (kind)

     Return type: bool(31)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Simple_Aggregate_List
          (kind)

     Return type: bool(32)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_String8_Id (kind)

     Return type: bool(33)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_String_Length (kind)

     Return type: bool(34)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Bit_String_Base (kind)

     Return type: bool(35)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Signed (kind)

     Return type: bool(36)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Sign (kind)

     Return type: bool(37)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Length (kind)

     Return type: bool(38)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Literal_Length (kind)

     Return type: bool(39)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Literal_Origin (kind)

     Return type: bool(40)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Range_Origin (kind)

     Return type: bool(41)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Literal_Subtype (kind)

     Return type: bool(42)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Allocator_Subtype
          (kind)

     Return type: bool(43)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Entity_Class (kind)

     Return type: bool(44)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Entity_Name_List (kind)

     Return type: bool(45)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Attribute_Designator
          (kind)

     Return type: bool(46)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Attribute_Specification_Chain
          (kind)

     Return type: bool(47)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Attribute_Specification
          (kind)

     Return type: bool(48)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Static_Attribute_Flag
          (kind)

     Return type: bool(49)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Signal_List (kind)

     Return type: bool(50)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Quantity_List (kind)

     Return type: bool(51)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Designated_Entity
          (kind)

     Return type: bool(52)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Formal (kind)

     Return type: bool(53)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Actual (kind)

     Return type: bool(54)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Actual_Conversion
          (kind)

     Return type: bool(55)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Formal_Conversion
          (kind)

     Return type: bool(56)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Whole_Association_Flag
          (kind)

     Return type: bool(57)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Collapse_Signal_Flag
          (kind)

     Return type: bool(58)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Artificial_Flag (kind)

     Return type: bool(59)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Open_Flag (kind)

     Return type: bool(60)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_After_Drivers_Flag
          (kind)

     Return type: bool(61)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_We_Value (kind)

     Return type: bool(62)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Time (kind)

     Return type: bool(63)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Associated_Expr (kind)

     Return type: bool(64)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Associated_Block (kind)

     Return type: bool(65)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Associated_Chain (kind)

     Return type: bool(66)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Choice_Name (kind)

     Return type: bool(67)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Choice_Expression
          (kind)

     Return type: bool(68)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Choice_Range (kind)

     Return type: bool(69)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Same_Alternative_Flag
          (kind)

     Return type: bool(70)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Element_Type_Flag
          (kind)

     Return type: bool(71)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Architecture (kind)

     Return type: bool(72)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Block_Specification
          (kind)

     Return type: bool(73)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Prev_Block_Configuration
          (kind)

     Return type: bool(74)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Configuration_Item_Chain
          (kind)

     Return type: bool(75)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Attribute_Value_Chain
          (kind)

     Return type: bool(76)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Spec_Chain (kind)

     Return type: bool(77)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Value_Chain (kind)

     Return type: bool(78)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Attribute_Value_Spec_Chain
          (kind)

     Return type: bool(79)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Entity_Name (kind)

     Return type: bool(80)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Package (kind)

     Return type: bool(81)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Package_Body (kind)

     Return type: bool(82)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Instance_Package_Body
          (kind)

     Return type: bool(83)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Need_Body (kind)

     Return type: bool(84)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Macro_Expanded_Flag
          (kind)

     Return type: bool(85)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Need_Instance_Bodies
          (kind)

     Return type: bool(86)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Hierarchical_Name
          (kind)

     Return type: bool(87)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Inherit_Spec_Chain
          (kind)

     Return type: bool(88)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Vunit_Item_Chain (kind)

     Return type: bool(89)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Bound_Vunit_Chain
          (kind)

     Return type: bool(90)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Verification_Block_Configuration
          (kind)

     Return type: bool(91)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Block_Configuration
          (kind)

     Return type: bool(92)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Concurrent_Statement_Chain
          (kind)

     Return type: bool(93)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Chain (kind)

     Return type: bool(94)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Port_Chain (kind)

     Return type: bool(95)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Generic_Chain (kind)

     Return type: bool(96)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Type (kind)

     Return type: bool(97)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Subtype_Indication
          (kind)

     Return type: bool(98)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Discrete_Range (kind)

     Return type: bool(99)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Type_Definition (kind)

     Return type: bool(100)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Subtype_Definition
          (kind)

     Return type: bool(101)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Incomplete_Type_Declaration
          (kind)

     Return type: bool(102)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Interface_Type_Subprograms
          (kind)

     Return type: bool(103)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Nature_Definition
          (kind)

     Return type: bool(104)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Nature (kind)

     Return type: bool(105)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Subnature_Indication
          (kind)

     Return type: bool(106)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Mode (kind)

     Return type: bool(107)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Guarded_Signal_Flag
          (kind)

     Return type: bool(108)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Signal_Kind (kind)

     Return type: bool(109)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Base_Name (kind)

     Return type: bool(110)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Interface_Declaration_Chain
          (kind)

     Return type: bool(111)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Subprogram_Specification
          (kind)

     Return type: bool(112)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Sequential_Statement_Chain
          (kind)

     Return type: bool(113)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Simultaneous_Statement_Chain
          (kind)

     Return type: bool(114)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Subprogram_Body (kind)

     Return type: bool(115)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Overload_Number (kind)

     Return type: bool(116)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Subprogram_Depth (kind)

     Return type: bool(117)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Subprogram_Hash (kind)

     Return type: bool(118)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Impure_Depth (kind)

     Return type: bool(119)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Return_Type (kind)

     Return type: bool(120)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Implicit_Definition
          (kind)

     Return type: bool(121)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Uninstantiated_Subprogram_Name
          (kind)

     Return type: bool(122)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Default_Value (kind)

     Return type: bool(123)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Deferred_Declaration
          (kind)

     Return type: bool(124)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Deferred_Declaration_Flag
          (kind)

     Return type: bool(125)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Shared_Flag (kind)

     Return type: bool(126)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Design_Unit (kind)

     Return type: bool(127)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Block_Statement (kind)

     Return type: bool(128)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Signal_Driver (kind)

     Return type: bool(129)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Declaration_Chain
          (kind)

     Return type: bool(130)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_File_Logical_Name
          (kind)

     Return type: bool(131)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_File_Open_Kind (kind)

     Return type: bool(132)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Element_Position (kind)

     Return type: bool(133)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Use_Clause_Chain (kind)

     Return type: bool(134)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Context_Reference_Chain
          (kind)

     Return type: bool(135)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Selected_Name (kind)

     Return type: bool(136)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Type_Declarator (kind)

     Return type: bool(137)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Complete_Type_Definition
          (kind)

     Return type: bool(138)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Incomplete_Type_Ref_Chain
          (kind)

     Return type: bool(139)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Associated_Type (kind)

     Return type: bool(140)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Enumeration_Literal_List
          (kind)

     Return type: bool(141)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Entity_Class_Entry_Chain
          (kind)

     Return type: bool(142)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Group_Constituent_List
          (kind)

     Return type: bool(143)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Unit_Chain (kind)

     Return type: bool(144)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Primary_Unit (kind)

     Return type: bool(145)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Identifier (kind)

     Return type: bool(146)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Label (kind)

     Return type: bool(147)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Visible_Flag (kind)

     Return type: bool(148)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Range_Constraint (kind)

     Return type: bool(149)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Direction (kind)

     Return type: bool(150)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Left_Limit (kind)

     Return type: bool(151)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Right_Limit (kind)

     Return type: bool(152)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Left_Limit_Expr (kind)

     Return type: bool(153)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Right_Limit_Expr (kind)

     Return type: bool(154)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Parent_Type (kind)

     Return type: bool(155)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Simple_Nature (kind)

     Return type: bool(156)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Base_Nature (kind)

     Return type: bool(157)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Resolution_Indication
          (kind)

     Return type: bool(158)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Record_Element_Resolution_Chain
          (kind)

     Return type: bool(159)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Tolerance (kind)

     Return type: bool(160)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Plus_Terminal_Name
          (kind)

     Return type: bool(161)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Minus_Terminal_Name
          (kind)

     Return type: bool(162)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Plus_Terminal (kind)

     Return type: bool(163)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Minus_Terminal (kind)

     Return type: bool(164)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Magnitude_Expression
          (kind)

     Return type: bool(165)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Phase_Expression (kind)

     Return type: bool(166)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Power_Expression (kind)

     Return type: bool(167)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Simultaneous_Left
          (kind)

     Return type: bool(168)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Simultaneous_Right
          (kind)

     Return type: bool(169)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Text_File_Flag (kind)

     Return type: bool(170)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Only_Characters_Flag
          (kind)

     Return type: bool(171)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Is_Character_Type
          (kind)

     Return type: bool(172)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Nature_Staticness
          (kind)

     Return type: bool(173)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Type_Staticness (kind)

     Return type: bool(174)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Constraint_State (kind)

     Return type: bool(175)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Index_Subtype_List
          (kind)

     Return type: bool(176)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Index_Subtype_Definition_List
          (kind)

     Return type: bool(177)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Element_Subtype_Indication
          (kind)

     Return type: bool(178)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Element_Subtype (kind)

     Return type: bool(179)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Element_Subnature_Indication
          (kind)

     Return type: bool(180)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Element_Subnature
          (kind)

     Return type: bool(181)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Index_Constraint_List
          (kind)

     Return type: bool(182)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Array_Element_Constraint
          (kind)

     Return type: bool(183)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Array_Constraint_Flag
          (kind)

     Return type: bool(184)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Element_Constraint_Flag
          (kind)

     Return type: bool(185)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Elements_Declaration_List
          (kind)

     Return type: bool(186)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Owned_Elements_Chain
          (kind)

     Return type: bool(187)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Designated_Type (kind)

     Return type: bool(188)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Designated_Subtype_Indication
          (kind)

     Return type: bool(189)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Index_List (kind)

     Return type: bool(190)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Reference (kind)

     Return type: bool(191)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Nature_Declarator
          (kind)

     Return type: bool(192)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Across_Type_Mark (kind)

     Return type: bool(193)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Through_Type_Mark
          (kind)

     Return type: bool(194)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Across_Type_Definition
          (kind)

     Return type: bool(195)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Through_Type_Definition
          (kind)

     Return type: bool(196)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Across_Type (kind)

     Return type: bool(197)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Through_Type (kind)

     Return type: bool(198)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Target (kind)

     Return type: bool(199)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Waveform_Chain (kind)

     Return type: bool(200)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Guard (kind)

     Return type: bool(201)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Delay_Mechanism (kind)

     Return type: bool(202)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Reject_Time_Expression
          (kind)

     Return type: bool(203)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Force_Mode (kind)

     Return type: bool(204)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Force_Mode (kind)

     Return type: bool(205)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Sensitivity_List (kind)

     Return type: bool(206)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Process_Origin (kind)

     Return type: bool(207)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Package_Origin (kind)

     Return type: bool(208)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Condition_Clause (kind)

     Return type: bool(209)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Break_Element (kind)

     Return type: bool(210)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Selector_Quantity
          (kind)

     Return type: bool(211)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Break_Quantity (kind)

     Return type: bool(212)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Timeout_Clause (kind)

     Return type: bool(213)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Postponed_Flag (kind)

     Return type: bool(214)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Callees_List (kind)

     Return type: bool(215)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Passive_Flag (kind)

     Return type: bool(216)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Resolution_Function_Flag
          (kind)

     Return type: bool(217)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Wait_State (kind)

     Return type: bool(218)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_All_Sensitized_State
          (kind)

     Return type: bool(219)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Seen_Flag (kind)

     Return type: bool(220)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Pure_Flag (kind)

     Return type: bool(221)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Foreign_Flag (kind)

     Return type: bool(222)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Resolved_Flag (kind)

     Return type: bool(223)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Signal_Type_Flag (kind)

     Return type: bool(224)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Signal_Flag (kind)

     Return type: bool(225)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Purity_State (kind)

     Return type: bool(226)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Elab_Flag (kind)

     Return type: bool(227)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Vendor_Library_Flag
          (kind)

     Return type: bool(228)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Configuration_Mark_Flag
          (kind)

     Return type: bool(229)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Configuration_Done_Flag
          (kind)

     Return type: bool(230)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Index_Constraint_Flag
          (kind)

     Return type: bool(231)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Hide_Implicit_Flag
          (kind)

     Return type: bool(232)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Assertion_Condition
          (kind)

     Return type: bool(233)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Report_Expression
          (kind)

     Return type: bool(234)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Severity_Expression
          (kind)

     Return type: bool(235)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Instantiated_Unit
          (kind)

     Return type: bool(236)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Generic_Map_Aspect_Chain
          (kind)

     Return type: bool(237)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Port_Map_Aspect_Chain
          (kind)

     Return type: bool(238)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Configuration_Name
          (kind)

     Return type: bool(239)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Component_Configuration
          (kind)

     Return type: bool(240)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Configuration_Specification
          (kind)

     Return type: bool(241)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Default_Binding_Indication
          (kind)

     Return type: bool(242)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Default_Configuration_Declaration
          (kind)

     Return type: bool(243)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Expression (kind)

     Return type: bool(244)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Conditional_Expression_Chain
          (kind)

     Return type: bool(245)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Allocator_Designated_Type
          (kind)

     Return type: bool(246)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Selected_Waveform_Chain
          (kind)

     Return type: bool(247)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Conditional_Waveform_Chain
          (kind)

     Return type: bool(248)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Guard_Expression (kind)

     Return type: bool(249)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Guard_Decl (kind)

     Return type: bool(250)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Guard_Sensitivity_List
          (kind)

     Return type: bool(251)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Signal_Attribute_Chain
          (kind)

     Return type: bool(252)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Block_Block_Configuration
          (kind)

     Return type: bool(253)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Package_Header (kind)

     Return type: bool(254)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Block_Header (kind)

     Return type: bool(255)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Uninstantiated_Package_Name
          (kind)

     Return type: bool(256)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Uninstantiated_Package_Decl
          (kind)

     Return type: bool(257)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Instance_Source_File
          (kind)

     Return type: bool(258)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Generate_Block_Configuration
          (kind)

     Return type: bool(259)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Generate_Statement_Body
          (kind)

     Return type: bool(260)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Alternative_Label
          (kind)

     Return type: bool(261)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Generate_Else_Clause
          (kind)

     Return type: bool(262)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Condition (kind)

     Return type: bool(263)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Else_Clause (kind)

     Return type: bool(264)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Parameter_Specification
          (kind)

     Return type: bool(265)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Parent (kind)

     Return type: bool(266)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Loop_Label (kind)

     Return type: bool(267)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Exit_Flag (kind)

     Return type: bool(268)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Next_Flag (kind)

     Return type: bool(269)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Component_Name (kind)

     Return type: bool(270)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Instantiation_List
          (kind)

     Return type: bool(271)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Entity_Aspect (kind)

     Return type: bool(272)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Default_Entity_Aspect
          (kind)

     Return type: bool(273)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Binding_Indication
          (kind)

     Return type: bool(274)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Named_Entity (kind)

     Return type: bool(275)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Referenced_Name (kind)

     Return type: bool(276)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Expr_Staticness (kind)

     Return type: bool(277)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Scalar_Size (kind)

     Return type: bool(278)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Error_Origin (kind)

     Return type: bool(279)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Operand (kind)

     Return type: bool(280)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Left (kind)

     Return type: bool(281)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Right (kind)

     Return type: bool(282)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Unit_Name (kind)

     Return type: bool(283)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Name (kind)

     Return type: bool(284)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Group_Template_Name
          (kind)

     Return type: bool(285)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Name_Staticness (kind)

     Return type: bool(286)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Prefix (kind)

     Return type: bool(287)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Signature_Prefix (kind)

     Return type: bool(288)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_External_Pathname
          (kind)

     Return type: bool(289)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Pathname_Suffix (kind)

     Return type: bool(290)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Pathname_Expression
          (kind)

     Return type: bool(291)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_In_Formal_Flag (kind)

     Return type: bool(292)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Slice_Subtype (kind)

     Return type: bool(293)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Suffix (kind)

     Return type: bool(294)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Index_Subtype (kind)

     Return type: bool(295)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Parameter (kind)

     Return type: bool(296)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Parameter_2 (kind)

     Return type: bool(297)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Parameter_3 (kind)

     Return type: bool(298)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Parameter_4 (kind)

     Return type: bool(299)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Attr_Chain (kind)

     Return type: bool(300)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Signal_Attribute_Declaration
          (kind)

     Return type: bool(301)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Actual_Type (kind)

     Return type: bool(302)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Actual_Type_Definition
          (kind)

     Return type: bool(303)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Association_Chain
          (kind)

     Return type: bool(304)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Individual_Association_Chain
          (kind)

     Return type: bool(305)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Subprogram_Association_Chain
          (kind)

     Return type: bool(306)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Aggregate_Info (kind)

     Return type: bool(307)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Sub_Aggregate_Info
          (kind)

     Return type: bool(308)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Aggr_Dynamic_Flag
          (kind)

     Return type: bool(309)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Aggr_Min_Length (kind)

     Return type: bool(310)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Aggr_Low_Limit (kind)

     Return type: bool(311)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Aggr_High_Limit (kind)

     Return type: bool(312)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Aggr_Others_Flag (kind)

     Return type: bool(313)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Aggr_Named_Flag (kind)

     Return type: bool(314)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Aggregate_Expand_Flag
          (kind)

     Return type: bool(315)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Association_Choices_Chain
          (kind)

     Return type: bool(316)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Case_Statement_Alternative_Chain
          (kind)

     Return type: bool(317)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Choice_Staticness
          (kind)

     Return type: bool(318)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Procedure_Call (kind)

     Return type: bool(319)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Implementation (kind)

     Return type: bool(320)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Parameter_Association_Chain
          (kind)

     Return type: bool(321)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Method_Object (kind)

     Return type: bool(322)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Subtype_Type_Mark
          (kind)

     Return type: bool(323)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Subnature_Nature_Mark
          (kind)

     Return type: bool(324)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Type_Conversion_Subtype
          (kind)

     Return type: bool(325)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Type_Mark (kind)

     Return type: bool(326)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_File_Type_Mark (kind)

     Return type: bool(327)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Return_Type_Mark (kind)

     Return type: bool(328)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Disconnect_Flag
          (kind)

     Return type: bool(329)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Active_Flag (kind)

     Return type: bool(330)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Is_Within_Flag (kind)

     Return type: bool(331)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Type_Marks_List (kind)

     Return type: bool(332)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Implicit_Alias_Flag
          (kind)

     Return type: bool(333)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Alias_Signature (kind)

     Return type: bool(334)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Attribute_Signature
          (kind)

     Return type: bool(335)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Overload_List (kind)

     Return type: bool(336)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Simple_Name_Identifier
          (kind)

     Return type: bool(337)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Simple_Name_Subtype
          (kind)

     Return type: bool(338)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Protected_Type_Body
          (kind)

     Return type: bool(339)

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_meta.Has_Protected_Type_Declaration
          (kind)

     Return type: bool(340)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Use_Flag (kind)

     Return type: bool(341)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_End_Has_Reserved_Id
          (kind)

     Return type: bool(342)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_End_Has_Identifier
          (kind)

     Return type: bool(343)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_End_Has_Postponed
          (kind)

     Return type: bool(344)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Label (kind)

     Return type: bool(345)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Begin (kind)

     Return type: bool(346)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_End (kind)

     Return type: bool(347)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Is (kind)

     Return type: bool(348)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Pure (kind)

     Return type: bool(349)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Body (kind)

     Return type: bool(350)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Parameter (kind)

     Return type: bool(351)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Component (kind)

     Return type: bool(352)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Identifier_List
          (kind)

     Return type: bool(353)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Mode (kind)

     Return type: bool(354)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Class (kind)

     Return type: bool(355)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Has_Delay_Mechanism
          (kind)

     Return type: bool(356)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Suspend_Flag (kind)

     Return type: bool(357)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Is_Ref (kind)

     Return type: bool(358)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Is_Forward_Ref (kind)

     Return type: bool(359)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Psl_Property (kind)

     Return type: bool(360)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Psl_Sequence (kind)

     Return type: bool(361)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Psl_Declaration (kind)

     Return type: bool(362)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Psl_Expression (kind)

     Return type: bool(363)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Psl_Boolean (kind)

     Return type: bool(364)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_PSL_Clock (kind)

     Return type: bool(365)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_PSL_NFA (kind)

     Return type: bool(366)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_PSL_Nbr_States (kind)

     Return type: bool(367)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_PSL_Clock_Sensitivity
          (kind)

     Return type: bool(368)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_PSL_EOS_Flag (kind)

     Return type: bool(369)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Count_Expression (kind)

     Return type: bool(370)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Clock_Expression (kind)

     Return type: bool(371)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Default_Clock (kind)

     Return type: bool(372)

 -- Function: pyGHDL.libghdl.vhdl.nodes_meta.Has_Foreign_Node (kind)

     Return type: bool(373)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#int

   (2) https://docs.python.org/3.6/library/functions.html#int

   (3) https://docs.python.org/3.6/library/functions.html#int

   (4) https://docs.python.org/3.6/library/functions.html#bool

   (5) https://docs.python.org/3.6/library/functions.html#bool

   (6) https://docs.python.org/3.6/library/functions.html#bool

   (7) https://docs.python.org/3.6/library/functions.html#bool

   (8) https://docs.python.org/3.6/library/functions.html#bool

   (9) https://docs.python.org/3.6/library/functions.html#bool

   (10) https://docs.python.org/3.6/library/functions.html#bool

   (11) https://docs.python.org/3.6/library/functions.html#bool

   (12) https://docs.python.org/3.6/library/functions.html#bool

   (13) https://docs.python.org/3.6/library/functions.html#bool

   (14) https://docs.python.org/3.6/library/functions.html#bool

   (15) https://docs.python.org/3.6/library/functions.html#bool

   (16) https://docs.python.org/3.6/library/functions.html#bool

   (17) https://docs.python.org/3.6/library/functions.html#bool

   (18) https://docs.python.org/3.6/library/functions.html#bool

   (19) https://docs.python.org/3.6/library/functions.html#bool

   (20) https://docs.python.org/3.6/library/functions.html#bool

   (21) https://docs.python.org/3.6/library/functions.html#bool

   (22) https://docs.python.org/3.6/library/functions.html#bool

   (23) https://docs.python.org/3.6/library/functions.html#bool

   (24) https://docs.python.org/3.6/library/functions.html#bool

   (25) https://docs.python.org/3.6/library/functions.html#bool

   (26) https://docs.python.org/3.6/library/functions.html#bool

   (27) https://docs.python.org/3.6/library/functions.html#bool

   (28) https://docs.python.org/3.6/library/functions.html#bool

   (29) https://docs.python.org/3.6/library/functions.html#bool

   (30) https://docs.python.org/3.6/library/functions.html#bool

   (31) https://docs.python.org/3.6/library/functions.html#bool

   (32) https://docs.python.org/3.6/library/functions.html#bool

   (33) https://docs.python.org/3.6/library/functions.html#bool

   (34) https://docs.python.org/3.6/library/functions.html#bool

   (35) https://docs.python.org/3.6/library/functions.html#bool

   (36) https://docs.python.org/3.6/library/functions.html#bool

   (37) https://docs.python.org/3.6/library/functions.html#bool

   (38) https://docs.python.org/3.6/library/functions.html#bool

   (39) https://docs.python.org/3.6/library/functions.html#bool

   (40) https://docs.python.org/3.6/library/functions.html#bool

   (41) https://docs.python.org/3.6/library/functions.html#bool

   (42) https://docs.python.org/3.6/library/functions.html#bool

   (43) https://docs.python.org/3.6/library/functions.html#bool

   (44) https://docs.python.org/3.6/library/functions.html#bool

   (45) https://docs.python.org/3.6/library/functions.html#bool

   (46) https://docs.python.org/3.6/library/functions.html#bool

   (47) https://docs.python.org/3.6/library/functions.html#bool

   (48) https://docs.python.org/3.6/library/functions.html#bool

   (49) https://docs.python.org/3.6/library/functions.html#bool

   (50) https://docs.python.org/3.6/library/functions.html#bool

   (51) https://docs.python.org/3.6/library/functions.html#bool

   (52) https://docs.python.org/3.6/library/functions.html#bool

   (53) https://docs.python.org/3.6/library/functions.html#bool

   (54) https://docs.python.org/3.6/library/functions.html#bool

   (55) https://docs.python.org/3.6/library/functions.html#bool

   (56) https://docs.python.org/3.6/library/functions.html#bool

   (57) https://docs.python.org/3.6/library/functions.html#bool

   (58) https://docs.python.org/3.6/library/functions.html#bool

   (59) https://docs.python.org/3.6/library/functions.html#bool

   (60) https://docs.python.org/3.6/library/functions.html#bool

   (61) https://docs.python.org/3.6/library/functions.html#bool

   (62) https://docs.python.org/3.6/library/functions.html#bool

   (63) https://docs.python.org/3.6/library/functions.html#bool

   (64) https://docs.python.org/3.6/library/functions.html#bool

   (65) https://docs.python.org/3.6/library/functions.html#bool

   (66) https://docs.python.org/3.6/library/functions.html#bool

   (67) https://docs.python.org/3.6/library/functions.html#bool

   (68) https://docs.python.org/3.6/library/functions.html#bool

   (69) https://docs.python.org/3.6/library/functions.html#bool

   (70) https://docs.python.org/3.6/library/functions.html#bool

   (71) https://docs.python.org/3.6/library/functions.html#bool

   (72) https://docs.python.org/3.6/library/functions.html#bool

   (73) https://docs.python.org/3.6/library/functions.html#bool

   (74) https://docs.python.org/3.6/library/functions.html#bool

   (75) https://docs.python.org/3.6/library/functions.html#bool

   (76) https://docs.python.org/3.6/library/functions.html#bool

   (77) https://docs.python.org/3.6/library/functions.html#bool

   (78) https://docs.python.org/3.6/library/functions.html#bool

   (79) https://docs.python.org/3.6/library/functions.html#bool

   (80) https://docs.python.org/3.6/library/functions.html#bool

   (81) https://docs.python.org/3.6/library/functions.html#bool

   (82) https://docs.python.org/3.6/library/functions.html#bool

   (83) https://docs.python.org/3.6/library/functions.html#bool

   (84) https://docs.python.org/3.6/library/functions.html#bool

   (85) https://docs.python.org/3.6/library/functions.html#bool

   (86) https://docs.python.org/3.6/library/functions.html#bool

   (87) https://docs.python.org/3.6/library/functions.html#bool

   (88) https://docs.python.org/3.6/library/functions.html#bool

   (89) https://docs.python.org/3.6/library/functions.html#bool

   (90) https://docs.python.org/3.6/library/functions.html#bool

   (91) https://docs.python.org/3.6/library/functions.html#bool

   (92) https://docs.python.org/3.6/library/functions.html#bool

   (93) https://docs.python.org/3.6/library/functions.html#bool

   (94) https://docs.python.org/3.6/library/functions.html#bool

   (95) https://docs.python.org/3.6/library/functions.html#bool

   (96) https://docs.python.org/3.6/library/functions.html#bool

   (97) https://docs.python.org/3.6/library/functions.html#bool

   (98) https://docs.python.org/3.6/library/functions.html#bool

   (99) https://docs.python.org/3.6/library/functions.html#bool

   (100) https://docs.python.org/3.6/library/functions.html#bool

   (101) https://docs.python.org/3.6/library/functions.html#bool

   (102) https://docs.python.org/3.6/library/functions.html#bool

   (103) https://docs.python.org/3.6/library/functions.html#bool

   (104) https://docs.python.org/3.6/library/functions.html#bool

   (105) https://docs.python.org/3.6/library/functions.html#bool

   (106) https://docs.python.org/3.6/library/functions.html#bool

   (107) https://docs.python.org/3.6/library/functions.html#bool

   (108) https://docs.python.org/3.6/library/functions.html#bool

   (109) https://docs.python.org/3.6/library/functions.html#bool

   (110) https://docs.python.org/3.6/library/functions.html#bool

   (111) https://docs.python.org/3.6/library/functions.html#bool

   (112) https://docs.python.org/3.6/library/functions.html#bool

   (113) https://docs.python.org/3.6/library/functions.html#bool

   (114) https://docs.python.org/3.6/library/functions.html#bool

   (115) https://docs.python.org/3.6/library/functions.html#bool

   (116) https://docs.python.org/3.6/library/functions.html#bool

   (117) https://docs.python.org/3.6/library/functions.html#bool

   (118) https://docs.python.org/3.6/library/functions.html#bool

   (119) https://docs.python.org/3.6/library/functions.html#bool

   (120) https://docs.python.org/3.6/library/functions.html#bool

   (121) https://docs.python.org/3.6/library/functions.html#bool

   (122) https://docs.python.org/3.6/library/functions.html#bool

   (123) https://docs.python.org/3.6/library/functions.html#bool

   (124) https://docs.python.org/3.6/library/functions.html#bool

   (125) https://docs.python.org/3.6/library/functions.html#bool

   (126) https://docs.python.org/3.6/library/functions.html#bool

   (127) https://docs.python.org/3.6/library/functions.html#bool

   (128) https://docs.python.org/3.6/library/functions.html#bool

   (129) https://docs.python.org/3.6/library/functions.html#bool

   (130) https://docs.python.org/3.6/library/functions.html#bool

   (131) https://docs.python.org/3.6/library/functions.html#bool

   (132) https://docs.python.org/3.6/library/functions.html#bool

   (133) https://docs.python.org/3.6/library/functions.html#bool

   (134) https://docs.python.org/3.6/library/functions.html#bool

   (135) https://docs.python.org/3.6/library/functions.html#bool

   (136) https://docs.python.org/3.6/library/functions.html#bool

   (137) https://docs.python.org/3.6/library/functions.html#bool

   (138) https://docs.python.org/3.6/library/functions.html#bool

   (139) https://docs.python.org/3.6/library/functions.html#bool

   (140) https://docs.python.org/3.6/library/functions.html#bool

   (141) https://docs.python.org/3.6/library/functions.html#bool

   (142) https://docs.python.org/3.6/library/functions.html#bool

   (143) https://docs.python.org/3.6/library/functions.html#bool

   (144) https://docs.python.org/3.6/library/functions.html#bool

   (145) https://docs.python.org/3.6/library/functions.html#bool

   (146) https://docs.python.org/3.6/library/functions.html#bool

   (147) https://docs.python.org/3.6/library/functions.html#bool

   (148) https://docs.python.org/3.6/library/functions.html#bool

   (149) https://docs.python.org/3.6/library/functions.html#bool

   (150) https://docs.python.org/3.6/library/functions.html#bool

   (151) https://docs.python.org/3.6/library/functions.html#bool

   (152) https://docs.python.org/3.6/library/functions.html#bool

   (153) https://docs.python.org/3.6/library/functions.html#bool

   (154) https://docs.python.org/3.6/library/functions.html#bool

   (155) https://docs.python.org/3.6/library/functions.html#bool

   (156) https://docs.python.org/3.6/library/functions.html#bool

   (157) https://docs.python.org/3.6/library/functions.html#bool

   (158) https://docs.python.org/3.6/library/functions.html#bool

   (159) https://docs.python.org/3.6/library/functions.html#bool

   (160) https://docs.python.org/3.6/library/functions.html#bool

   (161) https://docs.python.org/3.6/library/functions.html#bool

   (162) https://docs.python.org/3.6/library/functions.html#bool

   (163) https://docs.python.org/3.6/library/functions.html#bool

   (164) https://docs.python.org/3.6/library/functions.html#bool

   (165) https://docs.python.org/3.6/library/functions.html#bool

   (166) https://docs.python.org/3.6/library/functions.html#bool

   (167) https://docs.python.org/3.6/library/functions.html#bool

   (168) https://docs.python.org/3.6/library/functions.html#bool

   (169) https://docs.python.org/3.6/library/functions.html#bool

   (170) https://docs.python.org/3.6/library/functions.html#bool

   (171) https://docs.python.org/3.6/library/functions.html#bool

   (172) https://docs.python.org/3.6/library/functions.html#bool

   (173) https://docs.python.org/3.6/library/functions.html#bool

   (174) https://docs.python.org/3.6/library/functions.html#bool

   (175) https://docs.python.org/3.6/library/functions.html#bool

   (176) https://docs.python.org/3.6/library/functions.html#bool

   (177) https://docs.python.org/3.6/library/functions.html#bool

   (178) https://docs.python.org/3.6/library/functions.html#bool

   (179) https://docs.python.org/3.6/library/functions.html#bool

   (180) https://docs.python.org/3.6/library/functions.html#bool

   (181) https://docs.python.org/3.6/library/functions.html#bool

   (182) https://docs.python.org/3.6/library/functions.html#bool

   (183) https://docs.python.org/3.6/library/functions.html#bool

   (184) https://docs.python.org/3.6/library/functions.html#bool

   (185) https://docs.python.org/3.6/library/functions.html#bool

   (186) https://docs.python.org/3.6/library/functions.html#bool

   (187) https://docs.python.org/3.6/library/functions.html#bool

   (188) https://docs.python.org/3.6/library/functions.html#bool

   (189) https://docs.python.org/3.6/library/functions.html#bool

   (190) https://docs.python.org/3.6/library/functions.html#bool

   (191) https://docs.python.org/3.6/library/functions.html#bool

   (192) https://docs.python.org/3.6/library/functions.html#bool

   (193) https://docs.python.org/3.6/library/functions.html#bool

   (194) https://docs.python.org/3.6/library/functions.html#bool

   (195) https://docs.python.org/3.6/library/functions.html#bool

   (196) https://docs.python.org/3.6/library/functions.html#bool

   (197) https://docs.python.org/3.6/library/functions.html#bool

   (198) https://docs.python.org/3.6/library/functions.html#bool

   (199) https://docs.python.org/3.6/library/functions.html#bool

   (200) https://docs.python.org/3.6/library/functions.html#bool

   (201) https://docs.python.org/3.6/library/functions.html#bool

   (202) https://docs.python.org/3.6/library/functions.html#bool

   (203) https://docs.python.org/3.6/library/functions.html#bool

   (204) https://docs.python.org/3.6/library/functions.html#bool

   (205) https://docs.python.org/3.6/library/functions.html#bool

   (206) https://docs.python.org/3.6/library/functions.html#bool

   (207) https://docs.python.org/3.6/library/functions.html#bool

   (208) https://docs.python.org/3.6/library/functions.html#bool

   (209) https://docs.python.org/3.6/library/functions.html#bool

   (210) https://docs.python.org/3.6/library/functions.html#bool

   (211) https://docs.python.org/3.6/library/functions.html#bool

   (212) https://docs.python.org/3.6/library/functions.html#bool

   (213) https://docs.python.org/3.6/library/functions.html#bool

   (214) https://docs.python.org/3.6/library/functions.html#bool

   (215) https://docs.python.org/3.6/library/functions.html#bool

   (216) https://docs.python.org/3.6/library/functions.html#bool

   (217) https://docs.python.org/3.6/library/functions.html#bool

   (218) https://docs.python.org/3.6/library/functions.html#bool

   (219) https://docs.python.org/3.6/library/functions.html#bool

   (220) https://docs.python.org/3.6/library/functions.html#bool

   (221) https://docs.python.org/3.6/library/functions.html#bool

   (222) https://docs.python.org/3.6/library/functions.html#bool

   (223) https://docs.python.org/3.6/library/functions.html#bool

   (224) https://docs.python.org/3.6/library/functions.html#bool

   (225) https://docs.python.org/3.6/library/functions.html#bool

   (226) https://docs.python.org/3.6/library/functions.html#bool

   (227) https://docs.python.org/3.6/library/functions.html#bool

   (228) https://docs.python.org/3.6/library/functions.html#bool

   (229) https://docs.python.org/3.6/library/functions.html#bool

   (230) https://docs.python.org/3.6/library/functions.html#bool

   (231) https://docs.python.org/3.6/library/functions.html#bool

   (232) https://docs.python.org/3.6/library/functions.html#bool

   (233) https://docs.python.org/3.6/library/functions.html#bool

   (234) https://docs.python.org/3.6/library/functions.html#bool

   (235) https://docs.python.org/3.6/library/functions.html#bool

   (236) https://docs.python.org/3.6/library/functions.html#bool

   (237) https://docs.python.org/3.6/library/functions.html#bool

   (238) https://docs.python.org/3.6/library/functions.html#bool

   (239) https://docs.python.org/3.6/library/functions.html#bool

   (240) https://docs.python.org/3.6/library/functions.html#bool

   (241) https://docs.python.org/3.6/library/functions.html#bool

   (242) https://docs.python.org/3.6/library/functions.html#bool

   (243) https://docs.python.org/3.6/library/functions.html#bool

   (244) https://docs.python.org/3.6/library/functions.html#bool

   (245) https://docs.python.org/3.6/library/functions.html#bool

   (246) https://docs.python.org/3.6/library/functions.html#bool

   (247) https://docs.python.org/3.6/library/functions.html#bool

   (248) https://docs.python.org/3.6/library/functions.html#bool

   (249) https://docs.python.org/3.6/library/functions.html#bool

   (250) https://docs.python.org/3.6/library/functions.html#bool

   (251) https://docs.python.org/3.6/library/functions.html#bool

   (252) https://docs.python.org/3.6/library/functions.html#bool

   (253) https://docs.python.org/3.6/library/functions.html#bool

   (254) https://docs.python.org/3.6/library/functions.html#bool

   (255) https://docs.python.org/3.6/library/functions.html#bool

   (256) https://docs.python.org/3.6/library/functions.html#bool

   (257) https://docs.python.org/3.6/library/functions.html#bool

   (258) https://docs.python.org/3.6/library/functions.html#bool

   (259) https://docs.python.org/3.6/library/functions.html#bool

   (260) https://docs.python.org/3.6/library/functions.html#bool

   (261) https://docs.python.org/3.6/library/functions.html#bool

   (262) https://docs.python.org/3.6/library/functions.html#bool

   (263) https://docs.python.org/3.6/library/functions.html#bool

   (264) https://docs.python.org/3.6/library/functions.html#bool

   (265) https://docs.python.org/3.6/library/functions.html#bool

   (266) https://docs.python.org/3.6/library/functions.html#bool

   (267) https://docs.python.org/3.6/library/functions.html#bool

   (268) https://docs.python.org/3.6/library/functions.html#bool

   (269) https://docs.python.org/3.6/library/functions.html#bool

   (270) https://docs.python.org/3.6/library/functions.html#bool

   (271) https://docs.python.org/3.6/library/functions.html#bool

   (272) https://docs.python.org/3.6/library/functions.html#bool

   (273) https://docs.python.org/3.6/library/functions.html#bool

   (274) https://docs.python.org/3.6/library/functions.html#bool

   (275) https://docs.python.org/3.6/library/functions.html#bool

   (276) https://docs.python.org/3.6/library/functions.html#bool

   (277) https://docs.python.org/3.6/library/functions.html#bool

   (278) https://docs.python.org/3.6/library/functions.html#bool

   (279) https://docs.python.org/3.6/library/functions.html#bool

   (280) https://docs.python.org/3.6/library/functions.html#bool

   (281) https://docs.python.org/3.6/library/functions.html#bool

   (282) https://docs.python.org/3.6/library/functions.html#bool

   (283) https://docs.python.org/3.6/library/functions.html#bool

   (284) https://docs.python.org/3.6/library/functions.html#bool

   (285) https://docs.python.org/3.6/library/functions.html#bool

   (286) https://docs.python.org/3.6/library/functions.html#bool

   (287) https://docs.python.org/3.6/library/functions.html#bool

   (288) https://docs.python.org/3.6/library/functions.html#bool

   (289) https://docs.python.org/3.6/library/functions.html#bool

   (290) https://docs.python.org/3.6/library/functions.html#bool

   (291) https://docs.python.org/3.6/library/functions.html#bool

   (292) https://docs.python.org/3.6/library/functions.html#bool

   (293) https://docs.python.org/3.6/library/functions.html#bool

   (294) https://docs.python.org/3.6/library/functions.html#bool

   (295) https://docs.python.org/3.6/library/functions.html#bool

   (296) https://docs.python.org/3.6/library/functions.html#bool

   (297) https://docs.python.org/3.6/library/functions.html#bool

   (298) https://docs.python.org/3.6/library/functions.html#bool

   (299) https://docs.python.org/3.6/library/functions.html#bool

   (300) https://docs.python.org/3.6/library/functions.html#bool

   (301) https://docs.python.org/3.6/library/functions.html#bool

   (302) https://docs.python.org/3.6/library/functions.html#bool

   (303) https://docs.python.org/3.6/library/functions.html#bool

   (304) https://docs.python.org/3.6/library/functions.html#bool

   (305) https://docs.python.org/3.6/library/functions.html#bool

   (306) https://docs.python.org/3.6/library/functions.html#bool

   (307) https://docs.python.org/3.6/library/functions.html#bool

   (308) https://docs.python.org/3.6/library/functions.html#bool

   (309) https://docs.python.org/3.6/library/functions.html#bool

   (310) https://docs.python.org/3.6/library/functions.html#bool

   (311) https://docs.python.org/3.6/library/functions.html#bool

   (312) https://docs.python.org/3.6/library/functions.html#bool

   (313) https://docs.python.org/3.6/library/functions.html#bool

   (314) https://docs.python.org/3.6/library/functions.html#bool

   (315) https://docs.python.org/3.6/library/functions.html#bool

   (316) https://docs.python.org/3.6/library/functions.html#bool

   (317) https://docs.python.org/3.6/library/functions.html#bool

   (318) https://docs.python.org/3.6/library/functions.html#bool

   (319) https://docs.python.org/3.6/library/functions.html#bool

   (320) https://docs.python.org/3.6/library/functions.html#bool

   (321) https://docs.python.org/3.6/library/functions.html#bool

   (322) https://docs.python.org/3.6/library/functions.html#bool

   (323) https://docs.python.org/3.6/library/functions.html#bool

   (324) https://docs.python.org/3.6/library/functions.html#bool

   (325) https://docs.python.org/3.6/library/functions.html#bool

   (326) https://docs.python.org/3.6/library/functions.html#bool

   (327) https://docs.python.org/3.6/library/functions.html#bool

   (328) https://docs.python.org/3.6/library/functions.html#bool

   (329) https://docs.python.org/3.6/library/functions.html#bool

   (330) https://docs.python.org/3.6/library/functions.html#bool

   (331) https://docs.python.org/3.6/library/functions.html#bool

   (332) https://docs.python.org/3.6/library/functions.html#bool

   (333) https://docs.python.org/3.6/library/functions.html#bool

   (334) https://docs.python.org/3.6/library/functions.html#bool

   (335) https://docs.python.org/3.6/library/functions.html#bool

   (336) https://docs.python.org/3.6/library/functions.html#bool

   (337) https://docs.python.org/3.6/library/functions.html#bool

   (338) https://docs.python.org/3.6/library/functions.html#bool

   (339) https://docs.python.org/3.6/library/functions.html#bool

   (340) https://docs.python.org/3.6/library/functions.html#bool

   (341) https://docs.python.org/3.6/library/functions.html#bool

   (342) https://docs.python.org/3.6/library/functions.html#bool

   (343) https://docs.python.org/3.6/library/functions.html#bool

   (344) https://docs.python.org/3.6/library/functions.html#bool

   (345) https://docs.python.org/3.6/library/functions.html#bool

   (346) https://docs.python.org/3.6/library/functions.html#bool

   (347) https://docs.python.org/3.6/library/functions.html#bool

   (348) https://docs.python.org/3.6/library/functions.html#bool

   (349) https://docs.python.org/3.6/library/functions.html#bool

   (350) https://docs.python.org/3.6/library/functions.html#bool

   (351) https://docs.python.org/3.6/library/functions.html#bool

   (352) https://docs.python.org/3.6/library/functions.html#bool

   (353) https://docs.python.org/3.6/library/functions.html#bool

   (354) https://docs.python.org/3.6/library/functions.html#bool

   (355) https://docs.python.org/3.6/library/functions.html#bool

   (356) https://docs.python.org/3.6/library/functions.html#bool

   (357) https://docs.python.org/3.6/library/functions.html#bool

   (358) https://docs.python.org/3.6/library/functions.html#bool

   (359) https://docs.python.org/3.6/library/functions.html#bool

   (360) https://docs.python.org/3.6/library/functions.html#bool

   (361) https://docs.python.org/3.6/library/functions.html#bool

   (362) https://docs.python.org/3.6/library/functions.html#bool

   (363) https://docs.python.org/3.6/library/functions.html#bool

   (364) https://docs.python.org/3.6/library/functions.html#bool

   (365) https://docs.python.org/3.6/library/functions.html#bool

   (366) https://docs.python.org/3.6/library/functions.html#bool

   (367) https://docs.python.org/3.6/library/functions.html#bool

   (368) https://docs.python.org/3.6/library/functions.html#bool

   (369) https://docs.python.org/3.6/library/functions.html#bool

   (370) https://docs.python.org/3.6/library/functions.html#bool

   (371) https://docs.python.org/3.6/library/functions.html#bool

   (372) https://docs.python.org/3.6/library/functions.html#bool

   (373) https://docs.python.org/3.6/library/functions.html#bool

14.3.14.9 pyGHDL.libghdl.vhdl.nodes_utils
.........................................

`Functions'

   - Strip_Denoting_Name().: If ‘Name’ is a simple or an
     expanded name, return the denoted declaration.

   - Get_Entity().: This is a wrapper around
     ‘Get_Entity_Name’ to return the entity declaration

   - Is_Second_Subprogram_Specification().: Check if ‘Spec’
     is the subprogram specification of a subprogram body

   - Get_Entity_From_Entity_Aspect().: Extract the entity
     from ‘Aspect’.

   - Get_Interface_Of_Formal().: Get the interface
     corresponding to the formal name ‘Formal’.  This is

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.nodes_utils.Strip_Denoting_Name (Name)

     If ‘Name’ is a simple or an expanded name, return the denoted
     declaration.  Otherwise, return ‘Name’.

     Parameters: ‘Name’ (‘~Iir’) – Simple or an expanded name.

     Return type: ~Iir

     Returns: Denoted declaration.

 -- Function: pyGHDL.libghdl.vhdl.nodes_utils.Get_Entity (Decl)

     This is a wrapper around ‘Get_Entity_Name’ to return the entity
     declaration of the entity name of ‘Decl’, or ‘Null_Iir’ in case of
     error.

     Parameters: ‘Decl’ (‘~Iir’) – Declaration

     Return type: ~Iir

     Returns: Entity

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_utils.Is_Second_Subprogram_Specification
          (Spec)

     Check if ‘Spec’ is the subprogram specification of a subprogram
     body which was previously declared.  In that case, the only use of
     ‘Spec’ is to match the body with its declaration.

     Parameters: ‘Spec’ (‘~Iir’) – Specification

     Return type: bool(1)

     Returns: ‘True’ if subprogram specification and previously declared
     subprogram body match

 -- Function:
          pyGHDL.libghdl.vhdl.nodes_utils.Get_Entity_From_Entity_Aspect
          (Aspect)

     Extract the entity from ‘Aspect’.

     If ‘Aspect’ is a component declaration, return ‘Aspect’.  If it’s
     open, return ‘Null_Iir’

     Parameters: ‘Aspect’ (‘~Iir’) – Aspect

     Return type: ~Iir

     Returns: Entity

 -- Function: pyGHDL.libghdl.vhdl.nodes_utils.Get_Interface_Of_Formal
          (Formal)

     Get the interface corresponding to the formal name ‘Formal’.  This
     is always an interface, even if the formal is a name.

     Parameters: ‘Formal’ (‘~Iir’) – The formal.

     Return type: ~Iir

     Returns: The corresponding interface.

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#bool

14.3.14.10 pyGHDL.libghdl.vhdl.parse
....................................

`Variables'

   - Flag_Parse_Parenthesis.

`Functions'

   - Parse_Design_File().: Parse a file.

 -- Data: pyGHDL.libghdl.vhdl.parse.Flag_Parse_Parenthesis

          c_bool(False)

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.parse.Parse_Design_File ()

     Parse a file.

     ..note:: The scanner must have been initialized as for
     parse_design_unit.

     Return type: ~Iir

     Returns: Return ‘Null_Iir’ in case of error.  Type:
     ‘Iir_Design_File’

14.3.14.11 pyGHDL.libghdl.vhdl.sem
..................................

`Functions'

   - Semantic().: Do the semantic analysis of design unit
     ‘DesignUnit’.

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.sem.Semantic (DesignUnit)

     Do the semantic analysis of design unit ‘DesignUnit’.

     Also add a few node or change some nodes, when for example an
     identifier is changed into an access to the type.

     Parameters: ‘DesignUnit’ (‘~Iir_Design_Unit’) – Design unit to
     semantically analyze.  Type: ‘Iir_Design_Unit’

     Return type: None(1)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/constants.html#None

14.3.14.12 pyGHDL.libghdl.vhdl.sem_lib
......................................

`Functions'

   - Load_File().: Start to analyse a file (i.e.  load and
     parse it).

   - Finish_Compilation().: Analyze ‘Unit’.

   - Free_Dependence_List().: Free the dependence list of
     ‘Design’.

`Functions'

 -- Function: pyGHDL.libghdl.vhdl.sem_lib.Load_File (File)

     Start to analyse a file (i.e.  load and parse it).

     Parameters: ‘File’ (‘~SourceFileEntry’) – File to analyse.

     Return type: ~Iir_Design_File

     Returns: Return ‘Null_Iir’ in case of parse error.  Type:
     ‘Iir_Design_File’

 -- Function: pyGHDL.libghdl.vhdl.sem_lib.Finish_Compilation (Unit,
          Main=False)

     Analyze ‘Unit’.

     Parameters:

        * ‘Unit’ (‘~Iir_Design_Unit’) – Design unit to analyze.

        * ‘Main’ (bool(1)) – Is main unit.

     Return type: None(2)

 -- Function: pyGHDL.libghdl.vhdl.sem_lib.Free_Dependence_List (Design)

     Free the dependence list of ‘Design’.

     Parameters: ‘Design’ (‘~Iir_Design_Unit’) – Design unit to free
     dependencies for.

     Return type: None(3)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/functions.html#bool

   (2) https://docs.python.org/3.6/library/constants.html#None

   (3) https://docs.python.org/3.6/library/constants.html#None

14.3.14.13 pyGHDL.libghdl.vhdl.std_package
..........................................

`Variables'

   - Std_Location.

   - Standard_Package.

   - Character_Type_Definition.

 -- Data: pyGHDL.libghdl.vhdl.std_package.Std_Location

     Virtual location for the ‘std.standard’ package.  Use ‘.value’ to
     access this variable inside libghdl.

          c_long(0)

 -- Data: pyGHDL.libghdl.vhdl.std_package.Standard_Package

     Virtual package ‘std.package’.  Use ‘.value’ to access this
     variable inside libghdl.

          c_long(0)

 -- Data: pyGHDL.libghdl.vhdl.std_package.Character_Type_Definition

     Predefined character.  Use ‘.value’ to access this variable inside
     libghdl.

          c_long(0)

14.3.14.14 pyGHDL.libghdl.vhdl.tokens
.....................................

`Classes'

   - Tok.: An enumeration.

 -- Class: pyGHDL.libghdl.vhdl.tokens.Tok (value)

     An enumeration.

     Inheritance
     ...........

[[graphviz]]
     Members
     .......

      -- Attribute: Invalid = 0

      -- Attribute: Eof = 1

      -- Attribute: Newline = 2

      -- Attribute: Block_Comment_Start = 3

      -- Attribute: Block_Comment_End = 4

      -- Attribute: Block_Comment_Text = 5

      -- Attribute: Line_Comment = 6

      -- Attribute: Character = 7

      -- Attribute: Identifier = 8

      -- Attribute: Integer = 9

      -- Attribute: Real = 10

      -- Attribute: String = 11

      -- Attribute: Bit_String = 12

      -- Attribute: Integer_Letter = 13

      -- Attribute: Left_Paren = 14

      -- Attribute: Right_Paren = 15

      -- Attribute: Left_Bracket = 16

      -- Attribute: Right_Bracket = 17

      -- Attribute: Colon = 18

      -- Attribute: Semi_Colon = 19

      -- Attribute: Comma = 20

      -- Attribute: Double_Arrow = 21

      -- Attribute: Tick = 22

      -- Attribute: Double_Star = 23

      -- Attribute: Assign = 24

      -- Attribute: Bar = 25

      -- Attribute: Box = 26

      -- Attribute: Dot = 27

      -- Attribute: Equal_Equal = 28

      -- Attribute: Equal = 29

      -- Attribute: Not_Equal = 30

      -- Attribute: Less = 31

      -- Attribute: Less_Equal = 32

      -- Attribute: Greater = 33

      -- Attribute: Greater_Equal = 34

      -- Attribute: Match_Equal = 35

      -- Attribute: Match_Not_Equal = 36

      -- Attribute: Match_Less = 37

      -- Attribute: Match_Less_Equal = 38

      -- Attribute: Match_Greater = 39

      -- Attribute: Match_Greater_Equal = 40

      -- Attribute: Plus = 41

      -- Attribute: Minus = 42

      -- Attribute: Ampersand = 43

      -- Attribute: Condition = 44

      -- Attribute: Double_Less = 45

      -- Attribute: Double_Greater = 46

      -- Attribute: Caret = 47

      -- Attribute: And_And = 48

      -- Attribute: Bar_Bar = 49

      -- Attribute: Left_Curly = 50

      -- Attribute: Right_Curly = 51

      -- Attribute: Exclam_Mark = 52

      -- Attribute: Brack_Star = 53

      -- Attribute: Brack_Plus_Brack = 54

      -- Attribute: Brack_Arrow = 55

      -- Attribute: Brack_Equal = 56

      -- Attribute: Bar_Arrow = 57

      -- Attribute: Bar_Double_Arrow = 58

      -- Attribute: Minus_Greater = 59

      -- Attribute: Equiv_Arrow = 60

      -- Attribute: Arobase = 61

      -- Attribute: Star = 62

      -- Attribute: Slash = 63

      -- Attribute: Mod = 64

      -- Attribute: Rem = 65

      -- Attribute: Abs = 66

      -- Attribute: Not = 67

      -- Attribute: Access = 68

      -- Attribute: After = 69

      -- Attribute: Alias = 70

      -- Attribute: All = 71

      -- Attribute: Architecture = 72

      -- Attribute: Array = 73

      -- Attribute: Assert = 74

      -- Attribute: Attribute = 75

      -- Attribute: Begin = 76

      -- Attribute: Block = 77

      -- Attribute: Body = 78

      -- Attribute: Buffer = 79

      -- Attribute: Bus = 80

      -- Attribute: Case = 81

      -- Attribute: Component = 82

      -- Attribute: Configuration = 83

      -- Attribute: Constant = 84

      -- Attribute: Disconnect = 85

      -- Attribute: Downto = 86

      -- Attribute: Else = 87

      -- Attribute: Elsif = 88

      -- Attribute: End = 89

      -- Attribute: Entity = 90

      -- Attribute: Exit = 91

      -- Attribute: File = 92

      -- Attribute: For = 93

      -- Attribute: Function = 94

      -- Attribute: Generate = 95

      -- Attribute: Generic = 96

      -- Attribute: Guarded = 97

      -- Attribute: If = 98

      -- Attribute: In = 99

      -- Attribute: Inout = 100

      -- Attribute: Is = 101

      -- Attribute: Label = 102

      -- Attribute: Library = 103

      -- Attribute: Linkage = 104

      -- Attribute: Loop = 105

      -- Attribute: Map = 106

      -- Attribute: New = 107

      -- Attribute: Next = 108

      -- Attribute: Null = 109

      -- Attribute: Of = 110

      -- Attribute: On = 111

      -- Attribute: Open = 112

      -- Attribute: Others = 113

      -- Attribute: Out = 114

      -- Attribute: Package = 115

      -- Attribute: Port = 116

      -- Attribute: Procedure = 117

      -- Attribute: Process = 118

      -- Attribute: Range = 119

      -- Attribute: Record = 120

      -- Attribute: Register = 121

      -- Attribute: Report = 122

      -- Attribute: Return = 123

      -- Attribute: Select = 124

      -- Attribute: Severity = 125

      -- Attribute: Signal = 126

      -- Attribute: Subtype = 127

      -- Attribute: Then = 128

      -- Attribute: To = 129

      -- Attribute: Transport = 130

      -- Attribute: Type = 131

      -- Attribute: Units = 132

      -- Attribute: Until = 133

      -- Attribute: Use = 134

      -- Attribute: Variable = 135

      -- Attribute: Wait = 136

      -- Attribute: When = 137

      -- Attribute: While = 138

      -- Attribute: With = 139

      -- Attribute: And = 140

      -- Attribute: Or = 141

      -- Attribute: Xor = 142

      -- Attribute: Nand = 143

      -- Attribute: Nor = 144

      -- Attribute: Xnor = 145

      -- Attribute: Group = 146

      -- Attribute: Impure = 147

      -- Attribute: Inertial = 148

      -- Attribute: Literal = 149

      -- Attribute: Postponed = 150

      -- Attribute: Pure = 151

      -- Attribute: Reject = 152

      -- Attribute: Shared = 153

      -- Attribute: Unaffected = 154

      -- Attribute: Sll = 155

      -- Attribute: Sla = 156

      -- Attribute: Sra = 157

      -- Attribute: Srl = 158

      -- Attribute: Rol = 159

      -- Attribute: Ror = 160

      -- Attribute: Protected = 161

      -- Attribute: Assume = 162

      -- Attribute: Context = 163

      -- Attribute: Cover = 164

      -- Attribute: Default = 165

      -- Attribute: Force = 166

      -- Attribute: Parameter = 167

      -- Attribute: Property = 168

      -- Attribute: Release = 169

      -- Attribute: Restrict = 170

      -- Attribute: Restrict_Guarantee = 171

      -- Attribute: Sequence = 172

      -- Attribute: Vmode = 173

      -- Attribute: Vprop = 174

      -- Attribute: Vunit = 175

      -- Attribute: Across = 176

      -- Attribute: Break = 177

      -- Attribute: Limit = 178

      -- Attribute: Nature = 179

      -- Attribute: Noise = 180

      -- Attribute: Procedural = 181

      -- Attribute: Quantity = 182

      -- Attribute: Reference = 183

      -- Attribute: Spectrum = 184

      -- Attribute: Subnature = 185

      -- Attribute: Terminal = 186

      -- Attribute: Through = 187

      -- Attribute: Tolerance = 188

      -- Attribute: Psl_Clock = 189

      -- Attribute: Psl_Endpoint = 190

      -- Attribute: Psl_Const = 191

      -- Attribute: Psl_Boolean = 192

      -- Attribute: Inf = 193

      -- Attribute: Within = 194

      -- Attribute: Abort = 195

      -- Attribute: Before = 196

      -- Attribute: Before_Em = 197

      -- Attribute: Before_Un = 198

      -- Attribute: Before_Em_Un = 199

      -- Attribute: Always = 200

      -- Attribute: Never = 201

      -- Attribute: Eventually_Em = 202

      -- Attribute: Next_Em = 203

      -- Attribute: Next_A = 204

      -- Attribute: Next_A_Em = 205

      -- Attribute: Next_E = 206

      -- Attribute: Next_E_Em = 207

      -- Attribute: Next_Event = 208

      -- Attribute: Next_Event_Em = 209

      -- Attribute: Next_Event_A = 210

      -- Attribute: Next_Event_A_Em = 211

      -- Attribute: Next_Event_E = 212

      -- Attribute: Next_Event_E_Em = 213

      -- Attribute: Until_Em = 214

      -- Attribute: Until_Un = 215

      -- Attribute: Until_Em_Un = 216

      -- Attribute: Prev = 217

      -- Attribute: Stable = 218

      -- Attribute: Fell = 219

      -- Attribute: Rose = 220

      -- Attribute: Onehot = 221

      -- Attribute: Onehot0 = 222

`Functions'

   - finalize().: Free all the memory, be ready for a new
     initialization.

   - initialize().: Initialize or re-initialize the shared
     library.

   - set_option().: Set option ‘opt’.

   - analyze_init().: Initialize the analyzer.

   - analyze_init_status().: Initialize the analyzer.

   - analyze_file().: Analyze a given filename ‘fname’.

   - disp_config().: Display the configured prefixes for
     libghdl.

`Functions'

 -- Function: pyGHDL.libghdl.finalize ()

     Free all the memory, be ready for a new initialization.

     Return type: None(1)

 -- Function: pyGHDL.libghdl.initialize ()

     Initialize or re-initialize the shared library.

     Return type: None(2)

 -- Function: pyGHDL.libghdl.set_option (Opt)

     Set option ‘opt’.

     Parameters: ‘Opt’ (str(3)) – Option to set.

     Return type: bool(4)

     Returns: Return ‘True’, if the option is known and handled.

 -- Function: pyGHDL.libghdl.analyze_init ()

     Initialize the analyzer.

     Deprecated since version 1.0.0: Deprecated as it may raise an
     exception.  Use analyze_init_status().

     Return type: None(5)

 -- Function: pyGHDL.libghdl.analyze_init_status ()

     Initialize the analyzer.

     Return type: int(6)

     Returns: Returns 0 in case of success.

 -- Function: pyGHDL.libghdl.analyze_file (fname)

     Analyze a given filename ‘fname’.

     Parameters: ‘fname’ (str(7)) – File name

     Return type: ~Iir

     Returns: Internal Intermediate Representation (IIR)

 -- Function: pyGHDL.libghdl.disp_config ()

     Display the configured prefixes for libghdl.

     Return type: None(8)

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/library/constants.html#None

   (2) https://docs.python.org/3.6/library/constants.html#None

   (3) https://docs.python.org/3.6/library/stdtypes.html#str

   (4) https://docs.python.org/3.6/library/functions.html#bool

   (5) https://docs.python.org/3.6/library/constants.html#None

   (6) https://docs.python.org/3.6/library/functions.html#int

   (7) https://docs.python.org/3.6/library/stdtypes.html#str

   (8) https://docs.python.org/3.6/library/constants.html#None

14.4 pyGHDL.lsp
===============

`Submodules'

14.4.1 pyGHDL.lsp.document
--------------------------

14.4.2 pyGHDL.lsp.lsp
---------------------

14.4.3 pyGHDL.lsp.lsptools
--------------------------

14.4.4 pyGHDL.lsp.references
----------------------------

14.4.5 pyGHDL.lsp.symbols
-------------------------

14.4.6 pyGHDL.lsp.version
-------------------------

14.4.7 pyGHDL.lsp.vhdl_ls
-------------------------

14.4.8 pyGHDL.lsp.workspace
---------------------------

`Exceptions'

   - GHDLBaseException.: Common base class for all non-exit
     exceptions.

 -- Exception: pyGHDL.GHDLBaseException

     Inheritance
     -----------

[[graphviz]]
     Members
     -------

      -- Attribute: args

      -- Method: with_traceback ()

          Exception.with_traceback(tb) – set self.__traceback__ to tb
          and return self.

15 GHDL Waveform (GHW)
**********************

The most widespread format for dumping waveforms is Value Change Dump
(VCD), defined in the Verilog language (IEEE Std 1364-1995) and extended
six years later as Extended VCD (EVCD), defined in IEEE Std 1364-2001.
VCD is simple and compact, which allowed it to be used in fields other
than Verilog simulation tools.  For instance, GHDL supports dumping VCD
files.

However, VCD/EVCD cannot handle certain signal types from the VHDL
language.  There is neither any equivalent in the VHDL LRM. So, the
author of GHDL, Tristan Gingold, implemented an alternative format named
GHW, for allowing all VHDL types to be dumped.  He also contributed a
reader to GTKWave based on libghw (see
gtkwave/gtkwave/search?q=libghw(1) and gtkwave/gtkwave:
gtkwave3/src/ghw.c(2)), which allows visualizing GHW waves.

The GHW format is not completely fixed, and it might change slightly as
new language features are implemented in GHDL or as a result of internal
tweaks.  Nevertheless, the GHDL codebase (grt/grt-waves.adb(3)) is kept
in sync with the utilities in subdir ghw(4).

     Tip: In nturley/ghw-notes(5), there is some work for defining the
     GHW format as a Kaitai Struct (see kaitai.io(6)).

   ---------- Footnotes ----------

   (1) https://github.com/gtkwave/gtkwave/search?q=libghw

   (2) https://github.com/gtkwave/gtkwave/blob/master/gtkwave3/src/ghw.c

   (3) https://github.com/ghdl/ghdl/blob/master/src/grt/grt-waves.adb

   (4) https://github.com/ghdl/ghdl/blob/master/src/../ghw

   (5) https://github.com/nturley/ghw-notes

   (6) https://kaitai.io/

15.1 libghw
===========

GHW reading features are provided as a shared library, which is built
and installed with GHDL by default.

15.2 ghwdump
============

For debugging and learning purposes, ghwdump uses ghdlib for dumping the
content of GHW waves into text files.  ghwdump is also built and
installed with GHDL by default.  It’s used in the GHDL test suite for
catching regressions.

16 Debugging
************

16.1 Simulation and runtime debugging options
=============================================

Besides the options described in Options, ‘GHDL’ passes any
debugging options (those that begin with ‘-g’) and optimizations options
(those that begin with ‘-O’ or ‘-f’) to ‘GCC’. Refer to the ‘GCC’ manual
for details.  Moreover, some debugging options are also available, but
not described here.  The –help(1) option lists all options available,
including the debugging ones.

 -- Option: --trace-signals

     Display signals after each cycle.

 -- Option: --trace-processes

     Display process name before each cycle.

 -- Option: --stats

     Display run-time statistics.

 -- Option: --disp-order

     Display signals order.

 -- Option: --disp-sources

     Display sources while displaying signals.

 -- Option: --disp-sig-types

     Display signal types.

 -- Option: --disp-signals-map

     Display map bw declared signals and internal signals.

 -- Option: --disp-signals-table

     Display internal signals.

 -- Option: --checks

     Do internal checks after each process run.

 -- Option: --activity=<LEVEL>

     Watch activity of LEVEL signals: LEVEL is ‘all’, ‘min’ (default) or
     ‘none’ (unsafe).

 -- Option: --dump-rti

     Dump Run Time Information (RTI).

 -- Option: --bootstrap

     Allow ‘--work=std’

   ---------- Footnotes ----------

   (1) https://docs.python.org/3.6/using/cmdline.html#cmdoption-help

16.1.1 GNU Debugger (GDB)
-------------------------

     Warning: Debugging VHDL programs using ‘GDB’ is possible only with
     GCC/LLVM.

GDB is a general purpose debugger for programs compiled by GCC.
Currently, there is no VHDL support for GDB. It may be difficult to
inspect variables or signals in GDB. However, it is still able to
display the stack frame in case of error or to set a breakpoint at a
specified line.

GDB can be useful to catch a runtime error, such as indexing an array
beyond its bounds.  All error check subprograms call the ‘__ghdl_fatal’
procedure.  Therefore, to a catch runtime error, set a breakpoint like
this:

     (gdb) break __ghdl_fatal

When the breakpoint is hit, use the ‘where’ or ‘bt’ command to display
the stack frames.

17 Coding Style
***************

17.1 Ada
========

Ada subset: use only a simple (VHDL like) subset of Ada: no tasking, no
controlled types… VHDL users should easily understand that subset.
Allowed Ada95 features: the standard library, child packages.  Use
assertions.

We try to follow the ‘GNU Coding Standards’ when possible: comments
before declarations, one space at the end of sentences, finish sentences
with a dot.  But: 2 spaces for indentation in code blocks.

No trailing spaces, no TAB (HT).

Subprograms must have a comment before to describe them, like:

     --  Analyze the concurrent statements of PARENT.
     procedure Sem_Concurrent_Statement_Chain (Parent : Iir);

The line before the comment must be a blank line (unless this is the
first declaration).  Don’t repeat the comment before the subprogram
body.

   * For subprograms:

       1. Declare on one line when possible:

               function Translate_Static_Aggregate (Aggr : Iir) return O_Cnode

       2. If not possible, put the return on the next line:

               function Translate_Static_String (Str_Type : Iir; Str_Ident : Name_Id)
                                                return O_Cnode

       3. If not possible, put parameters and return on the next line:

               function Create_String_Literal_Var_Inner
                 (Str : Iir; Element_Type : Iir; Str_Type : O_Tnode) return Var_Type

       4. If not possible, return on the next line:

               function Translate_Shortcut_Operator
                 (Imp : Iir_Implicit_Function_Declaration; Left, Right : Iir)
                 return O_Enode

       5. If not possible, one parameter per line, just after subprogram
          name:

               procedure Translate_Static_Aggregate_1 (List : in out O_Array_Aggr_List;
                                                       Aggr : Iir;
                                                       Info : Iir;
                                                       El_Type : Iir)

       6. If not possible, add a return after subprogram name:

               function Translate_Predefined_TF_Array_Element
                 (Op : Predefined_Boolean_Logical;
                  Left, Right : Iir;
                  Res_Type : Iir;
                  Loc : Iir)
                 return O_Enode

       7. If not possible, ask yourself what is wrong!  Shorten a name.

   * Rule for the ‘is’: on a new line only if the declarative part is
     not empty:

               procedure Translate_Assign (Target : Mnode; Expr : Iir; Target_Type : Iir)
               is
                 Val : O_Enode;
               begin

     vs.

               function Translate_Static_Range_Dir (Expr : Iir) return O_Cnode is
               begin

     If the parameter line is too long with the ‘is’, put in on a
     separate line:

               procedure Predeclare_Scope_Type
                 (Scope : in out Var_Scope_Type; Name : O_Ident) is

   * Generic instantiation: put the generic actual part on a new line:

               procedure Free is new Ada.Unchecked_Deallocation
                 (Action_List, Action_List_Acc);

   * For if/then statement:

       1. ‘then’ on the same line:

               if Get_Expr_Staticness (Decl) = Locally then

       2. If not possible, ‘then’ is alone on its line aligned with the
          ‘if’:

               if Expr = Null_Iir
                 or else Get_Kind (Expr) = Iir_Kind_Overflow_Literal
               then

       3. For a multiline condition, ‘or else’ and ‘and then’ should
          start lines.

   * ‘Local’ variable declaration: Do not initialize variables,
     constants must be declared before variables:

               is
                 N_Info : constant Iir := Get_Sub_Aggregate_Info (Info);
                 Assoc  : Iir;
                 Sub    : Iir;
               begin

     If the initialization expression has a side effect (such as
     allocation), do not use a constant.

17.2 Shell
==========

Ubuntu uses ‘dash’ instead of ‘bash’ when a shell script is run.  As a
result, some functionalities, such as arrays like ‘array[1]’, are not
supported.  Therefore, build scripts should not use those
functionalities unless they are sourced in a ‘bash’ shell.  The same
applies to the scripts in ‘testsuite’.

17.3 Guidelines to edit the documentation
=========================================

       1. It’s better for version control systems and diff tools to
          break lines at a sensible number of characters.  Long lines
          appear as one diff.  Also merging is more complex because
          merges are line based.  Long unbreakable items may be longer
          (links, refs, etc.).  We chose to use 160 chars.

       2. Please indent all directive content by 3 spaces (not 2, and no
          tabs).

       3. Please use ‘*’ as an itemize character, since ‘-’ and ‘+’ are
          supported by docutils, but not officially supported by Sphinx.

       4. Please underline all headlines with at least as many
          characters as the headline is long.  Following the Python
          pattern for headlines the levels are:

               ############
               ************ (sometimes skipped in small documents)
               ============
               -------------------
               ‘’’’’’’’’’’’’’’’’’’’’’’’

       5. It’s not required to write

               :samp:`code`

          The default role for

                    ``code``

          is samp.  ‘:samp:’ is only required when you want to write
          italic text in code text.

                    :samp:`print 1+{variable}`

          Now, variable becomes italic.

          Please simplify all usages of ‘:samp:`code`’ to ‘``code``’ for
          readability.  Here are the regular expressions for an editor
          like Notepad++:

             - Search pattern:: ‘(.+?)’

             - Replace pattern:: ‘\1’

       6. Each backend has one folder and each platform/compiler has one
          file.  Please note that page headlines are different from ToC
          headline:

               .. toctree::
                  :hidden:

                  ToC entry <file1>
                  file2

       7. Documentation should not use “you”, “we”, …, because it’s not
          an interactive conversation or informal letter.  It’s like a
          thesis, everything is structured and formal.  However, to make
          it more friendly to newcomers, we agree to allow informal
          language in the Quick Start Guide.

       8. Please keep errors to a minimum.

17.3.1 Guidelines to edit section ‘Building’
--------------------------------------------

We prefer a text block, which explains how a compilation works, what we
can configure for that backend, etc.  After that, we prefer a code block
with e.g.  bash instructions on how to compile a backend.  A list of
instructions with embedded bash lines is not helpful.  An experienced,
as well as novice user, would like to copy a set of instructions into
the shell.  But it should be stated what these instructions will do.
Complex flows like for GCC, can be split into multiple shell code
blocks.  Moreover, we find it essential to demonstrate when and where to
change directories.

We would like to see a list like:

   * gcc (Gnu Compiler Collection)

   * gcc-gnat (Ada compiler for GCC)

   * llvm-del (LLVM development package)

   * …

The goal is also to explain what a user is installing and what the few
lines in the build description do.  Now they know the name, can search
for similar names if they have another package manager or distro or can
ask Google/Wikipedia.  We often find many build receipts with cryptic
shell code and to execute this unknown stuff with sudo is not
comfortable.  We would like to know what it does before hitting enter.

17.4 Documentation configuration
================================

   * Python snippet for Sphinx’s ‘conf.py’ to extract the current
     version number from Git (latest tag name).  [#200(1), #221(2)]

   * Reference ‘genindex.html’ from the navigation bar.  [#200(3)]

   * Create “parts” (LaTeX terminology / chapter headlines) in
     navigation bar.  [#200(4)]

   *
     Intersphinx files [#200(5)]

             * To decompress the inventory file: ‘curl -s
               http://ghdl.readthedocs.io/en/latest/objects.inv | tail
               -n+5 | openssl zlib -d’.  From
               how-to-uncompress-zlib-data-in-unix(6).

             * External ref and link to section:

                    :ref:`GHDL Roadmap <ghdl:CHANGE:Roadmap>`

             * External ref to option (no link):

                    :ghdl:option:`--ieee`
                    :option:`ghdl:--ieee`

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/issues/200

   (2) https://github.com/ghdl/ghdl/issues/221

   (3) https://github.com/ghdl/ghdl/issues/200

   (4) https://github.com/ghdl/ghdl/issues/200

   (5) https://github.com/ghdl/ghdl/issues/200

   (6)
http://unix.stackexchange.com/questions/22834/how-to-uncompress-zlib-data-in-unix

18 Scripts
**********

18.1 pnodes
===========

Meta-grammar processor

     usage: pnodes [-h] [--field-file FIELD_FILE] [--kind-file KIND_FILE]
                   [--node-file NODE_FILE] [--template-file TEMPLATE_FILE]
                   [--meta-basename META_BASENAME] [--kind-type KIND_TYPE]
                   [--kind-prefix KIND_PREFIX] [--kind-range-prefix KIND_RANGE_PREFIX]
                   [--node-type NODE_TYPE] [--keep-order]
                   {disp-nodes,disp-kinds,disp-formats,disp-funcs,disp-types,get_format,body,meta_specs,meta_body,class-kinds,libghdl-nodes,libghdl-meta,libghdl-names,libghdl-tokens,libghdl-elocs,libghdl-errorout}

18.1.1 positional arguments
---------------------------

 -- Option: action

18.1.2 optional arguments
-------------------------

 -- Option: -h, --help

     show this help message and exit

 -- Option: --field-file <field_file>

     specify file which defines fields

 -- Option: --kind-file <kind_file>

     specify file which defines nodes kind

 -- Option: --node-file <node_file>

     specify file which defines nodes and methods

 -- Option: --template-file <template_file>

     specify template body file

 -- Option: --meta-basename <meta_basename>

     specify base name of meta files

 -- Option: --kind-type <kind_type>

     name of kind type

 -- Option: --kind-prefix <kind_prefix>

     prefix for kind literals

 -- Option: --kind-range-prefix <kind_range_prefix>

     prefix for kind subtype (range)

 -- Option: --node-type <node_type>

     name of the node type

 -- Option: --keep-order

     keep field order of nodes

18.2 pnodespy
=============

Meta-grammar processor

     usage: pnodespy [-h] [--field-file FIELD_FILE] [--kind-file KIND_FILE]
                     [--node-file NODE_FILE] [--template-file TEMPLATE_FILE]
                     [--meta-basename META_BASENAME] [--kind-type KIND_TYPE]
                     [--kind-prefix KIND_PREFIX] [--kind-range-prefix KIND_RANGE_PREFIX]
                     [--node-type NODE_TYPE] [--keep-order]
                     {disp-nodes,disp-kinds,disp-formats,disp-funcs,disp-types,get_format,body,meta_specs,meta_body,class-kinds,libghdl-nodes,libghdl-meta,libghdl-names,libghdl-tokens,libghdl-elocs,libghdl-errorout}

18.2.1 positional arguments
---------------------------

 -- Option: action

18.2.2 optional arguments
-------------------------

 -- Option: -h, --help

     show this help message and exit

 -- Option: --field-file <field_file>

     specify file which defines fields

 -- Option: --kind-file <kind_file>

     specify file which defines nodes kind

 -- Option: --node-file <node_file>

     specify file which defines nodes and methods

 -- Option: --template-file <template_file>

     specify template body file

 -- Option: --meta-basename <meta_basename>

     specify base name of meta files

 -- Option: --kind-type <kind_type>

     name of kind type

 -- Option: --kind-prefix <kind_prefix>

     prefix for kind literals

 -- Option: --kind-range-prefix <kind_range_prefix>

     prefix for kind subtype (range)

 -- Option: --node-type <node_type>

     name of the node type

 -- Option: --keep-order

     keep field order of nodes

19 Overview
***********

[GHDL-figures/internals]
‘GHDL’ is architectured like a traditionnal compiler.  It has:

   * a driver (sources in src/ghdldrv(1)) to call the programs
     (compiler, assembler, linker) if needed.

   * a runtime library named GRT (sources in src/grt(2)) to help
     execution at run-time.  This ensures that execution is
     cycle-accurate.

   * a front-end (sources in src/vhdl(3)) to parse and analyse VHDL. See
     Front-end and AST.

   * multiple back-ends to generate either code or netlists.

        * Three for simulation. (sources are in src/ortho(4)):
          mcode, LLVM and GCC. See Building GHDL from Sources.

        * Two for synthesis. (sources in src/synth(5)):
          –synth and Yosys plugin.

The architecture is modular.  For example, the front-end in the
‘libghdl’ library is used for the language server.

The main work is performed by the front-end, which is documented in the
next chapter.

   ---------- Footnotes ----------

   (1) https://github.com/ghdl/ghdl/blob/master/src/ghdldrv

   (2) https://github.com/ghdl/ghdl/blob/master/src/grt

   (3) https://github.com/ghdl/ghdl/blob/master/src/vhdl

   (4) https://github.com/ghdl/ghdl/blob/master/src/ortho

   (5) https://github.com/ghdl/ghdl/blob/master/src/synth

20 Front-end
************

Input files (or source files) are read by ‘files_map.ad[sb]’.  Only
regular files can be read, because they are read entirely before being
scanned.  This simplifies the scanner, but this also allows to have a
unique index for each character in any file.  Therefore the source
location is a simple 32-bit integer whose type is ‘Location_Type’.  From
the location, ‘files_map’ can deduce the source file (type is
‘Source_File_Entry’) and then the offset in the source file.  There is a
line table for each source file in order to speed-up the conversion from
file offset to line number and column number.

The scanner (file ‘vhdl-scanner.ad[sb]’) reads the source files and
creates token from them.  The tokens are defined in file
‘vhdl-tokens.ads’.  Tokens are scanned one by one, so the scanner
doesn’t keep in memory the previous token.  Integer or floating point
numbers are special tokens because beside the token itself there is also
a variable for the value of the number.

For identifiers there is a table containing all identifiers.  This is
implemented by file ‘name_table.ad[sb]’.  Each identifier is associated
to a 32-bit number (they are internalized).  So the number is used to
reference an identifier.  About one thousand identifiers are predefined
(by ‘std_names.ad[sb]’).  Most of them are reserved identifiers (or
keywords).  When the scanner find an identifier, it checks if it is a
keyword.  In that case it changes the token to the keyword token.

The procedure ‘scan’ is called to get the next token.  The location of
the token and the location after the token are available to store it in
the parser tree.

The main client of the scanner is the parser.

21 AST
******

21.1 Introduction
=================

The AST is the main data structure of the front-end and is created by
the parser.

AST stands for Abstract Syntax Tree.

This is a tree because it is a graph with nodes and links between nodes.
As the graph is acyclic and each node but the root has only one parent
(the link that points to it).  In the front-end there is only one root
which represents the set of libraries.

The tree is a syntax tree because it follows the grammar of the VHDL
language: there is, for example, a node per operation (like ‘or’, ‘and’
or ‘+’), a node per declaration, a node per statement, and a node per
design unit (like entity or architecture).  The front-end needs to
represent the source file using the grammar because most of the VHDL
rules are defined according to the grammar.

Finally, the tree is abstract because it is an abstraction of the source
file.  Comments and layout aren’t kept in the syntax tree.  Furthermore,
if you rename a declaration or change the value of a literal, the tree
will have exactly the same shape.

But we can also say that the tree is neither abstract, nor syntaxic and
nor a tree.

It is not abstract because it contains all the information from the
source file (except comments) are available in the AST, inclusing the
location.  So the source file can be reprinted (the name unparsed is
also used) from the AST. If a mechanism is also added to deal with
comments, the source file can even be pretty-printed from the AST.

It is not purely syntactic because the semantic analysis pass decorates
the tree with semantic information.  For example, the type of each
expression and sub-expression is computed.  This is necessary to detect
some semantic errors like assigning an array to an integer.

Finally, it is not a tree anymore because new links are added during
semantic analysis.  Simple names are linked to their declaration.

21.2 The AST in GHDL
====================

The GHDL AST is described in file ‘vhdl-nodes.ads’.

An interesting particularity about the AST is the presence of a
meta-model.

The meta-model is not formally described.  What the meta-meta-model
would be is very simple: there are elements and attributes.  An element
is composed of attributes, and an attribute is either a value (a flag,
an integer, an enumeration) or a link to an element.

(When someone wants to be clever, they often speak about meta-model in
order to confuse you.  Don’t let them impress you.  The trick is to
answer them with any sentence containing ‘meta-meta-model’).

In the GHDL meta-model, there are only 3 elements:

   * variable list of nodes (‘List’).  These are like vectors as the
     length can be changed.

   * Fixed lists of nodes (‘Flist’).  The length of a fixed list is
     defined at creation.

   * Nodes.  A node has a kind (‘Iir_Kind’ which is also defined in the
     file), and fields.  The kind is set at creation and cannot be
     changed, while fields can be.

Or without using the word “meta-model”, the AST is composed of nodes and
lists.

The meta-model describes the types of the attributes: most of them are
either a node reference, a boolean flag or a enumerated type (like
‘Iir_Staticness’).  But there are also links: a reference to another
node or to a list.

The accessors for the node are generated automatically by the python
script ‘src/scripts/pnodes.py’.

21.3 Why a meta-model ?
=======================

All ASTs could have a meta-model, because the definition of elements and
attributes is very generic.  But there is a detail: the definition of an
element is static.  So for each node, the list of attributes and their
types is static and each list is a list of the same element type.  So
there is no bag, nor dynamic typing.  This is per the definition of the
meta-meta-model.

But in GHDL there is an API at the meta-model level in file
‘vhdl-nodes_meta.ads’.  There is the list of all attribute types in
enumeration ‘Types_Enum’.  There is the list of all possible attributes
in enumeration ‘Fields_Enum’.  For a particular kind of node, you can
get the list of fields with ‘Get_Field’ and for every type, there is API
to get or set any field of any node.

Having a meta-model API allows to build algorithm that deals with any
node.  The dumper (in file ‘vhdl-disp_tree.ad[sb]’) is used to dump a
node and possibly its sub-nodes.  This is very useful while debugging
GHDL. It is written using the meta-model, so it knows how to display a
boolean and the various other enumerated types, and how to display a
list.  To display a node, it just gets the kind of the type, prints the
kind name and queries all the fields of the node.  There is nothing
particular to a specific kind, so you don’t need to modify the dumper if
you add a node.

The dumper wouldn’t be a strong enough reason by itself to have a
meta-model.  But the pass to create instances is a good one.  When a
vhdl-2008 package is instantiated, at least the package declaration is
created in the AST (this is needed because there are possibly new
types).  And creating an instance using the meta-model is much simpler
(and much more generic) that creating the instance using the nodes
directly.  The code to create instances is in files
‘vhdl-sem_inst.ad[sb]’.

The meta-model API is mostly automatically generated by the python
script.

21.4 Dealing with ownership
===========================

The meta-model also structures the tree, because there is a notion of
ownership: every element (but the root) has only one parent that owns
it, and there are no cycle in the ownership.  So the tree is really a
tree.

That simplifies algorithms because it is easier to walk a tree than a
graph.  It is also easier to free a sub-tree than a sub-graph.

Getting a real tree from the parser might look obvious, but it is not.
Consider the following VHDL declaration:

     variable v1, v2 : std_logic_vector (1 downto 0) := "00";

Both variables ‘v1’ and ‘v2’ share the same type and the same initial
value.  The GHDL AST uses two different strategies:

   * For the type, there are two fields in the node:
     ‘subtype_indication’ and ‘type’.  The ‘subtype_indication’ is owned
     and set only on the first variable to the output of the parser.
     The ‘type’ field is a reference and set on all variables to the
     result of analysis of ‘subtype_indication’.

   * For the initial value, there is only one field ‘default_value’ that
     is set on all variables.  But the ownership is controlled by a flag
     in the node (an attribute) named ‘is_ref’.  It is set to false on
     the first variable and true for the others.

The notion of ownership is highlighted by the Rust language, and indeed
this is an important notion.  The implementation of the Rust AST has to
be investigated.

21.5 Node Type
==============

TBC: 32-bit, extensions.

22 Run Time Information (RTI)
*****************************

     Warning: This section was written while trying to understand how
     the RTI is organized.  It almost certainly contains errors, and it
     likely won’t be updated with the codebase, so don’t belive any of
     the information here.  Nevertheless, it may be helpful for a
     developer new to GHDL trying to understand the organization of the
     RTI.

22.1 Useful Definitions
=======================

RTI

     Run Time Information.  The information that is used when simulating
     the design.

RTIN

     Run Time Information Node.  The design is organized into a directed
     graph where the architectures, signals and statements are
     represented as nodes on the graph.  This graph can be cyclic since
     an architecture may be instantiated many times, and could be
     recursively instantiated.

Context

     The context of a node is the position in the elaborated design.
     For example a architecture might be instantiated 4 times in a
     design, but will have a single RTI node.  The data related to that
     node but specfic to particular instantiation has an address in
     memory.  A context object (‘Rti_Context’) bundles an RTI node with
     an address for it’s instantiation data.  If this RTI node
     references another RTI node we can find the relevant instantiation
     data for that node by considering the context.

RTII

     Run Time Instance Information.  This is a record that groups an RTI
     node with any other data necessary to specify a particular
     instantiation.  The RTII objects create a tree that represents the
     elaborated design.  Currently they are only implemented for RTIN
     nodes of signals, ports, generics, constants and their
     subcomponents.

22.2 RTI Nodes / RTII Nodes
===========================

All RTI node records have a ‘Ghdl_Rtin_Common’ record as their first
element.  This record contains the following elements:

Kind : Ghdl_Rtik

     This specified what kind of node it is.  For example a ‘process’
     and an ‘entity’ node are both represented by ‘Ghdl_Rtin_Block’
     records but they are distinguished by having a different Kind.

Depth : Ghdl_Rti_Depth

     The depth indicates the relationship between the RTI Node and the
     RTI Context.  Child nodes often just use the same Context as their
     parent, and the depth indicates how far up in the hierarchy you go
     to find where the Context is based.

Mode : Ghdl_Rti_U8

     ??

Max_Depth : Ghdl_Rti_Depth

     ??

It’s also useful to look at some of the other elements that commonly
appear in the different RTI Node records.

Loc : Ghdl_Rti_Loc

     This is an address offset.  It tells us where the instantiation
     data for this node is located relative to the data of it’s parent.

Linecol : Ghdl_Index_Type

     Refers back to a location in the source code.

Parent : Ghdl_Rti_Access

     Points to the parent.  This isn’t necessarily the parent in the RTI
     tree though.  For example the ‘Parent’ of an architecture RTI node
     points at the entity node, however the parent in the tree is the
     instance RTI.

This document will now review that main classes of RTI Nodes.

22.2.1 Architecture RTI (Ghdl_Rtin_Block)
-----------------------------------------

The architecture acts as a simple container for it’s children.  Create
the child tree nodes by looping through ‘Ghdl_Rti_Block.Children’ and
keeping the context unchanged.

The information about the generics and ports access the entity RTI nodes
through ‘Ghdl_Rti_Block.Parent’ using the same context.

The instantiation data of an architecture contains a single item, a
pointer to the RTI node.  This is necessary because it is necessary to
store which of the possible architectures of this entity was
instantiated.

22.2.2 Entity RTI (Ghdl_Rtin_Block)
-----------------------------------

The RTI of an entity is a ‘Ghdl_Rti_Block’ record (the same as the
architecture) and uses the same context as the architecture.  It is
accessed via the architecture’s ‘Parent’ element.  The generics and
ports can be accessed as the children of the entity.

22.2.3 Other Blocks (Package/Process) (Ghdl_Rtin_Block)
-------------------------------------------------------

The block just loops over it’s children.

22.2.4 if_generate / case_generate (Ghdl_Rtin_Block)
----------------------------------------------------

If-Generate and Case-Generate statements are represented with
‘Ghdl_Rtin_Block’ records with Kind ‘Ghdl_Rtik_If_Generate’ and
‘Ghdl_Rtik_Case_Generate’.

Their children are all of Kind ‘Ghdl_Rtik_Body’, and represent the
different possible blocks that could be selected.

The instantiation data of a if_generate or case_generate RTI contains
two items: 1) A pointer to the context of the selected generate body
(instance_pointer).  2) The index of the selected child (block_id)

The child node is then created from the RTI node
‘Ghdl_Rtik_Body.Children(block_id)’ combined with the instantiation data
given by ‘instance_pointer’.

22.2.5 for_generate (Ghdl_Rtin_Generate)
----------------------------------------

For-Generate statements are represented with ‘Ghdl_Rtin_Generate’
records with Kind ‘Ghdl_Rtik_For_Generate’.

Their RTI-node structure is different from the ‘Ghdl_Rtin_Block’ record
in that rather than having ‘Nbr_Child’ and ‘Children’ elements, it has:

Child : Ghdl_Rti_Access

     A pointer to the generate body node that is their only child.

Size : Ghdl_Index_Type

     The amount of memory requrired for the context of their child.

The Child element is a generate body.  There is only a single RTI-node
structure which Child points to, however a different context is used
each time we go around the for-generate loop.

The context of a for_generate RTI contains a single item: An address
which points at the contexts for it’s children.

Each time we go around the for generate loop we increment the address of
the context by ‘Size’ so we looking at the correct context for that
instantiation of the contexts of the loop.

One complexity of the for-generate is finding the number of times that
we go around the loop.  The first element in the child generate body is
an iterator.  That iterator has a type and we can get the bounds of that
type by passing it the local context.  The type of the iterator for the
for-generate loop is implicitly created and placed directly before the
for_generate block, so using the local context will work.  There might
be a bug if the for-generate loop uses a type that wasn’t defined
implicitly.

22.2.6 instance (Ghdl_Rtin_Instance)
------------------------------------

An instantiation of an entity is represented by a ‘Ghdl_Rtin_Instance’
node with Kind ‘Ghdl_Rtik_Instance’.

The context contains a single item, which is a pointer to the context of
the architecture.  The architecture context also contains a single item,
which is a pointer to the architecture RTI Node.

22.2.7 Port (Ghdl_Rtin_Object)
------------------------------

22.2.8 Array Kinds
------------------

Ghdl_Rtik_Type_Array

     A VHDL array where the range is not specified.

Ghdl_Rtik_Subtype_Array

     A VHDL array where the range is specified.  A Type_Array together
     with the bounds.

22.2.9 Object_To_Base_Bound
---------------------------

This function takes an object type and an object’s static context
location and returns the complex context location and the bounds.

When the object is static the bounds is null (because the bounds are
held in the type definition) and the complex context is the same as the
static context.

When the object is complex the bounds is null, and the static context
location contains a pointer to the complex context location.

When the object is unbound the static context contains a ‘Ghdl_Uc_Array’
record.  The contains ‘Bounds’ which points to the bounds, and ‘Base’
which points to the complex context location.

22.2.10 Array_Type (Ghdl_Rtin_Type_Array)
-----------------------------------------

Contains Common and Name fields followed by:

Element : Ghdl_Rti_Access

     The type of the elements in the array.

Nbr_Dim : Ghdl_Index_Type

     The number of dimensions in the array.  Multidimensional arrays are
     not stored as arrays of arrays, but rather directly as
     multidimensional arrays.

Indexes : Ghdl_Rti_Arr_Acc

     ???  This is an array of the indices for each dimension, but I
     don’t know what kind of object they are represented by yet.

Functions acting on types don’t seem to use context in the same way.
The functions are often pass the RTI object, a context (of a object
higher in the hierarcy, and a pointer to a local context (often called
layout)).

The context of an Array Type has a defined structure which is
‘Ghdl_Uc_Array’.  This contains a ‘Base’ and a ‘Bounds’ field.

Base : Address

     Points to the complex context of the object.

Bounds : Address

     Points to the bounds of the array.

22.2.11 Array Subtype (Ghdl_Rtin_Subtype_Array)
-----------------------------------------------

Array subtypes are represented by the ‘Ghdl_Rtin_Subtype_Composite’ RTI
node.  The node contains the ‘Common’ and ‘Name’ fields, followed by

Basetype : Ghdl_Rti_Access

     A pointer to the RTI array type which it is a subtype of.

Layout : Ghdl_Rti_Loc

     A pointer to the context of the subtype relative to the parent
     context.  The layout contains: a value size, a signal sizes, and
     the bounds.

22.2.12 Port / Signal / Generic / Constant / Variable (Ghdl_Rtin_Object)
------------------------------------------------------------------------

The context of an object is found by taking offsetting the Context by
the ‘Loc’ field on the object.  The implementation often uses the same
Context for a group of hierarhical signals, so that the determination of
the location of the context of objects in the hierarchy must be found
using a function such as ‘Loc_To_Addr’.

The ‘Obj_Type’ field of an object points at the type of the object.

A signal definition can also include placing bounds on a unbounded type.

The tree of an object can be created by pairing the hierarchy of types
with the hierarchy of contexts.

If the type is a scalar type then the value of the object is found at:

     If the object is a port or signal then the only item in the context

          is a pointer to the signal object.  The first item in the
          signal object is a pointer to the value.

     If the object is a constant, generic or variable then the context

          contains a pointer to the value itself.

If the type is an unbound array:

     We must be at the top level of a hierarchical object.  The context
     contains a pointer to the first element context, and a pointer to
     the bounds.

If the type is a static array:

     The context is the same as the context of the first element.  The
     bounds are given in the layout of the type (composite).

If the type is a complex array:

     The context contains a pointer to the context of the first element.
     Because the size of the context cannot be determined at compile
     time this layer of indirection is necessary.

22.2.13 Record Kinds
--------------------

Ghdl_Rtik_Type_Record

     A standard VHDL record.

Ghdl_Rtik_Type_Unbounded_Record

     A vhdl record containing an unbounded array (directory or
     indirectly).

Ghdl_Rtik_Subtype_Record

     A subtype of an unbounded record where all arrays are not bounded.

Ghdl_Rtik_Subtype_Unbounded_Record

     A subtype of an unbounded record where some but not all of the
     previously unbound arrays have been bound.

22.2.14 Record Type (Ghdl_Rtin_Type_Record)
-------------------------------------------

Can have Kind of ‘Ghdl_Rtik_Type_Record’ or
‘Ghdl_Rtik_Type_Unbounded_Record’.  The record elements after ‘Common’
and ‘Name’ are:

Nbrel : Ghdl_Index_Type

     Number elements in the record.

Elements : Ghdl_Rti_Arr_Acc;

     The RTI nodes of the element defintions.

Layout : Ghdl_Rti_Loc

     The layout is the relative address that the layout/bounds
     information of the elements will be relative to.

22.2.15 Record Type (Ghdl_Rtin_Type_Record)
-------------------------------------------

For an unbounded record the Layout is not used, but rather a ‘Bounds’
must be given.

22.2.16 Element Type (Ghdl_Rtin_Element)
----------------------------------------

The record elements after ‘Common’ and ‘Name’ are:

Eltype : Ghdl_Rti_Access

     The RTI node representing the type of the element.

Val_Off : Ghdl_Index_Type

     For static element the offset is in the record.  For complex
     element the offset is in the type layout or object layout.  This is
     the offset for the value for generics or constants.

Sig_Off : Ghdl_Index_Type

     This is the offset for the value wrapper in signals or ports.

Layout_Off : Ghdl_Index_Type;

     For unbounded records: element layout offset in the layout.  The
     layout is stores all the bounds for the various elements when the
     unbounded record is given bounds.

22.2.17 Examples
----------------

     library ieee ;
     use ieee.std_logic_1164.all;

     package mypkg is

       type mytype is record
         a: std_logic;
         b: std_logic;
       end record;

     end package;

     library ieee ;
     use ieee.std_logic_1164.all;
     use work.mypkg.all;

     entity myentity is
       port(
         x: in mytype
         );
     end myentity;

     architecture arch of myentity is
     begin
     end arch;

What will be the structure of the RTI for the port ‘myentity.x’?

The architecture has a context.  Address of the architecture is A

The entity has the same context.  Address of the entity is A.

The child on the entity is the port.  Address of the port is A + 16.

A port is a record ‘x’ Address of the record value is A + 16.

The record contains ‘a’ a std_logic vector.  Address is A + 16.

The record contains ‘b’ a std_logic_vector.  Address is A + 24

     library ieee ;
     use ieee.std_logic_1164.all;

     package mypkg is

       type mytype is record
         a: std_logic_vector(1 downto 0);
         b: std_logic_vector(1 downto 0);
       end record;

     end package;

     library ieee ;
     use ieee.std_logic_1164.all;
     use work.mypkg.all;

     entity myentity is
       port(
         x: in mytype
         );
     end myentity;

     architecture arch of myentity is
     begin
     end arch;

     - Architecture (A)
       - Entity (A)
         - port x (A+16)
           - x.a (A+16)
           - x.a(?) (A+16)
           - x.a(?) (A+24)
           - x.b (A+32)
           - x.b(?) (A+40)
           - x.b(?) (A+48)

     library ieee ;
     use ieee.std_logic_1164.all;

     entity myentity is
       generic (
         WIDTH: natural := 2
         );
       port(
         x: in std_logic_vector(WIDTH-1 downto 0)
         );
     end myentity;

     architecture arch of myentity is
     begin
     end arch;

     - Architecture (A)
       - Entity (A)
         - generic WIDTH (A+16)
         - port x (A+48) content of address (A+48) is B
           - type information
             analyze a type with context (address=A, rti=entity)
             layout is located at A+20
             so bounds is located at A+28
           - x subtype array (B)
             - x(?) (B)
             - x(?) (B+8)

23 GNATdoc
**********

24 Index
********

25 Python Module Index
**********************