1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/ext/-test-/array/concat/to_ary_concat.c

38 lines
697 B
C

#include "ruby.h"
// Bar
typedef struct {
int dummy;
} Bar;
static rb_data_type_t Bar_type = {
"Bar",
{NULL, RUBY_TYPED_DEFAULT_FREE, NULL },
};
static VALUE
Bar_alloc(VALUE klass)
{
return TypedData_Wrap_Struct(klass, &Bar_type, NULL);
}
static VALUE
Bar_to_ary(VALUE _self)
{
VALUE ary = rb_ary_new2(2);
VALUE foo = rb_ary_new2(0);
rb_ary_push(ary, foo);
rb_ary_push(ary, foo);
rb_ary_push(ary, foo);
return ary;
}
void
Init_to_ary_concat(void)
{
VALUE mBug = rb_define_module("Bug");
VALUE bar = rb_define_class_under(mBug, "Bar", rb_cObject);
rb_define_alloc_func(bar, Bar_alloc);
rb_define_method(bar, "to_ary", Bar_to_ary, 0);
}