diff graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.java @ 13761:7c418666c6c9

Refactoring and cleanup of Simple Language (more to come soon)
author Christian Wimmer <christian.wimmer@oracle.com>
date Fri, 24 Jan 2014 18:16:24 -0800
parents 7311354f5bf8
children cad8bed1a1ac
line wrap: on
line diff
--- a/graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.java	Fri Jan 24 18:13:38 2014 -0800
+++ b/graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.java	Fri Jan 24 18:16:24 2014 -0800
@@ -21,7 +21,8 @@
  * questions.
  */
 
-// The content of this file is automatically generated. DO NOT EDIT.
+ // The content of this file is automatically generated. DO NOT EDIT.
+
 
 package com.oracle.truffle.sl.parser;
 
@@ -311,8 +312,8 @@
 
     static final char EOL = '\n';
     static final int eofSym = 0;
-	static final int maxT = 29;
-	static final int noSym = 29;
+	static final int maxT = 30;
+	static final int noSym = 30;
 
 
     public Buffer buffer; // scanner buffer
@@ -347,23 +348,24 @@
 		start.set(123, 9); 
 		start.set(125, 10); 
 		start.set(59, 11); 
-		start.set(60, 24); 
-		start.set(62, 25); 
-		start.set(61, 26); 
-		start.set(33, 15); 
-		start.set(43, 17); 
-		start.set(45, 18); 
-		start.set(42, 19); 
-		start.set(47, 20); 
-		start.set(35, 21); 
-		start.set(63, 22); 
-		start.set(58, 23); 
+		start.set(124, 12); 
+		start.set(38, 14); 
+		start.set(60, 25); 
+		start.set(62, 26); 
+		start.set(61, 27); 
+		start.set(33, 19); 
+		start.set(43, 21); 
+		start.set(45, 22); 
+		start.set(42, 23); 
+		start.set(47, 24); 
 		start.set(Buffer.EOF, -1);
 		literals.put("function", new Integer(4));
-		literals.put("if", new Integer(11));
-		literals.put("else", new Integer(12));
-		literals.put("while", new Integer(13));
-		literals.put("return", new Integer(14));
+		literals.put("break", new Integer(10));
+		literals.put("continue", new Integer(12));
+		literals.put("if", new Integer(13));
+		literals.put("else", new Integer(14));
+		literals.put("while", new Integer(15));
+		literals.put("return", new Integer(16));
 
     }
 
@@ -519,69 +521,73 @@
                 } // NextCh already done
 				case 1:
 					recEnd = pos; recKind = 1;
-					if (ch >= '0' && ch <= '9' || ch >= 'A' && ch <= 'Z' || ch >= 'a' && ch <= 'z') {AddCh(); state = 1; break;}
+					if (ch >= '0' && ch <= '9' || ch >= 'A' && ch <= 'Z' || ch >= 'a' && ch <= 'z') {AddCh(); state = 1; break;}
 					else {t.kind = 1; t.val = new String(tval, 0, tlen); CheckLiteral(); return t;}
 				case 2:
-					if (ch <= 9 || ch >= 11 && ch <= 12 || ch >= 14 && ch <= '!' || ch >= '#' && ch <= '[' || ch >= ']' && ch <= 65535) {AddCh(); state = 2; break;}
-					else if (ch == '"') {AddCh(); state = 3; break;}
+					if (ch <= 9 || ch >= 11 && ch <= 12 || ch >= 14 && ch <= '!' || ch >= '#' && ch <= '[' || ch >= ']' && ch <= 65535) {AddCh(); state = 2; break;}
+					else if (ch == '"') {AddCh(); state = 3; break;}
 					else {state = 0; break;}
-				case 3:
+				case 3:
 					{t.kind = 2; break loop;}
 				case 4:
 					recEnd = pos; recKind = 3;
-					if (ch >= '0' && ch <= '9') {AddCh(); state = 4; break;}
+					if (ch >= '0' && ch <= '9') {AddCh(); state = 4; break;}
 					else {t.kind = 3; break loop;}
-				case 5:
+				case 5:
 					{t.kind = 3; break loop;}
-				case 6:
+				case 6:
 					{t.kind = 5; break loop;}
-				case 7:
+				case 7:
 					{t.kind = 6; break loop;}
-				case 8:
+				case 8:
 					{t.kind = 7; break loop;}
-				case 9:
+				case 9:
 					{t.kind = 8; break loop;}
-				case 10:
+				case 10:
 					{t.kind = 9; break loop;}
-				case 11:
-					{t.kind = 10; break loop;}
-				case 12:
+				case 11:
+					{t.kind = 11; break loop;}
+				case 12:
+					if (ch == '|') {AddCh(); state = 13; break;}
+					else {state = 0; break;}
+				case 13:
 					{t.kind = 17; break loop;}
-				case 13:
+				case 14:
+					if (ch == '&') {AddCh(); state = 15; break;}
+					else {state = 0; break;}
+				case 15:
 					{t.kind = 18; break loop;}
-				case 14:
-					{t.kind = 19; break loop;}
-				case 15:
-					if (ch == '=') {AddCh(); state = 16; break;}
-					else {state = 0; break;}
-				case 16:
-					{t.kind = 20; break loop;}
-				case 17:
+				case 16:
 					{t.kind = 21; break loop;}
-				case 18:
+				case 17:
 					{t.kind = 22; break loop;}
-				case 19:
+				case 18:
 					{t.kind = 23; break loop;}
-				case 20:
+				case 19:
+					if (ch == '=') {AddCh(); state = 20; break;}
+					else {state = 0; break;}
+				case 20:
 					{t.kind = 24; break loop;}
-				case 21:
+				case 21:
 					{t.kind = 25; break loop;}
-				case 22:
+				case 22:
 					{t.kind = 26; break loop;}
-				case 23:
+				case 23:
 					{t.kind = 27; break loop;}
 				case 24:
-					recEnd = pos; recKind = 15;
-					if (ch == '=') {AddCh(); state = 12; break;}
-					else {t.kind = 15; break loop;}
+					{t.kind = 28; break loop;}
 				case 25:
-					recEnd = pos; recKind = 16;
-					if (ch == '=') {AddCh(); state = 13; break;}
-					else {t.kind = 16; break loop;}
+					recEnd = pos; recKind = 19;
+					if (ch == '=') {AddCh(); state = 16; break;}
+					else {t.kind = 19; break loop;}
 				case 26:
-					recEnd = pos; recKind = 28;
-					if (ch == '=') {AddCh(); state = 14; break;}
-					else {t.kind = 28; break loop;}
+					recEnd = pos; recKind = 20;
+					if (ch == '=') {AddCh(); state = 17; break;}
+					else {t.kind = 20; break loop;}
+				case 27:
+					recEnd = pos; recKind = 29;
+					if (ch == '=') {AddCh(); state = 18; break;}
+					else {t.kind = 29; break loop;}
 
             }
         }