@Override public void decodeValueInto(BlockBuilder builder, Slice slice, int offset, int length) { type.writeSlice(builder, slice, offset, length); } }
@Override void writeFirstField(BlockBuilder out, SliceAndBlockPositionValueState state) { firstType.writeSlice(out, state.getFirst()); } }
@Override public void decodeValueInto(int depth, BlockBuilder builder, Slice slice, int offset, int length) { length = calculateTruncationLength(type, slice, offset, length); type.writeSlice(builder, slice, offset, length); } }
@Override void writeFirstField(BlockBuilder out, SliceAndBlockPositionValueState state) { firstType.writeSlice(out, state.getFirst()); } }
@Override public void decodeValueInto(BlockBuilder builder, Slice slice, int offset, int length) { // Note strings nested in complex structures do no use the empty string marker length = calculateTruncationLength(type, slice, offset, length); type.writeSlice(builder, slice, offset, length); } }
@Override public void decodeValueInto(int depth, BlockBuilder builder, Slice slice, int offset, int length) { byte[] data = slice.getBytes(offset, length); type.writeSlice(builder, Slices.wrappedBuffer(base64Decoder.decode(data))); } }
static void write(Type type, SliceState state, BlockBuilder out) { if (state.getSlice() == null) { out.appendNull(); } else { type.writeSlice(out, state.getSlice()); } } }
static void write(Type type, SliceState state, BlockBuilder out) { if (state.getSlice() == null) { out.appendNull(); } else { type.writeSlice(out, state.getSlice()); } } }
@Override protected void readValue(BlockBuilder blockBuilder, Type type) { if (definitionLevel == columnDescriptor.getMaxDefinitionLevel()) { Binary value = valuesReader.readBytes(); type.writeSlice(blockBuilder, Decimals.encodeUnscaledValue(new BigInteger(value.getBytes()))); } else if (isValueNull()) { blockBuilder.appendNull(); } }
@Override protected void readValue(BlockBuilder blockBuilder, Type type) { if (definitionLevel == columnDescriptor.getMaxDefinitionLevel()) { Binary value = valuesReader.readBytes(); type.writeSlice(blockBuilder, Decimals.encodeUnscaledValue(new BigInteger(value.getBytes()))); } else if (isValueNull()) { blockBuilder.appendNull(); } }
@UsedByGeneratedCode public static Block appendElement(Type elementType, Block block, Slice value) { BlockBuilder blockBuilder = elementType.createBlockBuilder(null, block.getPositionCount() + 1); for (int i = 0; i < block.getPositionCount(); i++) { elementType.appendTo(block, i, blockBuilder); } elementType.writeSlice(blockBuilder, value); return blockBuilder.build(); }
@UsedByGeneratedCode public static Block prependElement(Type elementType, Slice value, Block block) { BlockBuilder blockBuilder = elementType.createBlockBuilder(null, block.getPositionCount() + 1); elementType.writeSlice(blockBuilder, value); for (int i = 0; i < block.getPositionCount(); i++) { elementType.appendTo(block, i, blockBuilder); } return blockBuilder.build(); }
@UsedByGeneratedCode public static Block appendElement(Type elementType, Block block, Slice value) { BlockBuilder blockBuilder = elementType.createBlockBuilder(null, block.getPositionCount() + 1); for (int i = 0; i < block.getPositionCount(); i++) { elementType.appendTo(block, i, blockBuilder); } elementType.writeSlice(blockBuilder, value); return blockBuilder.build(); }
@UsedByGeneratedCode public static Block prependElement(Type elementType, Slice value, Block block) { BlockBuilder blockBuilder = elementType.createBlockBuilder(null, block.getPositionCount() + 1); elementType.writeSlice(blockBuilder, value); for (int i = 0; i < block.getPositionCount(); i++) { elementType.appendTo(block, i, blockBuilder); } return blockBuilder.build(); }
private static Block createVarWidthValueBlock(int positionCount, int mapSize) { Type valueType = createUnboundedVarcharType(); BlockBuilder valueBlockBuilder = valueType.createBlockBuilder(null, positionCount * mapSize); for (int i = 0; i < positionCount * mapSize; i++) { int wordLength = ThreadLocalRandom.current().nextInt(5, 10); valueType.writeSlice(valueBlockBuilder, utf8Slice(randomString(wordLength))); } return valueBlockBuilder.build(); }
private static Block createVarWidthValueBlock(int positionCount, int mapSize) { Type valueType = createUnboundedVarcharType(); BlockBuilder valueBlockBuilder = valueType.createBlockBuilder(null, positionCount * mapSize); for (int i = 0; i < positionCount * mapSize; i++) { int wordLength = ThreadLocalRandom.current().nextInt(5, 10); valueType.writeSlice(valueBlockBuilder, utf8Slice(randomString(wordLength))); } return valueBlockBuilder.build(); }
private static Block createVarWidthValueBlock(int positionCount, int mapSize) { Type valueType = createUnboundedVarcharType(); BlockBuilder valueBlockBuilder = valueType.createBlockBuilder(null, positionCount * mapSize); for (int i = 0; i < positionCount * mapSize; i++) { int wordLength = ThreadLocalRandom.current().nextInt(5, 10); valueType.writeSlice(valueBlockBuilder, utf8Slice(randomString(wordLength))); } return valueBlockBuilder.build(); }
private static Block createVarWidthValueBlock(int positionCount, int mapSize) { Type valueType = createUnboundedVarcharType(); BlockBuilder valueBlockBuilder = valueType.createBlockBuilder(null, positionCount * mapSize); for (int i = 0; i < positionCount * mapSize; i++) { int wordLength = ThreadLocalRandom.current().nextInt(5, 10); valueType.writeSlice(valueBlockBuilder, utf8Slice(randomString(wordLength))); } return valueBlockBuilder.build(); }
@Override public Block[] getSequenceBlocks(int start, int length) { Type type = QDIGEST.createType(typeRegistry, ImmutableList.of(TypeParameter.of(DoubleType.DOUBLE))); BlockBuilder blockBuilder = type.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { QuantileDigest qdigest = new QuantileDigest(0.0); qdigest.add(i); type.writeSlice(blockBuilder, qdigest.serialize()); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { Type type = QDIGEST.createType(typeRegistry, ImmutableList.of(TypeParameter.of(DoubleType.DOUBLE))); BlockBuilder blockBuilder = type.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { QuantileDigest qdigest = new QuantileDigest(0.0); qdigest.add(i); type.writeSlice(blockBuilder, qdigest.serialize()); } return new Block[] {blockBuilder.build()}; }