/** Removes all of the elements from this list. The list will be empty after this call returns. */ public void clear() { final int size = size(); final int start = elementOffset(framedElementLength, 0); final int end = framedElementLength * size; setMemory(start, end, (byte) 0); setSize(0); }
public void clear() { for (ReusableElement element : elements) { element.getElement().reset(); element.set(false); } size = 0; }
protected void setValue(DirectBuffer buffer, int offset, int length, int idx) { final int elementOffset = elementOffset(framedElementLength, idx); setValue(buffer, offset, length, idx, elementOffset); }
protected void setValue(DirectBuffer buffer, int offset, int length, int idx, int elementOffset) { setMemory(elementOffset, framedElementLength, (byte) 0); listBuffer.putInt(elementLengthOffset(elementOffset), length); listBuffer.putBytes(elementDataOffset(elementOffset), buffer, offset, length); }
public CompactList(final UnsafeBuffer listBuffer) { this.listBuffer = listBuffer; final int elementMaxLength = listBuffer.getInt(elementMaxLengthOffset()); framedElementLength = framedLength(elementMaxLength); iterator = new CompactListIterator(this); this.allocatedBuffer = null; }
public CompactListIterator(final CompactList values) { this.values = values; this.current = new UnsafeBuffer(new byte[values.maxElementDataLength()]); reset(); }
protected void boundsCheck(final int index, final int size) { if (index < 0 || index > size) { throw indexOutOfBoundsException(index, size); } }
/** * Consumes until an element equal or greater than the argument (inclusive) or the head is reached * * @param element */ public void consumeAscendingUntilInclusive(long element) { while (head != tail && elements[mapToBufferIndex(tail + 1, bufferCapacity)] <= element) { tail++; } }
@Override public CompactListIterator iterator() { iterator.reset(); return iterator; }
@Override public Integer next() { return nextInt(); } }
@Override public Iterator<T> iterator() { iterator.reset(); return iterator; }
/** Removes all of the elements from this list. The list will be empty after this call returns. */ public void clear() { final int size = size(); final int start = elementOffset(framedElementLength, 0); final int end = framedElementLength * size; setMemory(start, end, (byte) 0); setSize(0); }
public void clear() { for (ReusableElement element : elements) { element.getElement().reset(); element.set(false); } size = 0; }
protected void setValue(DirectBuffer buffer, int offset, int length, int idx, int elementOffset) { setMemory(elementOffset, framedElementLength, (byte) 0); listBuffer.putInt(elementLengthOffset(elementOffset), length); listBuffer.putBytes(elementDataOffset(elementOffset), buffer, offset, length); }
protected void setValue(DirectBuffer buffer, int offset, int length, int idx) { final int elementOffset = elementOffset(framedElementLength, idx); setValue(buffer, offset, length, idx, elementOffset); }
public CompactListIterator(final CompactList values) { this.values = values; this.current = new UnsafeBuffer(new byte[values.maxElementDataLength()]); reset(); }
protected void boundsCheckIncludingSize(final int index, final int size) { if (index < 0 || index >= size) { throw indexOutOfBoundsException(index, size); } }
/** * Consumes until an element equal or greater than the argument (inclusive) or the head is reached * * @param element */ public void consumeAscendingUntilInclusive(long element) { while (head != tail && elements[mapToBufferIndex(tail + 1, bufferCapacity)] <= element) { tail++; } }
@Override public CompactListIterator iterator() { iterator.reset(); return iterator; }
protected void boundsCheck(final int index, final int size) { if (index < 0 || index > size) { throw indexOutOfBoundsException(index, size); } }