coins.aflow.util
インタフェース BitVector

既知のサブインタフェースの一覧:
BBlockVector, DefVector, ExpVector, FlowAnalSymVector, PointVector
既知の実装クラスの一覧:
BBlockVectorImpl, BitVectorImpl, DefVectorImpl, ExpVectorImpl, FlowAnalSymVectorImpl, PointVectorImpl

public interface BitVector

Vector of bits. Instances of (the classes that inplement) this interface represent various data flow information, and, through the bit manipulation operations this interface provides, are the basis for nontrivial flow analyses that require solving equations by iteration.

関連項目:
Flow

メソッドの概要
 BitVectorIterator bitVectorIterator()
          Returns the BitVectorIterator object backed by this BitVector
 boolean equals(java.lang.Object pObj)
          Same as vectorEqual if the specified argument is an instance of BitVector, otherwise returns false.
 int getBit(int pInx)
          getBit: Get pIndex-th bit of this bit vector.
 int getBitLength()
          Returns the length of this BitVector, not counting the 0-th bit, which is not used.
 long[] getVectorWord()
          Returns the array of long, which is where the actual data for this BitVector is stored.
 int getWordLength()
          Returns the # of long words this BitVector uses to store its data.
 boolean isSet(int pInx)
          Same as getBit(pInx) == 1.
 boolean isZero()
          Are all the bits zero?
 void resetBit(int pInx)
          resetBit: Reset pIndex-th bit of this bit vector to 0.
 void setBit(int pInx)
          setBit: Set pIndex-th bit of this bit vector to 1.
 java.lang.String toString()
          toString: Get the sequence of indexes corresponding to the position having 1.
 java.lang.String toStringDescriptive()
          Returns a possibly more descriptive string representation than toString() of this BitVector.
 void vectorAnd(BitVector pOperand2, BitVector pResult)
          vectorAnd; Make a bit vector and set its value by executing bit-wise-and operation on this and pOperand2.
 void vectorCopy(BitVector pResult)
          vectorCopy; Make a bit vector and set its value same to that of pOperand.
 boolean vectorEqual(BitVector pOperand2)
          vectorEqual; See if this and pOperand2 have the same value or not.
 void vectorNot(BitVector pResult)
          vectorNot; Make a bit vector and set its value by executing bit-wise-not operation on pOperand.
 void vectorOr(BitVector pOperand2, BitVector pResult)
          vectorOr; Make a bit vector and set its value by executing bit-wise-or operation on this and pOperand2.
 void vectorReset()
          vectorReset; Reset all bits of this vector to 0.
 void vectorSub(BitVector pOperand2, BitVector pResult)
          vectorSub; Make a bit vector and set its value by executing bit-wise-sub operation on this and pOperand2.
 void vectorXor(BitVector pOperand2, BitVector pResult)
          vectorXor; Make a bit vector and set its value by executing bit-wise exclusive-or operation on this and pOperand2.
 

メソッドの詳細

setBit

public void setBit(int pInx)
setBit: Set pIndex-th bit of this bit vector to 1.

戻り値:
this bit vector whose pIndex-th bit is reset to 1.

resetBit

public void resetBit(int pInx)
resetBit: Reset pIndex-th bit of this bit vector to 0.

戻り値:
this bit vector whose pIndex-th bit is reset to 0.

getBit

public int getBit(int pInx)
getBit: Get pIndex-th bit of this bit vector.

戻り値:
pIndex-th bit of this bit vector.

isSet

public boolean isSet(int pInx)
Same as getBit(pInx) == 1.


isZero

public boolean isZero()
Are all the bits zero?


getBitLength

public int getBitLength()
Returns the length of this BitVector, not counting the 0-th bit, which is not used.


getWordLength

public int getWordLength()
Returns the # of long words this BitVector uses to store its data.


getVectorWord

public long[] getVectorWord()
Returns the array of long, which is where the actual data for this BitVector is stored.


bitVectorIterator

public BitVectorIterator bitVectorIterator()
Returns the BitVectorIterator object backed by this BitVector


vectorAnd

public void vectorAnd(BitVector pOperand2,
                      BitVector pResult)
vectorAnd; Make a bit vector and set its value by executing bit-wise-and operation on this and pOperand2.

戻り値:
the bit vector obtained by bit-wise-and operaion.

vectorOr

public void vectorOr(BitVector pOperand2,
                     BitVector pResult)
vectorOr; Make a bit vector and set its value by executing bit-wise-or operation on this and pOperand2.

戻り値:
the bit vector obtained by bit-wise-or operaion.

vectorXor

public void vectorXor(BitVector pOperand2,
                      BitVector pResult)
vectorXor; Make a bit vector and set its value by executing bit-wise exclusive-or operation on this and pOperand2.

戻り値:
the bit vector obtained by bit-wise exclusive-or operaion.

vectorNot

public void vectorNot(BitVector pResult)
vectorNot; Make a bit vector and set its value by executing bit-wise-not operation on pOperand.

戻り値:
the bit vector obtained by bit-wise-not operaion.

vectorSub

public void vectorSub(BitVector pOperand2,
                      BitVector pResult)
vectorSub; Make a bit vector and set its value by executing bit-wise-sub operation on this and pOperand2.


vectorCopy

public void vectorCopy(BitVector pResult)
vectorCopy; Make a bit vector and set its value same to that of pOperand.

戻り値:
a new bit vector having the same value as pOperand.

vectorEqual

public boolean vectorEqual(BitVector pOperand2)
vectorEqual; See if this and pOperand2 have the same value or not.

戻り値:
true if this and pOperand2 have the same value, false otherwise.

equals

public boolean equals(java.lang.Object pObj)
Same as vectorEqual if the specified argument is an instance of BitVector, otherwise returns false.

オーバーライド:
クラス java.lang.Object 内の equals

vectorReset

public void vectorReset()
vectorReset; Reset all bits of this vector to 0.

戻り値:
this vector after resetting all of its bits to 0.

toString

public java.lang.String toString()
toString: Get the sequence of indexes corresponding to the position having 1.

オーバーライド:
クラス java.lang.Object 内の toString

toStringDescriptive

public java.lang.String toStringDescriptive()
Returns a possibly more descriptive string representation than toString() of this BitVector.