|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--antlr.TokenStreamSelector
Untamed: A token stream MUX (multiplexor) knows about n token streams and can multiplex them onto the same channel for use by token stream consumer like a parser. This is a way to have multiple lexers break up the same input stream for a single parser. Or, you can have multiple instances of the same lexer handle multiple input streams; this works great for includes.
Field Summary | |
protected TokenStream |
input
The currently-selected token stream input |
protected Hashtable |
inputStreamNames
The set of inputs to the MUX |
protected Stack |
streamStack
Used to track stack of input streams |
Constructor Summary | |
TokenStreamSelector()
Enabled: |
Method Summary | |
void |
addInputStream(TokenStream stream,
String key)
Enabled: |
TokenStream |
getCurrentStream()
Enabled: Return the stream from tokens are being pulled at the moment. |
TokenStream |
getStream(String sname)
Enabled: |
Token |
nextToken()
Enabled: |
TokenStream |
pop()
Enabled: |
void |
push(String sname)
Enabled: |
void |
push(TokenStream stream)
Enabled: |
void |
retry()
Enabled: Abort recognition of current Token and try again. |
void |
select(String sname)
Enabled: |
void |
select(TokenStream stream)
Enabled: Set the stream without pushing old stream |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected Hashtable inputStreamNames
protected TokenStream input
protected Stack streamStack
Constructor Detail |
public TokenStreamSelector()
Method Detail |
public void addInputStream(TokenStream stream, String key)
public TokenStream getCurrentStream()
public TokenStream getStream(String sname)
public Token nextToken() throws TokenStreamException
nextToken
in interface TokenStream
TokenStreamException
public TokenStream pop()
public void push(TokenStream stream)
public void push(String sname)
public void retry() throws TokenStreamRetryException
TokenStreamRetryException
public void select(TokenStream stream)
public void select(String sname) throws IllegalArgumentException
IllegalArgumentException
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |