diff options
| author | Yukihiro Matz Matsumoto <[email protected]> | 2012-11-04 05:02:39 +0900 |
|---|---|---|
| committer | Yukihiro Matz Matsumoto <[email protected]> | 2012-11-04 05:02:39 +0900 |
| commit | d2d2e9f5f9267c2583aa542b4066d109a07b742e (patch) | |
| tree | c9c5747bfbb489c063ad72e4d68b0de3e818ac1f /src/vm.c | |
| parent | 051777dc5de7e16ab28d39530fc0bb8101323e2c (diff) | |
| download | mruby-d2d2e9f5f9267c2583aa542b4066d109a07b742e.tar.gz mruby-d2d2e9f5f9267c2583aa542b4066d109a07b742e.zip | |
add new predicates mrb_string_p(),mrb_array_p(),mrb_hash_p()
Diffstat (limited to 'src/vm.c')
| -rw-r--r-- | src/vm.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -992,7 +992,7 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self) struct RArray *rest; int len = 0; - if (mrb_type(stack[m1]) == MRB_TT_ARRAY) { + if (mrb_array_p(stack[m1])) { struct RArray *ary = mrb_ary_ptr(stack[m1]); pp = ary->ptr; @@ -1047,7 +1047,7 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self) } } } - else if (len > 1 && argc == 1 && mrb_type(argv[0]) == MRB_TT_ARRAY) { + else if (len > 1 && argc == 1 && mrb_array_p(argv[0])) { argc = mrb_ary_ptr(argv[0])->len; argv = mrb_ary_ptr(argv[0])->ptr; } @@ -1592,7 +1592,7 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self) int c = GETARG_C(i); mrb_value v = regs[GETARG_B(i)]; - if (mrb_type(v) != MRB_TT_ARRAY) { + if (!mrb_array_p(v)) { if (c == 0) { regs[GETARG_A(i)] = v; } @@ -1619,7 +1619,7 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self) int pre = GETARG_B(i); int post = GETARG_C(i); - if (mrb_type(v) != MRB_TT_ARRAY) { + if (!mrb_array_p(v)) { regs[a++] = mrb_ary_new_capa(mrb, 0); while (post--) { SET_NIL_VALUE(regs[a]); |
