2021-10-24 22:04:23 +00:00
|
|
|
//# This file is a part of toml++ and is subject to the the terms of the MIT license.
|
|
|
|
//# Copyright (c) Mark Gillard <mark.gillard@outlook.com.au>
|
|
|
|
//# See https://github.com/marzer/tomlplusplus/blob/master/LICENSE for the full license text.
|
|
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
#pragma once
|
|
|
|
|
2023-08-26 14:25:35 +00:00
|
|
|
#include "preprocessor.hpp"
|
2021-10-24 22:04:23 +00:00
|
|
|
TOML_DISABLE_WARNINGS;
|
|
|
|
#if !TOML_HAS_CUSTOM_OPTIONAL_TYPE
|
|
|
|
#include <optional>
|
|
|
|
#endif
|
|
|
|
TOML_ENABLE_WARNINGS;
|
|
|
|
|
|
|
|
TOML_NAMESPACE_START
|
|
|
|
{
|
|
|
|
#if TOML_HAS_CUSTOM_OPTIONAL_TYPE
|
|
|
|
|
|
|
|
template <typename T>
|
|
|
|
using optional = TOML_OPTIONAL_TYPE<T>;
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
/// \brief The 'optional' type used throughout the library.
|
|
|
|
///
|
|
|
|
/// \remarks By default this will be an alias for std::optional, but you can change the optional type
|
|
|
|
/// used by the library by defining #TOML_OPTIONAL_TYPE.
|
|
|
|
template <typename T>
|
|
|
|
using optional = std::optional<T>;
|
|
|
|
|
|
|
|
#endif
|
|
|
|
}
|
|
|
|
TOML_NAMESPACE_END;
|