예제 #1
0
 /// <summary>
 /// this = this AND NOT other </summary>
 public void AndNot(FixedBitSet other)
 {
     AndNot(other.bits, other.bits.Length);
 }
예제 #2
0
 /// <summary>
 /// this = this AND other </summary>
 public void And(FixedBitSet other)
 {
     And(other.bits, other.numWords);
 }
예제 #3
0
 /// <summary>
 /// Creates an iterator over the given <see cref="FixedBitSet"/>. </summary>
 public FixedBitSetIterator(FixedBitSet bits)
     : this(bits.bits, bits.numBits, bits.numWords)
 {
 }
예제 #4
0
 /// <summary>
 /// this = this OR other </summary>
 public void Or(FixedBitSet other)
 {
     Or(other.bits, other.numWords);
 }
예제 #5
0
 /// <summary>
 /// Returns the popcount or cardinality of the intersection of the two sets.
 /// Neither set is modified.
 /// </summary>
 public static long IntersectionCount(FixedBitSet a, FixedBitSet b)
 {
     return(BitUtil.Pop_Intersect(a.bits, b.bits, 0, Math.Min(a.numWords, b.numWords)));
 }
예제 #6
0
 public static int Cardinality(this FixedBitSet set)
 {
     return(set.Cardinality);
 }