| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Change seed logic | gingerBill | 2025-12-21 | 1 | -3/+5 |
| | | |||||
| * | Add `reflect.default_map_hash_by_ptr` | gingerBill | 2025-12-21 | 1 | -0/+10 |
| | | |||||
| * | Add reflect.as_string16 and fix typos | Jeroen van Rijn | 2025-10-07 | 1 | -24/+46 |
| | | |||||
| * | Improve documentation for `core:reflect` | gingerBill | 2025-10-07 | 1 | -29/+205 |
| | | |||||
| * | Change hashing rules for float-like types to make `0 == -0` | gingerBill | 2025-04-16 | 1 | -3/+40 |
| | | |||||
| * | Remove Type_Info_Tuple | Jeroen van Rijn | 2025-04-13 | 1 | -3/+2 |
| | | |||||
| * | Add `reflect.length` + `reflect.capacity` support for `#simd[N]T` | Jeroen van Rijn | 2025-04-11 | 1 | -0/+8 |
| | | |||||
| * | Add fix to `reflect.typeid_elem` | Jeroen van Rijn | 2025-04-11 | 1 | -0/+1 |
| | | |||||
| * | Remove `#relative` types from the compiler | gingerBill | 2024-11-14 | 1 | -54/+27 |
| | | |||||
| * | reflect: add `enum_value_has_name` proc | Laytan Laats | 2024-11-11 | 1 | -0/+21 |
| | | | | | | Easy way to check if the current value has a defined name/member in the enum type. | ||||
| * | Add a few more reflect.bit_field_* helpers. | Jeroen van Rijn | 2024-08-30 | 1 | -23/+68 |
| | | |||||
| * | Add reflect.bit_fields_zipped | Jeroen van Rijn | 2024-08-30 | 1 | -0/+23 |
| | | |||||
| * | fix `type_info_union_is_pure_maybe` only working with regular pointers | Laytan Laats | 2024-08-11 | 1 | -1/+1 |
| | | | | | Fixes #3996 | ||||
| * | Update comment. | Jeroen van Rijn | 2024-08-05 | 1 | -3/+5 |
| | | |||||
| * | Add `reflect.struct_field_count` that returns the number of fields in a ↵ | Jeroen van Rijn | 2024-08-05 | 1 | -0/+56 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | struct type Example: ```odin package struct_count_example import "core:fmt" import "core:reflect" import "core:dynlib" Foo :: struct{ one: int, two: f32, } Bar :: struct { three: int, four: bool, five: f64, } Game_Api :: struct { init: proc(api: ^Game_Api), update: proc(api: ^Game_Api), using foo: Foo, bar: Bar, // Private stuff reload_count: int, __handle: rawptr, } API_PRIVATE_COUNT :: 2 game_api: Game_Api main :: proc() { fmt.printfln("Game_Api, .Top: %v", reflect.struct_field_count(Game_Api)) // 6 fmt.printfln("Game_Api, .Using: %v", reflect.struct_field_count(Game_Api, .Using)) // 8 fmt.printfln("Game_Api, .Recursive: %v", reflect.struct_field_count(Game_Api, .Recursive)) // 11 symbols_loaded, _ := dynlib.initialize_symbols(&game_api, "game.dll") symbols_expected := reflect.struct_field_count(Game_Api) - API_PRIVATE_COUNT if symbols_loaded == -1 { fmt.eprintln("Couldn't load game.dll") return } else if symbols_loaded != symbols_expected { fmt.eprintfln("Expected %v symbols, got %v", symbols_expected, symbols_loaded) return } } ``` | ||||
| * | fix `reflect.any_base` and `reflect.any_core` with any's containing nil | Laytan Laats | 2024-07-22 | 1 | -2/+2 |
| | | |||||
| * | Reduce the size of `runtime.Type_Info` | gingerBill | 2024-07-14 | 1 | -13/+13 |
| | | |||||
| * | Fix `reflect.as_pointer` | gingerBill | 2024-07-04 | 1 | -1/+1 |
| | | |||||
| * | encoding/cbor: deterministically store bit sets as big endian | Laytan Laats | 2024-03-04 | 1 | -0/+21 |
| | | |||||
| * | Begin work adding `bit_field` | gingerBill | 2024-02-22 | 1 | -0/+10 |
| | | |||||
| * | Add `reflect.enum_name_from_value` and `reflect.enum_name_from_value_any` | gingerBill | 2024-02-21 | 1 | -0/+37 |
| | | |||||
| * | Replace `core:*` to `base:*` where appropriate | gingerBill | 2024-01-28 | 1 | -2/+2 |
| | | |||||
| * | Remove `core:mem` dependency from `core:reflect` | gingerBill | 2024-01-28 | 1 | -3/+1 |
| | | |||||
| * | Change return values from `Struct_Tag` to `string` | gingerBill | 2024-01-28 | 1 | -5/+5 |
| | | |||||
| * | Remove #relative slices; Replace with #relative multi-pointers | gingerBill | 2023-08-05 | 1 | -60/+59 |
| | | |||||
| * | Replace `x in &y` Use `&v in y` syntax through core & vendor for ↵ | gingerBill | 2023-06-26 | 1 | -2/+2 |
| | | | | | `switch`/`for` statements | ||||
| * | Rename `ODIN_DISALLOW_RTTI` to `ODIN_NO_RTTI`; Remove dead command line flags | gingerBill | 2023-06-12 | 1 | -1/+1 |
| | | |||||
| * | Add `reflect.struct_field_value` | gingerBill | 2023-03-17 | 1 | -1/+8 |
| | | |||||
| * | Rename to `Type_Info_Parameters` | gingerBill | 2023-02-08 | 1 | -3/+4 |
| | | |||||
| * | Remove `@(require_results)` from one procedure | gingerBill | 2023-01-30 | 1 | -1/+0 |
| | | |||||
| * | Add `@(require_results)` to `package reflect` | gingerBill | 2023-01-29 | 1 | -0/+51 |
| | | |||||
| * | Fix #2304 | gingerBill | 2023-01-16 | 1 | -3/+4 |
| | | |||||
| * | Aliasing some procs to avoid code repetition | André (counter) | 2022-12-09 | 1 | -36/+7 |
| | | | | | | Aliasing some procedures within package reflect so they reference procedures from package runtime. This avoids redundancy and potential deviation. Not 100% sure about the ODIN_DISALLOW_RTTI part but I think it should be congruent as well. | ||||
| * | Begin work on implementing the new `map` internals | gingerBill | 2022-11-07 | 1 | -2/+2 |
| | | |||||
| * | Keep -vet happy | gingerBill | 2022-09-08 | 1 | -0/+1 |
| | | |||||
| * | Add `intrinsics.type_convert_variants_to_pointers` and ↵ | gingerBill | 2022-09-08 | 1 | -0/+10 |
| | | | | | `reflect.get_union_as_ptr_variants` | ||||
| * | Remove direct `core:mem` dependency in `core:reflect` | gingerBill | 2022-08-26 | 1 | -24/+23 |
| | | |||||
| * | Add `reflect.get_union_variant` | gingerBill | 2022-08-26 | 1 | -0/+11 |
| | | |||||
| * | Add `#soa` pointer type to aid with refactoring to `#soa` data types | gingerBill | 2022-08-08 | 1 | -0/+5 |
| | | | | | | | | | a: #soa[16]Foo p := &a[6] #assert(type_of(p) == #soa^#soa[16]Foo) p^.x = 123 p.x = 123 | ||||
| * | Merge functionality of `#maybe` with the standard 'union' functionality | gingerBill | 2022-05-23 | 1 | -1/+1 |
| | | |||||
| * | Fix some core:encoding/hxa stuff (error handling, header, max -> min) | gitlost | 2022-03-16 | 1 | -0/+2 |
| | | | | | | 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 | ||||
| * | Add `reflect.deref` | gingerBill | 2022-03-03 | 1 | -1/+13 |
| | | |||||
| * | Fix logic in `is_nil` procedure: a non_nil slice means there is data to check. | Andrea Piseri | 2022-02-02 | 1 | -1/+1 |
| | | |||||
| * | Begin work on matrix type | gingerBill | 2021-10-18 | 1 | -1/+5 |
| | | |||||
| * | Add `reflect.set_union_value`dev-2021-10 | gingerBill | 2021-09-30 | 1 | -0/+39 |
| | | |||||
| * | Add `reflect.any_base` `reflect.any_core` | gingerBill | 2021-09-25 | 1 | -0/+15 |
| | | |||||
| * | Merge branch 'master' into optional-semicolons | gingerBill | 2021-09-06 | 1 | -40/+134 |
| |\ | |||||
| | * | Allow comparisons of `any` if `reflect.equal` if ↵ | gingerBill | 2021-09-03 | 1 | -2/+7 |
| | | | | | | | | | `including_indirect_array_recursion` is enabled | ||||
| | * | Update reflect.equal to support more types | gingerBill | 2021-09-03 | 1 | -10/+43 |
| | | | |||||
| | * | Add `including_indirect_array_recursion` argument to `reflect.equal` | gingerBill | 2021-09-03 | 1 | -7/+62 |
| | | | |||||