public void Merge(BitFieldSet <T> other) { for (ushort i = 0; i < bitField.Length; i++) { this.bitField[i] |= other.bitField[i]; } }
public BitFieldSet <T> NewSet(BitFieldSet <T> clone) { ulong[] bitArray = null; while (bufferPool.Count > 0 && bitArray == null) { bitArray = bufferPool.Pop(); } if (bitArray == null) { bitArray = new ulong[bitArraySize]; } else { recycleCount++; } BitFieldSet <T> newSet = new BitFieldSet <T>(bitArray, this); clone.CopyTo(newSet); return(newSet); }
public void CopyTo(BitFieldSet <T> other) { this.bitField.CopyTo(other.bitField, 0); }