small updates to type_info and added untyped_array
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Sun, 27 Jun 2021 03:38:33 +0000 (22:38 -0500)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Sun, 27 Jun 2021 03:38:33 +0000 (22:38 -0500)
core/container/array.onyx
core/type_info/type_info.onyx

index 7c3f25b081ce51259f866967aaa5ed12a2e0ec2f..6dad7f082e5c2ec20ee21ed64b08b362c664016e 100644 (file)
@@ -379,3 +379,13 @@ least :: #match {
     (arr: [] $T)   -> (i32, T) { return fold_idx_elem(arr.data, arr.count, cmp_less); },
     (arr: [$N] $T) -> (i32, T) { return fold_idx_elem(cast(^T) arr, N,     cmp_less); },
 }
+
+
+// Useful structure when talking about dynamic arrays where you don't know of what
+// type they store. For example, when passing a dynamic array as an 'any' argument.
+Untyped_Array :: struct {
+    data: rawptr;
+    count: u32;
+    capacity: u32;
+    allocator: Allocator;
+}
index 8c26dd2719c64a42379923a44289fa4435b12cef..512970ea9eaece89c97a919e1ef91a617709842d 100644 (file)
@@ -133,7 +133,7 @@ Type_Info_Struct :: struct {
     Member :: struct {
         name: str;
         offset: u32;
-        type_index: type_expr;
+        type: type_expr;
 
         used: bool;
         has_default: bool;