typeid :: fn (v: type) u64
Returns unique type identificator in compile-time.
File: type_utils.bl
is_number :: fn (T: type) bool
Returns true if the T type is an integer type.
File: type_utils.bl
is_real :: fn (T: type) bool
Returns true if the T type is an floating point number type.
File: type_utils.bl
is_real_or_number :: fn (T: type) bool
Returns true if the T type is an integer or floating point number type (f32 or f64).
File: type_utils.bl
is_signed_number :: fn (T: type) bool
Returns true if the T type is a signed integer type.
File: type_utils.bl
is_pointer :: fn (T: type) bool
Returns true if the T type is a pointer type.
File: type_utils.bl
is_function :: fn (T: type) bool
Returns true if the T type is a function type.
File: type_utils.bl
is_struct :: fn (T: type) bool
Returns true if the T type is a struct type.
File: type_utils.bl
is_union :: fn (T: type) bool
Returns true if the T type is a union type.
File: type_utils.bl
is_enum :: fn (T: type) bool
Returns true if the T type is an enumerator type.
File: type_utils.bl
enum_variant_count :: fn (TEnum: type) s64
Resolve number of enum type variants.
File: type_utils.bl
enum_variant_name :: fn (T: type, index: s64) string_view #inline
Resolve enum variant name.
File: type_utils.bl
enum_variant_value :: fn (T: type, index: s64) T #inline
Resolve enum variant value.
File: type_utils.bl
struct_member_count :: fn (TStruct: type) s64
Resolve number of struct type members.
File: type_utils.bl
get_struct_member_type :: fn (TStruct: type, index: s64) type
Returns type of struct member at index. The index value must be in range
from 0 to struct_member_count(T)-1.
File: type_utils.bl
struct_members_to_enum :: fn (TStruct: type) type
Generates enum type from the struct type.
Creates enum with variants named after struct members respecting order in which members
were declared in the struct type.
File: type_utils.bl
has_member :: fn (TStruct: type, member_name: string_view) bool
File: type_utils.bl
member_offset_bytes :: fn {
member_offset_bytes_impl;
member_offset_bytes_with_typeinfo_impl;
}
File: type_utils.bl
member_ptr :: fn {
member_ptr_impl;
member_ptr_with_type_info_impl;
}
File: type_utils.bl
number_type :: fn (size_bytes: usize, is_signed: bool) type
Returns signed or unsigned builtin number type of the requested size.
The size_bytes must be 1, 2, 4 or 8 Bytes.
File: type_utils.bl