pub unsafe extern "C" fn mrb_obj_new(
mrb: *mut mrb_state,
c: *mut RClass,
argc: mrb_int,
argv: *const mrb_value,
) -> mrb_value
Expand description
Initialize a new object instance of c class.
Example:
class ExampleClass
end
p ExampleClass # => #<ExampleClass:0x9958588>
// C style
#include <stdio.h>
#include <mruby.h>
void
mrb_example_gem_init(mrb_state* mrb) {
struct RClass *example_class;
mrb_value obj;
example_class = mrb_define_class(mrb, "ExampleClass", mrb->object_class); # => class ExampleClass; end
obj = mrb_obj_new(mrb, example_class, 0, NULL); # => ExampleClass.new
mrb_p(mrb, obj); // => Kernel#p
}
@param mrb The current mruby state. @param c Reference to the class of the new object. @param argc Number of arguments in argv @param argv Array of mrb_value to initialize the object @return mrb_value The newly initialized object