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 TypeMethodDescriptionbooleanfinal booleangetBit(int bitToGet) inthashCode()final voidintersection(CMStateSet setToAnd) final booleanisEmpty()final voidsetBit(int bitToSet) final voidsetTo(CMStateSet srcSet) toString()final voidunion(CMStateSet setToOr) final voidzeroBits()
-
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()
-