diff options
author | Jean Boussier <[email protected]> | 2025-06-16 11:19:12 +0200 |
---|---|---|
committer | Jean Boussier <[email protected]> | 2025-06-17 15:28:05 +0200 |
commit | cd9f447be247478d2eb3da985295735cce20cb23 (patch) | |
tree | 1f87f079323e42a71f07b862b6d32daa6260e5b7 /internal/imemo.h | |
parent | 164486a954e3cf3e716393c5f9a9e2c4dd776993 (diff) |
Refactor generic fields to use `T_IMEMO/fields` objects.
Followup: https://github.com/ruby/ruby/pull/13589
This simplify a lot of things, as we no longer need to manually
manage the memory, we can use the Read-Copy-Update pattern and
avoid numerous race conditions.
Co-Authored-By: Étienne Barrié <[email protected]>
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/13626
Diffstat (limited to 'internal/imemo.h')
-rw-r--r-- | internal/imemo.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/internal/imemo.h b/internal/imemo.h index 849748f92f..44b41d1b1c 100644 --- a/internal/imemo.h +++ b/internal/imemo.h @@ -280,7 +280,9 @@ struct rb_fields { VALUE rb_imemo_fields_new(VALUE klass, size_t capa); VALUE rb_imemo_fields_new_complex(VALUE klass, size_t capa); +VALUE rb_imemo_fields_new_complex_tbl(VALUE klass, st_table *tbl); VALUE rb_imemo_fields_clone(VALUE fields_obj); +void rb_imemo_fields_clear(VALUE fields_obj); static inline VALUE * rb_imemo_fields_ptr(VALUE obj_fields) |