e = isNullExpr; } else { e = e.mul(isNullExpr);
e = arg.getIsSet(); } else { e = e.mul(arg.getIsSet());
e = arg.getIsSet(); } else { e = e.mul(arg.getIsSet());
e = isNullExpr; } else { e = e.mul(isNullExpr);
eval.assign(out.getHolder().ref("scale"), JExpr.lit(ct.getType(Decimal.class).getScale())); eval.assign(out.getHolder().ref("precision"), JExpr.lit(ct.getType(Decimal.class).getPrecision())); eval.assign(out.getHolder().ref("start"), JExpr.lit(TypeHelper.getSize(getArrowMinorType(type))).mul(indexVariable)); eval.assign(out.getHolder().ref("buffer"), vector.invoke("getDataBuffer")); return; case INTERVALDAY: { JVar start = eval.decl(model.INT, "start", JExpr.lit(TypeHelper.getSize(getArrowMinorType(type))).mul(indexVariable)); eval.assign(out.getHolder().ref("days"), vector.invoke("getDataBuffer").invoke("getInt").arg(start)); eval.assign(out.getHolder().ref("milliseconds"), vector.invoke("getDataBuffer").invoke("getInt").arg(start.plus(JExpr.lit(4))));
e = arg.getIsSet(); } else { e = e.mul(arg.getIsSet());
e = arg.getIsSet(); } else { e = e.mul(arg.getIsSet());
eval.assign(out.getHolder().ref("scale"), vector.invoke("getField").invoke("getScale")); eval.assign(out.getHolder().ref("precision"), vector.invoke("getField").invoke("getPrecision")); eval.assign(out.getHolder().ref("start"), JExpr.lit(TypeHelper.getSize(type)).mul(indexVariable)); eval.assign(out.getHolder().ref("buffer"), vector.invoke("getBuffer")); return; JVar start = eval.decl(model.INT, "start", JExpr.lit(TypeHelper.getSize(type)).mul(indexVariable)); JVar data = eval.decl(model.ref(DrillBuf.class), "data", vector.invoke("getBuffer")); eval.assign(out.getHolder().ref("months"), data.invoke("getInt").arg(start)); JVar start = eval.decl(model.INT, "start", JExpr.lit(TypeHelper.getSize(type)).mul(indexVariable)); eval.assign(out.getHolder().ref("days"), vector.invoke("getBuffer").invoke("getInt").arg(start)); eval.assign(out.getHolder().ref("milliseconds"), vector.invoke("getBuffer").invoke("getInt").arg(start.plus(JExpr.lit(4))));