ANTLR Support Libraries 2.7.1+
|
#include <TokenStreamHiddenTokenFilter.hpp>
Public Member Functions | |
TokenStreamHiddenTokenFilter (TokenStream &input) | |
BitSet | getDiscardMask () const |
RefToken | getHiddenAfter (RefToken t) |
RefToken | getHiddenBefore (RefToken t) |
BitSet | getHideMask () const |
RefToken | getInitialHiddenToken () |
void | hide (int m) |
void | hide (const BitSet &mask) |
RefToken | nextToken () |
![]() | |
TokenStreamBasicFilter (TokenStream &input_) | |
void | discard (int ttype) |
void | discard (const BitSet &mask) |
![]() | |
virtual | ~TokenStream () |
Protected Member Functions | |
void | consume () |
RefToken | LA (int i) |
Protected Attributes | |
BitSet | hideMask |
RefToken | lastHiddenToken |
RefToken | firstHidden |
![]() | |
BitSet | discardMask |
TokenStream * | input |
Private Member Functions | |
void | consumeFirst () |
Private Attributes | |
RefToken | nextMonitoredToken |
This object filters a token stream coming from a lexer or another TokenStream so that only certain token channels get transmitted to the parser.
Any of the channels can be filtered off as "hidden" channels whose tokens can be accessed from the parser.
TokenStreamHiddenTokenFilter::TokenStreamHiddenTokenFilter | ( | TokenStream & | input | ) |
This object filters a token stream coming from a lexer or another TokenStream so that only certain token channels get transmitted to the parser.
Any of the channels can be filtered off as "hidden" channels whose tokens can be accessed from the parser.
|
protected |
|
private |
BitSet TokenStreamHiddenTokenFilter::getDiscardMask | ( | ) | const |
Return a ptr to the hidden token appearing immediately after token t in the input stream.
Return a ptr to the hidden token appearing immediately before token t in the input stream.
BitSet TokenStreamHiddenTokenFilter::getHideMask | ( | ) | const |
RefToken TokenStreamHiddenTokenFilter::getInitialHiddenToken | ( | ) |
Return the first hidden token if one appears before any monitored token.
void TokenStreamHiddenTokenFilter::hide | ( | int | m | ) |
void TokenStreamHiddenTokenFilter::hide | ( | const BitSet & | mask | ) |
|
protected |
|
virtual |
Return the next monitored token. Test the token following the monitored token. If following is another monitored token, save it for the next invocation of nextToken (like a single lookahead token) and return it then. If following is unmonitored, nondiscarded (hidden) channel token, add it to the monitored token.
Note: EOF must be a monitored Token.
Reimplemented from TokenStreamBasicFilter.
|
protected |
|
protected |
|
protected |
track tail of hidden list emanating from previous monitored token
|
private |