blark.transform.StructureElementDeclaration

class blark.transform.StructureElementDeclaration(variables: List[DeclaredVariable], init: ArrayTypeInitialization | StringTypeInitialization | TypeInitialization | SubrangeTypeInitialization | EnumeratedTypeInitialization | InitializedStructure | FunctionCall, meta: Meta | None = None)[source]

Bases: object

Declaration line of a structure, typically with a single variable name.

Excludes the trailing semicolon.

Examples:

iValue : INT := 3 + 4
stTest : ST_Testing := (1, 2)
eValue : E_Test := E_Test.ABC
arrValue : ARRAY [1..2] OF INT := [1, 2]
arrValue1 : INT (1..2)
arrValue1 : (Value1 := 1) INT
sValue : STRING := 'abc'
iValue1 AT %I* : INT := 5
sValue1 : STRING[10] := 'test'
Timer1, Timer2, Timer3 : library.TPUDO

Lark grammar

This class is used by the following grammar rules:

structure_element_declaration

structure_element_declaration: var1_list ":" ( initialized_structure | array_spec_init | simple_spec_init | subrange_spec_init | enumerated_spec_init | function_call )

Methods

__init__(variables, init[, meta])

from_lark()

Attributes

base_type_name

The base type name.

full_type_name

The full type name.

meta

value

The initialization value, if applicable.

variables

init

variables: List[DeclaredVariable]
init: ArrayTypeInitialization | StringTypeInitialization | TypeInitialization | SubrangeTypeInitialization | EnumeratedTypeInitialization | InitializedStructure | FunctionCall
meta: Meta | None = None
property value: str

The initialization value, if applicable.

property base_type_name: Token | str

The base type name.

property full_type_name: Token | str

The full type name.

__init__(variables: List[DeclaredVariable], init: ArrayTypeInitialization | StringTypeInitialization | TypeInitialization | SubrangeTypeInitialization | EnumeratedTypeInitialization | InitializedStructure | FunctionCall, meta: Meta | None = None) None
from_lark() T