io.deephaven.engine.table.impl.sources.regioned.ColumnRegion Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of deephaven-engine-table Show documentation
Show all versions of deephaven-engine-table Show documentation
Engine Table: Implementation and closely-coupled utilities
/**
* Copyright (c) 2016-2022 Deephaven Data Labs and Patent Pending
*/
package io.deephaven.engine.table.impl.sources.regioned;
import io.deephaven.engine.table.Releasable;
import io.deephaven.chunk.attributes.Any;
import io.deephaven.chunk.WritableChunk;
import io.deephaven.engine.page.Page;
import io.deephaven.util.annotations.FinalDefault;
import org.jetbrains.annotations.NotNull;
public interface ColumnRegion extends Page, Releasable {
@Override
@FinalDefault
default long firstRowOffset() {
return 0;
}
/**
* Invalidate the region -- any further reads that cannot be completed consistently and correctly will fail.
*/
void invalidate();
abstract class Null
extends GenericColumnRegionBase
implements ColumnRegion, WithDefaultsForRepeatingValues {
Null(final long pageMask) {
super(pageMask);
}
@Override
public void fillChunkAppend(@NotNull final FillContext context,
@NotNull final WritableChunk super ATTR> destination, final int length) {
final int offset = destination.size();
destination.fillWithNullValue(offset, length);
destination.setSize(offset + length);
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy