Add reflect.get_union_variant

This commit is contained in:
gingerBill
2022-08-26 16:19:16 +01:00
parent 8fd5bef0bd
commit b50b6b9f33
+11
View File
@@ -729,6 +729,17 @@ get_union_variant_raw_tag :: proc(a: any) -> i64 {
panic("expected a union to reflect.get_union_variant_raw_tag")
}
get_union_variant :: proc(a: any) -> any {
if a == nil {
return nil
}
id := union_variant_typeid(a)
if id == nil {
return nil
}
return any{a.data, id}
}
set_union_variant_raw_tag :: proc(a: any, tag: i64) {
if a == nil { return }