diff options
| author | Jeroen van Rijn <Kelimion@users.noreply.github.com> | 2023-10-22 13:21:22 +0200 |
|---|---|---|
| committer | Jeroen van Rijn <Kelimion@users.noreply.github.com> | 2023-10-22 13:21:22 +0200 |
| commit | 75a20152600da5259bdd2a87ff84f2cc9d4ec224 (patch) | |
| tree | 0f99f3f5da1945c70d486629bb35d4226eb306e3 /core/runtime | |
| parent | 18776aa6b9ce7323d502892306f62bfbf46ab1c1 (diff) | |
Add clear_soa (for #soa[dynamic]T)
Diffstat (limited to 'core/runtime')
| -rw-r--r-- | core/runtime/core_builtin_soa.odin | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/core/runtime/core_builtin_soa.odin b/core/runtime/core_builtin_soa.odin index ee2a5f2d0..f3882a9a8 100644 --- a/core/runtime/core_builtin_soa.odin +++ b/core/runtime/core_builtin_soa.odin @@ -413,3 +413,16 @@ delete_soa :: proc{ delete_soa_slice, delete_soa_dynamic_array, } + + +clear_soa_dynamic_array :: proc(array: ^$T/#soa[dynamic]$E) { + when intrinsics.type_struct_field_count(E) != 0 { + footer := raw_soa_footer(array) + footer.len = 0 + } +} + +@builtin +clear_soa :: proc{ + clear_soa_dynamic_array, +}
\ No newline at end of file |