#include static VALUE bug_i(RB_BLOCK_CALL_FUNC_ARGLIST(i, arg)) { rb_notimplement(); return ID2SYM(rb_frame_this_func()); } static VALUE bug_start(VALUE self, VALUE hash) { VALUE ary = rb_ary_new3(1, Qnil); rb_block_call(ary, rb_intern("map"), 0, 0, bug_i, self); return ary; } void Init_bug(void) { VALUE mBug = rb_define_module("Bug"); rb_define_module_function(mBug, "start", bug_start, 0); }