TypeInfoStructMember¶
TypeInfoStructMember :: struct {
name: string;
base_type: *TypeInfo;
offset_bytes: s32;
index: s32;
tags: s32;
is_base: bool;
}
Detailed information about structure member.
Members¶
name - Member type name.
base_type - Member type info.
offset_bytes - Byte-offset of member inside structure ABI.
index - Order in structure.
tags - User tags contains merge of all tag values assigned to member in structure declaration. Basically tags behave like a flags value, merge is done by binary or of all defined tag values. User tags can be defined by #tags hash directive written after member type in following way:
Foo :: struct {
i: s32 #tags TAG1;
j: s32 #tags TAG1, TAG2;
};
Where tags must be compile-time constant of s32 type.
TAG1 :: 0x1;
TAG2 :: 0x2;
is_base - True when member is inherrited base of the parent structure type.
Declared in: a.bl