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

Method apply

bolt/expression/LambdaExpr.cpp:58–72  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

56 }
57
58 void apply(
59 const SelectivityVector& rows,
60 const SelectivityVector* validRowsInReusedResult,
61 const BufferPtr& wrapCapture,
62 EvalCtx* context,
63 const std::vector<VectorPtr>& args,
64 const BufferPtr& elementToTopLevelRows,
65 VectorPtr* result) override {
66 auto row = createRowVector(context, wrapCapture, args, rows.end());
67 EvalCtx lambdaCtx = createLambdaCtx(context, row, validRowsInReusedResult);
68 ScopedVarSetter throwOnError(
69 lambdaCtx.mutableThrowOnError(), context->throwOnError());
70 body_->eval(rows, lambdaCtx, *result);
71 transformErrorVector(lambdaCtx, context, rows, elementToTopLevelRows);
72 }
73
74 void applyNoThrow(
75 const SelectivityVector& rows,

Callers

nothing calls this directly

Calls 5

mutableThrowOnErrorMethod · 0.80
throwOnErrorMethod · 0.80
createRowVectorFunction · 0.50
endMethod · 0.45
evalMethod · 0.45

Tested by

no test coverage detected