diff options
Diffstat (limited to 'ext/-test-/typeddata')
-rw-r--r-- | ext/-test-/typeddata/extconf.rb | 1 | ||||
-rw-r--r-- | ext/-test-/typeddata/typeddata.c | 20 |
2 files changed, 21 insertions, 0 deletions
diff --git a/ext/-test-/typeddata/extconf.rb b/ext/-test-/typeddata/extconf.rb new file mode 100644 index 0000000000..02e3e41c8b --- /dev/null +++ b/ext/-test-/typeddata/extconf.rb @@ -0,0 +1 @@ +create_makefile("-test-/typeddata/typeddata") diff --git a/ext/-test-/typeddata/typeddata.c b/ext/-test-/typeddata/typeddata.c new file mode 100644 index 0000000000..1c5d677713 --- /dev/null +++ b/ext/-test-/typeddata/typeddata.c @@ -0,0 +1,20 @@ +#include <ruby.h> + +static const rb_data_type_t test_data = { + "typed_data", +}; + +static VALUE +test_check(VALUE self, VALUE obj) +{ + rb_check_typeddata(obj, &test_data); + return obj; +} + +void +Init_typeddata(void) +{ + VALUE mBug = rb_define_module("Bug"); + VALUE klass = rb_define_class_under(mBug, "TypedData", rb_cData); + rb_define_singleton_method(klass, "check", test_check, 1); +} |