diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | include/ruby/ruby.h | 3 |
2 files changed, 11 insertions, 0 deletions
@@ -1,3 +1,11 @@ +Mon May 13 16:53:53 2013 Koichi Sasada <ko1@atdot.net> + + * include/ruby/ruby.h: add new utility macros to access + Array's element. + * RARRAY_AREF(a, i) returns i-th element of an array `a' + * RARRAY_ASET(a, i, v) set i-th element of `a' to `v' + This change is a part of RGENGC branch [ruby-trunk - Feature #8339]. + Mon May 13 15:31:10 2013 Koichi Sasada <ko1@atdot.net> * object.c (rb_obj_setup): added. diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h index 1838a399af..e860336021 100644 --- a/include/ruby/ruby.h +++ b/include/ruby/ruby.h @@ -892,6 +892,9 @@ struct RArray { RARRAY(a)->as.heap.ptr) #define RARRAY_LENINT(ary) rb_long2int(RARRAY_LEN(ary)) +#define RARRAY_AREF(a, i) (RARRAY_PTR(a)[i]) +#define RARRAY_ASET(a, i, v) do {RARRAY_PTR(a)[i] = (v);} while (0) + struct RRegexp { struct RBasic basic; struct re_pattern_buffer *ptr; |