Commit Graph

63 Commits

Author SHA1 Message Date
gitlost
4f5203e661 Fix some core:encoding/hxa stuff (error handling, header, max -> min)
Also add missing f16 case to core:reflect as_u64 & as_f64
Add tests for above & add previous tests missing from test/core/build.bat
2022-03-16 19:12:00 +00:00
gingerBill
1abd95094d Add reflect.deref 2022-03-03 23:25:22 +00:00
gingerBill
14cb19c2df Update fmt to record the bytes written in the fmt.Info 2022-02-20 22:31:13 +00:00
gingerBill
97be867103 Rename #partial[Enum]Type to #sparse[Enum]Type for non-contiguous enum fields 2022-02-05 13:01:15 +00:00
Andrea Piseri
e190c024fd Fix logic in is_nil procedure: a non_nil slice means there is data to check. 2022-02-02 20:07:38 +01:00
gingerBill
1556fad65a Change syntax for matrices to matrix[R, C]T 2021-10-19 11:31:11 +01:00
gingerBill
4c655865e5 Begin work on matrix type 2021-10-18 16:52:19 +01:00
gingerBill
d32d1b7e07 Add reflect.set_union_value 2021-09-30 12:04:27 +01:00
gingerBill
8e2a0be804 Add an extra optional ^int parameter to most io read/write calls allowing for simplified or_return use with incrementing byte usage 2021-09-29 13:59:47 +01:00
gingerBill
94a27224b2 Deprecate strings.write_quoted_* in favour of io.write_quoted_*; make reflect.write_type a little more robust with io.Error handling 2021-09-29 13:42:58 +01:00
gingerBill
931fdd2dca Add reflect.any_base reflect.any_core 2021-09-25 17:47:23 +01:00
gingerBill
2800d4b8d0 Merge branch 'master' into optional-semicolons 2021-09-06 16:46:57 +01:00
gingerBill
e3809f5c1b Allow comparisons of any if reflect.equal if including_indirect_array_recursion is enabled 2021-09-03 15:52:47 +01:00
gingerBill
c9f4fdc856 Update reflect.equal to support more types 2021-09-03 15:49:29 +01:00
gingerBill
11ae87cc2f Add including_indirect_array_recursion argument to reflect.equal 2021-09-03 12:00:43 +01:00
gingerBill
7ed4f01d02 Add reflect.equal and reflect.not_equal 2021-09-03 11:02:31 +01:00
gingerBill
720884e0f1 Strip even more semicolons if followed by a } or ) on the same line 2021-08-31 23:47:57 +01:00
gingerBill
251da264ed Remove unneeded semicolons from the core library 2021-08-31 22:21:13 +01:00
gingerBill
18a0fa02c5 Add multi pointers to core 2021-08-21 23:16:14 +01:00
gingerBill
f0437a4242 Enforce core:builtin and core:intrinsics for imports 2021-08-21 13:44:16 +01:00
gingerBill
3e7aabe6d8 Change uses for parapoly records to use $ always 2021-06-14 11:43:35 +01:00
gingerBill
3ca887a60a Add struct_fields_zipped and enum_fields_zipped (allowing for iteration through an #soa slice) 2021-06-14 11:04:51 +01:00
gingerBill
0a66f8c9a3 Remove intrinsics.x86_mmx type 2021-04-22 10:39:20 +01:00
gingerBill
b727b6438b Minimize unneeded casts 2021-03-03 14:31:17 +00:00
gingerBill
aa93305015 Replace usage of inline proc with #force_inline proc in the core library 2021-02-23 16:14:47 +00:00
gingerBill
41b854f192 Remove #opaque types 2021-02-23 15:45:06 +00:00
gingerBill
595885d3db Remove bit_field in type info, runtime, and general core library 2021-02-19 11:36:23 +00:00
gingerBill
aed63a6e8b Update package reflect 2021-01-27 15:27:59 +00:00
gingerBill
a07d199a48 Add slice.map_keys, slice.map_values, slice.map_entries, slice.map_entry_infos 2021-01-06 11:21:22 +00:00
gingerBill
fd453be831 Deprecate opaque in favour of #opaque in the core library 2020-12-04 18:49:39 +00:00
gingerBill
5d0db4c63a Clean up fmt usage with io.Writer and strings.Builder 2020-12-04 15:04:54 +00:00
gingerBill
18da0b3418 Integrate package io into core library 2020-12-03 10:45:26 +00:00
gingerBill
67bc35e882 Fix logic for comparisons of struct #raw_union types 2020-11-23 16:19:26 +00:00
gingerBill
4e370e6ed8 Add equal procedure field to runtime.Type_Info_Struct 2020-11-23 15:53:49 +00:00
gingerBill
87956676f5 Add %s support for arrays and slices of bytes 2020-11-20 16:01:16 +00:00
gingerBill
96a0125599 Fix typo in reflect.set_union_variant_type_info 2020-09-27 00:30:54 +01:00
gingerBill
626d0736f4 Add more to package reflect (as_string, as_pointer, as_raw_data, relative_pointer_to_absolute) 2020-09-27 00:15:16 +01:00
gingerBill
e26f63b448 Update package reflect 2020-09-26 23:51:42 +01:00
gingerBill
fc4fdd588e Remove usage of do in core library 2020-09-23 17:17:14 +01:00
gingerBill
b94dde2817 Force used of imports in reflect/map.odin 2020-09-15 12:31:21 +01:00
gingerBill
bfc7d74967 Add relfect.map_entry_info_slice 2020-09-15 12:23:49 +01:00
gingerBill
036429bf2f Fix reflect.as_i64 and reflect.as_u64 2020-06-10 14:13:50 +01:00
gingerBill
f992e36f9a Rename reflect.to_* to reflect.as_* 2020-06-05 10:38:38 +01:00
gingerBill
11dd971e13 Add reflect.{to_int, to_uint, to_i64, to_u64, to_f64} 2020-06-05 10:27:32 +01:00
gingerBill
ff92eb9112 Relative pointers 2020-05-15 17:37:00 +01:00
Tetralux
8d2430e54d Add reflect.enum_from_name
Provides a way to go from a enum value name string to an actual enum value.

```
E :: enum { A, B }

// ...

s := "B";
v, ok := enum_from_name(E, s);
assert(ok && v == E.B);
```
2020-05-09 07:30:07 +00:00
gingerBill
1e321cd48c Fix reflect.capacity and reflect.index 2020-04-15 19:00:05 +01:00
gingerBill
dbaf8568d6 Fix reflect.length 2020-04-15 18:56:19 +01:00
gingerBill
90593fe6ae Endian specific floating point types (e.g. f32be) 2020-04-11 21:34:55 +01:00
gingerBill
4be385d648 Add more helpers to package reflect 2020-03-27 13:30:22 +00:00