antlr-2.7.7.jar
登录
|
antlr:antlr:2.7.7
META-INF
antlr
TokenQueue.java
ParseTreeToken.java
ByteBuffer.java
ANTLRLexer.java
StringLiteralElement.java
CharQueue.java
TokenStreamRecognitionException.java
SemanticException.java
TokenRefElement.java
GrammarAnalyzer.java
ParseTree.java
Lookahead.java
debug
RuleEndElement.java
BaseAST.java
BlockContext.java
MismatchedCharException.java
HTMLCodeGenerator.java
TreeWalkerGrammar.java
WildcardElement.java
Tool.java
LexerGrammar.java
LLkParser.java
JavaCodeGeneratorPrintWriterManager.java
Makefile.in
TreeElement.java
DumpASTVisitor.java
ANTLRTokdefLexer.java
CharBuffer.java
antlr.g
ASTVisitor.java
ASTNULLType.java
ASdebug
TokenStreamRetryException.java
RuleSymbol.java
ActionTransInfo.java
CppCodeGenerator.java
OneOrMoreBlock.java
CSharpNameSpace.java
ANTLRHashString.java
TokenRangeElement.java
CommonASTWithHiddenTokens.java
LexerSharedInputState.java
TokenStreamBasicFilter.java
Alternative.java
TokenStreamIOException.java
Grammar.java
BlockEndElement.java
ParseTreeRule.java
CharStreamIOException.java
ParserSharedInputState.java
PreservingFileWriter.java
DefaultFileLineFormatter.java
CharScanner.java
ANTLRParser.java
ASTFactory.java
TokenStream.java
build
SimpleTokenManager.java
CSharpCharFormatter.java
GrammarSymbol.java
JavaCharFormatter.java
ANTLRStringBuffer.java
JavaCodeGenerator.java
TreeParser.java
FileCopyException.java
ASTIterator.java
ExceptionSpec.java
ParserGrammar.java
CppBlockFinishingInfo.java
ANTLRGrammarParseBehavior.java
TokenManager.java
ImportVocabTokenManager.java
GrammarElement.java
TokenStreamHiddenTokenFilter.java
Version.java
NoViableAltException.java
CharRangeElement.java
preprocessor
RecognitionException.java
RuleRefElement.java
ANTLRTokdefParser.java
CharFormatter.java
DefineGrammarSymbols.java
BlockWithImpliedExitPath.java
Parser.java
ZeroOrMoreBlock.java
PrintWriterWithSMAP.java
PythonBlockFinishingInfo.java
ASTPair.java
MismatchedTokenException.java
GrammarAtom.java
CodeGenerator.java
SynPredBlock.java
TokenStreamRewriteEngine.java
CommonHiddenStreamToken.java
CSharpBlockFinishingInfo.java
ANTLRTokenTypes.java
StringLiteralSymbol.java
NameSpace.java
InputBuffer.java
ToolErrorHandler.java
Utils.java
tokdef.g
ANTLRException.java
DefaultJavaCodeGeneratorPrintWriterManager.java
PythonCodeGenerator.java
StringUtils.java
TokenStreamSelector.java
TreeBlockContext.java
DocBookCodeGenerator.java
RuleBlock.java
LLkGrammarAnalyzer.java
ExceptionHandler.java
collections
NoViableAltForCharException.java
Token.java
ActionElement.java
ANTLRError.java
CommonAST.java
CharLiteralElement.java
LLkAnalyzer.java
FileLineFormatter.java
TokenBuffer.java
DiagnosticCodeGenerator.java
TreeSpecifierNode.java
MakeGrammar.java
actions
Version.java.in
TreeParserSharedInputState.java
TokenSymbol.java
JavaBlockFinishingInfo.java
CommonToken.java
DefaultToolErrorHandler.java
ANTLRTokdefParserTokenTypes.java
CharStreamException.java
CSharpCodeGenerator.java
AlternativeElement.java
AlternativeBlock.java
CppCharFormatter.java
TokenStreamException.java
TokenWithIndex.java
PythonCharFormatter.java
SimpleTokenManager.java
清空
类结构
package antlr; /* ANTLR Translator Generator * Project led by Terence Parr at http://www.cs.usfca.edu * Software rights: http://www.antlr.org/license.html * * $Id: //depot/code/org.antlr/release/antlr-2.7.7/antlr/SimpleTokenManager.java#2 $ */ import java.io.*; import java.util.
Hashtable
; import java.util.
Enumeration
; import antlr.collections.impl.
Vector
; class
SimpleTokenManager
implements
TokenManager
,
Cloneable
{ protected int
maxToken
=
Token
.
MIN_USER_TYPE
; // Token vocabulary is Vector of String's protected
Vector
vocabulary
; // Hash table is a mapping from Strings to TokenSymbol private
Hashtable
table
; // the ANTLR tool protected
Tool
antlrTool
; // Name of the token manager protected
String
name
; protected boolean
readOnly
= false;
SimpleTokenManager
(
String
name_
,
Tool
tool_
) {
antlrTool
=
tool_
;
name
=
name_
; // Don't make a bigger vector than we need, because it will show up in output sets.
vocabulary
= new
Vector
(1);
table
= new
Hashtable
(); // define EOF symbol
TokenSymbol
ts
= new
TokenSymbol
("EOF");
ts
.
setTokenType
(
Token
.
EOF_TYPE
);
define
(
ts
); // define <null-tree-lookahead> but only in the vocabulary vector
vocabulary
.
ensureCapacity
(
Token
.
NULL_TREE_LOOKAHEAD
);
vocabulary
.
setElementAt
("NULL_TREE_LOOKAHEAD",
Token
.
NULL_TREE_LOOKAHEAD
); } public
Object
clone
() {
SimpleTokenManager
tm
; try {
tm
= (
SimpleTokenManager
)super.clone();
tm
.
vocabulary
= (
Vector
)this.
vocabulary
.
clone
();
tm
.
table
= (
Hashtable
)this.
table
.
clone
();
tm
.
maxToken
= this.
maxToken
;
tm
.
antlrTool
= this.
antlrTool
;
tm
.
name
= this.
name
; } catch (
CloneNotSupportedException
e
) {
antlrTool
.
panic
("cannot clone token manager"); return null; } return
tm
; } /** define a token */ public void
define
(
TokenSymbol
ts
) { // Add the symbol to the vocabulary vector
vocabulary
.
ensureCapacity
(
ts
.
getTokenType
());
vocabulary
.
setElementAt
(
ts
.
getId
(),
ts
.
getTokenType
()); // add the symbol to the hash table
mapToTokenSymbol
(
ts
.
getId
(),
ts
); } /** Simple token manager doesn't have a name -- must be set externally */ public
String
getName
() { return
name
; } /** Get a token symbol by index */ public
String
getTokenStringAt
(int
idx
) { return (
String
)
vocabulary
.
elementAt
(
idx
); } /** Get the TokenSymbol for a string */ public
TokenSymbol
getTokenSymbol
(
String
sym
) { return (
TokenSymbol
)
table
.
get
(
sym
); } /** Get a token symbol by index */ public
TokenSymbol
getTokenSymbolAt
(int
idx
) { return
getTokenSymbol
(
getTokenStringAt
(
idx
)); } /** Get an enumerator over the symbol table */ public
Enumeration
getTokenSymbolElements
() { return
table
.
elements
(); } public
Enumeration
getTokenSymbolKeys
() { return
table
.
keys
(); } /** Get the token vocabulary (read-only). * @return A Vector of TokenSymbol */ public
Vector
getVocabulary
() { return
vocabulary
; } /** Simple token manager is not read-only */ public boolean
isReadOnly
() { return false; } /** Map a label or string to an existing token symbol */ public void
mapToTokenSymbol
(
String
name
,
TokenSymbol
sym
) { // System.out.println("mapToTokenSymbol("+name+","+sym+")");
table
.
put
(
name
,
sym
); } /** Get the highest token type in use */ public int
maxTokenType
() { return
maxToken
- 1; } /** Get the next unused token type */ public int
nextTokenType
() { return
maxToken
++; } /** Set the name of the token manager */ public void
setName
(
String
name_
) {
name
=
name_
; } public void
setReadOnly
(boolean
ro
) {
readOnly
=
ro
; } /** Is a token symbol defined? */ public boolean
tokenDefined
(
String
symbol
) { return
table
.
containsKey
(
symbol
); } }
查找资源
Jre/Lib
输入类名或文件名
类结构窗口