TypeInfoStructMember :: struct #compiler { name: string; base_type: *TypeInfo; offset_bytes: s32; index: s32; tags: s32; is_base: bool; }
Detailed information about structure member.
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