Sha256: b84c17b618f4afbbb21bfbf65fa350787cc1846525e316c5d99b0cebfc1d91df
Contents?: true
Size: 882 Bytes
Versions: 1
Compression:
Stored size: 882 Bytes
Contents
#include "rucy.h" using namespace Rucy; struct Struct { int num; Struct () : num(0) {} };// Struct static Class cStruct; RUCY_VALUE_FROM_TO(Struct, cStruct) /* alloc function. */ static VALUE alloc(VALUE klass) { return new_type<Struct>(klass); } /* get num. */ static VALUE get_num(VALUE self) { Struct* obj = to<Struct*>(self); if (obj) return value(obj->num); } /* set num. */ static VALUE set_num(VALUE self, VALUE num) { Struct* obj = to<Struct*>(self); if (obj) obj->num = to<int>(num); } void Init_struct () { Module mRucy = rb_define_module("Rucy"); Module mTester = rb_define_module_under(mRucy, "Tester"); cStruct = rb_define_class_under(mTester, "Struct", rb_cObject); rb_define_alloc_func(cStruct, alloc); rb_define_method(cStruct, "num", RUBY_METHOD_FUNC(get_num), 0); rb_define_method(cStruct, "num=", RUBY_METHOD_FUNC(set_num), 1); }
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rucy-0.1.7 | .doc/ext/rucy/struct.cpp |