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

Function toConstant

bolt/expression/ExprToSubfieldFilter.cpp:37–54  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

35namespace bytedance::bolt::exec {
36namespace {
37VectorPtr toConstant(
38 const core::TypedExprPtr& expr,
39 core::ExpressionEvaluator* evaluator) {
40 auto exprSet = evaluator->compile(expr);
41 if (!exprSet->exprs()[0]->isConstant()) {
42 return nullptr;
43 }
44 RowVector input(
45 evaluator->pool(), ROW({}, {}), nullptr, 1, std::vector<VectorPtr>{});
46 SelectivityVector rows(1);
47 VectorPtr result;
48 try {
49 evaluator->evaluate(exprSet.get(), rows, input, result);
50 } catch (const BoltUserError&) {
51 return nullptr;
52 }
53 return result;
54}
55
56template <typename T>
57T singleValue(const VectorPtr& vector) {

Callers 8

makeNotEqualFilterMethod · 0.85
makeEqualFilterMethod · 0.85
makeGreaterThanFilterMethod · 0.85
makeLessThanFilterMethod · 0.85
makeInFilterMethod · 0.85
makeBetweenFilterMethod · 0.85

Calls 7

ROWFunction · 0.85
exprsMethod · 0.80
compileMethod · 0.45
isConstantMethod · 0.45
poolMethod · 0.45
evaluateMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected