BitSet Class Reference
#include <BitSet.hpp>
List of all members.
Public Member Functions |
| BitSet (unsigned int nbits=64) |
| BitSet (const unsigned long *bits_, unsigned int nlongs) |
| ~BitSet () |
void | add (unsigned int el) |
bool | member (unsigned int el) const |
std::vector< unsigned int > | toArray () const |
Private Attributes |
std::vector< bool > | storage |
Detailed Description
A BitSet to replace java.util.BitSet. Primary differences are that most set operators return new sets as opposed to oring and anding "in place". Further, a number of operations were added. I cannot contain a BitSet because there is no way to access the internal bits (which I need for speed) and, because it is final, I cannot subclass to add functionality. Consider defining set degree. Without access to the bits, I must call a method n times to test the ith bit...ack!
Also seems like or() from util is wrong when size of incoming set is bigger than this.length.
This is a C++ version of the Java class described above, with only a handful of the methods implemented, because we don't need the others at runtime. It's really just a wrapper around vector<bool>, which should probably be changed to a wrapper around bitset, once bitset is more widely available.
- Author:
- Terence Parr, MageLang Institute
-
Pete Wells
Constructor & Destructor Documentation
BitSet::BitSet |
( |
unsigned int |
nbits = 64 |
) |
|
BitSet::BitSet |
( |
const unsigned long * |
bits_, |
|
|
unsigned int |
nlongs | |
|
) |
| | |
Member Function Documentation
void BitSet::add |
( |
unsigned int |
el |
) |
|
bool BitSet::member |
( |
unsigned int |
el |
) |
const |
std::vector< unsigned int > BitSet::toArray |
( |
|
) |
const |
Member Data Documentation
The documentation for this class was generated from the following files: