diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2021-06-19 21:19:42 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2021-06-19 21:19:42 +0900 |
| commit | f678620a436aa015f9252858aa00112256ab0668 (patch) | |
| tree | 4a6da786a7ab691f063421560a09b36aca03783a /src/class.c | |
| parent | 1fca58f7ca63b6a7e372be75cab2da52725c26e7 (diff) | |
| parent | c40802865a756f97ec8ffbd2361864b1fa291d4e (diff) | |
| download | mruby-f678620a436aa015f9252858aa00112256ab0668.tar.gz mruby-f678620a436aa015f9252858aa00112256ab0668.zip | |
Merge branch 'dearblue-block_given'
Diffstat (limited to 'src/class.c')
| -rw-r--r-- | src/class.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/class.c b/src/class.c index f02e280ef..f9474815e 100644 --- a/src/class.c +++ b/src/class.c @@ -859,6 +859,17 @@ mrb_get_arg1(mrb_state *mrb) return array_argv[0]; } +MRB_API mrb_bool +mrb_block_given_p(mrb_state *mrb) +{ + const mrb_callinfo *ci = mrb->c->ci; + int argc = ci->argc; + int idx = (argc < 0) ? 2 : argc + 1; + mrb_value b = ci->stack[idx]; + + return !mrb_nil_p(b); +} + void mrb_hash_check_kdict(mrb_state *mrb, mrb_value self); /* |
