public void union(FastSparseSet<E> set) { int[] extdata = set.getData(); int[] extnext = set.getNext(); int[] intdata = data; int intlength = intdata.length; int pointer = 0; do { if (pointer >= intlength) { intdata = ensureCapacity(extdata.length - 1); } boolean nextrec = (intdata[pointer] == 0); intdata[pointer] |= extdata[pointer]; if (nextrec) { changeNext(next, pointer, next[pointer], pointer); } pointer = extnext[pointer]; } while (pointer != 0); }
public void complement(FastSparseSet<E> set) { int[] extdata = set.getData(); int[] intdata = data; int extlength = extdata.length; int pointer = 0; do { if (pointer >= extlength) { break; } intdata[pointer] &= ~extdata[pointer]; if (intdata[pointer] == 0) { changeNext(next, pointer, pointer, next[pointer]); } pointer = next[pointer]; } while (pointer != 0); }
public void remove(E element) { int[] index = colValuesInternal.getWithKey(element); if (index == null) { index = factory.addElement(element); } int block = index[0]; if (block < data.length) { data[block] &= ~index[1]; if (data[block] == 0) { changeNext(next, block, block, next[block]); } } }
public void add(E element) { int[] index = colValuesInternal.getWithKey(element); if (index == null) { index = factory.addElement(element); } int block = index[0]; if (block >= data.length) { ensureCapacity(block); } data[block] |= index[1]; changeNext(next, block, next[block], block); }
public void union(FastSparseSet<E> set) { int[] extdata = set.getData(); int[] extnext = set.getNext(); int[] intdata = data; int intlength = intdata.length; int pointer = 0; do { if (pointer >= intlength) { intdata = ensureCapacity(extdata.length - 1); } boolean nextrec = (intdata[pointer] == 0); intdata[pointer] |= extdata[pointer]; if (nextrec) { changeNext(next, pointer, next[pointer], pointer); } pointer = extnext[pointer]; } while (pointer != 0); }
public void complement(FastSparseSet<E> set) { int[] extdata = set.getData(); int[] intdata = data; int extlength = extdata.length; int pointer = 0; do { if (pointer >= extlength) { break; } intdata[pointer] &= ~extdata[pointer]; if (intdata[pointer] == 0) { changeNext(next, pointer, pointer, next[pointer]); } pointer = next[pointer]; } while (pointer != 0); }
public void add(E element) { int[] index = colValuesInternal.getWithKey(element); if (index == null) { index = factory.addElement(element); } int block = index[0]; if (block >= data.length) { ensureCapacity(block); } data[block] |= index[1]; changeNext(next, block, next[block], block); }
public void remove(E element) { int[] index = colValuesInternal.getWithKey(element); if (index == null) { index = factory.addElement(element); } int block = index[0]; if (block < data.length) { data[block] &= ~index[1]; if (data[block] == 0) { changeNext(next, block, block, next[block]); } } }