summaryrefslogtreecommitdiffhomepage
path: root/doc/mrbgems/c_extension_example/src/example.c
blob: 9f0b07839373a55f52e8e506dc3d66ae77cbf2b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <mruby.h>
#include <stdio.h>

static struct RClass *_class_cextension;

static mrb_value
mrb_c_method(mrb_state *mrb, mrb_value self)
{
  puts("A C Extension");
  return self;
}

void
mrb_c_extension_example_gem_init(mrb_state* mrb) {
  _class_cextension = mrb_define_module(mrb, "CExtension");
  mrb_define_class_method(mrb, _class_cextension, "c_method", mrb_c_method, ARGS_NONE());
}