Loading...
Searching...
No Matches
instance.hpp
Go to the documentation of this file.
// Copyright 2009-present MongoDB, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#pragma once
#include <mongocxx/instance-fwd.hpp> // IWYU pragma: export
//
#include <mongocxx/v1/instance.hpp> // IWYU pragma: export
#include <memory>
#include <mongocxx/logger-fwd.hpp>
#include <mongocxx/config/prelude.hpp>
namespace mongocxx {
namespace v_noabi {
class instance {
public:
MONGOCXX_ABI_EXPORT_CDECL_UNSTABLE() instance();
MONGOCXX_ABI_EXPORT_CDECL_UNSTABLE() instance(std::unique_ptr<v_noabi::logger> logger);
MONGOCXX_ABI_EXPORT_CDECL_UNSTABLE() instance(instance&& other) noexcept;
MONGOCXX_ABI_EXPORT_CDECL_UNSTABLE(instance&) operator=(instance&& other) noexcept;
MONGOCXX_ABI_EXPORT_CDECL_UNSTABLE() ~instance();
instance(instance const&) = delete;
instance& operator=(instance const&) = delete;
static MONGOCXX_ABI_EXPORT_CDECL_UNSTABLE(instance&) current();
private:
class impl;
std::unique_ptr<impl> _impl;
};
} // namespace v_noabi
} // namespace mongocxx
#include <mongocxx/config/postlude.hpp>
mongocxx::instance::instance
instance()
Creates an instance of the driver.
mongocxx::v1::logger
The interface for an unstructured log message handler.
Definition logger.hpp:55
mongocxx::v_noabi::instance::instance
instance()
Creates an instance of the driver.
mongocxx::v_noabi::instance::current
static instance & current()
MONGOCXX_ABI_EXPORT_CDECL_UNSTABLE
#define MONGOCXX_ABI_EXPORT_CDECL_UNSTABLE(...)
Equivalent to MONGOCXX_ABI_EXPORT_UNSTABLE with MONGOCXX_ABI_CDECL.
Definition config.hpp:28
prelude.hpp
The mongocxx v_noabi macro guard prelude header.
mongocxx::v_noabi
Declares entities whose ABI stability is NOT guaranteed.
mongocxx
The top-level namespace within which all mongocxx library entities are declared.
instance.hpp
Provides mongocxx::v1::instance.
instance-fwd.hpp
Declares mongocxx::v_noabi::instance.
logger-fwd.hpp
Declares utilities related to mongocxx logging.