mirror of
https://github.com/ruby/ruby.git
synced 2025-08-15 13:39:04 +02:00
Revert "Mark rb_io_buffer_type references declaratively"
This reverts commit 6012145299
.
This commit is contained in:
parent
6736641372
commit
4cc58c3a6f
Notes:
git
2025-06-17 05:57:15 +00:00
1 changed files with 9 additions and 7 deletions
16
io_buffer.c
16
io_buffer.c
|
@ -272,6 +272,13 @@ io_buffer_free(struct rb_io_buffer *buffer)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
rb_io_buffer_type_mark(void *_buffer)
|
||||||
|
{
|
||||||
|
struct rb_io_buffer *buffer = _buffer;
|
||||||
|
rb_gc_mark(buffer->source);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
rb_io_buffer_type_free(void *_buffer)
|
rb_io_buffer_type_free(void *_buffer)
|
||||||
{
|
{
|
||||||
|
@ -293,20 +300,15 @@ rb_io_buffer_type_size(const void *_buffer)
|
||||||
return total;
|
return total;
|
||||||
}
|
}
|
||||||
|
|
||||||
RUBY_REFERENCES(io_buffer_refs) = {
|
|
||||||
RUBY_REF_EDGE(struct rb_io_buffer, source),
|
|
||||||
RUBY_REF_END
|
|
||||||
};
|
|
||||||
|
|
||||||
static const rb_data_type_t rb_io_buffer_type = {
|
static const rb_data_type_t rb_io_buffer_type = {
|
||||||
.wrap_struct_name = "IO::Buffer",
|
.wrap_struct_name = "IO::Buffer",
|
||||||
.function = {
|
.function = {
|
||||||
.dmark = RUBY_REFS_LIST_PTR(io_buffer_refs),
|
.dmark = rb_io_buffer_type_mark,
|
||||||
.dfree = rb_io_buffer_type_free,
|
.dfree = rb_io_buffer_type_free,
|
||||||
.dsize = rb_io_buffer_type_size,
|
.dsize = rb_io_buffer_type_size,
|
||||||
},
|
},
|
||||||
.data = NULL,
|
.data = NULL,
|
||||||
.flags = RUBY_TYPED_FREE_IMMEDIATELY | RUBY_TYPED_WB_PROTECTED | RUBY_TYPED_EMBEDDABLE | RUBY_TYPED_DECL_MARKING,
|
.flags = RUBY_TYPED_FREE_IMMEDIATELY | RUBY_TYPED_WB_PROTECTED | RUBY_TYPED_EMBEDDABLE,
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline enum rb_io_buffer_flags
|
static inline enum rb_io_buffer_flags
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue