亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? preprocessor.java

?? 類似QQ的功能
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/*******************************************************************************SiJaPP - Simple Java PreProcessorCopyright (C) 2003  Manuel LinsmayerThis program is free software; you can redistribute it and/ormodify it under the terms of the GNU General Public Licenseas published by the Free Software Foundation; either version 2of the License, 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 ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.*******************************************************************************/package sijapp;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.util.Enumeration;import java.util.Hashtable;import java.util.Stack;import java.util.Vector;public class Preprocessor {  // Defines  private Hashtable defines;  private Hashtable localDefines = new Hashtable();  // Input stream  private BufferedReader reader;  // Output stream  private BufferedWriter writer;  // Line counter  private int lineNum;  // Stop flag  private boolean stop;  // Skip flag/stack  private boolean skip;  private Stack skipStack = new Stack();  // Done flag/stack  private boolean done;  private Stack doneStack = new Stack();  // Constructor  public Preprocessor(Hashtable defines) {    this.defines = defines;  }  // Evaluate expression  public Scanner.Token[] evalExpr(Scanner.Token[] tokens) throws SijappException {    // Create token vector    Vector t = new Vector();    for (int i = 0; i < tokens.length; i++) {      t.add(tokens[i]);    }    main: while(true) {      // T_EXPR_PRS_LEFT T_BOOL T_EXPR_PRS_RIGHT      for (int i = 0; i < t.size()-2; i++) {        Scanner.Token t1 = (Scanner.Token) t.get(i);        Scanner.Token t2 = (Scanner.Token) t.get(i+1);        Scanner.Token t3 = (Scanner.Token) t.get(i+2);        if ((t1.getType() == Scanner.Token.T_EXPR_PRS_LEFT) && (t2.getType() == Scanner.Token.T_BOOL) && (t3.getType() == Scanner.Token.T_EXPR_PRS_RIGHT)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, t2);          continue main;        }      }      // T_IDENT/T_STRING/T_EXPR_DEF T_EXPR_EQ T_IDENT/T_STRING/T_EXPR_DEF      for (int i = 0; i < t.size()-2; i++) {        Scanner.Token t1 = (Scanner.Token) t.get(i);        Scanner.Token t2 = (Scanner.Token) t.get(i+1);        Scanner.Token t3 = (Scanner.Token) t.get(i+2);        if ((t1.getType() == Scanner.Token.T_IDENT) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_IDENT)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          String left = (String) this.localDefines.get(t1.getValue());          String right = (String) this.localDefines.get(t3.getValue());          if (((left == null) && (right != null)) || ((left != null) && (right == null))) {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(false)));            continue main;          }          else if ((left == null) && (right == null)) {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(true)));            continue main;          }          else {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(left.equals(right))));            continue main;          }        }        else if ((t1.getType() == Scanner.Token.T_IDENT) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_STRING)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          String left = (String) this.localDefines.get(t1.getValue());          String right = (String) t3.getValue();          if (left == null) {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(false)));            continue main;          }          else {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(left.equals(right))));            continue main;          }        }        else if ((t1.getType() == Scanner.Token.T_IDENT) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_EXPR_DEF)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(this.localDefines.containsKey(t1.getValue()))));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_STRING) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_IDENT)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          String right = (String) this.localDefines.get(t1.getValue());          String left = (String) t1.getValue();          if (left == null) {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(false)));            continue main;          }          else {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(left.equals(right))));            continue main;          }        }        else if ((t1.getType() == Scanner.Token.T_STRING) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_STRING)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          String left = (String) t1.getValue();          String right = (String) t3.getValue();          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(left.equals(right))));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_STRING) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_EXPR_DEF)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(true)));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_EXPR_DEF) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_IDENT)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(this.localDefines.containsKey(t3.getValue()))));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_EXPR_DEF) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_STRING)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(true)));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_EXPR_DEF) && (t2.getType() == Scanner.Token.T_EXPR_EQ) && (t3.getType() == Scanner.Token.T_EXPR_DEF)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(true)));          continue main;        }      }      // T_IDENT/T_STRING/T_EXPR_DEF T_EXPR_NEQ T_IDENT/T_STRING/T_EXPR_DEF      for (int i = 0; i < t.size()-2; i++) {        Scanner.Token t1 = (Scanner.Token) t.get(i);        Scanner.Token t2 = (Scanner.Token) t.get(i+1);        Scanner.Token t3 = (Scanner.Token) t.get(i+2);        if ((t1.getType() == Scanner.Token.T_IDENT) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_IDENT)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          String left = (String) this.localDefines.get(t1.getValue());          String right = (String) this.localDefines.get(t3.getValue());          if (((left == null) && (right != null)) || ((left != null) && (right == null))) {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(true)));            continue main;          }          else if ((left == null) && (right == null)) {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(false)));            continue main;          }          else {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(!left.equals(right))));            continue main;          }        }        else if ((t1.getType() == Scanner.Token.T_IDENT) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_STRING)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          String left = (String) this.localDefines.get(t1.getValue());          String right = (String) t3.getValue();          if (left == null) {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(true)));            continue main;          }          else {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(!left.equals(right))));            continue main;          }        }        else if ((t1.getType() == Scanner.Token.T_IDENT) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_EXPR_DEF)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(!this.localDefines.containsKey(t1.getValue()))));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_STRING) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_IDENT)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          String right = (String) this.localDefines.get(t1.getValue());          String left = (String) t1.getValue();          if (left == null) {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(true)));            continue main;          }          else {            t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(!left.equals(right))));            continue main;          }        }        else if ((t1.getType() == Scanner.Token.T_STRING) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_STRING)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          String left = (String) t1.getValue();          String right = (String) t3.getValue();          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(!left.equals(right))));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_STRING) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_EXPR_DEF)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(false)));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_EXPR_DEF) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_IDENT)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(!this.localDefines.containsKey(t3.getValue()))));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_EXPR_DEF) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_STRING)) {          t.remove(i+2);          t.remove(i+1);          t.remove(i);          t.add(i, new Scanner.Token(Scanner.Token.T_BOOL, new Boolean(false)));          continue main;        }        else if ((t1.getType() == Scanner.Token.T_EXPR_DEF) && (t2.getType() == Scanner.Token.T_EXPR_NEQ) && (t3.getType() == Scanner.Token.T_EXPR_DEF)) {          t.remove(i+2);          t.remove(i+1);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕一区二区三区不卡在线| 国产一区二区三区高清播放| 一区二区三区小说| 一区二区三区视频在线看| 中文字幕在线不卡一区 | 亚洲成人激情社区| 亚洲综合精品久久| 亚洲妇熟xx妇色黄| 午夜不卡在线视频| 蜜桃在线一区二区三区| 精品一区二区av| 国产精品18久久久久| 成人理论电影网| 色综合久久综合| 欧美色精品在线视频| 91精品国产综合久久久久久久| 日韩亚洲欧美在线观看| 久久日韩精品一区二区五区| 国产精品美女一区二区三区| 亚洲免费电影在线| 午夜精品成人在线| 精品一区二区三区在线观看国产| 国产不卡在线播放| 在线观看一区二区视频| 91精品国产综合久久婷婷香蕉| 日韩免费性生活视频播放| 国产清纯白嫩初高生在线观看91 | 亚洲国产综合在线| 日韩在线一区二区三区| 国产在线日韩欧美| fc2成人免费人成在线观看播放| 欧美在线视频全部完| 日韩欧美国产三级电影视频| 欧美激情一区三区| 亚洲图片欧美色图| 国产伦理精品不卡| 色偷偷一区二区三区| 7777精品伊人久久久大香线蕉完整版| 久久久影视传媒| 一区二区三区不卡在线观看 | 日韩一级视频免费观看在线| 国产欧美va欧美不卡在线| 亚洲自拍另类综合| 韩国v欧美v日本v亚洲v| 日本韩国一区二区三区视频| 日韩免费在线观看| 玉足女爽爽91| 国产一区二区三区久久久| 在线视频国内一区二区| 久久久久久免费| 亚洲午夜视频在线| 国产成人av一区| 欧美在线free| 国产精品第五页| 免费在线观看一区二区三区| 97久久超碰国产精品电影| 日韩一区二区三区在线视频| 亚洲三级在线免费观看| 国产一区二区精品久久| 欧美色窝79yyyycom| 欧美激情资源网| 精品一区二区三区在线播放| 欧美性猛片aaaaaaa做受| 国产蜜臀av在线一区二区三区| 日韩1区2区日韩1区2区| 色哟哟国产精品免费观看| 国产日韩欧美精品在线| 日本强好片久久久久久aaa| 色婷婷av一区| 国产精品久久久久久久裸模| 国精品**一区二区三区在线蜜桃| 欧美亚洲日本国产| 国产精品久久久久毛片软件| 精品伊人久久久久7777人| 欧美日韩久久久久久| 亚洲免费资源在线播放| 成人一级片在线观看| 亚洲精品在线观| 免费成人在线影院| 欧美日韩国产美女| 一区二区激情视频| 91网址在线看| 中文字幕亚洲一区二区va在线| 国产高清一区日本| 2021国产精品久久精品| 另类小说图片综合网| 69久久99精品久久久久婷婷 | 国产在线精品免费| 欧美一二三区在线| 男女性色大片免费观看一区二区 | 国产亚洲成aⅴ人片在线观看| 久久精品国产网站| 日韩欧美在线网站| 日本不卡视频在线| 91精品国产综合久久国产大片| 午夜精品123| 69堂国产成人免费视频| 日韩电影在线一区| 日韩午夜激情免费电影| 麻豆精品在线观看| 精品少妇一区二区三区| 另类小说视频一区二区| 精品精品国产高清一毛片一天堂| 日本欧美大码aⅴ在线播放| 91精品国产麻豆国产自产在线| 日韩av中文字幕一区二区| 欧美一区二区三区日韩视频| 久久99热这里只有精品| 日韩精品最新网址| 国产成人精品影视| 国产精品国产自产拍高清av| 色综合久久天天综合网| 一卡二卡欧美日韩| 欧美人成免费网站| 美女免费视频一区| 久久久久久久久久久黄色| 高清日韩电视剧大全免费| 中文字幕日韩一区| 欧美系列亚洲系列| 美女网站色91| 欧美韩国日本一区| 色天天综合久久久久综合片| 日日摸夜夜添夜夜添国产精品| 日韩欧美在线观看一区二区三区| 国产精品一二三区在线| 亚洲欧美自拍偷拍色图| 欧美日韩国产精品成人| 久久国产精品99精品国产| 亚洲国产精品成人综合| 在线观看国产91| 蜜臂av日日欢夜夜爽一区| 国产欧美久久久精品影院| 91影视在线播放| 日韩在线一区二区三区| 国产午夜精品一区二区三区视频 | 91精选在线观看| 国产乱子伦视频一区二区三区| 国产精品激情偷乱一区二区∴| 欧美色成人综合| 国产最新精品精品你懂的| 亚洲精品一二三| 精品国产一区二区三区不卡| 九色综合国产一区二区三区| 久久蜜桃av一区精品变态类天堂| 成人动漫一区二区在线| 亚洲一级二级三级| 国产亚洲一区二区三区四区| 色噜噜偷拍精品综合在线| 免费观看91视频大全| 中文字幕一区在线观看视频| 欧美一区二区三区在线| eeuss鲁一区二区三区| 蜜臂av日日欢夜夜爽一区| 国产精品伦理在线| 日韩欧美一二三四区| 97久久人人超碰| 精品亚洲免费视频| 一区二区三区蜜桃网| 久久婷婷综合激情| 欧美精品在线视频| www.成人网.com| 精品系列免费在线观看| 一区二区三区四区五区视频在线观看 | 国产又黄又大久久| 亚洲资源在线观看| 国产精品伦理一区二区| 91麻豆精品国产91久久久久久久久| 国产成人激情av| 老司机精品视频导航| 宅男在线国产精品| 国产成人av电影在线播放| 精品一区二区三区视频在线观看| 中文字幕一区二区三区四区不卡 | 国产精品久久久久久福利一牛影视 | 精品久久久久久久久久久久久久久 | 久久久天堂av| 91精品国产色综合久久不卡蜜臀 | 亚洲另类色综合网站| 国产欧美日韩综合精品一区二区| 欧美一级在线观看| 精品视频一区二区三区免费| 91麻豆免费观看| 成人午夜在线视频| 国产成人精品亚洲午夜麻豆| 卡一卡二国产精品| 青青草国产精品97视觉盛宴| 午夜精品一区二区三区免费视频| 亚洲人xxxx| 中文字幕亚洲电影| 国产精品的网站| 亚洲国产精品ⅴa在线观看| 久久婷婷一区二区三区| 精品成人一区二区三区| 日韩欧美一区二区三区在线| 欧美高清www午色夜在线视频| 欧美日韩久久久| 欧美浪妇xxxx高跟鞋交| 欧美日韩国产综合一区二区三区| 在线观看日韩av先锋影音电影院| 色综合中文字幕国产 |