diff options
| author | Felipe Contreras <felipe.contreras@gmail.com> | 2021-05-15 16:21:01 -0500 |
|---|---|---|
| committer | David Bremner <david@tethera.net> | 2021-05-17 07:25:14 -0300 |
| commit | fba9774a81e90a179ccfa810c47a501eaf266e2b (patch) | |
| tree | 6e49156bad957ed80195e0d9dd6c33dbea17c2a7 /bindings/ruby/thread.c | |
| parent | 12c36a5e3f676d5108cede6ac09204fb62fa20b1 (diff) | |
ruby: move towards more modern RTypedData
Virtually the whole ruby core moved from RData to RTypeData, let's do so
ourselves too.
Basically the information typically passed through Data_Wrap_Struct is
now stored in a struct rb_data_type_t (mark and free functions). This
has the advantage that more information can be easily added, like the
name of the type, a custom data ponter, and more.
Data_Wrap_Struct is replaced with TypedData_Wrap_Struct, and the
information is stored in a struct rb_data_type_t, rather than passed
as arguments.
Check_Type is replaced with Check_TypedStruct, which is a wrapper for
rb_check_typeddata (with casts).
#define Check_TypedStruct(v, t) \
rb_check_typeddata(RBIMPL_CAST((VALUE)(v)), (t))
We can use rb_check_typeddata directly, just like we use rb_data_object_get
directly.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Diffstat (limited to 'bindings/ruby/thread.c')
0 files changed, 0 insertions, 0 deletions
