summaryrefslogtreecommitdiff
path: root/src/mongo/scripting/mozjs/proxyscope.cpp
diff options
context:
space:
mode:
authorJustin Seyster <justin.seyster@mongodb.com>2022-03-25 16:18:51 -0400
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-06-28 02:33:15 +0000
commit4f8a91c37c7bee9b155bf5adcda9612b238a73f1 (patch)
tree93b724d552a921b26a750f7bca62c159ca411b64 /src/mongo/scripting/mozjs/proxyscope.cpp
parentbac08d848a7d9ba59f3cdf48bef6d2f36e7b30de (diff)
downloadmongo-4f8a91c37c7bee9b155bf5adcda9612b238a73f1.tar.gz
SERVER-61234 Expand support for $function returning scalar BSON values
(cherry picked from commit 88162ec9f40f08fcf4dd31d24aa2532744e13dee)
Diffstat (limited to 'src/mongo/scripting/mozjs/proxyscope.cpp')
-rw-r--r--src/mongo/scripting/mozjs/proxyscope.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/mongo/scripting/mozjs/proxyscope.cpp b/src/mongo/scripting/mozjs/proxyscope.cpp
index a474eb1a719..eb554b8573b 100644
--- a/src/mongo/scripting/mozjs/proxyscope.cpp
+++ b/src/mongo/scripting/mozjs/proxyscope.cpp
@@ -158,6 +158,29 @@ BSONObj MozJSProxyScope::getObject(const char* field) {
return out;
}
+OID MozJSProxyScope::getOID(const char* field) {
+ OID out;
+ run([&] { out = _implScope->getOID(field); });
+ return out;
+}
+
+void MozJSProxyScope::getBinData(const char* field,
+ std::function<void(const BSONBinData&)> withBinData) {
+ run([&] { _implScope->getBinData(field, std::move(withBinData)); });
+}
+
+Timestamp MozJSProxyScope::getTimestamp(const char* field) {
+ Timestamp out;
+ run([&] { out = _implScope->getTimestamp(field); });
+ return out;
+}
+
+JSRegEx MozJSProxyScope::getRegEx(const char* field) {
+ JSRegEx out;
+ run([&] { out = _implScope->getRegEx(field); });
+ return out;
+}
+
void MozJSProxyScope::setNumber(const char* field, double val) {
run([&] { _implScope->setNumber(field, val); });
}