00001 #ifndef INC_TokenStreamBasicFilter_hpp__ 00002 #define INC_TokenStreamBasicFilter_hpp__ 00003 00004 /* ANTLR Translator Generator 00005 * Project led by Terence Parr at http://www.jGuru.com 00006 * Software rights: http://www.antlr.org/license.html 00007 * 00008 * $Id: //depot/code/org.antlr/release/antlr-2.7.7/lib/cpp/antlr/TokenStreamBasicFilter.hpp#2 $ 00009 */ 00010 00011 #include <antlr/config.hpp> 00012 #include <antlr/BitSet.hpp> 00013 #include <antlr/TokenStream.hpp> 00014 00015 #ifdef ANTLR_CXX_SUPPORTS_NAMESPACE 00016 namespace antlr { 00017 #endif 00018 00023 class ANTLR_API TokenStreamBasicFilter : public TokenStream { 00025 protected: 00026 BitSet discardMask; 00027 00029 protected: 00030 TokenStream* input; 00031 00032 public: 00033 TokenStreamBasicFilter(TokenStream& input_); 00034 00035 void discard(int ttype); 00036 00037 void discard(const BitSet& mask); 00038 00039 RefToken nextToken(); 00040 }; 00041 00042 #ifdef ANTLR_CXX_SUPPORTS_NAMESPACE 00043 } 00044 #endif 00045 00046 #endif //INC_TokenStreamBasicFilter_hpp__