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

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

?? contentmodel.java

?? JAVA的一些源碼 JAVA2 STANDARD EDITION DEVELOPMENT KIT 5.0
?? JAVA
字號:
/* * @(#)ContentModel.java	1.11 04/05/05 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package javax.swing.text.html.parser;import java.util.Vector;import java.util.Enumeration;import java.io.*;/** * A representation of a content model. A content model is * basically a restricted BNF expression. It is restricted in * the sense that it must be deterministic. This means that you * don't have to represent it as a finite state automata.<p> * See Annex H on page 556 of the SGML handbook for more information. * * @author   Arthur van Hoff * @version  1.11,05/05/04 * */public final class ContentModel implements Serializable {    /**     * Type. Either '*', '?', '+', ',', '|', '&'.     */    public int type;    /**     * The content. Either an Element or a ContentModel.     */    public Object content;    /**     * The next content model (in a ',', '|' or '&' expression).     */    public ContentModel next;    public ContentModel() {    }    /**     * Create a content model for an element.     */    public ContentModel(Element content) {	this(0, content, null);    }    /**     * Create a content model of a particular type.     */    public ContentModel(int type, ContentModel content) {	this(type, content, null);    }    /**     * Create a content model of a particular type.     */    public ContentModel(int type, Object content, ContentModel next) {	this.type = type;	this.content = content;	this.next = next;    }    /**     * Return true if the content model could     * match an empty input stream.     */    public boolean empty() {	switch (type) {	  case '*':	  case '?':	    return true;	  case '+':	  case '|':	    for (ContentModel m = (ContentModel)content ; m != null ; m = m.next) {		if (m.empty()) {		    return true;		}	    }	    return false;	  case ',':	  case '&':	    for (ContentModel m = (ContentModel)content ; m != null ; m = m.next) {		if (!m.empty()) {		    return false;		}	    }	    return true;	  default:	    return false;	}    }    /**     * Update elemVec with the list of elements that are     * part of the this contentModel.     */     public void getElements(Vector<Element> elemVec) {	 switch (type) {	 case '*':	 case '?':	 case '+':	     ((ContentModel)content).getElements(elemVec);	     break;	 case ',':	 case '|':	 case '&':	     for (ContentModel m=(ContentModel)content; m != null; m=m.next){		 m.getElements(elemVec);	     }	     break;	 default:	     elemVec.addElement((Element)content);	 }     }     private boolean valSet[];     private boolean val[];     // A cache used by first().  This cache was found to speed parsing     // by about 10% (based on measurements of the 4-12 code base after     // buffering was fixed).    /**     * Return true if the token could potentially be the     * first token in the input stream.     */    public boolean first(Object token) {	switch (type) {	  case '*':	  case '?':	  case '+':	    return ((ContentModel)content).first(token);	  case ',':	    for (ContentModel m = (ContentModel)content ; m != null ; m = m.next) {		if (m.first(token)) {		    return true;		}		if (!m.empty()) {		    return false;		}	    }	    return false;	  case '|':	  case '&': {	    Element e = (Element) token;	    if (valSet == null) {		valSet = new boolean[Element.maxIndex + 1];		val = new boolean[Element.maxIndex + 1];		// All Element instances are created before this ever executes	    }	    if (valSet[e.index]) {		return val[e.index];	    }	    for (ContentModel m = (ContentModel)content ; m != null ; m = m.next) {		if (m.first(token)) {		    val[e.index] = true;		    break;		}	    }	    valSet[e.index] = true;	    return val[e.index];	  }	  default:	    return (content == token);            // PENDING: refer to comment in ContentModelState/*              if (content == token) {                  return true;              }              Element e = (Element)content;              if (e.omitStart() && e.content != null) {                  return e.content.first(token);              }              return false;*/	}    }    /**     * Return the element that must be next.     */    public Element first() {	switch (type) {	  case '&':	  case '|':	  case '*':	  case '?':	    return null;	  case '+':	  case ',':	    return ((ContentModel)content).first();	  default:	    return (Element)content;	}    }    /**     * Convert to a string.     */    public String toString() {	switch (type) {	  case '*':	    return content + "*";	  case '?':	    return content + "?";	  case '+':	    return content + "+";	  case ',':	  case '|':	  case '&':	    char data[] = {' ', (char)type, ' '};	    String str = "";	    for (ContentModel m = (ContentModel)content ; m != null ; m = m.next) {		str = str + m;		if (m.next != null) {		    str += new String(data);		}	    }	    return "(" + str + ")";	  default:	    return content.toString();	}    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一级黄色大片| 国产精品午夜在线观看| 久久一区二区视频| 最新国产精品久久精品| 午夜精品一区在线观看| 国产成人精品免费网站| 欧美人xxxx| 中文字幕亚洲综合久久菠萝蜜| 肉色丝袜一区二区| 91丨九色丨国产丨porny| 欧美一区二区三区免费视频| 亚洲精品免费视频| 成人综合婷婷国产精品久久| 欧美一区二区精品| 亚洲图片欧美色图| 99久久国产综合精品麻豆| 精品嫩草影院久久| 免费高清视频精品| 欧美三日本三级三级在线播放| 欧美国产日韩a欧美在线观看| 麻豆传媒一区二区三区| 欧美色老头old∨ideo| 夜夜精品视频一区二区 | 中文字幕第一区二区| 日本不卡视频在线| 欧美色图片你懂的| 综合分类小说区另类春色亚洲小说欧美| 韩国成人精品a∨在线观看| 911精品国产一区二区在线| 亚洲国产欧美日韩另类综合| 91麻豆国产精品久久| 成人免费在线视频| av午夜一区麻豆| 中文字幕在线观看一区二区| 国产iv一区二区三区| 久久久久久久久久久久久久久99 | 久久综合九色综合欧美亚洲| 亚洲国产三级在线| 欧美精品v日韩精品v韩国精品v| 亚洲一级不卡视频| 欧美日韩精品高清| 日韩av在线播放中文字幕| 欧美人与性动xxxx| 蜜桃一区二区三区在线| 精品理论电影在线观看| 久草这里只有精品视频| 精品国产免费久久| 国产高清精品久久久久| 中文字幕在线视频一区| 一本久道久久综合中文字幕 | 欧美日韩三级视频| 美女网站在线免费欧美精品| xf在线a精品一区二区视频网站| 国产福利精品一区| 成人欧美一区二区三区白人 | 国产亚洲成aⅴ人片在线观看| 国产传媒欧美日韩成人| 1区2区3区国产精品| 欧美在线影院一区二区| 青青草伊人久久| 欧美国产一区视频在线观看| 色欧美片视频在线观看| 美女精品自拍一二三四| 欧美激情中文不卡| 欧美色爱综合网| 国产激情精品久久久第一区二区| ...av二区三区久久精品| 欧美疯狂做受xxxx富婆| 国产精品2024| 亚洲va国产天堂va久久en| 久久美女艺术照精彩视频福利播放 | 免费欧美日韩国产三级电影| 欧美激情综合网| 欧美巨大另类极品videosbest| 国产一区二区美女| 亚洲国产成人av网| 久久伊99综合婷婷久久伊| 欧美在线免费播放| 国产麻豆视频一区二区| 午夜视频一区二区| 国产欧美综合色| 51精品国自产在线| 91亚洲男人天堂| 国产精品夜夜嗨| 日韩精品乱码av一区二区| 中文字幕一区二区三区不卡 | 亚洲日本在线观看| ww久久中文字幕| 欧美日韩精品一区二区三区四区| 国产成人在线观看免费网站| 日韩av午夜在线观看| 亚洲乱码国产乱码精品精小说| 精品国产一区a| 欧美日韩免费电影| 色婷婷久久一区二区三区麻豆| 国产真实乱偷精品视频免| 午夜电影网一区| 亚洲精品国产第一综合99久久| 亚洲国产高清aⅴ视频| 欧美本精品男人aⅴ天堂| 欧美酷刑日本凌虐凌虐| 在线视频国内自拍亚洲视频| 不卡在线观看av| 国产v综合v亚洲欧| 国产一区二区三区蝌蚪| 九九国产精品视频| 久久成人羞羞网站| 奇米777欧美一区二区| 五月婷婷欧美视频| 亚洲国产成人av好男人在线观看| 亚洲美女电影在线| 一区二区三区欧美日韩| 亚洲男人的天堂在线aⅴ视频| 国产精品色一区二区三区| 国产欧美一区二区在线| 日本一区二区三区电影| 国产日本欧洲亚洲| 欧美韩日一区二区三区| 国产精品久久久久三级| 国产精品久久久久永久免费观看| 国产片一区二区| 亚洲色图20p| 亚洲一区二区三区小说| 五月天欧美精品| 免费在线观看不卡| 精品一区二区三区影院在线午夜| 久久99精品国产91久久来源| 国产一区二区三区四| 成人免费视频视频在线观看免费| www.在线欧美| 欧美亚洲综合另类| 在线不卡a资源高清| 精品欧美一区二区久久| 国产精品污网站| 樱花草国产18久久久久| 日韩影视精彩在线| 国产一区二区三区黄视频| 不卡视频在线观看| 欧美午夜一区二区| 日韩女优电影在线观看| 国产欧美日韩在线| 亚洲激情五月婷婷| 日本不卡在线视频| 国产精品一区二区在线播放| 99re在线精品| 69p69国产精品| 日本一二三不卡| 亚洲国产综合视频在线观看| 久久99精品久久久久久动态图| 北岛玲一区二区三区四区| 欧美影视一区在线| 精品国产一二三| 亚洲线精品一区二区三区八戒| 久久国产精品区| 91精品福利在线| 精品99999| 一级日本不卡的影视| 国内精品免费**视频| 91久久精品午夜一区二区| 欧美xxxxxxxxx| 亚洲综合一二区| 国产成人精品综合在线观看| 欧美三级乱人伦电影| 亚洲国产精品精华液2区45| 日本不卡的三区四区五区| 99精品国产99久久久久久白柏| 欧美一级理论性理论a| 亚洲色图一区二区三区| 精品一区二区三区香蕉蜜桃| 欧美亚洲一区三区| 国产精品精品国产色婷婷| 久久精品国产999大香线蕉| 日本高清无吗v一区| 久久久精品黄色| 美腿丝袜一区二区三区| 在线观看91精品国产入口| 欧美经典一区二区| 老司机午夜精品| 欧美人狂配大交3d怪物一区| 亚洲日本一区二区| www.成人在线| 久久久精品2019中文字幕之3| 奇米精品一区二区三区在线观看一| 一本久道中文字幕精品亚洲嫩| 国产精品无人区| 国产成人av一区二区三区在线| 精品免费视频一区二区| 男男视频亚洲欧美| 欧美丰满嫩嫩电影| 亚洲国产欧美在线| 欧美亚洲综合网| 亚洲成人在线观看视频| 欧美在线观看18| 一区二区三区91| 色婷婷久久久久swag精品 | 在线91免费看| 日韩中文字幕91| 日韩一二三四区| 精品影视av免费| 久久午夜老司机|