]> git.saurik.com Git - cycript.git/blobdiff - Cycript.yy.in
Commit a generally useful -gtiming implementation.
[cycript.git] / Cycript.yy.in
index b38c7fcd4aa522a9a9cbbbafa7d3c11370b282ae..8b00100fe3a8371339306010165da79b31f8f19a 100644 (file)
@@ -264,26 +264,32 @@ int cylex(YYSTYPE *, CYLocation *, void *);
 %token Null "null"
 %token True "true"
 
-// ES3/ES5/WIE/JSC Reserved
-%token Auto "auto"
 %token Break "break"
 %token Case "case"
 %token Catch "catch"
+%token Class "class"
+%token Const "const"
 %token Continue "continue"
+%token Debugger "debugger"
 %token Default "default"
 %token Delete "delete"
 %token Do "do"
 %token Else "else"
+%token Enum "enum"
+%token Export "export"
+%token Extends "extends"
 %token Finally "finally"
 %token For "for"
 %token Function "function"
 %token Function_ ";function"
 %token If "if"
+%token Import "import"
 %token In "in"
 %token In_ "!in"
 %token InstanceOf "instanceof"
 %token New "new"
 %token Return "return"
+%token Super "super"
 %token Switch "switch"
 %token This "this"
 %token Throw "throw"
@@ -294,31 +300,8 @@ int cylex(YYSTYPE *, CYLocation *, void *);
 %token While "while"
 %token With "with"
 
-// ES3/IE6 Future, ES5/JSC Reserved
-%token Debugger "debugger"
-
-// ES3/ES5/IE6 Future, JSC Reserved
-%token Const "const"
-
-// ES3/ES5/IE6/JSC Future
-%token Class "class"
-%token Enum "enum"
-%token Export "export"
-%token Extends "extends"
-%token Import "import"
-%token Super "super"
-
-// ES3 Future, ES5 Strict Future
-%token <identifier_> Implements "implements"
-%token <identifier_> Interface "interface"
-%token <identifier_> Package "package"
-%token <identifier_> Private "private"
-%token <identifier_> Protected "protected"
-%token <identifier_> Public "public"
-%token <identifier_> Static "static"
-
-// ES3 Future
 %token <identifier_> Abstract "abstract"
+%token <identifier_> Await "await"
 %token <identifier_> Boolean "boolean"
 %token <identifier_> Byte "byte"
 %token <identifier_> Char "char"
@@ -326,25 +309,29 @@ int cylex(YYSTYPE *, CYLocation *, void *);
 %token <identifier_> Final "final"
 %token <identifier_> Float "float"
 %token <identifier_> Goto "goto"
+%token <identifier_> Implements "implements"
 %token <identifier_> Int "int"
+%token <identifier_> Interface "interface"
+%token <identifier_> Let "let"
 %token <identifier_> Long "long"
 %token <identifier_> Native "native"
+%token <identifier_> Package "package"
+%token <identifier_> Private "private"
+%token <identifier_> Protected "protected"
+%token <identifier_> Public "public"
 %token <identifier_> Short "short"
+%token <identifier_> Static "static"
 %token <identifier_> Synchronized "synchronized"
 %token <identifier_> Throws "throws"
 %token <identifier_> Transient "transient"
 %token <identifier_> Volatile "volatile"
-
-// ES5 Strict
-%token <identifier_> Let "let"
 %token <identifier_> Yield "yield"
 
-// Woah?!
+%token Auto "auto"
 %token <identifier_> Each "each"
 %token <identifier_> Of "of"
 
 @begin E4X
-// E4X Conditional
 %token <identifier_> Namespace "namespace"
 %token <identifier_> XML "xml"
 @end
@@ -621,6 +608,7 @@ NewLineOpt
 
 Word
     : Identifier { $$ = $1; }
+
     | "auto" { $$ = CYNew CYWord("auto"); }
     | "break" NewLineOpt { $$ = CYNew CYWord("break"); }
     | "case" { $$ = CYNew CYWord("case"); }
@@ -675,22 +663,22 @@ WordOpt
 IdentifierType
     : Identifier_ { $$ = $1; }
 
-    | "implements" { $$ = $1; }
-    | "interface" { $$ = $1; }
-    | "package" { $$ = $1; }
-    | "private" { $$ = $1; }
-    | "protected" { $$ = $1; }
-    | "public" { $$ = $1; }
-    | "static" { $$ = $1; }
-
     | "abstract" { $$ = $1; }
+    | "await" { $$ = $1; }
     | "boolean" { $$ = $1; }
     | "byte" { $$ = $1; }
     | "double" { $$ = $1; }
     | "final" { $$ = $1; }
     | "float" { $$ = $1; }
     | "goto" { $$ = $1; }
+    | "implements" { $$ = $1; }
+    | "interface" { $$ = $1; }
     | "native" { $$ = $1; }
+    | "package" { $$ = $1; }
+    | "private" { $$ = $1; }
+    | "protected" { $$ = $1; }
+    | "public" { $$ = $1; }
+    | "static" { $$ = $1; }
     | "synchronized" { $$ = $1; }
     | "throws" { $$ = $1; }
     | "transient" { $$ = $1; }
@@ -712,14 +700,14 @@ Identifier
     | "short" { $$ = $1; }
     | "volatile" { $$ = $1; }
 @begin C
+    | "extern" { $$ = $1; }
+    | "signed" { $$ = $1; }
     | "typedef" { $$ = $1; }
     | "unsigned" { $$ = $1; }
-    | "signed" { $$ = $1; }
-    | "extern" { $$ = $1; }
 @end
 @begin ObjectiveC
-    | "YES" { $$ = $1; }
     | "NO" { $$ = $1; }
+    | "YES" { $$ = $1; }
 @end
     ;