summaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-01-23 14:35:26 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-01-23 14:35:26 +0900
commit5e1d923381072ebcbe002d70bc198a6e95c31f50 (patch)
treea34b1dd90e3931d91d4cc11666187907f10de877 /include
parent708088c5fafd469d04a1b428fc49b8b7c27607d2 (diff)
downloadmruby-5e1d923381072ebcbe002d70bc198a6e95c31f50.tar.gz
mruby-5e1d923381072ebcbe002d70bc198a6e95c31f50.zip
Changed the behavior of mrb_range_beg_len(); close #3411
The new API is: int mrb_range_beg_len(mrb, range, &beg, &len, len, trunc) The new argument `trunc` is a boolean value that specifies whether the function truncates the range. The new return value is an integer instead of a boolean, that is: 0: not a range 1: range with proper edges 2: out of range To get the old behavior, you have to rewrite: mrb_range_beg_len(mrb, range, &beg, &len, len) to: mrn_range_beg_len(mrb, range, &beg, &len, len, TRUE) == 1 [Breaking Change]
Diffstat (limited to 'include')
-rw-r--r--include/mruby/range.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/mruby/range.h b/include/mruby/range.h
index fb602b3f3..41e4f1254 100644
--- a/include/mruby/range.h
+++ b/include/mruby/range.h
@@ -41,7 +41,7 @@ MRB_API struct RRange* mrb_range_ptr(mrb_state *mrb, mrb_value v);
*/
MRB_API mrb_value mrb_range_new(mrb_state *mrb, mrb_value start, mrb_value end, mrb_bool exclude);
-MRB_API mrb_bool mrb_range_beg_len(mrb_state *mrb, mrb_value range, mrb_int *begp, mrb_int *lenp, mrb_int len);
+MRB_API int mrb_range_beg_len(mrb_state *mrb, mrb_value range, mrb_int *begp, mrb_int *lenp, mrb_int len, mrb_bool trunc);
mrb_value mrb_get_values_at(mrb_state *mrb, mrb_value obj, mrb_int olen, mrb_int argc, const mrb_value *argv, mrb_value (*func)(mrb_state*, mrb_value, mrb_int));
MRB_END_DECL