临时备份

This commit is contained in:
D-j001 committed 2018-12-20 22:12:46 +08:00
1 parent 1f0940eaaf
commit f8a1eefc21
17 files changed
+202 -59

No files matched your search

+20 -8
View File
@@ -2,7 +2,6 @@ package com.compiler.parser;
import com.compiler.lexer.Token;
import javax.lang.model.util.ElementScanner6;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
@@ -36,13 +35,29 @@ public class ParserGenerator {
if (sym.equals("$"))
symbolString.add(new Symbol(sym, Symbol.SymbolType.Empty));
else if (sym.equals("PUSH"))
symbolString.add(new Symbol(sym, Symbol.ActionTYpe.PUSH));
symbolString.add(new Symbol(sym, Symbol.ActionType.PUSH));
else if (sym.equals("PUSH_CAPACITY"))
symbolString.add(new Symbol(sym, Symbol.ActionType.PUSH_CAPACITY));
else if (sym.equals("FILL"))
symbolString.add(new Symbol(sym, Symbol.ActionTYpe.FILL));
symbolString.add(new Symbol(sym, Symbol.ActionType.FILL));
else if (sym.equals("FILL_I"))
symbolString.add(new Symbol(sym, Symbol.ActionTYpe.FILL_I));
symbolString.add(new Symbol(sym, Symbol.ActionType.FILL_I));
else if (sym.equals("FILL_ARRAY"))
symbolString.add(new Symbol(sym, Symbol.ActionType.FILL_ARRAY));
else if (sym.equals("FILL_EMPTY_ARRAY"))
symbolString.add(new Symbol(sym, Symbol.ActionType.FILL_EMPTY_ARRAY));
else if (sym.equals("GEQ"))
symbolString.add(new Symbol(sym, Symbol.ActionTYpe.GEQ));
symbolString.add(new Symbol(sym, Symbol.ActionType.GEQ));
else if (sym.equals("GEQ_IF"))
symbolString.add(new Symbol(sym, Symbol.ActionType.GEQ_IF));
else if (sym.equals("END_IF"))
symbolString.add(new Symbol(sym, Symbol.ActionType.END_IF));
else if (sym.equals("BEGIN_ELSE"))
symbolString.add(new Symbol(sym, Symbol.ActionType.BEGIN_ELSE));
else if (sym.equals("GEQ_WHILE"))
symbolString.add(new Symbol(sym, Symbol.ActionType.GEQ_WHILE));
else if (sym.equals("END_WHILE"))
symbolString.add(new Symbol(sym, Symbol.ActionType.END_WHILE));
else if (ParserTest.isTerminal(sym))
symbolString.add(new Symbol(sym, Symbol.SymbolType.Terminal));
else
@@ -70,9 +85,6 @@ public class ParserGenerator {
break;
case DELIMITER:
switch (token.getStr()) {
case "=":
symbolList.add(new Symbol("=", Symbol.SymbolType.Terminal));
break;
case "*=":
symbolList.add(new Symbol("MUL_ASSIGN", Symbol.SymbolType.Terminal));
break;