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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tree.java

?? javac是sun公司開發(fā)人員使用java語言編寫的優(yōu)秀的工業(yè)級(jí)java編譯器
?? JAVA
?? 第 1 頁 / 共 3 頁
字號(hào):
/** * @(#)Tree.java	1.30 03/01/23 * * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package com.sun.tools.javac.v8.tree;import java.io.StringWriter;import java.io.PrintWriter;import com.sun.tools.javac.v8.util.*;import com.sun.tools.javac.v8.code.*;import com.sun.tools.javac.v8.code.Symbol.*;/** * Root class for abstract syntax tree nodes. It provides *  definitions for specific tree nodes as subclasses nested inside *  There are 40 such subclasses. * *  Each subclass is highly standardized.  It generally contains only tree *  fields for the syntactic subcomponents of the node.  Some classes that *  represent identifier uses or definitions also define a *  Symbol field that denotes the represented identifier.  Classes *  for non-local jumps also carry the jump target as a field.  The root *  class Tree itself defines fields for the tree's type and *  position.  No other fields are kept in a tree node; instead parameters *  are passed to methods accessing the node. * *  The only method defined in subclasses is `visit' which applies a *  given visitor to the tree. The actual tree processing is done by *  visitor classes in other packages. The abstract class *  Visitor, as well as an Factory interface for trees, are *  defined as inner classes in Tree. *  @see TreeMaker *  @see TreeInfo *  @see TreeTranslator *  @see Pretty */public abstract class Tree {    /**     * Toplevel nodes, of type TopLevel, representing entire source files.     */    public static final int TOPLEVEL = 1;    /**     * Import clauses, of type Import.     */    public static final int IMPORT = TOPLEVEL + 1;    /**     * Class definitions, of type ClassDef.     */    public static final int CLASSDEF = IMPORT + 1;    /**     * Method definitions, of type MethodDef.     */    public static final int METHODDEF = CLASSDEF + 1;    /**     * Variable definitions, of type VarDef.     */    public static final int VARDEF = METHODDEF + 1;    /**     * The no-op statement ";", of type Skip     */    public static final int SKIP = VARDEF + 1;    /**     * Blocks, of type Block.     */    public static final int BLOCK = SKIP + 1;    /**     * Do-while loops, of type DoLoop.     */    public static final int DOLOOP = BLOCK + 1;    /**     * While-loops, of type WhileLoop.     */    public static final int WHILELOOP = DOLOOP + 1;    /**     * For-loops, of type ForLoop.     */    public static final int FORLOOP = WHILELOOP + 1;    /**     * Labelled statements, of type Labelled.     */    public static final int LABELLED = FORLOOP + 1;    /**     * Switch statements, of type Switch.     */    public static final int SWITCH = LABELLED + 1;    /**     * Case parts in switch statements, of type Case.     */    public static final int CASE = SWITCH + 1;    /**     * Synchronized statements, of type Synchonized.     */    public static final int SYNCHRONIZED = CASE + 1;    /**     * Try statements, of type Try.     */    public static final int TRY = SYNCHRONIZED + 1;    /**     * Catch clauses in try statements, of type Catch.     */    public static final int CATCH = TRY + 1;    /**     * Conditional expressions, of type Conditional.     */    public static final int CONDEXPR = CATCH + 1;    /**     * Conditional statements, of type If.     */    public static final int IF = CONDEXPR + 1;    /**     * Expression statements, of type Exec.     */    public static final int EXEC = IF + 1;    /**     * Break statements, of type Break.     */    public static final int BREAK = EXEC + 1;    /**     * Continue statements, of type Continue.     */    public static final int CONTINUE = BREAK + 1;    /**     * Return statements, of type Return.     */    public static final int RETURN = CONTINUE + 1;    /**     * Throw statements, of type Throw.     */    public static final int THROW = RETURN + 1;    /**     * Assert statements, of type Assert.     */    public static final int ASSERT = THROW + 1;    /**     * Method invocation expressions, of type Apply.     */    public static final int APPLY = ASSERT + 1;    /**     * Class instance creation expressions, of type NewClass.     */    public static final int NEWCLASS = APPLY + 1;    /**     * Array creation expressions, of type NewArray.     */    public static final int NEWARRAY = NEWCLASS + 1;    /**     * Parenthesized subexpressions, of type Parens.     */    public static final int PARENS = NEWARRAY + 1;    /**     * Assignment expressions, of type Assign.     */    public static final int ASSIGN = PARENS + 1;    /**     * Type cast expressions, of type TypeCast.     */    public static final int TYPECAST = ASSIGN + 1;    /**     * Type test expressions, of type TypeTest.     */    public static final int TYPETEST = TYPECAST + 1;    /**     * Indexed array expressions, of type Indexed.     */    public static final int INDEXED = TYPETEST + 1;    /**     * Selections, of type Select.     */    public static final int SELECT = INDEXED + 1;    /**     * Simple identifiers, of type Ident.     */    public static final int IDENT = SELECT + 1;    /**     * Literals, of type Literal.     */    public static final int LITERAL = IDENT + 1;    /**     * Basic type identifiers, of type TypeIdent.     */    public static final int TYPEIDENT = LITERAL + 1;    /**     * Array types, of type TypeArray.     */    public static final int TYPEARRAY = TYPEIDENT + 1;    /**     * Parameterized types, of type TypeApply.     */    public static final int TYPEAPPLY = TYPEARRAY + 1;    /**     * Formal type parameters, of type TypeParameter.     */    public static final int TYPEPARAMETER = TYPEAPPLY + 1;    /**     * Error trees, of type Erroneous.     */    public static final int ERRONEOUS = TYPEPARAMETER + 1;    /**     * Unary operators, of type Unary.     */    public static final int POS = ERRONEOUS + 1;    public static final int NEG = POS + 1;    public static final int NOT = NEG + 1;    public static final int COMPL = NOT + 1;    public static final int PREINC = COMPL + 1;    public static final int PREDEC = PREINC + 1;    public static final int POSTINC = PREDEC + 1;    public static final int POSTDEC = POSTINC + 1;    /**     * unary operator for null reference checks, only used internally.     */    public static final int NULLCHK = POSTDEC + 1;    /**     * Binary operators, of type Binary.     */    public static final int OR = NULLCHK + 1;    public static final int AND = OR + 1;    public static final int BITOR = AND + 1;    public static final int BITXOR = BITOR + 1;    public static final int BITAND = BITXOR + 1;    public static final int EQ = BITAND + 1;    public static final int NE = EQ + 1;    public static final int LT = NE + 1;    public static final int GT = LT + 1;    public static final int LE = GT + 1;    public static final int GE = LE + 1;    public static final int SL = GE + 1;    public static final int SR = SL + 1;    public static final int USR = SR + 1;    public static final int PLUS = USR + 1;    public static final int MINUS = PLUS + 1;    public static final int MUL = MINUS + 1;    public static final int DIV = MUL + 1;    public static final int MOD = DIV + 1;    /**     * Assignment operators, of type Assignop.     */    public static final int BITOR_ASG = MOD + 1;    public static final int BITXOR_ASG = BITOR_ASG + 1;    public static final int BITAND_ASG = BITXOR_ASG + 1;    public static final int SL_ASG = SL + BITOR_ASG - BITOR;    public static final int SR_ASG = SL_ASG + 1;    public static final int USR_ASG = SR_ASG + 1;    public static final int PLUS_ASG = USR_ASG + 1;    public static final int MINUS_ASG = PLUS_ASG + 1;    public static final int MUL_ASG = MINUS_ASG + 1;    public static final int DIV_ASG = MUL_ASG + 1;    public static final int MOD_ASG = DIV_ASG + 1;    /**     * The offset between assignment operators and normal operators.     */    public static final int ASGOffset = BITOR_ASG - BITOR;    public int pos;    public Type type;    public int tag;    /**     * Initialize tree with given tag.     */    public Tree(int tag) {        super();        this.tag = tag;    }    /**      * Convert a tree to a pretty-printed string.      */    public String toString() {        StringWriter s = new StringWriter();        new Pretty(new PrintWriter(s), false).printExpr(this);        return s.toString();    }    /**      * An empty list of trees.      */    public static final List emptyList = new List();    /**     * Set position field and return this tree.     */    public Tree setPos(int pos) {        this.pos = pos;        return this;    }    /**      * Set type field and return this tree.      */    public Tree setType(Type type) {        this.type = type;        return this;    }    /**      * Visit this tree with a given visitor.      */    public void accept(Visitor v) {        v.visitTree(this);    }    /**      * Everything in one source file is kept in a TopLevel structure.      * @param pid              The tree representing the package clause.      * @param sourcefile       The source file name.      * @param defs             All definitions in this file.      * @param packge           The package it belongs to.      * @param namedImportScope A scope for all named imports.      * @param starImportScope  A scope for all import-on-demands.      * @param docComments      A hashtable that stores all documentation comments      *                         indexed by the tree nodes they refer to.      *                         defined only if option -s is set.      * @param endPositions     A hashtable that stores ending positions of source      *                         ranges indexed by the tree nodes they belong to.      *                         Defined only if option -Xjcov is set.      */    public static class TopLevel extends Tree {        public Tree pid;        public List defs;        public Name sourcefile;        public PackageSymbol packge;        public Scope namedImportScope;        public Scope starImportScope;        public Hashtable docComments = null;        public Hashtable endPositions = null;        public TopLevel(Tree pid, List defs, Name sourcefile,                PackageSymbol packge, Scope namedImportScope, Scope starImportScope) {            super(TOPLEVEL);            this.pid = pid;            this.defs = defs;            this.sourcefile = sourcefile;            this.packge = packge;            this.namedImportScope = namedImportScope;            this.starImportScope = starImportScope;        }        public void accept(Visitor v) {            v.visitTopLevel(this);        }    }    /**      * An import clause.      * @param qualid    The imported class(es).      */    public static class Import extends Tree {        public Tree qualid;        public Import(Tree qualid) {            super(IMPORT);            this.qualid = qualid;        }        public void accept(Visitor v) {            v.visitImport(this);        }    }    /**      * A class definition.      * @param flags class flags      * @param name the name of the class      * @param typarams formal class parameters      * @param extending the classes this class extends      * @param implementing the interfaces implemented by this class      * @param defs all variables and methods defined in this class      * @param sym the symbol      */    public static class ClassDef extends Tree {        public long flags;        public Name name;        public List typarams;        public Tree extending;        public List implementing;        public List defs;        public ClassSymbol sym;        public ClassDef(long flags, Name name, List typarams, Tree extending,                List implementing, List defs, ClassSymbol sym) {            super(CLASSDEF);            this.flags = flags;            this.name = name;            this.typarams = typarams;            this.extending = extending;            this.implementing = implementing;            this.defs = defs;            this.sym = sym;        }        public void accept(Visitor v) {            v.visitClassDef(this);        }    }    /**      * A method definition.      * @param flags method flags      * @param name method name      * @param restype type of method return value      * @param typarams type parameters      * @param params value parameters      * @param thrown exceptions thrown by this method      * @param stats statements in the method      * @param sym method symbol      */    public static class MethodDef extends Tree {        public long flags;        public Name name;        public Tree restype;        public List typarams;        public List params;        public List thrown;        public Block body;        public MethodSymbol sym;        public MethodDef(long flags, Name name, Tree restype, List typarams,                List params, List thrown, Block body, MethodSymbol sym) {            super(METHODDEF);            this.flags = flags;            this.name = name;            this.restype = restype;            this.typarams = typarams;            this.params = params;            this.thrown = thrown;            this.body = body;            this.sym = sym;        }        public void accept(Visitor v) {            v.visitMethodDef(this);        }    }    /**

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线免费观看日本欧美| 成人理论电影网| 久久久精品免费免费| 欧美综合天天夜夜久久| 国产一区不卡精品| 亚洲综合色区另类av| 久久婷婷国产综合精品青草| 在线观看网站黄不卡| 成人激情电影免费在线观看| 麻豆国产精品官网| 一区二区三区免费看视频| 久久久久久电影| 91精品国产乱| 97久久超碰国产精品电影| 精品一区二区三区免费毛片爱| 夜夜嗨av一区二区三区四季av| 中文字幕乱码日本亚洲一区二区| 日韩视频免费观看高清完整版在线观看| 91蝌蚪porny| 国产精品888| 国产在线精品免费| 免费在线观看不卡| 亚洲自拍偷拍综合| 亚洲色图在线看| 亚洲国产精品t66y| 久久综合久久综合亚洲| 9191久久久久久久久久久| 欧美亚洲一区二区在线观看| 99久久99精品久久久久久| 国产精品99久久久久久久女警| 精品在线免费视频| 免费看黄色91| 毛片av一区二区三区| 日韩—二三区免费观看av| 亚洲午夜电影网| 一区二区成人在线| 亚洲欧美另类小说视频| 中文字幕字幕中文在线中不卡视频| 国产欧美日韩在线| 国产视频在线观看一区二区三区| 久久综合九色综合欧美就去吻| 欧美成人aa大片| 欧美电影免费观看高清完整版在| 欧美一区二区视频在线观看2020 | 中文字幕一区二区三区四区不卡| 国产色婷婷亚洲99精品小说| 久久九九久久九九| 久久蜜臀精品av| 久久久www成人免费无遮挡大片| 欧美不卡在线视频| 久久亚洲综合色一区二区三区| 久久久久久久久久久久久久久99| 国产午夜精品久久| 国产精品国产精品国产专区不蜜| 国产精品传媒视频| 18涩涩午夜精品.www| 亚洲激情自拍偷拍| 亚洲一卡二卡三卡四卡| 午夜在线电影亚洲一区| 蜜臀av性久久久久蜜臀aⅴ| 日日摸夜夜添夜夜添国产精品 | 日本丶国产丶欧美色综合| 91天堂素人约啪| 欧美在线观看18| 欧美精品乱码久久久久久按摩| 日韩一级欧美一级| 久久新电视剧免费观看| 国产精品久线在线观看| 亚洲成人一区二区在线观看| 男人操女人的视频在线观看欧美| 91视频观看免费| 91在线看国产| 欧美日韩国产高清一区二区三区| 欧美一区二区精美| 久久精品亚洲精品国产欧美| 亚洲九九爱视频| 免费看欧美女人艹b| 国产精品99久久久久久久女警 | 国产精品系列在线| 亚洲欧美色一区| 美女脱光内衣内裤视频久久网站 | 日本视频免费一区| 国产成人在线看| 色久综合一二码| 日韩精品一区二区三区四区| 中文字幕的久久| 丝袜a∨在线一区二区三区不卡| 国产中文一区二区三区| 日本高清免费不卡视频| 久久久久久久综合色一本| 亚洲一区在线视频| 国产麻豆精品一区二区| 欧美性xxxxxxxx| 国产日韩欧美制服另类| 日韩精品电影一区亚洲| 成人动漫在线一区| 91精品国产色综合久久久蜜香臀| 国产精品久久久久久福利一牛影视 | 亚洲男帅同性gay1069| 蜜桃视频一区二区| 色视频成人在线观看免| 久久午夜羞羞影院免费观看| 亚洲一区影音先锋| 成人av中文字幕| 久久这里只有精品6| 日韩va亚洲va欧美va久久| av在线不卡网| 欧美大片免费久久精品三p| 亚洲蜜臀av乱码久久精品| 国产成人在线视频网址| 日韩午夜中文字幕| 一二三区精品福利视频| 99久久精品国产麻豆演员表| 久久综合九色综合欧美亚洲| 男人的j进女人的j一区| 欧美日本视频在线| 一区二区三区电影在线播| 成人午夜av在线| 久久久精品国产免大香伊 | 欧美a一区二区| 欧美无人高清视频在线观看| 欧美国产综合一区二区| 国产一区欧美日韩| 久久影院视频免费| 国产中文字幕一区| 欧美成人r级一区二区三区| 日本中文字幕一区二区视频| 欧美无砖专区一中文字| 夜夜精品浪潮av一区二区三区| 91一区二区在线观看| 欧美国产欧美综合| 国产黄人亚洲片| 久久久久亚洲蜜桃| 国产乱一区二区| 国产清纯在线一区二区www| 久久99精品久久久久久国产越南| 欧美精品一二三区| 丝袜亚洲精品中文字幕一区| 在线不卡一区二区| 午夜精品福利一区二区三区av| 欧美三级三级三级| 奇米精品一区二区三区四区| 日韩一区二区三区电影在线观看 | 国产一区在线观看麻豆| 欧美精品一区二区久久久| 国产一区二区在线影院| 精品久久久久久久人人人人传媒| 久久99精品国产| 国产拍欧美日韩视频二区| 成人国产精品免费观看动漫| 亚洲欧美日韩系列| 欧美日韩综合一区| 玖玖九九国产精品| 国产亚洲婷婷免费| 99久久精品国产精品久久| 一二三区精品视频| 日韩一区二区三区视频在线 | 亚洲欧美国产77777| 在线一区二区观看| 视频一区二区中文字幕| 日韩午夜在线观看| 国产91精品入口| 亚洲柠檬福利资源导航| 91精品婷婷国产综合久久性色| 久久99蜜桃精品| 国产精品人人做人人爽人人添 | 一本到不卡精品视频在线观看| 一区二区三区四区不卡视频| 欧美一区二区在线免费观看| 国产乱理伦片在线观看夜一区| 亚洲欧美电影一区二区| 91精品久久久久久久99蜜桃| 国产精品77777| 亚洲综合免费观看高清完整版| 日韩视频永久免费| av在线免费不卡| 免费观看在线综合| 亚洲婷婷综合久久一本伊一区| 欧美日韩美少妇| 国产精华液一区二区三区| 亚洲电影在线播放| 国产网红主播福利一区二区| 欧美三级韩国三级日本三斤| 国产一区二区三区蝌蚪| 亚洲h在线观看| 欧美国产综合一区二区| 91精品国产综合久久精品麻豆| 国产91丝袜在线18| 秋霞av亚洲一区二区三| 中文字幕一区二区三区在线不卡| 欧美一区二区在线视频| 色综合天天综合| 在线精品视频免费播放| 精品亚洲aⅴ乱码一区二区三区| 成人欧美一区二区三区1314| 欧美成人bangbros| 欧美午夜电影一区| 99久久亚洲一区二区三区青草| 老鸭窝一区二区久久精品| 亚洲乱码国产乱码精品精可以看 |