Packages

builtin
cbindgen
core
core.alloc
core.alloc.arena
core.alloc.atomic
core.alloc.debug
core.alloc.fixed
core.alloc.gc
core.alloc.heap
core.alloc.log
core.alloc.memwatch
core.alloc.pool
core.alloc.ring
core.arg_parse
core.array
core.avl_tree
core.bucket_array
core.conv
core.crypto
core.crypto.keys
core.doc
core.encoding
core.encoding.base64
core.encoding.csv
core.encoding.hex
core.encoding.json
core.encoding.kdl
core.encoding.osad
core.encoding.utf8
core.encoding.xml
core.hash
core.hash.md5
core.hash.sha1
core.hash.sha256
core.heap
core.intrinsics
core.intrinsics.atomics
core.intrinsics.onyx
core.intrinsics.types
core.intrinsics.wasm
core.io
core.io.binary
core.iter
core.js
core.list
core.map
core.math
core.memory
core.misc
core.net
core.os
core.random
core.set
core.slice
core.string
core.sync
core.test
core.thread
core.time
main
runtime
runtime.info
runtime.platform
runtime.vars
simd

package runtime.info

Foreign_Block
Foreign_Block :: struct {
    module_name: [] u8
    funcs: [] Foreign_Block.Foreign_Function
}
Stack_Frame
Stack_Frame :: struct {
    info: &Stack_Node
    current_line: u32
}
Stack_Node
Stack_Node :: struct {
    file: [] u8
    line: u32
    func_name: [] u8
}
Stack_Trace
Stack_Trace :: struct {
    prev: &Stack_Trace
    data: &Stack_Node
    current_line: u32
}
Tagged_Global
Tagged_Global :: struct {
    data: rawptr
    type: type_expr
    tags: [] any
    pack: package_id
}
Tagged_Procedure
Tagged_Procedure :: struct {
    func: () -> void
    type: type_expr
    tags: [] any
    pack: package_id
}
Type_Entry
Type_Entry :: struct {
    type: type_expr
    info: &Type_Info
}
Type_Info
Type_Info :: struct {
    kind: Type_Info.Kind
    size: u32
    alignment: u32
}
Methods
Type_Info.as_array
Type_Info.as_array :: (t: &Type_Info) -> &Type_Info_Array
Type_Info.as_basic
Type_Info.as_basic :: (t: &Type_Info) -> &Type_Info_Basic
Type_Info.as_compound
Type_Info.as_compound :: (t: &Type_Info) -> &Type_Info_Compound
Type_Info.as_distinct
Type_Info.as_distinct :: (t: &Type_Info) -> &Type_Info_Distinct
Type_Info.as_dynamic_array
Type_Info.as_dynamic_array :: (t: &Type_Info) -> &Type_Info_Dynamic_Array
Type_Info.as_enum
Type_Info.as_enum :: (t: &Type_Info) -> &Type_Info_Enum
Type_Info.as_function
Type_Info.as_function :: (t: &Type_Info) -> &Type_Info_Function
Type_Info.as_multi_pointer
Type_Info.as_multi_pointer :: (t: &Type_Info) -> &Type_Info_Multi_Pointer
Type_Info.as_pointer
Type_Info.as_pointer :: (t: &Type_Info) -> &Type_Info_Pointer
Type_Info.as_poly_struct
Type_Info.as_poly_struct :: (t: &Type_Info) -> &Type_Info_Polymorphic_Struct
Type_Info.as_poly_union
Type_Info.as_poly_union :: (t: &Type_Info) -> &Type_Info_Polymorphic_Union
Type_Info.as_slice
Type_Info.as_slice :: (t: &Type_Info) -> &Type_Info_Slice
Type_Info.as_struct
Type_Info.as_struct :: (t: &Type_Info) -> &Type_Info_Struct
Type_Info.as_union
Type_Info.as_union :: (t: &Type_Info) -> &Type_Info_Union
Type_Info.as_variadic_argument
Type_Info.as_variadic_argument :: (t: &Type_Info) -> &Type_Info_Variadic_Argument
Type_Info_Array
Type_Info_Array :: struct {
    base: Type_Info
    of: type_expr
    count: u32
}
Type_Info_Basic
Type_Info_Basic :: struct {
    base: Type_Info
    basic_kind: Type_Info_Basic.Kind
}
Type_Info_Compound
Type_Info_Compound :: struct {
    base: Type_Info
    components: [] type_expr
}
Type_Info_Distinct
Type_Info_Distinct :: struct {
    base: Type_Info
    base_type: type_expr
    name: [] u8
}
Type_Info_Dynamic_Array
Type_Info_Dynamic_Array :: struct {
    base: Type_Info
    of: type_expr
}
Type_Info_Enum
Type_Info_Enum :: struct {
    base: Type_Info
    backing_type: type_expr
    name: [] u8
    members: [] Type_Info_Enum.Member
    is_flags: bool
}
Type_Info_Function
Type_Info_Function :: struct {
    base: Type_Info
    return_type: type_expr
    parameter_types: [] type_expr
    is_variadic: bool
}
Type_Info_Multi_Pointer
Type_Info_Multi_Pointer :: struct {
    base: Type_Info
    to: type_expr
}
Type_Info_Pointer
Type_Info_Pointer :: struct {
    base: Type_Info
    to: type_expr
}
Type_Info_Polymorphic_Struct
Type_Info_Polymorphic_Struct :: struct {
    base: Type_Info
    name: [] u8
    tags: [] any
}
Type_Info_Polymorphic_Union
Type_Info_Polymorphic_Union :: struct {
    base: Type_Info
    name: [] u8
    tags: [] any
}
Type_Info_Slice
Type_Info_Slice :: struct {
    base: Type_Info
    of: type_expr
}
Type_Info_Struct
Type_Info_Struct :: struct {
    base: Type_Info
    constructed_from: type_expr
    name: [] u8
    members: [] Type_Info_Struct.Member
    parameters: [] any
    tags: [] any
    methods: [] Type_Info_Struct.Method
}
Type_Info_Union
Type_Info_Union :: struct {
    base: Type_Info
    constructed_from: type_expr
    tag_enum: type_expr
    name: [] u8
    variants: [] Type_Info_Union.Variant
    parameters: [] any
    tags: [] any
    methods: [] Type_Info_Union.Method
}
Type_Info_Variadic_Argument
Type_Info_Variadic_Argument :: struct {
    base: Type_Info
    of: type_expr
}
foreign_block
foreign_block :: #distinct u32
enum_name
enum_name :: (value: $Backing_Type) -> str
enum_value
enum_value :: ($E: type_expr, name: str) -> E
enum_values
enum_values :: (E: type_expr) -> [] Type_Info_Enum.Member
for_all_types
for_all_types :: macro (body: Code) -> void
get_foreign_block
get_foreign_block :: (f: foreign_block) -> &Foreign_Block
get_globals_with_tag
get_globals_with_tag :: ($tag_type: type_expr) -> [] GGWT_Result(tag_type)
get_procedures_with_tag
get_procedures_with_tag :: ($tag_type: type_expr) -> [] GPWT_Result(tag_type)
get_stack_trace
get_stack_trace :: (offset: i32) -> [..] Stack_Frame
get_stack_trace :: (buf: [] Stack_Frame, offset: i32) -> [] Stack_Frame
get_struct_by_name
get_struct_by_name :: (name: [] u8) -> type_expr
get_struct_member
get_struct_member :: (S: type_expr, member_name: [] u8) -> &Type_Info_Struct.Member
get_struct_method
get_struct_method :: (type: type_expr, method_name: [] u8) -> &any
get_tags_for_member
get_tags_for_member :: (S: type_expr, member_name: [] u8) -> [] any
get_tags_for_procedure
get_tags_for_procedure :: (func: $T) -> [] any
get_type_info
get_type_info :: (t: type_expr) -> &Type_Info
is_pointer
is_pointer :: (t: type_expr) -> bool
offset_of
offset_of :: (T: type_expr, member_name: [] u8) -> u32
populate_struct_vtable
populate_struct_vtable :: (table: &$Table_Type, struct_type: type_expr, safe) -> void
size_of
size_of :: (t: type_expr) -> u32
struct_constructed_from
struct_constructed_from :: (struct_type: type_expr, base_type: type_expr) -> bool
struct_inherits
struct_inherits :: (struct_type: type_expr, base_type: type_expr) -> bool
union_constructed_from
union_constructed_from :: (union_type: type_expr, base_type: type_expr) -> bool
write_type_name
write_type_name :: (writer: &Writer, t: type_expr) -> void