MCPcopy Create free account
hub / github.com/bytedance/bolt / evalAll

Method evalAll

bolt/expression/Expr.cpp:1398–1418  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1396 EvalCtx& context,
1397 VectorPtr& result) { evalAllImpl(rows, context, result); });
1398 } else {
1399 evalAllImpl(rows, context, result);
1400 }
1401}
1402
1403bool Expr::throwArgumentErrors(const EvalCtx& context) const {
1404 bool defaultNulls = vectorFunction_->isDefaultNullBehavior();
1405 return context.throwOnError() &&
1406 (!defaultNulls ||
1407 (supportsFlatNoNullsFastPath() && context.inputFlatNoNulls()));
1408}
1409
1410void Expr::evalAllImpl(
1411 const SelectivityVector& rows,
1412 EvalCtx& context,
1413 VectorPtr& result) {
1414 BOLT_DCHECK(rows.hasSelections());
1415
1416#ifdef ENABLE_BOLT_EXPR_JIT
1417 auto* remainingRows = &rows;
1418
1419 if (hasJITed()) {
1420 // TODO:
1421 // 1. evaluate non-compilable sub exprs.

Callers

nothing calls this directly

Calls 4

checkOrSetEmptyResultFunction · 0.85
hasSelectionsMethod · 0.80
typeEnum · 0.50
poolMethod · 0.45

Tested by

no test coverage detected