summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/expression_function.cpp
diff options
context:
space:
mode:
authorLucas de Castro Borges <lucas@gnuabordo.com.br>2025-02-11 15:07:35 -0300
committerLucas de Castro Borges <lucas@gnuabordo.com.br>2025-02-11 15:07:35 -0300
commit4cb8841196d0625dfa3825aa326f071cd27c7b8b (patch)
tree1682a647d4463397c119183369ae6f750d5fdcff /src/mongo/db/pipeline/expression_function.cpp
parentaa03c6362cbaa767638e6eed9b031d86dd2643d1 (diff)
parent8f0827553e09872941945a093b647a4211a9db7f (diff)
Update upstream source from tag 'upstream/6.0.0'master
Update to upstream version '6.0.0' with Debian dir 5604a80ec1c96ca76f25f40d78e6ef855abec322
Diffstat (limited to 'src/mongo/db/pipeline/expression_function.cpp')
-rw-r--r--src/mongo/db/pipeline/expression_function.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/mongo/db/pipeline/expression_function.cpp b/src/mongo/db/pipeline/expression_function.cpp
index 7bf43ffd1c9..c53b0004b31 100644
--- a/src/mongo/db/pipeline/expression_function.cpp
+++ b/src/mongo/db/pipeline/expression_function.cpp
@@ -46,18 +46,16 @@ ExpressionFunction::ExpressionFunction(ExpressionContext* const expCtx,
expCtx->sbeCompatible = false;
}
-Value ExpressionFunction::serialize(const SerializationOptions& options) const {
- MutableDocument innerOpts(Document{{"body"_sd, options.serializeLiteral(_funcSource)},
- {"args"_sd, _passedArgs->serialize(options)},
- // "lang" is purposefully not treated as a literal since it
- // is more of a selection of an enum
- {"lang"_sd, _lang}});
-
+Value ExpressionFunction::serialize(bool explain) const {
+ MutableDocument d;
+ d["body"] = Value(_funcSource);
+ d["args"] = Value(_passedArgs->serialize(explain));
+ d["lang"] = Value(_lang);
// This field will only be seralized when desugaring $where in $expr + $_internalJs
if (_assignFirstArgToThis) {
- innerOpts["_internalSetObjToThis"] = options.serializeLiteral(_assignFirstArgToThis);
+ d["_internalSetObjToThis"] = Value(_assignFirstArgToThis);
}
- return Value(Document{{kExpressionName, innerOpts.freezeToValue()}});
+ return Value(Document{{kExpressionName, d.freezeToValue()}});
}
void ExpressionFunction::_doAddDependencies(mongo::DepsTracker* deps) const {