diff options
| -rw-r--r-- | include/mruby/array.h | 8 | ||||
| -rw-r--r-- | include/mruby/data.h | 12 | ||||
| -rw-r--r-- | include/mruby/dump.h | 4 | ||||
| -rw-r--r-- | include/mruby/range.h | 6 | ||||
| -rw-r--r-- | include/mruby/string.h | 8 | ||||
| -rw-r--r-- | src/array.c | 6 | ||||
| -rw-r--r-- | src/class.c | 357 | ||||
| -rw-r--r-- | src/etc.c | 8 | ||||
| -rw-r--r-- | src/gc.c | 2 | ||||
| -rw-r--r-- | src/range.c | 4 | ||||
| -rw-r--r-- | src/string.c | 10 |
11 files changed, 213 insertions, 212 deletions
diff --git a/include/mruby/array.h b/include/mruby/array.h index c5959bbe6..9f9483545 100644 --- a/include/mruby/array.h +++ b/include/mruby/array.h @@ -11,18 +11,18 @@ extern "C" { #endif -struct mrb_shared_array { +typedef struct mrb_shared_array { int refcnt; mrb_value *ptr; int len; -}; +} mrb_shared_array; struct RArray { MRB_OBJECT_HEADER; int len; union { int capa; - struct mrb_shared_array *shared; + mrb_shared_array *shared; } aux; mrb_value *ptr; }; @@ -35,7 +35,7 @@ struct RArray { #define RARRAY_PTR(a) (RARRAY(a)->ptr) #define MRB_ARY_SHARED 256 -void mrb_ary_decref(mrb_state*, struct mrb_shared_array*); +void mrb_ary_decref(mrb_state*, mrb_shared_array*); mrb_value mrb_ary_new_capa(mrb_state*, int); mrb_value mrb_ary_new(mrb_state *mrb); mrb_value mrb_ary_new_elts(mrb_state *mrb, int n, const mrb_value *elts); diff --git a/include/mruby/data.h b/include/mruby/data.h index 6492fd6ea..55405e994 100644 --- a/include/mruby/data.h +++ b/include/mruby/data.h @@ -11,19 +11,19 @@ extern "C" { #endif -struct mrb_data_type { +typedef struct mrb_data_type { const char *struct_name; void (*dfree)(mrb_state *mrb, void*); -}; +} mrb_data_type; struct RData { MRB_OBJECT_HEADER; struct iv_tbl *iv; - struct mrb_data_type *type; + mrb_data_type *type; void *data; }; -struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void *datap, const struct mrb_data_type *type); +struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void *datap, const mrb_data_type *type); #define Data_Wrap_Struct(mrb,klass,type,ptr)\ mrb_data_object_alloc(mrb,klass,ptr,type) @@ -37,8 +37,8 @@ struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void * #define RDATA(obj) ((struct RData *)((obj).value.p)) #define DATA_PTR(d) (RDATA(d)->data) #define DATA_TYPE(d) (RDATA(d)->type) -void *mrb_get_datatype(mrb_state *mrb, mrb_value, const struct mrb_data_type*); -void *mrb_check_datatype(mrb_state *mrb, mrb_value, const struct mrb_data_type*); +void *mrb_get_datatype(mrb_state *mrb, mrb_value, const mrb_data_type*); +void *mrb_check_datatype(mrb_state *mrb, mrb_value, const mrb_data_type*); #define Data_Get_Struct(mrb,obj,type,sval) do {\ *(void**)&sval = mrb_check_datatype(mrb, obj, type); \ } while (0) diff --git a/include/mruby/dump.h b/include/mruby/dump.h index eb8fe55dd..8b78e74d0 100644 --- a/include/mruby/dump.h +++ b/include/mruby/dump.h @@ -82,7 +82,7 @@ mrb_value mrb_load_irep_file(mrb_state*,FILE*); #define MRB_DUMP_DEFAULT_STR_LEN 128 //Rite Binary file_header -typedef struct _rite_binary_header { +typedef struct { unsigned char rbfi[4]; //Rite Binary File Identify unsigned char rbfv[8]; //Rite Binary File Format Version unsigned char risv[8]; //Rite Instruction Specification Version @@ -95,7 +95,7 @@ typedef struct _rite_binary_header { } rite_binary_header; // Rite File file_header -typedef struct _rite_file_header { +typedef struct { unsigned char rbfi[4]; //Rite Binary File Identify unsigned char rbfv[8]; //Rite Binary File Format Version unsigned char risv[8]; //Rite Instruction Specification Version diff --git a/include/mruby/range.h b/include/mruby/range.h index 32094f9bb..a87f1cc6a 100644 --- a/include/mruby/range.h +++ b/include/mruby/range.h @@ -11,14 +11,14 @@ extern "C" { #endif -struct mrb_range_edges { +typedef struct mrb_range_edges { mrb_value beg; mrb_value end; -}; +} mrb_range_edges; struct RRange { MRB_OBJECT_HEADER; - struct mrb_range_edges *edges; + mrb_range_edges *edges; int excl; }; diff --git a/include/mruby/string.h b/include/mruby/string.h index 426cbe9ff..353d8cefc 100644 --- a/include/mruby/string.h +++ b/include/mruby/string.h @@ -21,18 +21,18 @@ extern "C" { extern const char mrb_digitmap[]; -struct mrb_shared_string { +typedef struct mrb_shared_string { int refcnt; char *ptr; int len; -}; +} mrb_shared_string; struct RString { MRB_OBJECT_HEADER; int len; union { int capa; - struct mrb_shared_string *shared; + mrb_shared_string *shared; } aux; char *ptr; }; @@ -45,7 +45,7 @@ struct RString { #define RSTRING_END(s) (RSTRING(s)->ptr + RSTRING(s)->len) #define MRB_STR_SHARED 256 -void mrb_str_decref(mrb_state*, struct mrb_shared_string*); +void mrb_str_decref(mrb_state*, mrb_shared_string*); mrb_value mrb_str_literal(mrb_state*, mrb_value); void mrb_str_concat(mrb_state*, mrb_value, mrb_value); mrb_value mrb_str_plus(mrb_state*, mrb_value, mrb_value); diff --git a/src/array.c b/src/array.c index 88c15eb2c..c767283aa 100644 --- a/src/array.c +++ b/src/array.c @@ -125,7 +125,7 @@ static void ary_modify(mrb_state *mrb, struct RArray *a) { if (a->flags & MRB_ARY_SHARED) { - struct mrb_shared_array *shared = a->aux.shared; + mrb_shared_array *shared = a->aux.shared; if (shared->refcnt == 1 && a->ptr == shared->ptr) { a->ptr = shared->ptr; @@ -154,7 +154,7 @@ static void ary_make_shared(mrb_state *mrb, struct RArray *a) { if (!(a->flags & MRB_ARY_SHARED)) { - struct mrb_shared_array *shared = (struct mrb_shared_array *)mrb_malloc(mrb, sizeof(struct mrb_shared_array)); + mrb_shared_array *shared = (mrb_shared_array *)mrb_malloc(mrb, sizeof(mrb_shared_array)); shared->refcnt = 1; if (a->aux.capa > a->len) { @@ -667,7 +667,7 @@ mrb_ary_len(mrb_state *mrb, mrb_value ary) } void -mrb_ary_decref(mrb_state *mrb, struct mrb_shared_array *shared) +mrb_ary_decref(mrb_state *mrb, mrb_shared_array *shared) { shared->refcnt--; if (shared->refcnt == 0) { diff --git a/src/class.c b/src/class.c index 59b4966b2..c0e71dad7 100644 --- a/src/class.c +++ b/src/class.c @@ -399,7 +399,7 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) break; default: if (argc <= i && !opt) { - mrb_raise(mrb, E_ARGUMENT_ERROR, "wrong number of arguments"); + mrb_raise(mrb, E_ARGUMENT_ERROR, "wrong number of arguments"); } } @@ -409,10 +409,10 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) mrb_value *p; p = va_arg(ap, mrb_value*); - if (i < argc) { - *p = *sp++; - i++; - } + if (i < argc) { + *p = *sp++; + i++; + } } break; case 'S': @@ -420,10 +420,10 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) mrb_value *p; p = va_arg(ap, mrb_value*); - if (i < argc) { - *p = to_str(mrb, *sp++); - i++; - } + if (i < argc) { + *p = to_str(mrb, *sp++); + i++; + } } break; case 'A': @@ -431,10 +431,10 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) mrb_value *p; p = va_arg(ap, mrb_value*); - if (i < argc) { - *p = to_ary(mrb, *sp++); - i++; - } + if (i < argc) { + *p = to_ary(mrb, *sp++); + i++; + } } break; case 'H': @@ -442,64 +442,64 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) mrb_value *p; p = va_arg(ap, mrb_value*); - if (i < argc) { - *p = to_hash(mrb, *sp++); - i++; - } + if (i < argc) { + *p = to_hash(mrb, *sp++); + i++; + } } break; case 's': { - mrb_value ss; + mrb_value ss; struct RString *s; char **ps = 0; int *pl = 0; - ps = va_arg(ap, char**); - pl = va_arg(ap, int*); - if (i < argc) { - ss = to_str(mrb, *sp++); - s = mrb_str_ptr(ss); - *ps = s->ptr; - *pl = s->len; - i++; - } + ps = va_arg(ap, char**); + pl = va_arg(ap, int*); + if (i < argc) { + ss = to_str(mrb, *sp++); + s = mrb_str_ptr(ss); + *ps = s->ptr; + *pl = s->len; + i++; + } } break; case 'z': { - mrb_value ss; + mrb_value ss; struct RString *s; char **ps; - ps = va_arg(ap, char**); - if (i < argc) { - ss = to_str(mrb, *sp++); - s = mrb_str_ptr(ss); - if (strlen(s->ptr) != s->len) { - mrb_raise(mrb, E_ARGUMENT_ERROR, "String contains NUL"); - } - *ps = s->ptr; - i++; - } + ps = va_arg(ap, char**); + if (i < argc) { + ss = to_str(mrb, *sp++); + s = mrb_str_ptr(ss); + if (strlen(s->ptr) != s->len) { + mrb_raise(mrb, E_ARGUMENT_ERROR, "String contains NUL"); + } + *ps = s->ptr; + i++; + } } break; case 'a': { - mrb_value aa; + mrb_value aa; struct RArray *a; mrb_value **pb; int *pl; - pb = va_arg(ap, mrb_value**); - pl = va_arg(ap, int*); - if (i < argc) { - aa = to_ary(mrb, *sp++); - a = mrb_ary_ptr(aa); - *pb = a->ptr; - *pl = a->len; - i++; - } + pb = va_arg(ap, mrb_value**); + pl = va_arg(ap, int*); + if (i < argc) { + aa = to_ary(mrb, *sp++); + a = mrb_ary_ptr(aa); + *pb = a->ptr; + *pl = a->len; + i++; + } } break; case 'f': @@ -507,29 +507,29 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) mrb_float *p; p = va_arg(ap, mrb_float*); - if (i < argc) { - switch (mrb_type(*sp)) { - case MRB_TT_FLOAT: - *p = mrb_float(*sp); - break; - case MRB_TT_FIXNUM: - *p = (mrb_float)mrb_fixnum(*sp); - break; - case MRB_TT_STRING: - mrb_raise(mrb, E_TYPE_ERROR, "String can't be coerced into Float"); - break; - default: - { - mrb_value tmp; - - tmp = mrb_convert_type(mrb, *sp, MRB_TT_FLOAT, "Float", "to_f"); - *p = mrb_float(tmp); - } - break; - } - sp++; - i++; - } + if (i < argc) { + switch (mrb_type(*sp)) { + case MRB_TT_FLOAT: + *p = mrb_float(*sp); + break; + case MRB_TT_FIXNUM: + *p = (mrb_float)mrb_fixnum(*sp); + break; + case MRB_TT_STRING: + mrb_raise(mrb, E_TYPE_ERROR, "String can't be coerced into Float"); + break; + default: + { + mrb_value tmp; + + tmp = mrb_convert_type(mrb, *sp, MRB_TT_FLOAT, "Float", "to_f"); + *p = mrb_float(tmp); + } + break; + } + sp++; + i++; + } } break; case 'i': @@ -537,71 +537,71 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) mrb_int *p; p = va_arg(ap, mrb_int*); - if (i < argc) { - switch (mrb_type(*sp)) { - case MRB_TT_FIXNUM: - *p = mrb_fixnum(*sp); - break; - case MRB_TT_FLOAT: - { - mrb_float f = mrb_float(*sp); - - if (!FIXABLE(f)) { - mrb_raise(mrb, E_RANGE_ERROR, "float too big for int"); - } - *p = (mrb_int)f; - } - break; - case MRB_TT_FALSE: - *p = 0; - break; - default: - { - mrb_value tmp; - - tmp = mrb_convert_type(mrb, *sp, MRB_TT_FIXNUM, "Integer", "to_int"); - *p = mrb_fixnum(tmp); - } - break; - } - sp++; - i++; - } + if (i < argc) { + switch (mrb_type(*sp)) { + case MRB_TT_FIXNUM: + *p = mrb_fixnum(*sp); + break; + case MRB_TT_FLOAT: + { + mrb_float f = mrb_float(*sp); + + if (!FIXABLE(f)) { + mrb_raise(mrb, E_RANGE_ERROR, "float too big for int"); + } + *p = (mrb_int)f; + } + break; + case MRB_TT_FALSE: + *p = 0; + break; + default: + { + mrb_value tmp; + + tmp = mrb_convert_type(mrb, *sp, MRB_TT_FIXNUM, "Integer", "to_int"); + *p = mrb_fixnum(tmp); + } + break; + } + sp++; + i++; + } } break; case 'b': { - int *boolp = va_arg(ap, int*); + int *boolp = va_arg(ap, int*); - if (i < argc) { - mrb_value b = *sp++; - *boolp = mrb_test(b); - i++; - } + if (i < argc) { + mrb_value b = *sp++; + *boolp = mrb_test(b); + i++; + } } break; case 'n': { - mrb_sym *symp; - - symp = va_arg(ap, mrb_sym*); - if (i < argc) { - mrb_value ss; - - ss = *sp++; - if (mrb_type(ss) == MRB_TT_SYMBOL) { - *symp = mrb_symbol(ss); - } - else if (mrb_string_p(ss)) { - *symp = mrb_intern_str(mrb, to_str(mrb, ss)); - } - else { - mrb_value obj = mrb_funcall(mrb, ss, "inspect", 0); - mrb_raisef(mrb, E_TYPE_ERROR, "%s is not a symbol", - mrb_string_value_ptr(mrb, obj)); - } - i++; - } + mrb_sym *symp; + + symp = va_arg(ap, mrb_sym*); + if (i < argc) { + mrb_value ss; + + ss = *sp++; + if (mrb_type(ss) == MRB_TT_SYMBOL) { + *symp = mrb_symbol(ss); + } + else if (mrb_string_p(ss)) { + *symp = mrb_intern_str(mrb, to_str(mrb, ss)); + } + else { + mrb_value obj = mrb_funcall(mrb, ss, "inspect", 0); + mrb_raisef(mrb, E_TYPE_ERROR, "%s is not a symbol", + mrb_string_value_ptr(mrb, obj)); + } + i++; + } } break; @@ -613,9 +613,9 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) if (mrb->ci->argc < 0) { bp = mrb->stack + 2; } - else { + else { bp = mrb->stack + mrb->ci->argc + 1; - } + } *p = *bp; } break; @@ -626,18 +626,18 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) case '*': { mrb_value **var; - int *pl; + int *pl; var = va_arg(ap, mrb_value**); pl = va_arg(ap, int*); if (argc > i) { *pl = argc-i; if (*pl > 0) { - *var = sp; + *var = sp; i = argc; } - i = argc; - sp += *pl; + i = argc; + sp += *pl; } else { *pl = 0; @@ -681,13 +681,13 @@ mrb_include_module(mrb_state *mrb, struct RClass *c, struct RClass *m) while(p) { if (c != p && p->tt == MRB_TT_CLASS) { - superclass_seen = 1; + superclass_seen = 1; } else if (p->mt == m->mt){ - if (p->tt == MRB_TT_ICLASS && !superclass_seen) { - ins_pos = p; - } - goto skip; + if (p->tt == MRB_TT_ICLASS && !superclass_seen) { + ins_pos = p; + } + goto skip; } p = p->super; } @@ -1769,9 +1769,9 @@ mrb_init_class(mrb_state *mrb) /* name basic classes */ mrb_define_const(mrb, bob, "BasicObject", mrb_obj_value(bob)); mrb_define_const(mrb, obj, "BasicObject", mrb_obj_value(bob)); - mrb_define_const(mrb, obj, "Object", mrb_obj_value(obj)); - mrb_define_const(mrb, obj, "Module", mrb_obj_value(mod)); - mrb_define_const(mrb, obj, "Class", mrb_obj_value(cls)); + mrb_define_const(mrb, obj, "Object", mrb_obj_value(obj)); + mrb_define_const(mrb, obj, "Module", mrb_obj_value(mod)); + mrb_define_const(mrb, obj, "Class", mrb_obj_value(cls)); /* name each classes */ mrb_name_class(mrb, bob, mrb_intern(mrb, "BasicObject")); @@ -1781,43 +1781,44 @@ mrb_init_class(mrb_state *mrb) mrb_undef_method(mrb, mod, "new"); MRB_SET_INSTANCE_TT(cls, MRB_TT_CLASS); - mrb_define_method(mrb, bob, "initialize", mrb_bob_init, ARGS_NONE()); - mrb_define_method(mrb, bob, "!", mrb_bob_not, ARGS_NONE()); - mrb_define_method(mrb, bob, "method_missing", mrb_bob_missing, ARGS_ANY()); /* 15.3.1.3.30 */ - mrb_define_class_method(mrb, cls, "new", mrb_class_new_class, ARGS_ANY()); - mrb_define_method(mrb, cls, "superclass", mrb_class_superclass, ARGS_NONE()); /* 15.2.3.3.4 */ - mrb_define_method(mrb, cls, "new", mrb_instance_new, ARGS_ANY()); /* 15.2.3.3.3 */ - mrb_define_method(mrb, cls, "inherited", mrb_bob_init, ARGS_REQ(1)); - mrb_define_method(mrb, mod, "class_variable_defined?", mrb_mod_cvar_defined, ARGS_REQ(1)); /* 15.2.2.4.16 */ - mrb_define_method(mrb, mod, "class_variable_get", mrb_mod_cvar_get, ARGS_REQ(1)); /* 15.2.2.4.17 */ - mrb_define_method(mrb, mod, "class_variable_set", mrb_mod_cvar_set, ARGS_REQ(2)); /* 15.2.2.4.18 */ - mrb_define_method(mrb, mod, "extend_object", mrb_mod_extend_object, ARGS_REQ(1)); /* 15.2.2.4.25 */ - mrb_define_method(mrb, mod, "extended", mrb_bob_init, ARGS_REQ(1)); /* 15.2.2.4.26 */ - mrb_define_method(mrb, mod, "include", mrb_mod_include, ARGS_ANY()); /* 15.2.2.4.27 */ - mrb_define_method(mrb, mod, "include?", mrb_mod_include_p, ARGS_REQ(1)); /* 15.2.2.4.28 */ - mrb_define_method(mrb, mod, "append_features", mrb_mod_append_features, ARGS_REQ(1)); /* 15.2.2.4.10 */ - mrb_define_method(mrb, mod, "class_eval", mrb_mod_module_eval, ARGS_ANY()); /* 15.2.2.4.15 */ - mrb_define_method(mrb, mod, "included", mrb_bob_init, ARGS_REQ(1)); /* 15.2.2.4.29 */ - mrb_define_method(mrb, mod, "included_modules", mrb_mod_included_modules, ARGS_NONE()); /* 15.2.2.4.30 */ - mrb_define_method(mrb, mod, "instance_methods", mrb_mod_instance_methods, ARGS_ANY()); /* 15.2.2.4.33 */ - mrb_define_method(mrb, mod, "method_defined?", mrb_mod_method_defined, ARGS_REQ(1)); /* 15.2.2.4.34 */ - mrb_define_method(mrb, mod, "module_eval", mrb_mod_module_eval, ARGS_ANY()); /* 15.2.2.4.35 */ - mrb_define_method(mrb, mod, "remove_class_variable", mrb_mod_remove_cvar, ARGS_REQ(1)); /* 15.2.2.4.39 */ - mrb_define_method(mrb, mod, "remove_method", mrb_mod_remove_method, ARGS_ANY()); /* 15.2.2.4.41 */ - - mrb_define_method(mrb, mod, "to_s", mrb_mod_to_s, ARGS_NONE()); - mrb_define_method(mrb, mod, "inspect", mrb_mod_to_s, ARGS_NONE()); - mrb_define_method(mrb, mod, "alias_method", mrb_mod_alias, ARGS_ANY()); /* 15.2.2.4.8 */ - mrb_define_method(mrb, mod, "ancestors", mrb_mod_ancestors, ARGS_NONE()); /* 15.2.2.4.9 */ - mrb_define_method(mrb, mod, "undef_method", mrb_mod_undef, ARGS_ANY()); /* 15.2.2.4.41 */ - mrb_define_method(mrb, mod, "const_defined?", mrb_mod_const_defined, ARGS_REQ(1)); /* 15.2.2.4.20 */ - mrb_define_method(mrb, mod, "const_get", mrb_mod_const_get, ARGS_REQ(1)); /* 15.2.2.4.21 */ - mrb_define_method(mrb, mod, "const_set", mrb_mod_const_set, ARGS_REQ(2)); /* 15.2.2.4.23 */ - mrb_define_method(mrb, mod, "remove_const", mrb_mod_remove_const, ARGS_REQ(1)); /* 15.2.2.4.40 */ - mrb_define_method(mrb, mod, "define_method", mod_define_method, ARGS_REQ(1)); - mrb_define_method(mrb, mod, "class_variables", mrb_mod_class_variables, ARGS_NONE()); /* 15.2.2.4.19 */ - - mrb_define_method(mrb, mod, "===", mrb_mod_eqq, ARGS_REQ(1)); + mrb_define_method(mrb, bob, "initialize", mrb_bob_init, ARGS_NONE()); + mrb_define_method(mrb, bob, "!", mrb_bob_not, ARGS_NONE()); + mrb_define_method(mrb, bob, "method_missing", mrb_bob_missing, ARGS_ANY()); /* 15.3.1.3.30 */ + + mrb_define_class_method(mrb, cls, "new", mrb_class_new_class, ARGS_ANY()); + mrb_define_method(mrb, cls, "superclass", mrb_class_superclass, ARGS_NONE()); /* 15.2.3.3.4 */ + mrb_define_method(mrb, cls, "new", mrb_instance_new, ARGS_ANY()); /* 15.2.3.3.3 */ + mrb_define_method(mrb, cls, "inherited", mrb_bob_init, ARGS_REQ(1)); + + mrb_define_method(mrb, mod, "class_variable_defined?", mrb_mod_cvar_defined, ARGS_REQ(1)); /* 15.2.2.4.16 */ + mrb_define_method(mrb, mod, "class_variable_get", mrb_mod_cvar_get, ARGS_REQ(1)); /* 15.2.2.4.17 */ + mrb_define_method(mrb, mod, "class_variable_set", mrb_mod_cvar_set, ARGS_REQ(2)); /* 15.2.2.4.18 */ + mrb_define_method(mrb, mod, "extend_object", mrb_mod_extend_object, ARGS_REQ(1)); /* 15.2.2.4.25 */ + mrb_define_method(mrb, mod, "extended", mrb_bob_init, ARGS_REQ(1)); /* 15.2.2.4.26 */ + mrb_define_method(mrb, mod, "include", mrb_mod_include, ARGS_ANY()); /* 15.2.2.4.27 */ + mrb_define_method(mrb, mod, "include?", mrb_mod_include_p, ARGS_REQ(1)); /* 15.2.2.4.28 */ + mrb_define_method(mrb, mod, "append_features", mrb_mod_append_features, ARGS_REQ(1)); /* 15.2.2.4.10 */ + mrb_define_method(mrb, mod, "class_eval", mrb_mod_module_eval, ARGS_ANY()); /* 15.2.2.4.15 */ + mrb_define_method(mrb, mod, "included", mrb_bob_init, ARGS_REQ(1)); /* 15.2.2.4.29 */ + mrb_define_method(mrb, mod, "included_modules", mrb_mod_included_modules, ARGS_NONE()); /* 15.2.2.4.30 */ + mrb_define_method(mrb, mod, "instance_methods", mrb_mod_instance_methods, ARGS_ANY()); /* 15.2.2.4.33 */ + mrb_define_method(mrb, mod, "method_defined?", mrb_mod_method_defined, ARGS_REQ(1)); /* 15.2.2.4.34 */ + mrb_define_method(mrb, mod, "module_eval", mrb_mod_module_eval, ARGS_ANY()); /* 15.2.2.4.35 */ + mrb_define_method(mrb, mod, "remove_class_variable", mrb_mod_remove_cvar, ARGS_REQ(1)); /* 15.2.2.4.39 */ + mrb_define_method(mrb, mod, "remove_method", mrb_mod_remove_method, ARGS_ANY()); /* 15.2.2.4.41 */ + mrb_define_method(mrb, mod, "to_s", mrb_mod_to_s, ARGS_NONE()); + mrb_define_method(mrb, mod, "inspect", mrb_mod_to_s, ARGS_NONE()); + mrb_define_method(mrb, mod, "alias_method", mrb_mod_alias, ARGS_ANY()); /* 15.2.2.4.8 */ + mrb_define_method(mrb, mod, "ancestors", mrb_mod_ancestors, ARGS_NONE()); /* 15.2.2.4.9 */ + mrb_define_method(mrb, mod, "undef_method", mrb_mod_undef, ARGS_ANY()); /* 15.2.2.4.41 */ + mrb_define_method(mrb, mod, "const_defined?", mrb_mod_const_defined, ARGS_REQ(1)); /* 15.2.2.4.20 */ + mrb_define_method(mrb, mod, "const_get", mrb_mod_const_get, ARGS_REQ(1)); /* 15.2.2.4.21 */ + mrb_define_method(mrb, mod, "const_set", mrb_mod_const_set, ARGS_REQ(2)); /* 15.2.2.4.23 */ + mrb_define_method(mrb, mod, "remove_const", mrb_mod_remove_const, ARGS_REQ(1)); /* 15.2.2.4.40 */ + mrb_define_method(mrb, mod, "define_method", mod_define_method, ARGS_REQ(1)); + mrb_define_method(mrb, mod, "class_variables", mrb_mod_class_variables, ARGS_NONE()); /* 15.2.2.4.19 */ + mrb_define_method(mrb, mod, "===", mrb_mod_eqq, ARGS_REQ(1)); + mrb_undef_method(mrb, cls, "append_features"); mrb_undef_method(mrb, cls, "extend_object"); } @@ -11,19 +11,19 @@ #include "mruby/data.h" struct RData* -mrb_data_object_alloc(mrb_state *mrb, struct RClass *klass, void *ptr, const struct mrb_data_type *type) +mrb_data_object_alloc(mrb_state *mrb, struct RClass *klass, void *ptr, const mrb_data_type *type) { struct RData *data; data = (struct RData*)mrb_obj_alloc(mrb, MRB_TT_DATA, klass); data->data = ptr; - data->type = (struct mrb_data_type*) type; + data->type = (mrb_data_type*) type; return data; } void * -mrb_get_datatype(mrb_state *mrb, mrb_value obj, const struct mrb_data_type *type) +mrb_get_datatype(mrb_state *mrb, mrb_value obj, const mrb_data_type *type) { if (mrb_special_const_p(obj) || (mrb_type(obj) != MRB_TT_DATA)) { return NULL; @@ -35,7 +35,7 @@ mrb_get_datatype(mrb_state *mrb, mrb_value obj, const struct mrb_data_type *type } void * -mrb_check_datatype(mrb_state *mrb, mrb_value obj, const struct mrb_data_type *type) +mrb_check_datatype(mrb_state *mrb, mrb_value obj, const mrb_data_type *type) { static const char mesg[] = "wrong argument type %s (expected %s)"; @@ -314,7 +314,7 @@ mrb_free_heap(mrb_state *mrb) static void gc_protect(mrb_state *mrb, struct RBasic *p) { - if (mrb->arena_idx > MRB_ARENA_SIZE) { + if (mrb->arena_idx >= MRB_ARENA_SIZE) { /* arena overflow error */ mrb->arena_idx = MRB_ARENA_SIZE - 4; /* force room in arena */ mrb_raise(mrb, E_RUNTIME_ERROR, "arena overflow error"); diff --git a/src/range.c b/src/range.c index 2e9ec26ed..aac1d830a 100644 --- a/src/range.c +++ b/src/range.c @@ -40,7 +40,7 @@ mrb_range_new(mrb_state *mrb, mrb_value beg, mrb_value end, int excl) r = (struct RRange*)mrb_obj_alloc(mrb, MRB_TT_RANGE, RANGE_CLASS); range_check(mrb, beg, end); - r->edges = (struct mrb_range_edges *)mrb_malloc(mrb, sizeof(struct mrb_range_edges)); + r->edges = (mrb_range_edges *)mrb_malloc(mrb, sizeof(mrb_range_edges)); r->edges->beg = beg; r->edges->end = end; r->excl = excl; @@ -103,7 +103,7 @@ range_init(mrb_state *mrb, mrb_value range, mrb_value beg, mrb_value end, int ex range_check(mrb, beg, end); r->excl = exclude_end; if (!r->edges) { - r->edges = (struct mrb_range_edges *)mrb_malloc(mrb, sizeof(struct mrb_range_edges)); + r->edges = (mrb_range_edges *)mrb_malloc(mrb, sizeof(mrb_range_edges)); } r->edges->beg = beg; r->edges->end = end; diff --git a/src/string.c b/src/string.c index 7af0d1d59..28cf0ab9a 100644 --- a/src/string.c +++ b/src/string.c @@ -35,7 +35,7 @@ _obj_classname(mrb_state *mrb, mrb_value obj) } void -mrb_str_decref(mrb_state *mrb, struct mrb_shared_string *shared) +mrb_str_decref(mrb_state *mrb, mrb_shared_string *shared) { shared->refcnt--; if (shared->refcnt == 0) { @@ -48,7 +48,7 @@ static void str_modify(mrb_state *mrb, struct RString *s) { if (s->flags & MRB_STR_SHARED) { - struct mrb_shared_string *shared = s->aux.shared; + mrb_shared_string *shared = s->aux.shared; if (shared->refcnt == 1 && s->ptr == shared->ptr) { s->ptr = shared->ptr; @@ -275,7 +275,7 @@ static void str_make_shared(mrb_state *mrb, struct RString *s) { if (!(s->flags & MRB_STR_SHARED)) { - struct mrb_shared_string *shared = (struct mrb_shared_string *)mrb_malloc(mrb, sizeof(struct mrb_shared_string)); + mrb_shared_string *shared = (mrb_shared_string *)mrb_malloc(mrb, sizeof(mrb_shared_string)); shared->refcnt = 1; if (s->aux.capa > s->len) { @@ -301,7 +301,7 @@ mrb_value mrb_str_literal(mrb_state *mrb, mrb_value str) { struct RString *s, *orig; - struct mrb_shared_string *shared; + mrb_shared_string *shared; s = str_alloc(mrb, mrb->string_class); orig = mrb_str_ptr(str); @@ -1161,7 +1161,7 @@ static mrb_value mrb_str_subseq(mrb_state *mrb, mrb_value str, int beg, int len) { struct RString *orig, *s; - struct mrb_shared_string *shared; + mrb_shared_string *shared; orig = mrb_str_ptr(str); str_make_shared(mrb, orig); |
