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

Function getConstantInputs

bolt/expression/ExprCompiler.cpp:377–388  ·  view source on GitHub ↗

Returns a vector aligned with exprs vector where elements that correspond to constant expressions are set to constant values of these expressions. Elements that correspond to non-constant expressions are set to null.

Source from the content-addressed store, hash-verified

375/// constant expressions are set to constant values of these expressions.
376/// Elements that correspond to non-constant expressions are set to null.
377std::vector<VectorPtr> getConstantInputs(const std::vector<ExprPtr>& exprs) {
378 std::vector<VectorPtr> constants;
379 constants.reserve(exprs.size());
380 for (auto& expr : exprs) {
381 if (auto constantExpr = std::dynamic_pointer_cast<ConstantExpr>(expr)) {
382 constants.emplace_back(constantExpr->value());
383 } else {
384 constants.emplace_back(nullptr);
385 }
386 }
387 return constants;
388}
389
390core::TypedExprPtr rewriteExpression(const core::TypedExprPtr& expr) {
391 for (auto& rewrite : expressionRewrites()) {

Callers 1

Calls 3

reserveMethod · 0.45
sizeMethod · 0.45
valueMethod · 0.45

Tested by

no test coverage detected