blark.transform.ArrayTypeInitialization

class blark.transform.ArrayTypeInitialization(indirection: IndirectionType | None, spec: ArraySpecification, value: ArrayInitialization | None, meta: Meta | None = None)[source]

Bases: TypeInitializationBase

Array specification and optional default (initialization) value.

May be indirect (e.g., POINTER TO).

Examples:

ARRAY[*] OF TypeName
ARRAY[1..2] OF Call(1, 2) := [1, 2]
POINTER TO ARRAY[1..2] OF Call(1, 2)

Lark grammar

This class is used by the following grammar rules:

array_spec_init

array_spec_init: [ indirection_type ] array_specification [ ":=" array_initialization ]

Methods

__init__(indirection, spec, value[, meta])

from_lark()

Attributes

base_type_name

The base type name.

full_type_name

The full, qualified type name.

meta

type_info

The base type name.

indirection

spec

value

indirection: IndirectionType | None
spec: ArraySpecification
value: ArrayInitialization | None
meta: Meta | None = None
__init__(indirection: IndirectionType | None, spec: ArraySpecification, value: ArrayInitialization | None, meta: Meta | None = None) None
from_lark() T