diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-02-26 06:44:53 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-02-26 06:44:53 +0000 |
commit | fbee9ba6ea90e881a3341caaa2114df4f5aa16d9 (patch) | |
tree | 23239ed4f9c38f355e6a509e665e933bfc7a9202 /parse.y | |
parent | eccb4ca2e71611ecca616f8c57bc087898a17c91 (diff) |
* parse.y (tokadd_escape): refactored. [ruby-core:15657]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r-- | parse.y | 10 |
1 files changed, 4 insertions, 6 deletions
@@ -4520,7 +4520,7 @@ static int parser_here_document(struct parser_params*,NODE*); # define tokadd(c) parser_tokadd(parser, c) # define tok_hex(numlen) parser_tok_hex(parser, numlen) # define read_escape(flags,e) parser_read_escape(parser, flags, e) -# define tokadd_escape(t,e) parser_tokadd_escape(parser, t, e) +# define tokadd_escape(e) parser_tokadd_escape(parser, e) # define regx_options() parser_regx_options(parser) # define tokadd_string(f,t,p,n,e) parser_tokadd_string(parser,f,t,p,n,e) # define parse_string(n) parser_parse_string(parser,n) @@ -5203,8 +5203,7 @@ parser_tokaddmbc(struct parser_params *parser, int c, rb_encoding *enc) } static int -parser_tokadd_escape(struct parser_params *parser, int term, - rb_encoding **encp) +parser_tokadd_escape(struct parser_params *parser, rb_encoding **encp) { int c; int flags = 0; @@ -5277,8 +5276,7 @@ parser_tokadd_escape(struct parser_params *parser, int term, return -1; default: - if (c != '\\' || c != term) - tokadd('\\'); + tokadd('\\'); tokadd(c); } return 0; @@ -5416,7 +5414,7 @@ parser_tokadd_string(struct parser_params *parser, default: if (func & STR_FUNC_REGEXP) { pushback(c); - if ((c = tokadd_escape(term, &enc)) < 0) + if ((c = tokadd_escape(&enc)) < 0) return -1; if (has_nonascii && enc != *encp) { mixed_escape(beg, enc, *encp); |