// Define a new top-level class. // // If super is nil, the class will be defined under Object. func (m *Mrb) DefineClass(name string, super *Class) *Class { if super == nil { super = m.ObjectClass() } return newClass( m, C.mrb_define_class(m.state, C.CString(name), super.class)) }
// Define a new top-level class. // // If super is nil, the class will be defined under Object. func (m *Mrb) DefineClass(name string, super *Class) *Class { if super == nil { super = m.ObjectClass() } cs := C.CString(name) defer C.free(unsafe.Pointer(cs)) return newClass( m, C.mrb_define_class(m.state, cs, super.class)) }