20#include <bsoncxx/document/view_or_value.hpp>
21#include <bsoncxx/stdx/optional.hpp>
22#include <mongocxx/options/find_one_common_options.hpp>
23#include <mongocxx/stdx.hpp>
25#include <mongocxx/config/prelude.hpp>
28MONGOCXX_INLINE_NAMESPACE_BEGIN
55 const stdx::optional<bsoncxx::document::view_or_value>&
collation()
const;
95 const stdx::optional<std::chrono::milliseconds>&
max_time()
const;
114 const stdx::optional<bsoncxx::document::view_or_value>&
projection()
const;
158 const stdx::optional<bsoncxx::document::view_or_value>&
sort()
const;
179 const stdx::optional<bool>&
upsert()
const;
182 stdx::optional<bool> _bypass_document_validation;
183 stdx::optional<bsoncxx::document::view_or_value> _collation;
184 stdx::optional<std::chrono::milliseconds> _max_time;
185 stdx::optional<bsoncxx::document::view_or_value> _projection;
186 stdx::optional<mongocxx::options::return_document> _return_document;
187 stdx::optional<bsoncxx::document::view_or_value> _ordering;
188 stdx::optional<bool> _upsert;
192MONGOCXX_INLINE_NAMESPACE_END
195#include <mongocxx/config/postlude.hpp>
Class representing the optional arguments to a MongoDB find_and_modify update operation.
Definition find_one_and_update.hpp:34
const stdx::optional< bsoncxx::document::view_or_value > & collation() const
Retrieves the current collation for this operation.
find_one_and_update & collation(bsoncxx::document::view_or_value collation)
Sets the collation for this operation.
const stdx::optional< bsoncxx::document::view_or_value > & sort() const
Gets the current sort ordering.
find_one_and_update & projection(bsoncxx::document::view_or_value projection)
Sets a projection, which limits the fields to return.
find_one_and_update & return_document(return_document return_document)
Set the desired version of the updated document to return, either the original document,...
find_one_and_update & bypass_document_validation(bool bypass_document_validation)
Whether or not to bypass document validation for this operation.
const stdx::optional< std::chrono::milliseconds > & max_time() const
The current max_time setting.
find_one_and_update & max_time(std::chrono::milliseconds max_time)
Sets the maximum amount of time for this operation to run (server-side) in milliseconds.
const stdx::optional< mongocxx::options::return_document > & return_document() const
Which version of the updated document to return.
find_one_and_update & upsert(bool upsert)
Sets the upsert flag on the operation.
const stdx::optional< bool > & upsert() const
Gets the current upsert setting.
const stdx::optional< bool > & bypass_document_validation() const
The current setting for bypassing document validation.
find_one_and_update & sort(bsoncxx::document::view_or_value ordering)
Sets the order by which to search the collection for a matching document.
const stdx::optional< bsoncxx::document::view_or_value > & projection() const
Gets the current projection for this operation.