blark.transform.StringTypeInitialization

class blark.transform.StringTypeInitialization(spec: StringTypeSpecification, value: Token | None, meta: Meta | None = None)[source]

Bases: TypeInitializationBase

Single or double-byte string specification.

Examples:

STRING := 'test'
STRING(2_500_000) := 'test'
STRING(Param.iLower) := 'test'

Bracketed versions are also acceptable.

Lark grammar

This class is used by the following grammar rules:

single_byte_string_spec

single_byte_string_spec: STRING [ string_spec_length ] [ ":=" SINGLE_BYTE_CHARACTER_STRING ]

double_byte_string_spec

double_byte_string_spec: WSTRING [ string_spec_length ] [ ":=" DOUBLE_BYTE_CHARACTER_STRING ]

Methods

__init__(spec, value[, meta])

from_lark(string_type[, length, value])

Attributes

base_type_name

The base type name.

full_type_name

The full, qualified type name.

meta

type_info

The base type name.

spec

value

spec: StringTypeSpecification
value: Token | None
meta: Meta | None = None
static from_lark(string_type: Token, length: StringSpecLength | None = None, value: Token | None = None) StringTypeInitialization[source]
__init__(spec: StringTypeSpecification, value: Token | None, meta: Meta | None = None) None