BitSet.hpp
Go to the documentation of this file.00001 #ifndef INC_BitSet_hpp__
00002 #define INC_BitSet_hpp__
00003
00004
00005
00006
00007
00008
00009
00010
00011 #include <antlr/config.hpp>
00012 #include <vector>
00013 #include <stdexcept>
00014
00015 #ifdef ANTLR_CXX_SUPPORTS_NAMESPACE
00016 namespace antlr {
00017 #endif
00018
00019 #if defined(_MSC_VER) && !defined(__ICL) // Microsoft Visual C++
00020 extern template class ANTLR_API ANTLR_USE_NAMESPACE(std)vector<unsigned int>;
00021 extern template class ANTLR_API ANTLR_USE_NAMESPACE(std)vector<bool>;
00022 #endif
00023
00045 class ANTLR_API BitSet {
00046 private:
00047 ANTLR_USE_NAMESPACE(std)vector<bool> storage;
00048
00049 public:
00050 BitSet( unsigned int nbits=64 );
00051 BitSet( const unsigned long* bits_, unsigned int nlongs);
00052 ~BitSet();
00053
00054 void add( unsigned int el );
00055
00056 bool member( unsigned int el ) const;
00057
00058 ANTLR_USE_NAMESPACE(std)vector<unsigned int> toArray() const;
00059 };
00060
00061 #ifdef ANTLR_CXX_SUPPORTS_NAMESPACE
00062 }
00063 #endif
00064
00065 #endif
This file is part of the documentation for KDevelop Version 3.1.2.