changeset 22190:6050fb3fc842

SL: fix rawtypes in Scanner
author Andreas Woess <andreas.woess@oracle.com>
date Wed, 23 Sep 2015 23:38:44 +0200
parents fe7032676e60
children 93a6b7597937
files truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.frame truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.java
diffstat 2 files changed, 159 insertions(+), 161 deletions(-) [+]
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.frame	Wed Sep 23 21:55:37 2015 +0200
+++ b/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.frame	Wed Sep 23 23:38:44 2015 +0200
@@ -5,24 +5,24 @@
 ported from C# to Java by Wolfgang Ahorner
 with improvements by Pat Terry, Rhodes University
 
-This program is free software; you can redistribute it and/or modify it 
-under the terms of the GNU General Public License as published by the 
-Free Software Foundation; either version 2, or (at your option) any 
+This program is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
 later version.
 
-This program is distributed in the hope that it will be useful, but 
-WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
-or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License 
+This program is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 for more details.
 
-You should have received a copy of the GNU General Public License along 
-with this program; if not, write to the Free Software Foundation, Inc., 
+You should have received a copy of the GNU General Public License along
+with this program; if not, write to the Free Software Foundation, Inc.,
 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 As an exception, it is allowed to write an extension of Coco/R that is
 used as a plugin in non-free software.
 
-If not otherwise stated, any source code generated by Coco/R (other than 
+If not otherwise stated, any source code generated by Coco/R (other than
 Coco/R itself) does not fall under the GNU General Public License.
 ------------------------------------------------------------------------*/
 -->begin
@@ -309,7 +309,6 @@
 // -----------------------------------------------------------------------------------
 // Scanner
 // -----------------------------------------------------------------------------------
-@SuppressWarnings({"rawtypes", "unchecked"})
 public class Scanner {
 
     static final char EOL = '\n';
@@ -326,7 +325,7 @@
     int line; // line number of current character
     int oldEols; // EOLs that appeared in a comment;
     static final StartStates start; // maps initial token character to start state
-    static final Map literals; // maps literal strings to literal kinds
+    static final Map<String, Integer> literals; // maps literal strings to literal kinds
 
     Token tokens; // list of tokens already peeked (first token is a dummy)
     Token pt; // current peek token
@@ -336,7 +335,7 @@
 
     static {
         start = new StartStates();
-        literals = new HashMap();
+        literals = new HashMap<>();
 -->initialization
     }
 
@@ -419,7 +418,7 @@
     }
 
     Token NextToken() {
-        while (ch == ' ' || 
+        while (ch == ' ' ||
 -->scan1
         ) NextCh();
 -->scan2
--- a/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.java	Wed Sep 23 21:55:37 2015 +0200
+++ b/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.java	Wed Sep 23 23:38:44 2015 +0200
@@ -324,13 +324,12 @@
 // -----------------------------------------------------------------------------------
 // Scanner
 // -----------------------------------------------------------------------------------
-@SuppressWarnings({"rawtypes", "unchecked"})
 public class Scanner {
 
     static final char EOL = '\n';
     static final int eofSym = 0;
-	static final int maxT = 31;
-	static final int noSym = 31;
+    static final int maxT = 31;
+    static final int noSym = 31;
 
 
     public Buffer buffer; // scanner buffer
@@ -343,7 +342,7 @@
     int line; // line number of current character
     int oldEols; // EOLs that appeared in a comment;
     static final StartStates start; // maps initial token character to start state
-    static final Map literals; // maps literal strings to literal kinds
+    static final Map<String, Integer> literals; // maps literal strings to literal kinds
 
     Token tokens; // list of tokens already peeked (first token is a dummy)
     Token pt; // current peek token
@@ -353,37 +352,37 @@
 
     static {
         start = new StartStates();
-        literals = new HashMap();
-		for (int i = 65; i <= 90; ++i) start.set(i, 1);
-		for (int i = 97; i <= 122; ++i) start.set(i, 1);
-		for (int i = 49; i <= 57; ++i) start.set(i, 4);
-		start.set(34, 2);
-		start.set(48, 5);
-		start.set(40, 6);
-		start.set(44, 7);
-		start.set(41, 8);
-		start.set(123, 9);
-		start.set(125, 10);
-		start.set(59, 11);
-		start.set(124, 12);
-		start.set(38, 14);
-		start.set(60, 26);
-		start.set(62, 27);
-		start.set(61, 28);
-		start.set(33, 19);
-		start.set(43, 21);
-		start.set(45, 22);
-		start.set(42, 23);
-		start.set(47, 24);
-		start.set(46, 25);
-		start.set(Buffer.EOF, -1);
-		literals.put("function", new Integer(4));
-		literals.put("break", new Integer(10));
-		literals.put("continue", new Integer(12));
-		literals.put("while", new Integer(13));
-		literals.put("if", new Integer(14));
-		literals.put("else", new Integer(15));
-		literals.put("return", new Integer(16));
+        literals = new HashMap<>();
+        for (int i = 65; i <= 90; ++i) start.set(i, 1);
+        for (int i = 97; i <= 122; ++i) start.set(i, 1);
+        for (int i = 49; i <= 57; ++i) start.set(i, 4);
+        start.set(34, 2);
+        start.set(48, 5);
+        start.set(40, 6);
+        start.set(44, 7);
+        start.set(41, 8);
+        start.set(123, 9);
+        start.set(125, 10);
+        start.set(59, 11);
+        start.set(124, 12);
+        start.set(38, 14);
+        start.set(60, 26);
+        start.set(62, 27);
+        start.set(61, 28);
+        start.set(33, 19);
+        start.set(43, 21);
+        start.set(45, 22);
+        start.set(42, 23);
+        start.set(47, 24);
+        start.set(46, 25);
+        start.set(Buffer.EOF, -1);
+        literals.put("function", new Integer(4));
+        literals.put("break", new Integer(10));
+        literals.put("continue", new Integer(12));
+        literals.put("while", new Integer(13));
+        literals.put("if", new Integer(14));
+        literals.put("else", new Integer(15));
+        literals.put("return", new Integer(16));
 
     }
 
@@ -449,53 +448,53 @@
             tval = newBuf;
         }
         if (ch != Buffer.EOF) {
-			tval[tlen++] = (char)ch;
+            tval[tlen++] = (char)ch;
 
             NextCh();
         }
     }
 
 
-	boolean Comment0() {
-		int level = 1, pos0 = pos, line0 = line, col0 = col, charPos0 = charPos;
-		NextCh();
-		if (ch == '/') {
-			NextCh();
-			for(;;) {
-				if (ch == 10) {
-					level--;
-					if (level == 0) { oldEols = line - line0; NextCh(); return true; }
-					NextCh();
-				} else if (ch == Buffer.EOF) return false;
-				else NextCh();
-			}
-		} else {
-			buffer.setPos(pos0); NextCh(); line = line0; col = col0; charPos = charPos0;
-		}
-		return false;
-	}
+    boolean Comment0() {
+        int level = 1, pos0 = pos, line0 = line, col0 = col, charPos0 = charPos;
+        NextCh();
+        if (ch == '/') {
+            NextCh();
+            for(;;) {
+                if (ch == 10) {
+                    level--;
+                    if (level == 0) { oldEols = line - line0; NextCh(); return true; }
+                    NextCh();
+                } else if (ch == Buffer.EOF) return false;
+                else NextCh();
+            }
+        } else {
+            buffer.setPos(pos0); NextCh(); line = line0; col = col0; charPos = charPos0;
+        }
+        return false;
+    }
 
-	boolean Comment1() {
-		int level = 1, pos0 = pos, line0 = line, col0 = col, charPos0 = charPos;
-		NextCh();
-		if (ch == '*') {
-			NextCh();
-			for(;;) {
-				if (ch == '*') {
-					NextCh();
-					if (ch == '/') {
-						level--;
-						if (level == 0) { oldEols = line - line0; NextCh(); return true; }
-						NextCh();
-					}
-				} else if (ch == Buffer.EOF) return false;
-				else NextCh();
-			}
-		} else {
-			buffer.setPos(pos0); NextCh(); line = line0; col = col0; charPos = charPos0;
-		}
-		return false;
-	}
+    boolean Comment1() {
+        int level = 1, pos0 = pos, line0 = line, col0 = col, charPos0 = charPos;
+        NextCh();
+        if (ch == '*') {
+            NextCh();
+            for(;;) {
+                if (ch == '*') {
+                    NextCh();
+                    if (ch == '/') {
+                        level--;
+                        if (level == 0) { oldEols = line - line0; NextCh(); return true; }
+                        NextCh();
+                    }
+                } else if (ch == Buffer.EOF) return false;
+                else NextCh();
+            }
+        } else {
+            buffer.setPos(pos0); NextCh(); line = line0; col = col0; charPos = charPos0;
+        }
+        return false;
+    }
 
 
     void CheckLiteral() {
@@ -509,9 +508,9 @@
 
     Token NextToken() {
         while (ch == ' ' ||
-			ch >= 9 && ch <= 10 || ch == 13
+            ch >= 9 && ch <= 10 || ch == 13
         ) NextCh();
-		if (ch == '/' && Comment0() ||ch == '/' && Comment1()) return NextToken();
+        if (ch == '/' && Comment0() ||ch == '/' && Comment1()) return NextToken();
         int recKind = noSym;
         int recEnd = pos;
         t = new Token();
@@ -537,77 +536,77 @@
                     t.kind = recKind;
                     break loop;
                 } // 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;}
-					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;}
-					else {state = 0; break;}
-				case 3:
-					{t.kind = 2; break loop;}
-				case 4:
-					recEnd = pos; recKind = 3;
-					if (ch >= '0' && ch <= '9') {AddCh(); state = 4; break;}
-					else {t.kind = 3; break loop;}
-				case 5:
-					{t.kind = 3; break loop;}
-				case 6:
-					{t.kind = 5; break loop;}
-				case 7:
-					{t.kind = 6; break loop;}
-				case 8:
-					{t.kind = 7; break loop;}
-				case 9:
-					{t.kind = 8; break loop;}
-				case 10:
-					{t.kind = 9; break loop;}
-				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 14:
-					if (ch == '&') {AddCh(); state = 15; break;}
-					else {state = 0; break;}
-				case 15:
-					{t.kind = 18; break loop;}
-				case 16:
-					{t.kind = 20; break loop;}
-				case 17:
-					{t.kind = 22; break loop;}
-				case 18:
-					{t.kind = 23; break loop;}
-				case 19:
-					if (ch == '=') {AddCh(); state = 20; break;}
-					else {state = 0; break;}
-				case 20:
-					{t.kind = 24; break loop;}
-				case 21:
-					{t.kind = 25; break loop;}
-				case 22:
-					{t.kind = 26; break loop;}
-				case 23:
-					{t.kind = 27; break loop;}
-				case 24:
-					{t.kind = 28; break loop;}
-				case 25:
-					{t.kind = 30; break loop;}
-				case 26:
-					recEnd = pos; recKind = 19;
-					if (ch == '=') {AddCh(); state = 16; break;}
-					else {t.kind = 19; break loop;}
-				case 27:
-					recEnd = pos; recKind = 21;
-					if (ch == '=') {AddCh(); state = 17; break;}
-					else {t.kind = 21; break loop;}
-				case 28:
-					recEnd = pos; recKind = 29;
-					if (ch == '=') {AddCh(); state = 18; break;}
-					else {t.kind = 29; break loop;}
+                case 1:
+                    recEnd = pos; recKind = 1;
+                    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;}
+                    else {state = 0; break;}
+                case 3:
+                    {t.kind = 2; break loop;}
+                case 4:
+                    recEnd = pos; recKind = 3;
+                    if (ch >= '0' && ch <= '9') {AddCh(); state = 4; break;}
+                    else {t.kind = 3; break loop;}
+                case 5:
+                    {t.kind = 3; break loop;}
+                case 6:
+                    {t.kind = 5; break loop;}
+                case 7:
+                    {t.kind = 6; break loop;}
+                case 8:
+                    {t.kind = 7; break loop;}
+                case 9:
+                    {t.kind = 8; break loop;}
+                case 10:
+                    {t.kind = 9; break loop;}
+                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 14:
+                    if (ch == '&') {AddCh(); state = 15; break;}
+                    else {state = 0; break;}
+                case 15:
+                    {t.kind = 18; break loop;}
+                case 16:
+                    {t.kind = 20; break loop;}
+                case 17:
+                    {t.kind = 22; break loop;}
+                case 18:
+                    {t.kind = 23; break loop;}
+                case 19:
+                    if (ch == '=') {AddCh(); state = 20; break;}
+                    else {state = 0; break;}
+                case 20:
+                    {t.kind = 24; break loop;}
+                case 21:
+                    {t.kind = 25; break loop;}
+                case 22:
+                    {t.kind = 26; break loop;}
+                case 23:
+                    {t.kind = 27; break loop;}
+                case 24:
+                    {t.kind = 28; break loop;}
+                case 25:
+                    {t.kind = 30; break loop;}
+                case 26:
+                    recEnd = pos; recKind = 19;
+                    if (ch == '=') {AddCh(); state = 16; break;}
+                    else {t.kind = 19; break loop;}
+                case 27:
+                    recEnd = pos; recKind = 21;
+                    if (ch == '=') {AddCh(); state = 17; break;}
+                    else {t.kind = 21; break loop;}
+                case 28:
+                    recEnd = pos; recKind = 29;
+                    if (ch == '=') {AddCh(); state = 18; break;}
+                    else {t.kind = 29; break loop;}
 
             }
         }