@Override public int getInt(int ordinal) { return data.getInt(offset + ordinal); }
@Override public int getInt(int ordinal) { return columns[ordinal].getInt(rowId); }
/** * Returns the array data as the java primitive array. * For example, an array of IntegerType will return an int[]. * Throws exceptions for unhandled schemas. */ public static Object toPrimitiveJavaArray(ColumnVector.Array array) { DataType dt = array.data.dataType(); if (dt instanceof IntegerType) { int[] result = new int[array.length]; ColumnVector data = array.data; for (int i = 0; i < result.length; i++) { if (data.isNullAt(array.offset + i)) { throw new RuntimeException("Cannot handle NULL values."); } result[i] = data.getInt(array.offset + i); } return result; } else { throw new UnsupportedOperationException(); } }
@Override public CalendarInterval getInterval(int ordinal) { int month = data.getChildColumn(0).getInt(offset + ordinal); long microseconds = data.getChildColumn(1).getLong(offset + ordinal); return new CalendarInterval(month, microseconds); }
/** * Returns the decimal for rowId. */ public final Decimal getDecimal(int rowId, int precision, int scale) { if (precision <= Decimal.MAX_INT_DIGITS()) { return Decimal.createUnsafe(getInt(rowId), precision, scale); } else if (precision <= Decimal.MAX_LONG_DIGITS()) { return Decimal.createUnsafe(getLong(rowId), precision, scale); } else { // TODO: best perf? byte[] bytes = getBinary(rowId); BigInteger bigInteger = new BigInteger(bytes); BigDecimal javaDecimal = new BigDecimal(bigInteger, scale); return Decimal.apply(javaDecimal, precision, scale); } }
@Override public CalendarInterval getInterval(int ordinal) { if (columns[ordinal].isNullAt(rowId)) return null; final int months = columns[ordinal].getChildColumn(0).getInt(rowId); final long microseconds = columns[ordinal].getChildColumn(1).getLong(rowId); return new CalendarInterval(months, microseconds); }
@Override public int getInt(int i) { return vector.getInt(i); }
@Override public int getInt(int ordinal) { return columns[ordinal].getInt(rowId); }
@Override public int getInt(int ordinal) { return data.getInt(offset + ordinal); }
@Override public int getInt(int i) { checkPageLoaded(); return vector.getInt(i); }
for (int i = 0; i < length; i++) { if (!data.isNullAt(offset + i)) { list[i] = data.getInt(offset + i);
/** * Returns the array data as the java primitive array. * For example, an array of IntegerType will return an int[]. * Throws exceptions for unhandled schemas. */ public static Object toPrimitiveJavaArray(ColumnVector.Array array) { DataType dt = array.data.dataType(); if (dt instanceof IntegerType) { int[] result = new int[array.length]; ColumnVector data = array.data; for (int i = 0; i < result.length; i++) { if (data.isNullAt(array.offset + i)) { throw new RuntimeException("Cannot handle NULL values."); } result[i] = data.getInt(array.offset + i); } return result; } else { throw new UnsupportedOperationException(); } }
@Override public CalendarInterval getInterval(int ordinal) { final int months = columns[ordinal].getChildColumn(0).getInt(rowId); final long microseconds = columns[ordinal].getChildColumn(1).getLong(rowId); return new CalendarInterval(months, microseconds); }
@Override public CalendarInterval getInterval(int ordinal) { int month = data.getChildColumn(0).getInt(offset + ordinal); long microseconds = data.getChildColumn(1).getLong(offset + ordinal); return new CalendarInterval(month, microseconds); }
/** * Returns the decimal for rowId. */ public final Decimal getDecimal(int rowId, int precision, int scale) { if (precision <= Decimal.MAX_INT_DIGITS()) { return Decimal.createUnsafe(getInt(rowId), precision, scale); } else if (precision <= Decimal.MAX_LONG_DIGITS()) { return Decimal.createUnsafe(getLong(rowId), precision, scale); } else { // TODO: best perf? byte[] bytes = getBinary(rowId); BigInteger bigInteger = new BigInteger(bytes); BigDecimal javaDecimal = new BigDecimal(bigInteger, scale); return Decimal.apply(javaDecimal, precision, scale); } }
for (int i = 0; i < length; i++) { if (!data.isNullAt(offset + i)) { list[i] = data.getInt(offset + i);