diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2013-10-31 23:34:08 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2013-10-31 23:34:08 +0900 |
| commit | af03812877c914de787e70735eb89084434b21f1 (patch) | |
| tree | c85caab5e6eb09e7584543753eb2dfa7bd41fa35 /src/array.c | |
| parent | 0fe744f9192bda774749de7d8426033ae9cfd084 (diff) | |
| download | mruby-af03812877c914de787e70735eb89084434b21f1.tar.gz mruby-af03812877c914de787e70735eb89084434b21f1.zip | |
add mrb_ary_modify(mrb,a); you have to ensure mrb_value a to be an array; ref #1554
Diffstat (limited to 'src/array.c')
| -rw-r--r-- | src/array.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/array.c b/src/array.c index 526cf4973..705aece07 100644 --- a/src/array.c +++ b/src/array.c @@ -138,6 +138,16 @@ ary_modify(mrb_state *mrb, struct RArray *a) } } +void +mrb_ary_modify(mrb_state *mrb, mrb_value ary) +{ + struct RArray *a; + + a = mrb_ary_ptr(ary); + mrb_write_barrier(mrb, (struct RBasic*)a); + ary_modify(mrb, a); +} + static void ary_make_shared(mrb_state *mrb, struct RArray *a) { |
