You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
749 B
36 lines
749 B
#ifndef INC_TokenStreamBasicFilter_hpp__
|
|
#define INC_TokenStreamBasicFilter_hpp__
|
|
|
|
#include "antlr/config.h"
|
|
#include "antlr/BitSet.h"
|
|
#include "antlr/TokenStream.h"
|
|
|
|
ANTLR_BEGIN_NAMESPACE(antlr)
|
|
|
|
/** This object is a TokenStream that passes through all
|
|
* tokens except for those that you tell it to discard.
|
|
* There is no buffering of the tokens.
|
|
*/
|
|
class TokenStreamBasicFilter : public TokenStream {
|
|
/** The set of token types to discard */
|
|
protected:
|
|
BitSet discardMask;
|
|
|
|
/** The input stream */
|
|
protected:
|
|
TokenStream* input;
|
|
|
|
public:
|
|
TokenStreamBasicFilter(TokenStream& input_);
|
|
|
|
void discard(int ttype);
|
|
|
|
void discard(const BitSet& mask);
|
|
|
|
RefToken nextToken();
|
|
};
|
|
|
|
ANTLR_END_NAMESPACE
|
|
|
|
#endif //INC_TokenStreamBasicFilter_hpp__
|