Revision: 18038
Author:   [email protected]
Date:     Mon Nov 25 09:05:44 2013 UTC
Log:      Experimental parser: cleanup naming a bit

[email protected]

BUG=

Review URL: https://codereview.chromium.org/85373003
http://code.google.com/p/v8/source/detail?r=18038

Modified:
 /branches/experimental/parser/src/lexer/lexer_py.re
 /branches/experimental/parser/tools/lexer_generator/code_generator.jinja

=======================================
--- /branches/experimental/parser/src/lexer/lexer_py.re Fri Nov 22 15:56:11 2013 UTC +++ /branches/experimental/parser/src/lexer/lexer_py.re Mon Nov 25 09:05:44 2013 UTC
@@ -47,21 +47,22 @@
 # transition must be in continue or the name of a subgraph

 <<default>>
-"|="          <|push_token(ASSIGN_BIT_OR)|>
-"^="          <|push_token(ASSIGN_BIT_XOR)|>
-"&="          <|push_token(ASSIGN_BIT_AND)|>
-"+="          <|push_token(ASSIGN_ADD)|>
-"-="          <|push_token(ASSIGN_SUB)|>
-"*="          <|push_token(ASSIGN_MUL)|>
-"/="          <|push_token(ASSIGN_DIV)|>
-"%="          <|push_token(ASSIGN_MOD)|>

-"==="         <|push_token(EQ_STRICT)|>
-"=="          <|push_token(EQ)|>
-"="           <|push_token(ASSIGN)|>
-"!=="         <|push_token(NE_STRICT)|>
-"!="          <|push_token(NE)|>
-"!"           <|push_token(NOT)|>
+"|="          <|token(ASSIGN_BIT_OR)|>
+"^="          <|token(ASSIGN_BIT_XOR)|>
+"&="          <|token(ASSIGN_BIT_AND)|>
+"+="          <|token(ASSIGN_ADD)|>
+"-="          <|token(ASSIGN_SUB)|>
+"*="          <|token(ASSIGN_MUL)|>
+"/="          <|token(ASSIGN_DIV)|>
+"%="          <|token(ASSIGN_MOD)|>
+
+"==="         <|token(EQ_STRICT)|>
+"=="          <|token(EQ)|>
+"="           <|token(ASSIGN)|>
+"!=="         <|token(NE_STRICT)|>
+"!="          <|token(NE)|>
+"!"           <|token(NOT)|>

 "//"          <||SingleLineComment>
 "/*"          <set_marker(2)||MultiLineComment>
@@ -69,139 +70,138 @@

 "<!-"        <|{
   BACKWARD(2);
-  PUSH_TOKEN(Token::LT);
+  DO_TOKEN(Token::LT);
 }|>

 "<!"        <|{
   BACKWARD(1);
-  PUSH_TOKEN(Token::LT);
+  DO_TOKEN(Token::LT);
 }|>

-
 "-->" <{
   if (!has_line_terminator_before_next_) {
     BACKWARD(1);
-    PUSH_TOKEN(Token::DEC);
+    DO_TOKEN(Token::DEC);
   }
 }||SingleLineComment>

-">>>="        <|push_token(ASSIGN_SHR)|>
-">>>"         <|push_token(SHR)|>
-"<<="         <|push_token(ASSIGN_SHL)|>
-">>="         <|push_token(ASSIGN_SAR)|>
-"<="          <|push_token(LTE)|>
-">="          <|push_token(GTE)|>
-"<<"          <|push_token(SHL)|>
-">>"          <|push_token(SAR)|>
-"<"           <|push_token(LT)|>
-">"           <|push_token(GT)|>
+">>>="        <|token(ASSIGN_SHR)|>
+">>>"         <|token(SHR)|>
+"<<="         <|token(ASSIGN_SHL)|>
+">>="         <|token(ASSIGN_SAR)|>
+"<="          <|token(LTE)|>
+">="          <|token(GTE)|>
+"<<"          <|token(SHL)|>
+">>"          <|token(SAR)|>
+"<"           <|token(LT)|>
+">"           <|token(GT)|>

-number        <|push_token(NUMBER)|>
-number identifier_char   <|push_token(ILLEGAL)|>
-number "\\"   <|push_token(ILLEGAL)|>
+number                  <|token(NUMBER)|>
+number identifier_char  <|token(ILLEGAL)|>
+number "\\"             <|token(ILLEGAL)|>

-harmony_number <|push_harmony_token(numeric_literals, NUMBER, ILLEGAL)|>
-harmony_number identifier_char   <|push_token(ILLEGAL)|>
-harmony_number "\\"   <|push_token(ILLEGAL)|>
+harmony_number <|harmony_token(numeric_literals, NUMBER, ILLEGAL)|>
+harmony_number identifier_char  <|token(ILLEGAL)|>
+harmony_number "\\"             <|token(ILLEGAL)|>

-"("           <|push_token(LPAREN)|>
-")"           <|push_token(RPAREN)|>
-"["           <|push_token(LBRACK)|>
-"]"           <|push_token(RBRACK)|>
-"{"           <|push_token(LBRACE)|>
-"}"           <|push_token(RBRACE)|>
-":"           <|push_token(COLON)|>
-";"           <|push_token(SEMICOLON)|>
-"."           <|push_token(PERIOD)|>
-"?"           <|push_token(CONDITIONAL)|>
-"++"          <|push_token(INC)|>
-"--"          <|push_token(DEC)|>
+"("           <|token(LPAREN)|>
+")"           <|token(RPAREN)|>
+"["           <|token(LBRACK)|>
+"]"           <|token(RBRACK)|>
+"{"           <|token(LBRACE)|>
+"}"           <|token(RBRACE)|>
+":"           <|token(COLON)|>
+";"           <|token(SEMICOLON)|>
+"."           <|token(PERIOD)|>
+"?"           <|token(CONDITIONAL)|>
+"++"          <|token(INC)|>
+"--"          <|token(DEC)|>

-"||"          <|push_token(OR)|>
-"&&"          <|push_token(AND)|>
+"||"          <|token(OR)|>
+"&&"          <|token(AND)|>

-"|"           <|push_token(BIT_OR)|>
-"^"           <|push_token(BIT_XOR)|>
-"&"           <|push_token(BIT_AND)|>
-"+"           <|push_token(ADD)|>
-"-"           <|push_token(SUB)|>
-"*"           <|push_token(MUL)|>
-"/"           <|push_token(DIV)|>
-"%"           <|push_token(MOD)|>
-"~"           <|push_token(BIT_NOT)|>
-","           <|push_token(COMMA)|>
+"|"           <|token(BIT_OR)|>
+"^"           <|token(BIT_XOR)|>
+"&"           <|token(BIT_AND)|>
+"+"           <|token(ADD)|>
+"-"           <|token(SUB)|>
+"*"           <|token(MUL)|>
+"/"           <|token(DIV)|>
+"%"           <|token(MOD)|>
+"~"           <|token(BIT_NOT)|>
+","           <|token(COMMA)|>

-line_terminator+                     <|push_line_terminator|>
-/[:whitespace:]+/   <|skip|>
+line_terminator+   <|line_terminator|>
+/[:whitespace:]+/  <|skip|>

 "\""           <set_marker(1)||DoubleQuoteString>
 "'"            <set_marker(1)||SingleQuoteString>

 # all keywords
-"break"       <|push_token(BREAK)|>
-"case"        <|push_token(CASE)|>
-"catch"       <|push_token(CATCH)|>
-"class"       <|push_token(FUTURE_RESERVED_WORD)|>
-"const"       <|push_token(CONST)|>
-"continue"    <|push_token(CONTINUE)|>
-"debugger"    <|push_token(DEBUGGER)|>
-"default"     <|push_token(DEFAULT)|>
-"delete"      <|push_token(DELETE)|>
-"do"          <|push_token(DO)|>
-"else"        <|push_token(ELSE)|>
-"enum"        <|push_token(FUTURE_RESERVED_WORD)|>
-"export"      <|push_harmony_token(modules, EXPORT, FUTURE_RESERVED_WORD)|>
-"extends"     <|push_token(FUTURE_RESERVED_WORD)|>
-"false"       <|push_token(FALSE_LITERAL)|>
-"finally"     <|push_token(FINALLY)|>
-"for"         <|push_token(FOR)|>
-"function"    <|push_token(FUNCTION)|>
-"if"          <|push_token(IF)|>
-"implements"  <|push_token(FUTURE_STRICT_RESERVED_WORD)|>
-"import"      <|push_harmony_token(modules, IMPORT, FUTURE_RESERVED_WORD)|>
-"in"          <|push_token(IN)|>
-"instanceof"  <|push_token(INSTANCEOF)|>
-"interface"   <|push_token(FUTURE_STRICT_RESERVED_WORD)|>
-"let" <|push_harmony_token(scoping, LET, FUTURE_STRICT_RESERVED_WORD)|>
-"new"         <|push_token(NEW)|>
-"null"        <|push_token(NULL_LITERAL)|>
-"package"     <|push_token(FUTURE_STRICT_RESERVED_WORD)|>
-"private"     <|push_token(FUTURE_STRICT_RESERVED_WORD)|>
-"protected"   <|push_token(FUTURE_STRICT_RESERVED_WORD)|>
-"public"      <|push_token(FUTURE_STRICT_RESERVED_WORD)|>
-"return"      <|push_token(RETURN)|>
-"static"      <|push_token(FUTURE_STRICT_RESERVED_WORD)|>
-"super"       <|push_token(FUTURE_RESERVED_WORD)|>
-"switch"      <|push_token(SWITCH)|>
-"this"        <|push_token(THIS)|>
-"throw"       <|push_token(THROW)|>
-"true"        <|push_token(TRUE_LITERAL)|>
-"try"         <|push_token(TRY)|>
-"typeof"      <|push_token(TYPEOF)|>
-"var"         <|push_token(VAR)|>
-"void"        <|push_token(VOID)|>
-"while"       <|push_token(WHILE)|>
-"with"        <|push_token(WITH)|>
-"yield"       <|push_token(YIELD)|>
+"break"       <|token(BREAK)|>
+"case"        <|token(CASE)|>
+"catch"       <|token(CATCH)|>
+"class"       <|token(FUTURE_RESERVED_WORD)|>
+"const"       <|token(CONST)|>
+"continue"    <|token(CONTINUE)|>
+"debugger"    <|token(DEBUGGER)|>
+"default"     <|token(DEFAULT)|>
+"delete"      <|token(DELETE)|>
+"do"          <|token(DO)|>
+"else"        <|token(ELSE)|>
+"enum"        <|token(FUTURE_RESERVED_WORD)|>
+"export"      <|harmony_token(modules, EXPORT, FUTURE_RESERVED_WORD)|>
+"extends"     <|token(FUTURE_RESERVED_WORD)|>
+"false"       <|token(FALSE_LITERAL)|>
+"finally"     <|token(FINALLY)|>
+"for"         <|token(FOR)|>
+"function"    <|token(FUNCTION)|>
+"if"          <|token(IF)|>
+"implements"  <|token(FUTURE_STRICT_RESERVED_WORD)|>
+"import"      <|harmony_token(modules, IMPORT, FUTURE_RESERVED_WORD)|>
+"in"          <|token(IN)|>
+"instanceof"  <|token(INSTANCEOF)|>
+"interface"   <|token(FUTURE_STRICT_RESERVED_WORD)|>
+"let"         <|harmony_token(scoping, LET, FUTURE_STRICT_RESERVED_WORD)|>
+"new"         <|token(NEW)|>
+"null"        <|token(NULL_LITERAL)|>
+"package"     <|token(FUTURE_STRICT_RESERVED_WORD)|>
+"private"     <|token(FUTURE_STRICT_RESERVED_WORD)|>
+"protected"   <|token(FUTURE_STRICT_RESERVED_WORD)|>
+"public"      <|token(FUTURE_STRICT_RESERVED_WORD)|>
+"return"      <|token(RETURN)|>
+"static"      <|token(FUTURE_STRICT_RESERVED_WORD)|>
+"super"       <|token(FUTURE_RESERVED_WORD)|>
+"switch"      <|token(SWITCH)|>
+"this"        <|token(THIS)|>
+"throw"       <|token(THROW)|>
+"true"        <|token(TRUE_LITERAL)|>
+"try"         <|token(TRY)|>
+"typeof"      <|token(TYPEOF)|>
+"var"         <|token(VAR)|>
+"void"        <|token(VOID)|>
+"while"       <|token(WHILE)|>
+"with"        <|token(WITH)|>
+"yield"       <|token(YIELD)|>

-identifier_start <|push_token(IDENTIFIER)|Identifier>
+identifier_start <|token(IDENTIFIER)|Identifier>
 /\\u[:hex_digit:]{4}/ <{
   if (V8_UNLIKELY(!ValidIdentifierStart())) {
     goto default_action;
   }
-}|push_token(IDENTIFIER)|Identifier>
+}|token(IDENTIFIER)|Identifier>

 eos             <|terminate|>
-default_action  <push_token_and_go_forward(ILLEGAL)>
+default_action  <do_token_and_go_forward(ILLEGAL)>

 <<DoubleQuoteString>>
 "\\" line_terminator_sequence <||continue>
 /\\[x][:hex_digit:]{2}/       <||continue>
 /\\[u][:hex_digit:]{4}/       <||continue>
 /\\[^xu:line_terminator:]/    <||continue>
-"\\"                          <|push_token(ILLEGAL)|>
-line_terminator               <|push_token(ILLEGAL)|>
-"\""                          <|push_token(STRING)|>
+"\\"                          <|token(ILLEGAL)|>
+line_terminator               <|token(ILLEGAL)|>
+"\""                          <|token(STRING)|>
 eos                           <|terminate_illegal|>
 catch_all                     <||continue>

@@ -211,29 +211,29 @@
 /\\[x][:hex_digit:]{2}/       <||continue>
 /\\[u][:hex_digit:]{4}/       <||continue>
 /\\[^xu:line_terminator:]/    <||continue>
-"\\"                          <|push_token(ILLEGAL)|>
-line_terminator               <|push_token(ILLEGAL)|>
-"'"                           <|push_token(STRING)|>
+"\\"                          <|token(ILLEGAL)|>
+line_terminator               <|token(ILLEGAL)|>
+"'"                           <|token(STRING)|>
 eos                           <|terminate_illegal|>
 catch_all                     <||continue>

 <<Identifier>>
-identifier_char <|push_token(IDENTIFIER)|continue>
+identifier_char <|token(IDENTIFIER)|continue>
 /\\u[:hex_digit:]{4}/ <{
   if (V8_UNLIKELY(!ValidIdentifierPart())) {
     goto default_action;
   }
-}|push_token(IDENTIFIER)|continue>
+}|token(IDENTIFIER)|continue>

 <<SingleLineComment>>
-line_terminator  <|push_line_terminator|>
-eos <|skip_and_terminate|>
-catch_all <||continue>
+line_terminator  <|line_terminator|>
+eos              <|skip_and_terminate|>
+catch_all        <||continue>

 <<MultiLineComment>>
-/\*+\//             <|skip|>
+/\*+\//          <|skip|>
 # TODO find a way to generate the below rule
-/\*+[^\/*]/       <||continue>
-line_terminator  <push_line_terminator||continue>
-eos <|terminate_illegal|>
+/\*+[^\/*]/      <||continue>
+line_terminator  <line_terminator||continue>
+eos              <|terminate_illegal|>
 catch_all        <||continue>
=======================================
--- /branches/experimental/parser/tools/lexer_generator/code_generator.jinja Fri Nov 22 15:56:11 2013 UTC +++ /branches/experimental/parser/tools/lexer_generator/code_generator.jinja Mon Nov 25 09:05:44 2013 UTC
@@ -45,26 +45,28 @@
   {%- if type == 'code' %}
     {{value}}
   {% elif type == 'terminate' %}
-    PUSH_EOS();
+    DO_EOS();
   {% elif type == 'terminate_illegal' %}
-    start_ = marker_; BACKWARD(1); PUSH_TOKEN(Token::ILLEGAL);
+    start_ = marker_;
+    BACKWARD(1);
+    DO_TOKEN(Token::ILLEGAL);
   {% elif type == 'skip' %}
     SKIP();
   {% elif type == 'skip_and_terminate' %}
     SKIP();
     --start_;
     {{dispatch_action('terminate', None)}}
-  {% elif type == 'push_line_terminator' %}
-    PUSH_LINE_TERMINATOR();
-  {% elif type == 'push_token' %}
-    PUSH_TOKEN(Token::{{value}})
-  {% elif type == 'push_token_and_go_forward' %}
-    PUSH_TOKEN_AND_GO_FORWARD(Token::{{value}})
-  {% elif type == 'push_harmony_token' %}
+  {% elif type == 'line_terminator' %}
+    DO_LINE_TERMINATOR();
+  {% elif type == 'token' %}
+    DO_TOKEN(Token::{{value}})
+  {% elif type == 'do_token_and_go_forward' %}
+    DO_TOKEN_AND_GO_FORWARD(Token::{{value}})
+  {% elif type == 'harmony_token' %}
     if (harmony_{{value[0]}}_) {
-      PUSH_TOKEN(Token::{{value[1][0]}});
+      DO_TOKEN(Token::{{value[1][0]}});
     } else {
-      PUSH_TOKEN(Token::{{value[1][1]}});
+      DO_TOKEN(Token::{{value[1][1]}});
     }
   {% elif type == 'set_marker' %}
     marker_ = cursor_ - {{value}};
@@ -189,32 +191,32 @@

 {%- endmacro %}

-#define PREPARE_PUSH_TOKEN() {        \
+#define PREPARE_TOKEN() {             \
   next_.beg_pos = start_ - buffer_;   \
   next_.end_pos = cursor_ - buffer_;  \
   start_ = cursor_;                   \
 }

-#define PUSH_TOKEN(T) {               \
-  PREPARE_PUSH_TOKEN();               \
+#define DO_TOKEN(T) {                 \
+  PREPARE_TOKEN();                    \
   next_.token = T;                    \
   return;                             \
 }

-#define PUSH_TOKEN_AND_GO_FORWARD(T) {\
-  PREPARE_PUSH_TOKEN();               \
+#define DO_TOKEN_AND_GO_FORWARD(T) {  \
+  PREPARE_TOKEN();                    \
   FORWARD();                          \
   next_.token = T;                    \
   return;                             \
 }

-#define PUSH_EOS() {                  \
+#define DO_EOS() {                    \
   cursor_ -= 1;                       \
-  PUSH_TOKEN(Token::EOS);             \
+  DO_TOKEN(Token::EOS);               \
 }

-#define PUSH_LINE_TERMINATOR(s) {     \
-  start_ = cursor_;                   \
+#define DO_LINE_TERMINATOR(s) {            \
+  start_ = cursor_;                        \
   has_line_terminator_before_next_ = true; \
 }

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to