summaryrefslogtreecommitdiff
path: root/src/mongo/db/exec/document_value/value.h
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/exec/document_value/value.h
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/exec/document_value/value.h')
-rw-r--r--src/mongo/db/exec/document_value/value.h13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/mongo/db/exec/document_value/value.h b/src/mongo/db/exec/document_value/value.h
index 62a31f25727..bf54221326c 100644
--- a/src/mongo/db/exec/document_value/value.h
+++ b/src/mongo/db/exec/document_value/value.h
@@ -344,9 +344,9 @@ public:
friend std::ostream& operator<<(std::ostream& out, const Value& v);
/**
- * Returns a cache-only copy of the value with no backing bson.
+ * Populates the internal cache by recursively walking the underlying BSON.
*/
- Value shred() const;
+ void fillCache() const;
void swap(Value& rhs) {
_storage.swap(rhs._storage);
@@ -430,16 +430,13 @@ public:
ImplicitValue(T&& arg) : Value(std::forward<T>(arg)) {}
ImplicitValue(std::initializer_list<ImplicitValue> values) : Value(convertToValues(values)) {}
- ImplicitValue(std::vector<ImplicitValue> values) : Value(convertToValues(values)) {}
- template <typename T>
- ImplicitValue(std::vector<T> values) : Value(convertToValues(values)) {}
+ ImplicitValue(std::vector<int> values) : Value(convertToValues(values)) {}
- template <typename T>
- static std::vector<Value> convertToValues(const std::vector<T>& vec) {
+ static std::vector<Value> convertToValues(const std::vector<int>& vec) {
std::vector<Value> values;
values.reserve(vec.size());
- for_each(vec.begin(), vec.end(), ([&](const T& val) { values.emplace_back(val); }));
+ for_each(vec.begin(), vec.end(), ([&](const int& val) { values.emplace_back(val); }));
return values;
}