public class ATSDirectBitSet extends Object implements DirectBitSet
DirectBitSet.BitsNOT_FOUND| Modifier and Type | Method and Description |
|---|---|
DirectBitSet |
and(long longIndex,
long value)
Performs a logical AND of the long at the specified index in this
bit set with the argument long value.
|
DirectBitSet |
andNot(long longIndex,
long value)
Clears all of the bits in the long at the specified index in this
DirectBitSet whose corresponding bit is set in the specified
long value. |
long |
cardinality()
Returns the number of bits set to
true in this DirectBitSet. |
DirectBitSet |
clear()
Sets all of the bits in this BitSet to
false. |
DirectBitSet |
clear(long bitIndex)
Sets the bit specified by the index to
false. |
DirectBitSet |
clear(long fromIndex,
long exclusiveToIndex)
Sets the bits from the specified
fromIndex (inclusive) to the
specified toIndex (exclusive) to false. |
boolean |
clearIfSet(long bitIndex)
Clears the bit at the specified index (sets it to
false). |
long |
clearNextNContinuousSetBits(long fromIndex,
int numberOfBits)
WARNING! This implementation doesn't strictly follow the contract
from
DirectBitSet interface. |
long |
clearNextSetBit(long fromIndex)
Finds and clears the first bit that is set to
true
that occurs on or after the specified starting index. |
long |
clearPreviousNContinuousSetBits(long fromIndex,
int numberOfBits)
WARNING! This implementation doesn't strictly follow the contract
from
DirectBitSet interface. |
long |
clearPreviousSetBit(long fromIndex)
Finds and clears the nearest bit that is set to
true
that occurs on or before the specified starting index. |
DirectBitSet |
flip(long bitIndex)
Sets the bit at the specified index to the complement of its
current value.
|
DirectBitSet |
flip(long fromIndex,
long exclusiveToIndex)
Sets each bit from the specified
fromIndex (inclusive) to the
specified toIndex (exclusive) to the complement of its current
value. |
boolean |
get(long bitIndex)
Returns the value of the bit with the specified index.
|
long |
getLong(long longIndex)
Returns the value of the long with the specified long index.
|
boolean |
isClear(long bitIndex)
Synonym of
!get(long). |
boolean |
isSet(long bitIndex)
Synonym of
DirectBitSet.get(long). |
long |
nextClearBit(long fromIndex)
Returns the index of the first bit that is set to
false
that occurs on or after the specified starting index. |
long |
nextClearLong(long fromLongIndex)
Returns the index of the first long that contains a bit is set to
false
that occurs on or after the specified starting index. |
long |
nextSetBit(long fromIndex)
Returns the index of the first bit that is set to
true
that occurs on or after the specified starting index. |
long |
nextSetLong(long fromLongIndex)
Returns the index of the first long that contains a bit set to
true
that occurs on or after the specified starting index. |
DirectBitSet |
or(long longIndex,
long value)
Performs a logical OR of the long at the specified index in this
bit set with the argument long value.
|
long |
previousClearBit(long fromIndex)
Returns the index of the nearest bit that is set to
false
that occurs on or before the specified starting index. |
long |
previousClearLong(long fromLongIndex)
Returns the index of the nearest long that contains a bit set to
false
that occurs on or before the specified starting index. |
long |
previousSetBit(long fromIndex)
Returns the index of the nearest bit that is set to
true
that occurs on or before the specified starting index. |
long |
previousSetLong(long fromLongIndex)
Returns the index of the nearest long that contains a bit set to
true
that occurs on or before the specified starting index. |
int |
refCount() |
boolean |
release() |
void |
reserve() |
DirectBitSet |
set(long bitIndex)
Sets the bit at the specified index to
true. |
DirectBitSet |
set(long bitIndex,
boolean value)
Sets the bit at the specified index to the specified value.
|
DirectBitSet |
set(long fromIndex,
long exclusiveToIndex)
Sets the bits from the specified
fromIndex (inclusive) to the
specified toIndex (exclusive) to true. |
DirectBitSet |
set(long fromIndex,
long toIndex,
boolean value)
Sets the bits from the specified
fromIndex (inclusive) to the
specified toIndex (exclusive) to the specified value. |
DirectBitSet |
setAll()
Sets all bits,
bs.setAll() is equivalent
of bs.set(0, bs.size(). |
DirectBitSet.Bits |
setBits()
Returns an iteration of set bits in direct order
(from 0 to the end of the bit set).
|
boolean |
setIfClear(long bitIndex)
Sets the bit at the specified index to
true. |
long |
setNextClearBit(long fromIndex)
Finds and sets to
true the first bit that is set to false
that occurs on or after the specified starting index. |
long |
setNextNContinuousClearBits(long fromIndex,
int numberOfBits)
WARNING! This implementation doesn't strictly follow the contract
from
DirectBitSet interface. |
long |
setPreviousClearBit(long fromIndex)
Finds and sets to
true the nearest bit that is set
to false that occurs on or before the specified starting index. |
long |
setPreviousNContinuousClearBits(long fromIndex,
int numberOfBits)
WARNING! This implementation doesn't strictly follow the contract
from
DirectBitSet interface. |
long |
size()
Returns the number of bits of space actually in use by this BitSet to represent bit values.
|
static DirectBitSet |
wrap(Bytes bytes) |
DirectBitSet |
xor(long longIndex,
long value)
Performs a logical XOR of the long at the specified index in this
bit set with the argument long value.
|
public static DirectBitSet wrap(Bytes bytes)
public void reserve()
reserve in interface ReferenceCountedpublic boolean release()
release in interface ReferenceCountedpublic int refCount()
refCount in interface ReferenceCountedpublic DirectBitSet flip(long bitIndex)
DirectBitSetflip in interface DirectBitSetbitIndex - the index of the bit to flipDirectBitSet backpublic DirectBitSet flip(long fromIndex, long exclusiveToIndex)
DirectBitSetfromIndex (inclusive) to the
specified toIndex (exclusive) to the complement of its current
value.flip in interface DirectBitSetfromIndex - index of the first bit to flipexclusiveToIndex - index after the last bit to flipDirectBitSet backpublic DirectBitSet set(long bitIndex)
DirectBitSettrue.set in interface DirectBitSetbitIndex - a bit indexDirectBitSet backpublic boolean setIfClear(long bitIndex)
DirectBitSettrue.setIfClear in interface DirectBitSetbitIndex - a bit indexpublic DirectBitSet set(long bitIndex, boolean value)
DirectBitSetset in interface DirectBitSetbitIndex - a bit indexvalue - a boolean value to setDirectBitSet backpublic DirectBitSet set(long fromIndex, long exclusiveToIndex)
DirectBitSetfromIndex (inclusive) to the
specified toIndex (exclusive) to true.set in interface DirectBitSetfromIndex - index of the first bit to be setexclusiveToIndex - index after the last bit to be setDirectBitSet backpublic DirectBitSet setAll()
DirectBitSetbs.setAll() is equivalent
of bs.set(0, bs.size().setAll in interface DirectBitSetpublic DirectBitSet set(long fromIndex, long toIndex, boolean value)
DirectBitSetfromIndex (inclusive) to the
specified toIndex (exclusive) to the specified value.set in interface DirectBitSetfromIndex - index of the first bit to be settoIndex - index after the last bit to be setvalue - value to set the selected bits toDirectBitSet backpublic DirectBitSet clear(long bitIndex)
DirectBitSetfalse.clear in interface DirectBitSetbitIndex - the index of the bit to be clearedDirectBitSet backpublic boolean clearIfSet(long bitIndex)
DirectBitSetfalse).clearIfSet in interface DirectBitSetbitIndex - a bit indexpublic DirectBitSet clear(long fromIndex, long exclusiveToIndex)
DirectBitSetfromIndex (inclusive) to the
specified toIndex (exclusive) to false.clear in interface DirectBitSetfromIndex - index of the first bit to be clearedexclusiveToIndex - index after the last bit to be clearedDirectBitSet backpublic DirectBitSet clear()
DirectBitSetfalse.clear in interface DirectBitSetDirectBitSet backpublic boolean get(long bitIndex)
DirectBitSettrue if the bit with the index bitIndex
is currently set in this DirectBitSet; otherwise, the result
is false.get in interface DirectBitSetbitIndex - the bit indexpublic boolean isSet(long bitIndex)
DirectBitSetDirectBitSet.get(long).isSet in interface DirectBitSetbitIndex - the bit indexpublic boolean isClear(long bitIndex)
DirectBitSet!get(long).isClear in interface DirectBitSetbitIndex - the bit indextrue is the bit at the specified index is clear in this
bit set; if the bit is set to true then returns falsepublic long getLong(long longIndex)
DirectBitSetgetLong in interface DirectBitSetlongIndex - the bit indexpublic long nextSetBit(long fromIndex)
DirectBitSettrue
that occurs on or after the specified starting index. If no such
bit exists then -1 is returned.
To iterate over the true bits in a DirectBitSet,
use the following loop:
for (int i = bs.nextSetBit(0); i >= 0; i = bs.nextSetBit(i+1)) {
// operate on index i here
}nextSetBit in interface DirectBitSetfromIndex - the index to start checking from (inclusive)-1 if there
is no such bitDirectBitSet.clearNextSetBit(long)public DirectBitSet.Bits setBits()
DirectBitSetsetBits in interface DirectBitSetpublic long clearNextSetBit(long fromIndex)
DirectBitSettrue
that occurs on or after the specified starting index. If no such
bit exists then -1 is returned.clearNextSetBit in interface DirectBitSetfromIndex - the index to start checking from (inclusive)-1 if there
is no such bitDirectBitSet.nextSetBit(long)public long nextSetLong(long fromLongIndex)
DirectBitSettrue
that occurs on or after the specified starting index. The index is the number of longs.
If no such bit exists then -1 is returned.nextSetLong in interface DirectBitSetfromLongIndex - the index to start checking from (inclusive)-1 if there
is no such longpublic long nextClearBit(long fromIndex)
DirectBitSetfalse
that occurs on or after the specified starting index. If no such
bit exists then -1 is returned.nextClearBit in interface DirectBitSetfromIndex - the index to start checking from (inclusive)-1 if there is no such bitDirectBitSet.setNextClearBit(long)public long setNextClearBit(long fromIndex)
DirectBitSettrue the first bit that is set to false
that occurs on or after the specified starting index. If no such
bit exists then -1 is returned.setNextClearBit in interface DirectBitSetfromIndex - the index to start checking from (inclusive)-1 if there is no such bitDirectBitSet.nextClearBit(long)public long nextClearLong(long fromLongIndex)
DirectBitSetfalse
that occurs on or after the specified starting index. If no such
bit exists then -1 is returned.nextClearLong in interface DirectBitSetfromLongIndex - the index to start checking from (inclusive)-1 if there is no such longpublic long previousSetBit(long fromIndex)
DirectBitSettrue
that occurs on or before the specified starting index.
If no such bit exists, or if -1 is given as the
starting index, then -1 is returned.
To iterate over the true bits in a DirectBitSet,
use the following loop:
for (int i = bs.size(); (i = bs.previousSetBit(i-1)) >= 0; ) {
// operate on index i here
}previousSetBit in interface DirectBitSetfromIndex - the index to start checking from (inclusive)-1 if there
is no such bitDirectBitSet.clearPreviousSetBit(long)public long clearPreviousSetBit(long fromIndex)
DirectBitSettrue
that occurs on or before the specified starting index.
If no such bit exists, or if -1 is given as the
starting index, then -1 is returned.clearPreviousSetBit in interface DirectBitSetfromIndex - the index to start checking from (inclusive)-1 if there
is no such bitDirectBitSet.previousSetBit(long)public long previousSetLong(long fromLongIndex)
DirectBitSettrue
that occurs on or before the specified starting index.
If no such bit exists, or if -1 is given as the
starting index, then -1 is returned.previousSetLong in interface DirectBitSetfromLongIndex - the index to start checking from (inclusive)-1 if there is no such longpublic long previousClearBit(long fromIndex)
DirectBitSetfalse
that occurs on or before the specified starting index.
If no such bit exists, or if -1 is given as the
starting index, then -1 is returned.previousClearBit in interface DirectBitSetfromIndex - the index to start checking from (inclusive)-1 if there
is no such bitDirectBitSet.setPreviousClearBit(long)public long setPreviousClearBit(long fromIndex)
DirectBitSettrue the nearest bit that is set
to false that occurs on or before the specified starting index.
If no such bit exists, or if -1 is given as the
starting index, then -1 is returned.setPreviousClearBit in interface DirectBitSetfromIndex - the index to start checking from (inclusive)-1 if there
is no such bitDirectBitSet.previousClearBit(long)public long previousClearLong(long fromLongIndex)
DirectBitSetfalse
that occurs on or before the specified starting index.
If no such bit exists, or if -1 is given as the
starting index, then -1 is returned.previousClearLong in interface DirectBitSetfromLongIndex - the index to start checking from (inclusive)-1 if there is no such longpublic long size()
DirectBitSetsize() - 1.size in interface DirectBitSetpublic long cardinality()
DirectBitSettrue in this DirectBitSet.cardinality in interface DirectBitSettrue in this DirectBitSetpublic DirectBitSet and(long longIndex, long value)
DirectBitSetand in interface DirectBitSetlongIndex - of long to ANDvalue - of long to ANDDirectBitSet backpublic DirectBitSet or(long longIndex, long value)
DirectBitSetor in interface DirectBitSetlongIndex - of long to ORvalue - of long to ORDirectBitSet backpublic DirectBitSet xor(long longIndex, long value)
DirectBitSetxor in interface DirectBitSetlongIndex - of long to XORvalue - of long to XORDirectBitSet backpublic DirectBitSet andNot(long longIndex, long value)
DirectBitSetDirectBitSet whose corresponding bit is set in the specified
long value.andNot in interface DirectBitSetlongIndex - of long to AND NOTvalue - of long to AND NOTDirectBitSet backpublic long setNextNContinuousClearBits(long fromIndex,
int numberOfBits)
DirectBitSet interface. For the sake of atomicity this
implementation couldn't find and flip the range crossing native word
boundary, e. g. bits from 55 to 75 (boundary is 64).setNextNContinuousClearBits in interface DirectBitSetfromIndex - the index to start checking from (inclusive)numberOfBits - how many continuous clear bits to search and set-1 if there is no such rangeIllegalArgumentException - if numberOfBits
is out of range 0 < numberOfBits && numberOfBits <= 64public long clearNextNContinuousSetBits(long fromIndex,
int numberOfBits)
DirectBitSet interface. For the sake of atomicity this
implementation couldn't find and flip the range crossing native word
boundary, e. g. bits from 55 to 75 (boundary is 64).clearNextNContinuousSetBits in interface DirectBitSetfromIndex - the index to start checking from (inclusive)numberOfBits - how many continuous set bits to search and cleartrue bits, or -1 if there is no such rangeIllegalArgumentException - if numberOfBits
is out of range 0 < numberOfBits && numberOfBits <= 64public long setPreviousNContinuousClearBits(long fromIndex,
int numberOfBits)
DirectBitSet interface. For the sake of atomicity this
implementation couldn't find and flip the range crossing native word
boundary, e. g. bits from 55 to 75 (boundary is 64).setPreviousNContinuousClearBits in interface DirectBitSetfromIndex - the index to start checking from (inclusive)numberOfBits - how many continuous clear bits to search and set-1 if there is no such rangeIllegalArgumentException - if numberOfBits
is out of range 0 < numberOfBits && numberOfBits <= 64public long clearPreviousNContinuousSetBits(long fromIndex,
int numberOfBits)
DirectBitSet interface. For the sake of atomicity this
implementation couldn't find and flip the range crossing native word
boundary, e. g. bits from 55 to 75 (boundary is 64).clearPreviousNContinuousSetBits in interface DirectBitSetfromIndex - the index to start checking from (inclusive)numberOfBits - how many continuous set bits to search and cleartrue bits, or -1 if there is no such rangeIllegalArgumentException - if numberOfBits
is out of range 0 < numberOfBits && numberOfBits <= 64Copyright © 2019. All rights reserved.