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

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

?? xqparser.java

?? A framework written in Java for implementing high-level and dynamic languages, compiling them into J
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
  static final int ELEMENT_TOKEN = 251; // 'element' followed by '{' or alpha  static final int ATTRIBUTE_TOKEN = 252;// 'attribute' followed by '{' or alpha  static final int TEXT_TOKEN = 253; // 'text' followed by '{'  static final int COMMENT_TOKEN = 254; // 'text' followed by '{'  static final int PI_TOKEN = 255; // 'processing-instruction' followed by '{' or alpha  static final int DOCUMENT_TOKEN = 256; // ;document' followed by '{'    private int saveToken;  private Object saveValue;  public void mark ()    throws java.io.IOException  {    super.mark();    saveToken = curToken;    saveValue = curValue;  }  public void reset()    throws java.io.IOException  {    curToken = saveToken;    curValue = saveValue;    super.reset();  }  private int setToken (int token, int width)  {    curToken = token;    curLine = port.getLineNumber() + 1;    curColumn = port.getColumnNumber() + 1 - width;    return token;  }  void checkSeparator (char ch)  {    if (XName.isNameStart(ch))      error('e', "missing separator", "XPST0003");  }  int getRawToken()      throws java.io.IOException, SyntaxException  {    int next;    for (;;)      {	next = read();	if (next < 0)	  return setToken(EOF_TOKEN, 0);	if (next == '\n' || next == '\r')	  {	    if (nesting <= 0)	      return setToken(EOL_TOKEN, 0);	  }	else if (next == '(')	  {	    if (checkNext(':'))	      skipComment();            else if (checkNext('#'))              return setToken(PRAGMA_START_TOKEN, 2);	    else	      return setToken('(', 1);	  }	else if (next == '{')	  {	    if (! checkNext('-'))	      return setToken('{', 1);	    next = read();	    if (next != '-')	      {		// FIXME backup 2 chars. Can fix using special token for '{-'.		unread();		unread();		return setToken('{', 1);	      }	    skipOldComment();	  }	else if (next != ' ' && next != '\t')	  break;      }    tokenBufferLength = 0;    curLine = port.getLineNumber() + 1;    curColumn = port.getColumnNumber();    char ch = (char) next;    switch (ch)      {      case ')':  case '[':  case ']':  case '}':      case '$':  case '@':  case ',':  case '?':  case ';':	break;      case ':':	if (checkNext('='))	  ch = COLON_EQUAL_TOKEN;	else if (checkNext(':'))	  ch = COLON_COLON_TOKEN;	break;      case '|':	ch = OP_UNION;	break;      case '*':	ch = OP_MUL;	break;      case '+':	ch = OP_ADD;	break;      case '-':	ch = OP_SUB;	break;      case '!':	if (checkNext('='))	  ch = OP_NEQ;	break;      case '/':	if (checkNext('/'))	  ch = SLASHSLASH_TOKEN;	break;      case '=':	if (checkNext('>'))	  ch = ARROW_TOKEN;	ch = OP_EQU;	break;      case '>':	ch = checkNext('=') ? (char) OP_GEQ	  : checkNext('>') ? (char) OP_GRTGRT : (char) OP_GRT;	break;      case '<':	ch = checkNext('=') ? (char) OP_LEQ	  : checkNext('<') ? (char) OP_LSSLSS : (char) OP_LSS;	break;      case '\'':  case '\"':	char saveReadState = pushNesting ((char) next);	for (;;)	  {	    next = read();	    if (next < 0)	      eofError("unexpected end-of-file in string starting here");	    if (next == '&')	      {		parseEntityOrCharRef();		continue;	      }	    else if (ch == next)	      {		next = read ();		if (ch != next)		  {		    unread(next);		    break;		  }	      }	    tokenBufferAppend((char) next);	  }	popNesting(saveReadState);	ch = STRING_TOKEN;	break;      default:	if (Character.isDigit(ch)            || (ch == '.' && Character.isDigit((char) peek())))	  {	    boolean seenDot = ch == '.';	    for (;; )	      {		tokenBufferAppend(ch);		next = read();		if (next < 0)		  break;		ch = (char) next;		if (ch == '.')		  {		    if (seenDot)  break;		    seenDot = true;		  }		else if (! Character.isDigit(ch))		  break;	      }	    if (next == 'e' || next == 'E')	      {		tokenBufferAppend((char) next);		next = read();		if (next == '+' || next == '-')		  {		    tokenBufferAppend((char) next);		    next = read();		  }		int expDigits = 0;		for (;;)		  {		    if (next < 0)		      break;		    ch = (char) next;		    if (! Character.isDigit(ch))		      {                        checkSeparator(ch);			unread();			break;		      }		    tokenBufferAppend(ch);		    next = read();		    expDigits++;		  }		if (expDigits == 0)		  error('e', "no digits following exponent", "XPST0003");		ch = DOUBLE_TOKEN;	      }	    else	      {		ch = seenDot ? DECIMAL_TOKEN : INTEGER_TOKEN;		if (next >= 0)                  {                    checkSeparator((char) next);                    unread(next);                  }	      }	  }        else if (ch == '.')          {            if (checkNext('.'))              ch = DOTDOT_TOKEN;	    break;          }	else if (XName.isNameStart(ch))	  {	    for (;;)	      {		tokenBufferAppend(ch);		next = read();		ch = (char) next;		if (! XName.isNamePart(ch))		  break;	      }	    if (next < 0)	      ch = NCNAME_TOKEN;	    else	      {		if (next != ':')		    ch = NCNAME_TOKEN;		else		  {		    next = read();		    if (next < 0)		      eofError("unexpected end-of-file after NAME ':'");		    ch = (char) next;		    if (XName.isNameStart(ch))		      {			tokenBufferAppend(':');			for (;;)			  {			    tokenBufferAppend(ch);			    next = read();			    ch = (char) next;			    if (! XName.isNamePart(ch))			      break;			  }			ch = QNAME_TOKEN;		      }		    else if (ch == '=')		      {			unread(ch);			ch = NCNAME_TOKEN;		      }		    else		      ch = NCNAME_COLON_TOKEN;		  }		unread(next);	      }	  }	else if (ch >= ' ' && ch < 127)	  syntaxError("invalid character '"+ch+'\'');	else	  syntaxError("invalid character '\\u"+Integer.toHexString(ch)+'\'');      }    curToken = ch;    return ch;  }  /** Scan until a given delimiter.   * On success, text upto the delimiter is in then tokenBuffer (with   * tokenBufferLength marking its length); the delimiter is not included.   */  public void getDelimited(String delimiter)      throws java.io.IOException, SyntaxException  {    tokenBufferLength = 0;    int dlen = delimiter.length();    char last = delimiter.charAt(dlen-1);    for (;;)      {	int ch = read();	if (ch < 0)	  eofError("unexpected end-of-file looking for '"+delimiter+'\'');	int dstart, j;	// Look for a match for the last delimiter character.	if (ch == last	    && (dstart = tokenBufferLength - (j = dlen - 1)) >= 0)	  {	    // Check that the initial part of the delimiter has also been seen.	    do	      {		if (j == 0)		  {		    tokenBufferLength = dstart;		    return;		  }		j--;	      }	    while (tokenBuffer[dstart+j] == delimiter.charAt(j));	  }	tokenBufferAppend((char) ch);      }  }  public void appendNamedEntity(String name)  {    name = name.intern();    char ch = '?';    if (name == "lt")      ch = '<';    else if (name == "gt")      ch = '>';    else if (name == "amp")      ch = '&';    else if (name == "quot")      ch = '"';    else if (name == "apos")      ch = '\'';    else      error("unknown enity reference: '"+name+"'");    tokenBufferAppend(ch);  }  boolean match (String word1, String word2, boolean force)      throws java.io.IOException, SyntaxException  {    if (match(word1))      {        mark();        getRawToken();        if (match(word2))          {            reset();            getRawToken();            return true;          }        reset();        if (force)          {            error('e', "'"+word1+"' must be followed by '"+word2+"'",                  "XPST0003");            return true;          }      }    return false;  }  /** Return the current token, assuming it is in operator context.   * Resolve NCNAME_TOKEN (identifier) to 'and', 'or', 'div', etc.   */  int peekOperator()      throws java.io.IOException, SyntaxException  {    while (curToken == EOL_TOKEN)      {	if (nesting == 0)	  return EOL_TOKEN;	getRawToken();      }    if (curToken == NCNAME_TOKEN)      {	int len = tokenBufferLength;        char c1, c2, c3;        switch (len)          {          case 2:            c1 = tokenBuffer[0];            c2 = tokenBuffer[1];            if (c1 == 'o' && c2 == 'r')              curToken = OP_OR;            else if (c1 == 't' && c2 == 'o')              curToken = OP_RANGE_TO;            else if (c1 == 'i' && c2 == 's')              curToken = OP_IS;            else if (c1 == 'e' && c2 == 'q')              curToken = OP_EQ;            else if (c1 == 'n' && c2 == 'e')              curToken = OP_NE;            else if (c1 == 'g')              {                if (c2 == 'e')  curToken = OP_GE;                else if (c2 == 't')  curToken = OP_GT;              }            else if (c1 == 'l')              {                if (c2 == 'e')  curToken = OP_LE;                else if (c2 == 't')  curToken = OP_LT;              }            break;          case 3:            c1 = tokenBuffer[0];            c2 = tokenBuffer[1];            c3 = tokenBuffer[2];            if (c1 == 'a')              {                if (c2 == 'n' && c3 == 'd')                  curToken = OP_AND;              }            else if (c1 == 'm') {              if (c2 == 'u' && c3 == 'l')                curToken = OP_MUL;              if (c2 == 'o' && c3 == 'd')                curToken = OP_MOD;            }            else if (c1 == 'd') {              if (c2 == 'i' && c3 == 'v')                curToken = OP_DIV;            }            break;          case 4:            if (match("idiv"))              curToken = OP_IDIV;            else if (match("cast", "as", true))              curToken = OP_CAST_AS;            break;          case 5:            if (match("where"))              curToken = OP_WHERE;            else if (match("isnot"))              curToken = OP_ISNOT;            else if (match("union"))              curToken = OP_UNION;            else if (match("treat", "as", true))              curToken = OP_TREAT_AS;            break;          case 6:            if (match("except"))              curToken = OP_EXCEPT;            break;          case 8:            if (match("instance", "of", true))              curToken = OP_INSTANCEOF;            else if (match("castable", "as", true))              curToken = OP_CASTABLE_AS;            break;          case 9:            if (match("intersect"))              curToken = OP_INTERSECT;            break;          case 10:            if (match("instanceof")) // obsolete              {                warnOldVersion("use 'instanceof of' (two words) instead of 'instanceof'");                curToken = OP_INSTANCEOF;              }            break;          default:            break;          }      }    return curToken;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91在线国产观看| 欧美三级电影网站| 日本高清视频一区二区| 日韩一区二区三区免费看| 国产农村妇女毛片精品久久麻豆| 亚洲激情网站免费观看| 国产成人综合在线播放| 欧美一级电影网站| 亚洲成av人片在www色猫咪| 国产成人午夜高潮毛片| 3d动漫精品啪啪| 亚洲女同女同女同女同女同69| 狠狠色狠狠色综合日日91app| 在线免费av一区| 综合久久久久综合| 国产a久久麻豆| 久久久久国产一区二区三区四区| 日韩高清一区二区| 欧美日韩日本视频| 一区二区三区资源| 91视频精品在这里| 综合久久久久久| 不卡大黄网站免费看| ww亚洲ww在线观看国产| 男人的j进女人的j一区| 这里只有精品电影| 青青草91视频| 91精品国产欧美一区二区18| 午夜精品爽啪视频| 欧美日韩亚洲不卡| 亚洲妇女屁股眼交7| 在线精品视频一区二区| 一区二区三区在线免费播放| 在线观看日韩国产| 日欧美一区二区| 8v天堂国产在线一区二区| 日韩 欧美一区二区三区| 久久99九九99精品| 日韩欧美亚洲国产精品字幕久久久| 亚洲美女视频在线| 97久久久精品综合88久久| 国产精品久久久久一区| 97久久精品人人做人人爽50路| 中文字幕一区二区三区不卡 | 国产欧美日韩综合精品一区二区| 狠狠色狠狠色合久久伊人| 久久日一线二线三线suv| 国产精品88888| 中文天堂在线一区| 91免费在线看| 欧美中文字幕一二三区视频| 一区二区三区精品在线| 欧美日韩的一区二区| 久久超碰97中文字幕| 久久久久国产精品麻豆ai换脸 | 久久久精品日韩欧美| 高清beeg欧美| 国产欧美在线观看一区| 国产不卡视频在线播放| 亚洲欧美激情插 | 99re66热这里只有精品3直播| 亚洲已满18点击进入久久| 日韩欧美一二区| 成人a免费在线看| 一区二区三区中文免费| 欧美一区二区三区免费在线看| 国内偷窥港台综合视频在线播放| 亚洲色欲色欲www| 欧美一区二区三区思思人| 成人午夜视频在线| 日韩精品色哟哟| 欧美国产精品v| 欧美一卡在线观看| 成年人午夜久久久| 男人操女人的视频在线观看欧美| 国产精品嫩草影院av蜜臀| 91麻豆精品国产自产在线观看一区| 国产一区二区三区蝌蚪| 亚洲电影欧美电影有声小说| 日本一区二区免费在线| 欧美精品在线观看播放| 99v久久综合狠狠综合久久| 久久国产精品露脸对白| 亚洲一区自拍偷拍| 亚洲一二三区在线观看| 国产一区二区视频在线播放| 国产精品久久午夜| 亚洲欧美韩国综合色| 国产在线精品视频| 欧美一区二区三级| 欧美日韩一区 二区 三区 久久精品| 国产精品嫩草影院av蜜臀| 欧美影视一区二区三区| 欧美精选一区二区| 在线播放亚洲一区| 欧美日本一区二区| 精品日韩一区二区| 久久久精品影视| 亚洲同性gay激情无套| 亚洲电影中文字幕在线观看| 蜜臀精品久久久久久蜜臀| 国产一区二区三区免费看| 99久久er热在这里只有精品66| 色婷婷av久久久久久久| 欧美美女激情18p| 国产午夜精品久久| 亚洲免费观看高清完整版在线| 亚洲国产成人高清精品| 精品在线免费观看| 9人人澡人人爽人人精品| 欧美精品日韩一本| 欧美激情中文字幕| 亚洲综合图片区| 精品一区二区三区免费视频| 成人国产精品免费观看视频| 欧美日韩亚洲综合在线 | 亚洲精选免费视频| 日韩高清一区二区| 成人久久18免费网站麻豆| 欧美日韩大陆一区二区| 国产欧美日韩卡一| 五月天中文字幕一区二区| 懂色av中文一区二区三区| 欧美精品自拍偷拍动漫精品| 久久精品视频在线免费观看| 中文字幕中文字幕一区| 专区另类欧美日韩| 狠狠色丁香久久婷婷综合丁香| 91丝袜美腿高跟国产极品老师| 3d动漫精品啪啪1区2区免费| 国产精品国产三级国产aⅴ中文| 丝袜美腿亚洲综合| 色综合久久天天综合网| 国产亚洲精品资源在线26u| 五月婷婷欧美视频| 91麻豆6部合集magnet| 精品粉嫩aⅴ一区二区三区四区| 亚洲一区在线视频| eeuss鲁片一区二区三区 | 4438x亚洲最大成人网| 国产精品久久久久久久久快鸭 | 精品一区二区影视| 欧美视频三区在线播放| 最新热久久免费视频| 国产麻豆视频精品| 日韩一区二区三区四区| 亚洲一区精品在线| 91看片淫黄大片一级在线观看| 久久精品在线免费观看| 老司机免费视频一区二区| 欧美日韩亚洲另类| 亚洲一区二区三区自拍| 91在线无精精品入口| 欧美不卡视频一区| 午夜欧美视频在线观看| 精品视频一区二区三区免费| 亚洲免费资源在线播放| eeuss影院一区二区三区| 国产欧美日韩在线视频| 国产乱人伦偷精品视频不卡 | 日本一区二区三区国色天香| 久久国产人妖系列| 精品欧美一区二区三区精品久久| 爽好久久久欧美精品| 777xxx欧美| 日韩—二三区免费观看av| 欧美一区二区精品| 麻豆一区二区在线| 日韩女优视频免费观看| 捆绑变态av一区二区三区 | 国产精品视频线看| 成人黄色国产精品网站大全在线免费观看 | 日韩在线一区二区三区| 91麻豆精品国产| 毛片av中文字幕一区二区| 日韩欧美中文一区| 极品销魂美女一区二区三区| 2欧美一区二区三区在线观看视频| 久久国产麻豆精品| 国产喷白浆一区二区三区| 91网站在线播放| 亚洲综合色成人| 91精品国产黑色紧身裤美女| 久久国产尿小便嘘嘘| 国产三级精品三级在线专区| voyeur盗摄精品| 亚洲国产日日夜夜| 337p亚洲精品色噜噜噜| 国产一区在线观看视频| 国产精品久久久99| 欧美影院精品一区| 黑人巨大精品欧美一区| 欧美激情一区二区三区不卡| 91福利国产成人精品照片| 五月激情丁香一区二区三区| 久久精品夜色噜噜亚洲aⅴ| www.日本不卡| 日韩中文字幕不卡| 国产精品乱人伦中文| 欧美高清视频在线高清观看mv色露露十八|