diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-01-01 03:24:29 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-01-01 03:24:29 +0000 |
commit | 0082edfd3d4c0288cf8464fac54d7655db5a29ca (patch) | |
tree | 34a346b3f856bb042d524cc0e8b943f87d55f105 /node.h | |
parent | 2a54402839534bff1bebbf0feb2e53298819aee9 (diff) |
* eval.c (massign): removed awkward conversion between yvalue,
mvalue, etc.
* eval.c (rb_yield_0): new parameter added to tell whether val is
an array value or not.
* parse.y (yield_args): restructuring: new nodes: NODE_RESTARY2,
NODE_SVALUE; removed node: NODE_RESTARGS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3269 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'node.h')
-rw-r--r-- | node.h | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -87,9 +87,10 @@ enum node_type { NODE_ARGS, NODE_ARGSCAT, NODE_ARGSPUSH, - NODE_RESTARGS, NODE_RESTARY, + NODE_RESTARY2, NODE_REXPAND, + NODE_SVALUE, NODE_BLOCK_ARG, NODE_BLOCK_PASS, NODE_DEFN, @@ -306,9 +307,10 @@ typedef struct RNode { #define NEW_ARGS(f,o,r) rb_node_newnode(NODE_ARGS,o,r,f) #define NEW_ARGSCAT(a,b) rb_node_newnode(NODE_ARGSCAT,a,b,0) #define NEW_ARGSPUSH(a,b) rb_node_newnode(NODE_ARGSPUSH,a,b,0) -#define NEW_RESTARGS(a) rb_node_newnode(NODE_RESTARGS,a,0,0) #define NEW_RESTARY(a) rb_node_newnode(NODE_RESTARY,a,0,0) +#define NEW_RESTARY2(a) rb_node_newnode(NODE_RESTARY2,a,0,0) #define NEW_REXPAND(a) rb_node_newnode(NODE_REXPAND,a,0,0) +#define NEW_SVALUE(a) rb_node_newnode(NODE_SVALUE,a,0,0) #define NEW_BLOCK_ARG(v) rb_node_newnode(NODE_BLOCK_ARG,v,0,local_cnt(v)) #define NEW_BLOCK_PASS(b) rb_node_newnode(NODE_BLOCK_PASS,0,b,0) #define NEW_ALIAS(n,o) rb_node_newnode(NODE_ALIAS,o,n,0) |