diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-02-04 19:17:33 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-02-04 19:17:33 +0000 |
commit | 72f2d2a00d8ae3861a15ca92bf9322951a22b6cf (patch) | |
tree | 3f74f159fcc7abf2e87ff7295e6400651a26a8c4 /node.h | |
parent | 71364da03fcae2e0fb7b2641b6ac1e507ee03da6 (diff) | |
download | bundler-72f2d2a00d8ae3861a15ca92bf9322951a22b6cf.tar.gz |
* parse.y (rb_compose_ivar2): function to create a new ivar2
symbol from a symbol and a class. back-ported from matzruby.
* parse.y (rb_decompose_ivar2): reverse function of
rb_compose_ivar2().
* marshal.c (w_symbol): support class local instance variables.
* marshal.c (r_object0): ditto.
* compile.c (defined_expr): ditto.
* compile.c (iseq_compile_each): ditto.
* insns.def: add two new instructions: getinstancevariable2 and
setinstancevariable2.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'node.h')
-rw-r--r-- | node.h | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -48,6 +48,7 @@ enum node_type { NODE_DASGN_CURR, NODE_GASGN, NODE_IASGN, + NODE_IASGN2, NODE_CDECL, NODE_CVASGN, NODE_CVDECL, @@ -70,6 +71,7 @@ enum node_type { NODE_DVAR, NODE_GVAR, NODE_IVAR, + NODE_IVAR2, NODE_CONST, NODE_CVAR, NODE_NTH_REF, @@ -282,6 +284,7 @@ typedef struct RNode { #define NEW_DASGN(v,val) NEW_NODE(NODE_DASGN,v,val,0) #define NEW_DASGN_CURR(v,val) NEW_NODE(NODE_DASGN_CURR,v,val,0) #define NEW_IASGN(v,val) NEW_NODE(NODE_IASGN,v,val,0) +#define NEW_IASGN2(v,val) NEW_NODE(NODE_IASGN2,v,val,0) #define NEW_CDECL(v,val,path) NEW_NODE(NODE_CDECL,v,val,path) #define NEW_CVASGN(v,val) NEW_NODE(NODE_CVASGN,v,val,0) #define NEW_CVDECL(v,val) NEW_NODE(NODE_CVDECL,v,val,0) @@ -294,6 +297,7 @@ typedef struct RNode { #define NEW_LVAR(v) NEW_NODE(NODE_LVAR,v,0,local_cnt(v)) #define NEW_DVAR(v) NEW_NODE(NODE_DVAR,v,0,0) #define NEW_IVAR(v) NEW_NODE(NODE_IVAR,v,0,0) +#define NEW_IVAR2(v) NEW_NODE(NODE_IVAR2,v,0,0) #define NEW_CONST(v) NEW_NODE(NODE_CONST,v,0,0) #define NEW_CVAR(v) NEW_NODE(NODE_CVAR,v,0,0) #define NEW_NTH_REF(n) NEW_NODE(NODE_NTH_REF,0,n,local_cnt('~')) |