blark.transform.InputOutputDeclarations

class blark.transform.InputOutputDeclarations(attrs: VariableAttributes | None, items: List[ArrayVariableInitDeclaration | StringVariableInitDeclaration | VariableOneInitDeclaration | FunctionBlockDeclaration | EdgeDeclaration | StructuredVariableInitDeclaration], meta: Meta | None = None)[source]

Bases: VariableDeclarationBlock

A block of named, input/output variable declarations (VAR_IN_OUT).

May be annotated with attributes (see VariableAttributes).

Lark grammar

This class is used by the following grammar rules:

input_output_declarations

input_output_declarations: "VAR_IN_OUT"i [ variable_attributes ] var_body "END_VAR"i ";"*

Methods

__init__(attrs, items[, meta])

from_lark(attrs, items)

Attributes

attribute_pragmas

Attribute pragmas associated with the variable declaration block.

block_header

meta

attrs

items

block_header: ClassVar[str] = 'VAR_IN_OUT'
attrs: VariableAttributes | None
items: List[ArrayVariableInitDeclaration | StringVariableInitDeclaration | VariableOneInitDeclaration | FunctionBlockDeclaration | EdgeDeclaration | StructuredVariableInitDeclaration]
meta: Meta | None = None
static from_lark(attrs: VariableAttributes | None, items: Tree) InputOutputDeclarations[source]
__init__(attrs: VariableAttributes | None, items: List[ArrayVariableInitDeclaration | StringVariableInitDeclaration | VariableOneInitDeclaration | FunctionBlockDeclaration | EdgeDeclaration | StructuredVariableInitDeclaration], meta: Meta | None = None) None