added type_info.enum_values
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Mon, 31 Jan 2022 03:48:27 +0000 (21:48 -0600)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Mon, 31 Jan 2022 03:48:27 +0000 (21:48 -0600)
core/type_info/helper.onyx

index 8dd29e153aa20b878bc74694712fd2bcdac228a6..43ea2993a80e5b8b8a286c1a9580085f5859e71f 100644 (file)
@@ -205,3 +205,10 @@ enum_value :: ($E: type_expr, name: str) -> E {
 
     return ~~0;
 }
+
+enum_values :: (E: type_expr) -> [] Type_Info_Enum.Member {
+    info := cast(^Type_Info_Enum) get_type_info(E);
+    if info.kind != .Enum do return .[];
+
+    return info.members;
+}
\ No newline at end of file