📄 exprparser.java
字号:
//----------------------------------------------------
// The following code was generated by CUP v0.11a beta 20060608
// Fri Jun 20 21:10:58 CST 2008
//----------------------------------------------------
package edu.ustc.cs.compile.parser.expr;
import java.io.File;
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.util.*;
import java.util.LinkedList;
import java_cup.runtime.*;
import java.lang.Object;
import org.eclipse.jdt.core.dom.*;
import edu.ustc.cs.compile.parser.myHIR;
import edu.ustc.cs.compile.platform.interfaces.ParserInterface;
import edu.ustc.cs.compile.platform.interfaces.ParserException;
import edu.ustc.cs.compile.platform.interfaces.InterRepresent;
import edu.ustc.cs.compile.platform.util.ir.HIR;
import edu.ustc.cs.compile.platform.util.ASTView.core.*;
import edu.ustc.cs.compile.platform.util.ASTView.plugin.*;
/** CUP v0.11a beta 20060608 generated parser.
* @version Fri Jun 20 21:10:58 CST 2008
*/
public class ExprParser extends java_cup.runtime.lr_parser implements ParserInterface {
/** Default constructor. */
public ExprParser() {super();}
/** Constructor which sets the default scanner. */
public ExprParser(java_cup.runtime.Scanner s) {super(s);}
/** Constructor which sets the default scanner. */
public ExprParser(java_cup.runtime.Scanner s, java_cup.runtime.SymbolFactory sf) {super(s,sf);}
/** Production table. */
protected static final short _production_table[][] =
unpackFromStrings(new String[] {
"\000\211\000\002\002\004\000\002\002\003\000\002\012" +
"\007\000\002\007\003\000\002\007\004\000\002\053\003" +
"\000\002\053\003\000\002\052\006\000\002\052\007\000" +
"\002\052\005\000\002\052\006\000\002\066\002\000\002" +
"\011\006\000\002\011\004\000\002\003\003\000\002\003" +
"\004\000\002\014\003\000\002\014\003\000\002\010\003" +
"\000\002\045\003\000\002\045\003\000\002\045\003\000" +
"\002\046\003\000\002\046\003\000\002\046\003\000\002" +
"\047\006\000\002\047\005\000\002\047\006\000\002\047" +
"\005\000\002\037\003\000\002\050\003\000\002\050\005" +
"\000\002\004\003\000\002\004\005\000\002\026\005\000" +
"\002\033\003\000\002\033\003\000\002\041\004\000\002" +
"\041\005\000\002\005\003\000\002\005\005\000\002\054" +
"\004\000\002\006\003\000\002\006\005\000\002\067\002" +
"\000\002\051\011\000\002\070\002\000\002\051\010\000" +
"\002\071\002\000\002\051\012\000\002\072\002\000\002" +
"\051\011\000\002\013\003\000\002\013\003\000\002\013" +
"\003\000\002\013\003\000\002\017\003\000\002\017\003" +
"\000\002\017\003\000\002\020\003\000\002\020\003\000" +
"\002\020\003\000\002\020\004\000\002\020\004\000\002" +
"\020\005\000\002\020\004\000\002\021\003\000\002\021" +
"\004\000\002\022\007\000\002\023\011\000\002\024\011" +
"\000\002\015\007\000\002\016\007\000\002\025\004\000" +
"\002\032\003\000\002\032\003\000\002\027\005\000\002" +
"\034\003\000\002\056\003\000\002\056\005\000\002\056" +
"\005\000\002\056\005\000\002\057\003\000\002\057\005" +
"\000\002\057\005\000\002\060\003\000\002\060\005\000" +
"\002\060\005\000\002\060\005\000\002\060\005\000\002" +
"\061\003\000\002\061\005\000\002\061\005\000\002\062" +
"\003\000\002\062\005\000\002\063\003\000\002\063\005" +
"\000\002\064\003\000\002\035\003\000\002\035\003\000" +
"\002\030\003\000\002\040\006\000\002\036\006\000\002" +
"\036\005\000\002\031\003\000\002\031\005\000\002\031" +
"\003\000\002\031\003\000\002\031\003\000\002\031\003" +
"\000\002\031\005\000\002\031\004\000\002\031\003\000" +
"\002\031\003\000\002\042\003\000\002\042\003\000\002" +
"\042\003\000\002\042\003\000\002\042\003\000\002\042" +
"\003\000\002\044\003\000\002\044\003\000\002\044\003" +
"\000\002\043\003\000\002\043\003\000\002\043\003\000" +
"\002\043\003\000\002\043\003\000\002\043\003\000\002" +
"\043\003\000\002\043\003\000\002\043\003\000\002\043" +
"\003\000\002\043\003\000\002\043\003\000\002\043\003" +
"\000\002\055\003" });
/** Access to production table. */
public short[][] production_table() {return _production_table;}
/** Parse-action table. */
protected static final short[][] _action_table =
unpackFromStrings(new String[] {
"\000\330\000\004\056\005\001\002\000\004\002\332\001" +
"\002\000\004\057\007\001\002\000\004\002\000\001\002" +
"\000\004\042\010\001\002\000\016\036\024\050\011\051" +
"\013\052\014\060\012\061\016\001\002\000\006\044\uffee" +
"\054\uffee\001\002\000\014\036\313\050\011\051\013\052" +
"\014\061\016\001\002\000\006\044\uffed\054\uffed\001\002" +
"\000\006\044\uffec\054\uffec\001\002\000\020\036\ufffb\043" +
"\ufffb\050\ufffb\051\ufffb\052\ufffb\060\ufffb\061\ufffb\001\002" +
"\000\006\044\306\054\uffe9\001\002\000\006\044\302\054" +
"\uffeb\001\002\000\004\054\032\001\002\000\020\036\ufffe" +
"\043\ufffe\050\ufffe\051\ufffe\052\ufffe\060\ufffe\061\ufffe\001" +
"\002\000\020\036\024\043\161\050\011\051\013\052\014" +
"\060\012\061\016\001\002\000\020\036\ufffc\043\ufffc\050" +
"\ufffc\051\ufffc\052\ufffc\060\ufffc\061\ufffc\001\002\000\012" +
"\050\011\051\013\052\014\061\016\001\002\000\004\054" +
"\uffea\001\002\000\004\054\032\001\002\000\010\004\uffe3" +
"\011\037\046\uffe3\001\002\000\012\004\uffe4\011\uffe4\041" +
"\uffe4\046\uffe4\001\002\000\006\004\uffe1\046\uffe1\001\002" +
"\000\070\004\uff79\005\uff79\006\uff79\007\uff79\010\uff79\011" +
"\uff79\012\uff79\013\uff79\014\uff79\015\uff79\016\uff79\020\uff79" +
"\021\uff79\022\uff79\023\uff79\024\uff79\025\uff79\026\uff79\027" +
"\uff79\030\uff79\040\uff79\041\uff79\043\uff79\044\uff79\045\uff79" +
"\046\uff79\047\uff79\001\002\000\006\004\035\046\034\001" +
"\002\000\004\054\032\001\002\000\020\036\ufff7\043\ufff7" +
"\050\ufff7\051\ufff7\052\ufff7\060\ufff7\061\ufff7\001\002\000" +
"\006\004\uffe0\046\uffe0\001\002\000\026\005\041\006\060" +
"\017\044\040\045\042\047\053\064\054\032\055\050\062" +
"\054\063\062\001\002\000\020\004\uffa2\020\151\021\uffa2" +
"\041\uffa2\043\uffa2\045\uffa2\046\uffa2\001\002\000\024\005" +
"\uff89\006\uff89\017\uff89\040\uff89\053\uff89\054\uff89\055\uff89" +
"\062\uff89\063\uff89\001\002\000\014\004\uff9d\041\uff9d\043" +
"\uff9d\045\uff9d\046\uff9d\001\002\000\062\004\uff90\005\uff90" +
"\006\uff90\007\uff90\010\uff90\011\uff90\012\uff90\013\uff90\014" +
"\uff90\015\uff90\016\uff90\020\uff90\021\uff90\022\uff90\023\uff90" +
"\024\uff90\025\uff90\026\uff90\027\uff90\030\uff90\041\uff90\043" +
"\uff90\045\uff90\046\uff90\001\002\000\024\005\uff87\006\uff87" +
"\017\uff87\040\uff87\053\uff87\054\uff87\055\uff87\062\uff87\063" +
"\uff87\001\002\000\024\005\041\006\060\017\044\040\045" +
"\053\064\054\032\055\050\062\054\063\062\001\002\000" +
"\014\004\uff9f\041\uff9f\043\uff9f\045\uff9f\046\uff9f\001\002" +
"\000\026\005\041\006\060\017\044\040\045\043\153\053" +
"\064\054\032\055\050\062\054\063\062\001\002\000\062" +
"\004\uff94\005\uff94\006\uff94\007\uff94\010\uff94\011\uff94\012" +
"\uff94\013\uff94\014\uff94\015\uff94\016\uff94\020\uff94\021\uff94" +
"\022\uff94\023\uff94\024\uff94\025\uff94\026\uff94\027\uff94\030" +
"\uff94\041\uff94\043\uff94\045\uff94\046\uff94\001\002\000\016" +
"\004\uffa0\021\147\041\uffa0\043\uffa0\045\uffa0\046\uffa0\001" +
"\002\000\006\004\uffde\046\uffde\001\002\000\040\004\uffac" +
"\005\137\006\140\020\uffac\021\uffac\022\uffac\023\uffac\025" +
"\uffac\026\uffac\027\uffac\030\uffac\041\uffac\043\uffac\045\uffac" +
"\046\uffac\001\002\000\062\004\uff96\005\uff96\006\uff96\007" +
"\uff96\010\uff96\011\uff96\012\uff96\013\uff96\014\uff96\015\uff96" +
"\016\uff96\020\uff96\021\uff96\022\uff96\023\uff96\024\uff96\025" +
"\uff96\026\uff96\027\uff96\030\uff96\041\uff96\043\uff96\045\uff96" +
"\046\uff96\001\002\000\034\004\uffa7\020\uffa7\021\uffa7\022" +
"\132\023\135\025\134\026\133\027\uffa7\030\uffa7\041\uffa7" +
"\043\uffa7\045\uffa7\046\uffa7\001\002\000\024\004\uffa4\020" +
"\uffa4\021\uffa4\027\127\030\126\041\uffa4\043\uffa4\045\uffa4" +
"\046\uffa4\001\002\000\014\004\uff9e\041\uff9e\043\uff9e\045" +
"\uff9e\046\uff9e\001\002\000\024\005\uff88\006\uff88\017\uff88" +
"\040\uff88\053\uff88\054\uff88\055\uff88\062\uff88\063\uff88\001" +
"\002\000\062\004\uffb3\005\uffb3\006\uffb3\007\uffb3\010\uffb3" +
"\011\uffb4\012\uffb4\013\uffb4\014\uffb4\015\uffb4\016\uffb4\020" +
"\uffb3\021\uffb3\022\uffb3\023\uffb3\024\uffb3\025\uffb3\026\uffb3" +
"\027\uffb3\030\uffb3\041\uffb3\043\uffb3\045\uffb3\046\uffb3\001" +
"\002\000\062\004\uff95\005\uff95\006\uff95\007\uff95\010\uff95" +
"\011\uff95\012\uff95\013\uff95\014\uff95\015\uff95\016\uff95\020" +
"\uff95\021\uff95\022\uff95\023\uff95\024\uff95\025\uff95\026\uff95" +
"\027\uff95\030\uff95\041\uff95\043\uff95\045\uff95\046\uff95\001" +
"\002\000\006\004\uffdd\046\uffdd\001\002\000\062\004\uff97" +
"\005\uff97\006\uff97\007\uff97\010\uff97\011\uff97\012\uff97\013" +
"\uff97\014\uff97\015\uff97\016\uff97\020\uff97\021\uff97\022\uff97" +
"\023\uff97\024\uff97\025\uff97\026\uff97\027\uff97\030\uff97\041" +
"\uff97\043\uff97\045\uff97\046\uff97\001\002\000\046\004\uffaf" +
"\005\uffaf\006\uffaf\007\120\010\122\020\uffaf\021\uffaf\022" +
"\uffaf\023\uffaf\024\121\025\uffaf\026\uffaf\027\uffaf\030\uffaf" +
"\041\uffaf\043\uffaf\045\uffaf\046\uffaf\001\002\000\062\004" +
"\uff91\005\uff91\006\uff91\007\uff91\010\uff91\011\uff91\012\uff91" +
"\013\uff91\014\uff91\015\uff91\016\uff91\020\uff91\021\uff91\022" +
"\uff91\023\uff91\024\uff91\025\uff91\026\uff91\027\uff91\030\uff91" +
"\041\uff91\043\uff91\045\uff91\046\uff91\001\002\000\024\005" +
"\041\006\060\017\044\040\045\053\064\054\032\055\050" +
"\062\054\063\062\001\002\000\006\004\uffe2\046\uffe2\001" +
"\002\000\016\011\107\012\111\013\112\014\113\015\115" +
"\016\114\001\002\000\070\004\uff99\005\uff99\006\uff99\007" +
"\uff99\010\uff99\011\uff99\012\uff99\013\uff99\014\uff99\015\uff99" +
"\016\uff99\020\uff99\021\uff99\022\uff99\023\uff99\024\uff99\025" +
"\uff99\026\uff99\027\uff99\030\uff99\040\074\041\uff99\043\uff99" +
"\044\073\045\uff99\046\uff99\047\075\001\002\000\024\005" +
"\041\006\060\017\044\040\045\053\064\054\032\055\050" +
"\062\054\063\062\001\002\000\026\005\041\006\060\017" +
"\044\040\045\041\077\053\064\054\032\055\050\062\054" +
"\063\062\001\002\000\004\064\076\001\002\000\062\004" +
"\uff98\005\uff98\006\uff98\007\uff98\010\uff98\011\uff98\012\uff98" +
"\013\uff98\014\uff98\015\uff98\016\uff98\020\uff98\021\uff98\022" +
"\uff98\023\uff98\024\uff98\025\uff98\026\uff98\027\uff98\030\uff98" +
"\041\uff98\043\uff98\045\uff98\046\uff98\001\002\000\062\004" +
"\uff9a\005\uff9a\006\uff9a\007\uff9a\010\uff9a\011\uff9a\012\uff9a" +
"\013\uff9a\014\uff9a\015\uff9a\016\uff9a\020\uff9a\021\uff9a\022" +
"\uff9a\023\uff9a\024\uff9a\025\uff9a\026\uff9a\027\uff9a\030\uff9a" +
"\041\uff9a\043\uff9a\045\uff9a\046\uff9a\001\002\000\006\041" +
"\103\046\102\001\002\000\010\041\uffda\043\uffda\046\uffda" +
"\001\002\000\024\005\041\006\060\017\044\040\045\053" +
"\064\054\032\055\050\062\054\063\062\001\002\000\062" +
"\004\uff9b\005\uff9b\006\uff9b\007\uff9b\010\uff9b\011\uff9b\012" +
"\uff9b\013\uff9b\014\uff9b\015\uff9b\016\uff9b\020\uff9b\021\uff9b" +
"\022\uff9b\023\uff9b\024\uff9b\025\uff9b\026\uff9b\027\uff9b\030" +
"\uff9b\041\uff9b\043\uff9b\045\uff9b\046\uff9b\001\002\000\010" +
"\041\uffd9\043\uffd9\046\uffd9\001\002\000\004\045\106\001" +
"\002\000\062\004\uff9c\005\uff9c\006\uff9c\007\uff9c\010\uff9c" +
"\011\uff9c\012\uff9c\013\uff9c\014\uff9c\015\uff9c\016\uff9c\020" +
"\uff9c\021\uff9c\022\uff9c\023\uff9c\024\uff9c\025\uff9c\026\uff9c" +
"\027\uff9c\030\uff9c\041\uff9c\043\uff9c\045\uff9c\046\uff9c\001" +
"\002\000\024\005\uff8f\006\uff8f\017\uff8f\040\uff8f\053\uff8f" +
"\054\uff8f\055\uff8f\062\uff8f\063\uff8f\001\002\000\024\005" +
"\041\006\060\017\044\040\045\053\064\054\032\055\050" +
"\062\054\063\062\001\002\000\024\005\uff8e\006\uff8e\017" +
"\uff8e\040\uff8e\053\uff8e\054\uff8e\055\uff8e\062\uff8e\063\uff8e" +
"\001\002\000\024\005\uff8d\006\uff8d\017\uff8d\040\uff8d\053" +
"\uff8d\054\uff8d\055\uff8d\062\uff8d\063\uff8d\001\002\000\024" +
"\005\uff8c\006\uff8c\017\uff8c\040\uff8c\053\uff8c\054\uff8c\055" +
"\uff8c\062\uff8c\063\uff8c\001\002\000\024\005\uff8a\006\uff8a" +
"\017\uff8a\040\uff8a\053\uff8a\054\uff8a\055\uff8a\062\uff8a\063" +
"\uff8a\001\002\000\024\005\uff8b\006\uff8b\017\uff8b\040\uff8b" +
"\053\uff8b\054\uff8b\055\uff8b\062\uff8b\063\uff8b\001\002\000" +
"\014\004\uffb5\041\uffb5\043\uffb5\045\uffb5\046\uffb5\001\002" +
"\000\062\004\uff92\005\uff92\006\uff92\007\uff92\010\uff92\011" +
"\uff92\012\uff92\013\uff92\014\uff92\015\uff92\016\uff92\020\uff92" +
"\021\uff92\022\uff92\023\uff92\024\uff92\025\uff92\026\uff92\027" +
"\uff92\030\uff92\041\uff92\043\uff92\045\uff92\046\uff92\001\002" +
"\000\024\005\041\006\060\017\044\040\045\053\064\054" +
"\032\055\050\062\054\063\062\001\002\000\024\005\041" +
"\006\060\017\044\040\045\053\064\054\032\055\050\062" +
"\054\063\062\001\002\000\024\005\041\006\060\017\044" +
"\040\045\053\064\054\032\055\050\062\054\063\062\001" +
"\002\000\046\004\uffb1\005\uffb1\006\uffb1\007\uffb1\010\uffb1" +
"\020\uffb1\021\uffb1\022\uffb1\023\uffb1\024\uffb1\025\uffb1\026" +
"\uffb1\027\uffb1\030\uffb1\041\uffb1\043\uffb1\045\uffb1\046\uffb1" +
"\001\002\000\046\004\uffb0\005\uffb0\006\uffb0\007\uffb0\010" +
"\uffb0\020\uffb0\021\uffb0\022\uffb0\023\uffb0\024\uffb0\025\uffb0" +
"\026\uffb0\027\uffb0\030\uffb0\041\uffb0\043\uffb0\045\uffb0\046" +
"\uffb0\001\002\000\046\004\uffb2\005\uffb2\006\uffb2\007\uffb2" +
"\010\uffb2\020\uffb2\021\uffb2\022\uffb2\023\uffb2\024\uffb2\025" +
"\uffb2\026\uffb2\027\uffb2\030\uffb2\041\uffb2\043\uffb2\045\uffb2" +
"\046\uffb2\001\002\000\024\005\041\006\060\017\044\040" +
"\045\053\064\054\032\055\050\062\054\063\062\001\002" +
"\000\024\005\041\006\060\017\044\040\045\053\064\054" +
"\032\055\050\062\054\063\062\001\002\000\046\004\uffb3" +
"\005\uffb3\006\uffb3\007\uffb3\010\uffb3\020\uffb3\021\uffb3\022" +
"\uffb3\023\uffb3\024\uffb3\025\uffb3\026\uffb3\027\uffb3\030\uffb3" +
"\041\uffb3\043\uffb3\045\uffb3\046\uffb3\001\002\000\034\004" +
"\uffa5\020\uffa5\021\uffa5\022\132\023\135\025\134\026\133" +
"\027\uffa5\030\uffa5\041\uffa5\043\uffa5\045\uffa5\046\uffa5\001" +
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -