BitVector.kl¶
Types¶
BitVector (struct)¶
The BitVector is a memory-efficient Boolean array, where each element uses a single bit.
注釈
Setting different bits in parallel might lead to unexpected results, in which case methods such as BitVector.atomicSet should be used.
/*
** Example: BitVector
*/
require Containers;
  
operator entry() {
      BitVector b;
      b.resize(4);
      b.set(0, true);
      b.set(1, false);
      b.set(2, false);
      b.set(3, true);
      report(b.getString());    
  
}
/*
** Output:
[1,0,0,1]
*/
Methods¶
| BitVector ( in BitVector other ) | |
| BitVector () | |
| atomicClear ! ( in UInt32 index ) | |
| atomicSet ! ( in UInt32 index ) | |
| atomicSet ! ( in UInt32 index, in Boolean value ) | |
| BitVectorIterator | begin ? () | 
| clear ! ( in UInt32 index ) | |
| clearAll ! () | |
| BitVector | clone ? () | 
| copy ! ( in BitVector src ) | |
| Boolean | get ? ( in UInt32 index ) | 
| Boolean | getNext ? ( io BitVectorIterator iter ) | 
| String | getString ? () | 
| Boolean | getThenClear ! ( in UInt32 index ) | 
| Boolean | getThenSet ! ( in UInt32 index ) | 
| Boolean | getThenSet ! ( in UInt32 index, in Boolean value ) | 
| resize ! ( in UInt32 size ) | |
| set ! ( in UInt32 index ) | |
| set ! ( in UInt32 index, in Boolean value ) | |
| setAll ! () | |
| UInt32 | size ? () | 
LocalL256BitVector (struct)¶
Same as a BitVector, but the first 256 bits will not require memory allocation (local).
Methods¶
| LocalL256BitVector ( in LocalL256BitVector other ) | |
| LocalL256BitVector () | |
| atomicClear ! ( in UInt32 index ) | |
| atomicSet ! ( in UInt32 index ) | |
| atomicSet ! ( in UInt32 index, in Boolean value ) | |
| BitVectorIterator | begin ? () | 
| clear ! ( in UInt32 index ) | |
| clearAll ! () | |
| LocalL256BitVector | clone ? () | 
| copy ! ( in LocalL256BitVector src ) | |
| Boolean | get ? ( in UInt32 index ) | 
| Boolean | getNext ? ( io BitVectorIterator iter ) | 
| String | getString ? () | 
| Boolean | getThenClear ! ( in UInt32 index ) | 
| Boolean | getThenSet ! ( in UInt32 index ) | 
| Boolean | getThenSet ! ( in UInt32 index, in Boolean value ) | 
| resize ! ( in UInt32 size ) | |
| set ! ( in UInt32 index ) | |
| set ! ( in UInt32 index, in Boolean value ) | |
| setAll ! () | |
| UInt32 | size ? () | 
BitVectorIterator (struct)¶
a helper structure to perform iteration on a BitVector
Members¶
| Integer | index | 
Methods¶
| BitVectorIterator ( in BitVectorIterator other ) | |
| BitVectorIterator () | |
| BitVectorIterator | clone ? () | 
