Class CMStateSet
java.lang.Object
org.apache.xerces.impl.dtd.models.CMStateSet
This class is a very simple bitset class. The DFA content model code needs
to support a bit set, but the java BitSet class is way, way overkill. Our
bitset never needs to be expanded after creation, hash itself, etc...
Since the vast majority of content models will never require more than 64
bits, and since allocation of anything in Java is expensive, this class
provides a hybrid implementation that uses two ints for instances that use
64 bits or fewer. It has a byte array reference member which will only be
used if more than 64 bits are required.
Note that the code that uses this class will never perform operations
on sets of different sizes, so that check does not have to be made here.
INTERNAL:
- Usage of this class is not supported. It may be altered or removed at any time.
- Version:
- $Id: CMStateSet.java 446752 2006-09-15 21:55:19Z mrglavas $
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
final boolean
getBit
(int bitToGet) int
hashCode()
final void
intersection
(CMStateSet setToAnd) final boolean
isEmpty()
final void
setBit
(int bitToSet) final void
setTo
(CMStateSet srcSet) toString()
final void
union
(CMStateSet setToOr) final void
zeroBits()
-
Constructor Details
-
CMStateSet
public CMStateSet(int bitCount)
-
-
Method Details
-
toString
-
intersection
-
getBit
public final boolean getBit(int bitToGet) -
isEmpty
public final boolean isEmpty() -
union
-
setBit
public final void setBit(int bitToSet) -
setTo
-
zeroBits
public final void zeroBits() -
equals
-
hashCode
public int hashCode()
-