diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2021-05-27 21:43:43 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2021-05-27 21:43:43 +0900 |
| commit | 48b08fecba0b4dea58b8e9b0b473f47848f2fcf0 (patch) | |
| tree | b4250613d194c2506afb22600e5764ad71733126 /src | |
| parent | 9a72869043e0377ec549a325a074e592f82ef5ed (diff) | |
| download | mruby-48b08fecba0b4dea58b8e9b0b473f47848f2fcf0.tar.gz mruby-48b08fecba0b4dea58b8e9b0b473f47848f2fcf0.zip | |
array.c: unify `mrb_ary_ref` and `mrb_ary_entry`
Use only `mrb_ary_entry` hereafter.
Diffstat (limited to 'src')
| -rw-r--r-- | src/array.c | 30 |
1 files changed, 9 insertions, 21 deletions
diff --git a/src/array.c b/src/array.c index a49c2399c..6a3034962 100644 --- a/src/array.c +++ b/src/array.c @@ -694,19 +694,6 @@ mrb_ary_unshift_m(mrb_state *mrb, mrb_value self) return self; } -MRB_API mrb_value -mrb_ary_ref(mrb_state *mrb, mrb_value ary, mrb_int n) -{ - struct RArray *a = mrb_ary_ptr(ary); - mrb_int len = ARY_LEN(a); - - /* range check */ - if (n < 0) n += len; - if (n < 0 || len <= n) return mrb_nil_value(); - - return ARY_PTR(a)[n]; -} - MRB_API void mrb_ary_set(mrb_state *mrb, mrb_value ary, mrb_int n, mrb_value val) { @@ -1191,15 +1178,16 @@ mrb_ary_empty_p(mrb_state *mrb, mrb_value self) } MRB_API mrb_value -mrb_ary_entry(mrb_value ary, mrb_int offset) +mrb_ary_entry(mrb_value ary, mrb_int n) { - if (offset < 0) { - offset += RARRAY_LEN(ary); - } - if (offset < 0 || RARRAY_LEN(ary) <= offset) { - return mrb_nil_value(); - } - return RARRAY_PTR(ary)[offset]; + struct RArray *a = mrb_ary_ptr(ary); + mrb_int len = ARY_LEN(a); + + /* range check */ + if (n < 0) n += len; + if (n < 0 || len <= n) return mrb_nil_value(); + + return ARY_PTR(a)[n]; } static mrb_value |
