Skip to content

TypeDefinition

graph BT
N1["TypeDefinition"] -->|inherits| N2["Statement"];
N1["TypeDefinition"] -->|inherits| N3["Generic"];
N3["Generic"] -->|inherits| N4["AST"];
N4["AST"] -->|inherits| N5["Stringable"];
N5["Stringable"] -->|inherits| N6["Any"];
N2["Statement"] -->|inherits| N7["Instruction"];
N7["Instruction"] -->|inherits| N4["AST"];
N4["AST"] -->|inherits| N5["Stringable"];
N5["Stringable"] -->|inherits| N6["Any"];

Characteristics

Quality Value
Inherits Statement, Generic
Extends N/A
Decorators N/A
Is enum false
Is sealed false
Is extern false
Is abstract false
Is generator false
Has value semantics false
Has stored properties true
Should register destructor true
Has atomic memory false
Is copy assignable false
Is zero initializable false

Methods

construct

construct (s strictly @Self, var @Any?, ast_ptr: Pointer = Pointer(), owner: Bool = true) -> Self

is_parametric

#strict
is_parametric (s nom @Self) -> Bool

is_fully_composed

#strict
is_fully_composed (s nom @Self) -> Bool

is_enum

#strict
is_enum (s nom @Self) -> Bool

is_reference_kind

#strict
is_reference_kind (s nom @Self) -> Bool

has_value_semantics

#strict
has_value_semantics (s nom @Self) -> Bool

has_stored_properties

#strict
has_stored_properties (s nom @Self) -> Bool

is_empty

#strict
is_empty (s nom @Self) -> Bool

should_register_destructor

#strict
should_register_destructor (s nom @Self) -> Bool

has_atomic_memory

#strict
has_atomic_memory (s nom @Self) -> Bool

is_copy_assignable

#strict
is_copy_assignable (s nom @Self) -> Bool

is_zero_initializable

#strict
is_zero_initializable (s nom @Self) -> Bool

is_extern

#strict
is_extern (s nom @Self) -> Bool

is_abstract

#strict
is_abstract (s nom @Self) -> Bool

is_sealed

#strict
is_sealed (s nom @Self) -> Bool

is_generator

#strict
is_generator (s nom @Self) -> Bool

is_layout_c

#strict
is_layout_c (s nom @Self) -> Bool

is_subtype_of_type

#strict
is_subtype_of_type (s nom @Self, o nom SelfType, nominal_check Bool, strict_check Bool) -> Bool

is_subtype_of_function_interface

#strict
is_subtype_of_function_interface (s nom @Self, o nom FunctionInterface, strict_check Bool) -> Bool

is_equivalent_to

#strict
is_equivalent_to (s nom @Self, o nom SelfType, strict_check Bool) -> Bool

get_full_name

#string
get_full_name (s nom @Self) -> String

get_unique_name

#string
get_unique_name (s nom @Self) -> String

Properties

symbol (computed)

symbol String

inherits_list (computed)

inherits_list nom TypeSpecifierList?

extends_list (computed)

extends_list nom TypeSpecifierList?

features (computed)

features nom TypeFeatures?

doc_string (computed)

doc_string String

decorators (computed)

decorators nom DecoratorList?

status (computed)

status UInt32

sets and returns the ast status code defined by the compiler


__ast_ptr

__ast_ptr Pointer

__is_owner

__is_owner Bool

type_parameters (computed)

type_parameters nom TypeParameterList?

const_expr_parameters (computed)

const_expr_parameters nom TypeParameterList?

type_var_args (computed)

type_var_args String

const_expr_var_args (computed)

const_expr_var_args String