:py:mod:`raesl.compile.machine_files.parameters`
================================================
.. py:module:: raesl.compile.machine_files.parameters
.. autoapi-nested-parse::
Line matcher state machines for parameters.
Module Contents
---------------
Functions
~~~~~~~~~
.. autoapisummary::
raesl.compile.machine_files.parameters._process_paramheader
raesl.compile.machine_files.parameters._process_paramline
Attributes
~~~~~~~~~~
.. autoapisummary::
raesl.compile.machine_files.parameters._PARAMETER_HEADER_SPEC
raesl.compile.machine_files.parameters._PARAMETER_LINE_SPEC
raesl.compile.machine_files.parameters.MACHINES
.. py:data:: _PARAMETER_HEADER_SPEC
:value: Multiline-String
.. raw:: html
Show Value
.. code-block:: python
"""
parameter_header:
start initial;
start -> s1 [PARAMETER_KW] tag=parameter;
end accept=parameter_header;
s1 -> end [NL_TK];
s1 -> end [EOF_TK];
"""
.. raw:: html
.. py:function:: _process_paramheader(tags: raesl.compile.machine_files.typing.TokensDict, _accept: str, builder: raesl.compile.typechecking.ast_builder.AstBuilder) -> None
.. py:data:: _PARAMETER_LINE_SPEC
:value: Multiline-String
.. raw:: html
Show Value
.. code-block:: python
"""
parameter_line:
start initial;
start -> s1 [NAME] tag=paramname;
s1 -> start [COMMA_TK];
s1 -> s2 [IS_KW];
s2 -> s3 [A_KW];
s3 -> s4 [NAME] tag=typename;
end accept=parameter_line;
s4 -> end [NL_TK];
s4 -> end [EOF_TK];
s4 -> s5 [PROPERTY_KW] tag=is_property;
s5 -> end [NL_TK];
s5 -> end [EOF_TK];
"""
.. raw:: html
.. py:function:: _process_paramline(tags: raesl.compile.machine_files.typing.TokensDict, _accept: str, builder: raesl.compile.typechecking.ast_builder.AstBuilder) -> None
.. py:data:: MACHINES
:type: raesl.compile.machine_files.typing.MachineTripletList
:value: [('PARAMETER_HEADER_MACHINE',), ('PARAMETER_LINE_MACHINE',)]