STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
toml.hpp File Reference
#include <cassert>
#include <new>
#include <string_view>
#include <string>
#include <optional>
#include <cstdint>
#include <cstddef>
#include <cstring>
#include <cfloat>
#include <climits>
#include <cmath>
#include <limits>
#include <memory>
#include <iosfwd>
#include <type_traits>
#include <vector>
#include <iterator>
#include <utility>
#include <initializer_list>
#include <map>
#include <ostream>
#include <sstream>
#include <iomanip>
#include <istream>
#include <fstream>
Include dependency graph for toml.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  inserter< T >
struct  copy_ref_< Dest, Src >
struct  copy_ref_< Dest, Src & >
struct  copy_ref_< Dest, Src && >
struct  copy_cv_< Dest, Src >
struct  copy_cv_< Dest, const Src >
struct  copy_cv_< Dest, volatile Src >
struct  copy_cv_< Dest, const volatile Src >
struct  underlying_type_< T, bool >
struct  underlying_type_< T, false >
struct  default_value_traits
struct  value_traits_base_selector< T, bool >
struct  value_traits_base_selector< T, true >
struct  value_traits< T >
struct  value_traits< const T >
struct  value_traits< volatile T >
struct  value_traits< const volatile T >
struct  value_traits< T & >
struct  value_traits< T && >
struct  integer_limits< T >
struct  integer_traits_base< T >
struct  unsigned_integer_traits< T >
struct  signed_integer_traits< T >
struct  integer_traits< T, S >
struct  integer_traits< T, false >
struct  value_traits< signed char >
struct  value_traits< unsigned char >
struct  value_traits< signed short >
struct  value_traits< unsigned short >
struct  value_traits< signed int >
struct  value_traits< unsigned int >
struct  value_traits< signed long >
struct  value_traits< unsigned long >
struct  value_traits< signed long long >
struct  value_traits< unsigned long long >
struct  float_traits_base< T, MantissaDigits, DecimalDigits >
struct  float_traits< T >
struct  value_traits< float >
struct  value_traits< double >
struct  value_traits< long double >
struct  string_traits< T >
struct  value_traits< std::string >
struct  value_traits< std::string_view >
struct  value_traits< const char * >
struct  value_traits< const char[N]>
struct  value_traits< char * >
struct  value_traits< char[N]>
struct  native_value_traits< T, NodeType >
struct  value_traits< bool >
struct  value_traits< date >
struct  value_traits< time >
struct  value_traits< date_time >
struct  node_wrapper< T >
struct  node_wrapper< const T >
struct  node_wrapper< volatile T >
struct  node_wrapper< const volatile T >
struct  node_wrapper< std::string >
struct  node_wrapper< int64_t >
struct  node_wrapper< double >
struct  node_wrapper< bool >
struct  node_wrapper< date >
struct  node_wrapper< time >
struct  node_wrapper< date_time >
struct  node_unwrapper< T >
struct  node_unwrapper< value< T > >
struct  node_unwrapper< const value< T > >
struct  node_unwrapper< volatile value< T > >
struct  node_unwrapper< const volatile value< T > >
struct  node_type_getter< T >
struct  node_type_getter< table >
struct  node_type_getter< array >
struct  node_type_getter< void >
struct  source_position
struct  source_region
struct  time
struct  time_offset
struct  date_time
class  path_component
struct  path_component::storage_t
class  path
struct  native_value_maker< T, T >
struct  value_variadic_ctor_allowed<... >
struct  value_variadic_ctor_allowed< value< T >, value< T >, Args... >
struct  inserted_type_of_< inserter< T >, false >
struct  inserted_type_of_< T, false >
struct  emplaced_type_of_< T >
struct  emplaced_type_of_< T >
struct  emplaced_type_of_< inserter< T > >
struct  array_init_elem
class  array
class  table_iterator< IsConst >
struct  table_init_pair
class  table
class  TOML_PARSE_ERROR_BASE
class  parse_result
struct  parse_result::storage_t
struct  formatter_config
class  formatter
class  utf8_byte_stream< std::basic_string_view< Char > >
class  utf8_byte_stream< std::istream >
struct  utf8_codepoint
struct  utf8_reader_interface
class  utf8_reader< T >
struct  utf8_reader< T >::currently_decoding_t
struct  utf8_reader< T >::codepoints_t
class  utf8_buffered_reader
struct  parse_integer_traits< 2 >
struct  parse_integer_traits< 8 >
struct  parse_integer_traits< 10 >
struct  parse_integer_traits< 16 >
struct  escaped_codepoint
struct  error_builder
struct  parse_scope
struct  parse_key_buffer
struct  depth_counter_scope
struct  parsed_string
struct  table_vector_scope
class  parser

Namespaces

namespace  toml
namespace  literals

Macros

#define INCLUDE_TOMLPLUSPLUS_H
#define TOMLPLUSPLUS_H
#define TOML_CPP   __cplusplus
#define TOML_CPP   0
#define TOML_MAKE_VERSION(major, minor, patch)
#define TOML_INTELLISENSE   0
#define TOML_DOXYGEN   0
#define TOML_CLANG   0
#define TOML_ICC   0
#define TOML_ICC_CL   0
#define TOML_MSVC_LIKE   0
#define TOML_MSVC   0
#define TOML_GCC_LIKE   0
#define TOML_GCC   0
#define TOML_CUDA   0
#define TOML_ARCH_ITANIUM   0
#define TOML_ARCH_AMD64   0
#define TOML_ARCH_X86   0
#define TOML_ARCH_ARM32   0
#define TOML_ARCH_ARM64   0
#define TOML_ARCH_ARM   0
#define TOML_ARCH_BITNESS   0
#define TOML_ARCH_X64   0
#define TOML_WINDOWS   0
#define TOML_UNIX   0
#define TOML_LINUX   0
#define TOML_HAS_INCLUDE(header)
#define TOML_HAS_BUILTIN(name)
#define TOML_HAS_FEATURE(name)
#define TOML_HAS_ATTR(attr)
#define TOML_HAS_CPP_ATTR(attr)
#define TOML_ATTR(...)
#define TOML_DECLSPEC(...)
#define TOML_COMPILER_HAS_EXCEPTIONS   0
#define TOML_COMPILER_HAS_RTTI   0
#define TOML_CONCAT_1(x, y)
#define TOML_CONCAT(x, y)
#define TOML_MAKE_STRING_1(s)
#define TOML_MAKE_STRING(s)
#define TOML_PRAGMA_CLANG(decl)
#define TOML_PRAGMA_CLANG_GE_8(decl)
#define TOML_PRAGMA_CLANG_GE_9(decl)
#define TOML_PRAGMA_CLANG_GE_10(decl)
#define TOML_PRAGMA_CLANG_GE_11(decl)
#define TOML_PRAGMA_GCC(decl)
#define TOML_PRAGMA_MSVC(...)
#define TOML_PRAGMA_ICC(...)
#define TOML_ALWAYS_INLINE   inline
#define TOML_NEVER_INLINE
#define TOML_ABSTRACT_INTERFACE   TOML_DECLSPEC(novtable)
#define TOML_EMPTY_BASES   TOML_DECLSPEC(empty_bases)
#define TOML_TRIVIAL_ABI
#define TOML_NODISCARD
#define TOML_NODISCARD_CTOR
#define TOML_PURE
#define TOML_CONST
#define TOML_INLINE_GETTER
#define TOML_PURE_GETTER
#define TOML_PURE_INLINE_GETTER
#define TOML_CONST_GETTER
#define TOML_CONST_INLINE_GETTER
#define TOML_ASSUME(expr)
#define TOML_UNREACHABLE   static_cast<void>(0)
#define TOML_LIKELY(...)
#define TOML_LIKELY_CASE
#define TOML_UNLIKELY(...)
#define TOML_UNLIKELY_CASE
#define TOML_FLAGS_ENUM
#define TOML_OPEN_ENUM
#define TOML_CLOSED_ENUM
#define TOML_OPEN_FLAGS_ENUM   TOML_OPEN_ENUM TOML_FLAGS_ENUM
#define TOML_CLOSED_FLAGS_ENUM   TOML_CLOSED_ENUM TOML_FLAGS_ENUM
#define TOML_MAKE_FLAGS_2(T, op, linkage)
#define TOML_MAKE_FLAGS_1(T, linkage)
#define TOML_MAKE_FLAGS(T)
#define TOML_UNUSED(...)
#define TOML_DELETE_DEFAULTS(T)
#define TOML_ASYMMETRICAL_EQUALITY_OPS(LHS, RHS, ...)
#define TOML_EVAL_BOOL_1(T, F)
#define TOML_EVAL_BOOL_0(T, F)
#define POXY_IMPLEMENTATION_DETAIL(...)
#define TOML_PUSH_WARNINGS   static_assert(true)
#define TOML_DISABLE_CODE_ANALYSIS_WARNINGS   static_assert(true)
#define TOML_DISABLE_SWITCH_WARNINGS   static_assert(true)
#define TOML_DISABLE_SUGGEST_ATTR_WARNINGS   static_assert(true)
#define TOML_DISABLE_SPAM_WARNINGS   static_assert(true)
#define TOML_DISABLE_ARITHMETIC_WARNINGS   static_assert(true)
#define TOML_POP_WARNINGS   static_assert(true)
#define TOML_DISABLE_WARNINGS   static_assert(true)
#define TOML_ENABLE_WARNINGS   static_assert(true)
#define TOML_SIMPLE_STATIC_ASSERT_MESSAGES   0
#define TOML_SHARED_LIB   0
#define TOML_HEADER_ONLY   1
#define TOML_IMPLEMENTATION   1
#define TOML_EXPORTED_CLASS
#define TOML_EXPORTED_MEMBER_FUNCTION
#define TOML_EXPORTED_STATIC_FUNCTION
#define TOML_EXPORTED_FREE_FUNCTION
#define TOML_ENABLE_UNRELEASED_FEATURES   0
#define TOML_ENABLE_PARSER   1
#define TOML_ENABLE_FORMATTERS   1
#define TOML_ENABLE_SIMD   1
#define TOML_ENABLE_WINDOWS_COMPAT   1
#define TOML_ENABLE_WINDOWS_COMPAT   0
#define TOML_INCLUDE_WINDOWS_H   0
#define TOML_HAS_CUSTOM_OPTIONAL_TYPE   0
#define TOML_EXCEPTIONS   0
#define TOML_CALLCONV
#define TOML_UNDEF_MACROS   1
#define TOML_MAX_NESTED_VALUES   256
#define TOML_LIFETIME_HOOKS   0
#define TOML_ASSERT(expr)
#define TOML_ASSERT_ASSUME(expr)
#define TOML_ENABLE_FLOAT16   0
#define TOML_INT_CHARCONV   1
#define TOML_FLOAT_CHARCONV   1
#define TOML_INT_CHARCONV   0
#define TOML_FLOAT_CHARCONV   0
#define TOML_REQUIRES(...)
#define TOML_ENABLE_IF(...)
#define TOML_CONSTRAINED_TEMPLATE(condition, ...)
#define TOML_HIDDEN_CONSTRAINT(condition, ...)
#define TOML_LIB_MAJOR   3
#define TOML_LIB_MINOR   4
#define TOML_LIB_PATCH   0
#define TOML_LANG_MAJOR   1
#define TOML_LANG_MINOR   0
#define TOML_LANG_PATCH   0
#define TOML_LIB_SINGLE_HEADER   1
#define TOML_LANG_EFFECTIVE_VERSION    TOML_MAKE_VERSION(TOML_LANG_MAJOR, TOML_LANG_MINOR, TOML_LANG_PATCH)
#define TOML_LANG_HIGHER_THAN(major, minor, patch)
#define TOML_LANG_AT_LEAST(major, minor, patch)
#define TOML_LANG_UNRELEASED    TOML_LANG_HIGHER_THAN(TOML_LANG_MAJOR, TOML_LANG_MINOR, TOML_LANG_PATCH)
#define TOML_ABI_NAMESPACES   1
#define TOML_NAMESPACE_START   namespace toml { inline namespace TOML_CONCAT(v, TOML_LIB_MAJOR)
#define TOML_NAMESPACE_END   } static_assert(true)
#define TOML_NAMESPACE   ::toml::TOML_CONCAT(v, TOML_LIB_MAJOR)
#define TOML_ABI_NAMESPACE_START(name)
#define TOML_ABI_NAMESPACE_BOOL(cond, T, F)
#define TOML_ABI_NAMESPACE_END   } static_assert(true)
#define TOML_IMPL_NAMESPACE_START   TOML_NAMESPACE_START { namespace impl
#define TOML_IMPL_NAMESPACE_END   } TOML_NAMESPACE_END
#define TOML_ANON_NAMESPACE_START   static_assert(TOML_IMPLEMENTATION); TOML_IMPL_NAMESPACE_START
#define TOML_ANON_NAMESPACE_END   TOML_IMPL_NAMESPACE_END
#define TOML_ANON_NAMESPACE   TOML_NAMESPACE::impl
#define TOML_EXTERNAL_LINKAGE   inline
#define TOML_INTERNAL_LINKAGE   inline
#define TOML_SA_NEWLINE   "\n| "
#define TOML_SA_LIST_SEP   TOML_SA_NEWLINE " - "
#define TOML_SA_LIST_BEG   TOML_SA_LIST_SEP
#define TOML_SA_LIST_END
#define TOML_SA_LIST_NEW   TOML_SA_NEWLINE TOML_SA_NEWLINE
#define TOML_SA_LIST_NXT   TOML_SA_LIST_NEW
#define TOML_SA_NATIVE_VALUE_TYPE_LIST
#define TOML_SA_NODE_TYPE_LIST
#define TOML_SA_UNWRAPPED_NODE_TYPE_LIST
#define TOML_LAUNDER(x)
#define TOML_HAS_CHAR8   0
#define TOML_ENV_MESSAGE
#define TOML_PARSER_TYPENAME   TOML_NAMESPACE::impl::impl_noex::parser
#define TOML_SA_VALUE_MESSAGE_WSTRING
#define TOML_SA_VALUE_MESSAGE_U8STRING_VIEW
#define TOML_SA_VALUE_MESSAGE_CONST_CHAR8
#define TOML_SA_VALUE_EXACT_FUNC_MESSAGE(type_arg)
#define TOML_SA_VALUE_FUNC_MESSAGE(type_arg)
#define TOML_RETURN_BOOL_FROM_FOR_EACH_BROKEN   0
#define TOML_PARSE_ERROR_BASE
#define TOML_HAS_SSE2   0
#define TOML_HAS_SSE4_1   0
#define utf8_reader_error(...)
#define utf8_reader_return_after_error(...)
#define utf8_reader_error_check(...)
#define TOML_OVERALIGNED   alignas(32)
#define utf8_buffered_reader_error_check(...)
#define TOML_RETURNS_BY_THROWING
#define push_parse_scope_2(scope, line)
#define push_parse_scope_1(scope, line)
#define push_parse_scope(scope)
#define is_eof()
#define assert_not_eof()
#define return_if_eof(...)
#define is_error()
#define return_after_error(...)
#define assert_not_error()
#define return_if_error(...)
#define return_if_error_or_eof(...)
#define parse_error_break()
#define set_error_and_return(ret, ...)
#define set_error_and_return_default(...)
#define set_error_and_return_if_eof(...)
#define advance_and_return_if_error(...)
#define advance_and_return_if_error_or_eof(...)
#define TOML_PARSE_FILE_ERROR(msg, path)

Typedefs

using default_formatter = toml_formatter
template<typename... T>
using common_signed_type = std::common_type_t<std::make_signed_t<T>...>
template<typename Dest, typename Src>
using copy_ref = typename copy_ref_<Dest, Src>::type
template<typename Dest, typename Src>
using copy_cv = typename copy_cv_<Dest, Src>::type
template<typename Dest, typename Src>
using copy_cvref
template<typename T>
using underlying_type = typename underlying_type_<T>::type
template<typename T>
using native_type_of = typename value_traits<T>::native_type
template<typename T>
using wrap_node = typename node_wrapper<std::remove_reference_t<T>>::type
template<typename T>
using unwrap_node = typename node_unwrapper<std::remove_reference_t<T>>::type
using source_path_ptr = std::shared_ptr<const std::string>
template<typename... T>
using emplaced_type_of = typename emplaced_type_of_<remove_cvref<T>...>::type
using const_array_iterator = POXY_IMPLEMENTATION_DETAIL(impl::array_iterator<true>)
using const_table_iterator = POXY_IMPLEMENTATION_DETAIL(impl::table_iterator<true>)

Functions

 TOML_ABI_NAMESPACE_BOOL (TOML_HAS_CUSTOM_OPTIONAL_TYPE, custopt, stdopt)
 TOML_ABI_NAMESPACE_BOOL (TOML_EXCEPTIONS, ex, noex)
 TOML_ABI_NAMESPACE_BOOL (TOML_EXCEPTIONS, impl_ex, impl_noex)
template<typename Char>
std::basic_ostream< Char > & operator<< (std::basic_ostream< Char > &lhs, node_type rhs)
enum TOML_OPEN_FLAGS_ENUM TOML_MAKE_FLAGS (value_flags)
enum TOML_CLOSED_FLAGS_ENUM TOML_MAKE_FLAGS (format_flags)
template<typename T>
 inserter (T &&) -> inserter< T && >
template<typename T>
 inserter (T &) -> inserter< T & >
TOML_PURE_GETTER fp_class fpclassify (const double &val) noexcept
template<typename Iterator, typename T>
TOML_PURE_GETTER auto find (Iterator start, Iterator end, const T &needle) noexcept -> decltype(&(*start))
template<typename T>
TOML_PURE_INLINE_GETTER constexpr const T & min (const T &a, const T &b) noexcept
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, std::string_view)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const std::string &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, char)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, signed char, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, signed short, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, signed int, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, signed long, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, signed long long, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, unsigned char, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, unsigned short, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, unsigned int, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, unsigned long, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, unsigned long long, value_flags={}, size_t min_digits=0)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, float, value_flags={}, bool relaxed_precision=false)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, double, value_flags={}, bool relaxed_precision=false)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, bool)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const toml::date &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const toml::time &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const toml::time_offset &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const toml::date_time &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const source_position &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const source_region &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const array &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const table &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const value< std::string > &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const value< int64_t > &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const value< double > &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const value< bool > &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const value< date > &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const value< time > &)
TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream (std::ostream &, const value< date_time > &)
template<typename T, typename U>
void print_to_stream_bookended (std::ostream &stream, const T &val, const U &bookend)
TOML_NODISCARD bool TOML_CALLCONV parse_path (std::string_view, void *, parse_path_callback< std::string_view >, parse_path_callback< size_t >)
TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION node_view< const node > TOML_CALLCONV at_path (const node &root, std::string_view path) noexcept
TOML_NODISCARD TOML_ALWAYS_INLINE path literals::operator""_tpath (const char *str, size_t len)
TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION node_view< node > TOML_CALLCONV at_path (node &root, const toml::path &path) noexcept
TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION node_view< const node > TOML_CALLCONV at_path (const node &root, const toml::path &path) noexcept
template<typename T>
 node_view (const T &) -> node_view< const node >
template<typename T>
 node_view (const T *) -> node_view< const node >
template<typename T>
 node_view (T &) -> node_view< node >
template<typename T>
 node_view (T *) -> node_view< node >
template<typename T>
TOML_CONST_GETTER optional< T > node_integer_cast (int64_t val) noexcept
template<typename T>
 value (T) -> value< impl::native_type_of< impl::remove_cvref< T > > >
template<typename T>
 value (T, value_flags) -> value< impl::native_type_of< impl::remove_cvref< T > > >
template<typename T>
TOML_NODISCARD node_ptr make_node (T &&val, value_flags flags=preserve_source_value_flags)
TOML_PURE_GETTER bool is_ascii (const char *str, size_t len) noexcept
TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION parse_result TOML_CALLCONV parse (std::string_view doc, std::string_view source_path={})
TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION parse_result TOML_CALLCONV parse (std::string_view doc, std::string &&source_path)
TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION parse_result TOML_CALLCONV parse_file (std::string_view file_path)
TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION parse_result TOML_CALLCONV parse (std::istream &doc, std::string_view source_path={})
TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION parse_result TOML_CALLCONV parse (std::istream &doc, std::string &&source_path)
 literals::TOML_ABI_NAMESPACE_BOOL (TOML_EXCEPTIONS, lit_ex, lit_noex)
TOML_NODISCARD TOML_ALWAYS_INLINE parse_result literals::operator""_toml (const char *str, size_t len)
template<typename T>
TOML_INTERNAL_LINKAGE void print_integer_to_stream (std::ostream &stream, T val, value_flags format={}, size_t min_digits=0)
template<typename T>
TOML_INTERNAL_LINKAGE void print_floating_point_to_stream (std::ostream &stream, T val, value_flags format, bool relaxed_precision)
template<typename Char>
 utf8_reader (std::basic_string_view< Char >, std::string_view) -> utf8_reader< std::basic_string_view< Char > >
template<typename Char>
 utf8_reader (std::basic_string_view< Char >, std::string &&) -> utf8_reader< std::basic_string_view< Char > >
template<typename Char>
 utf8_reader (std::basic_istream< Char > &, std::string_view) -> utf8_reader< std::basic_istream< Char > >
template<typename Char>
 utf8_reader (std::basic_istream< Char > &, std::string &&) -> utf8_reader< std::basic_istream< Char > >
TOML_PURE_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv (node_type val) noexcept
TOML_PURE_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv (const std::string &str) noexcept
TOML_CONST_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv (bool val) noexcept
TOML_PURE_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv (const utf8_codepoint &cp) noexcept
TOML_PURE_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv (const utf8_codepoint *cp) noexcept
template<typename T>
TOML_INTERNAL_LINKAGE void concatenate (char *&write_pos, char *const buf_end, const T &arg) noexcept
 TOML_MAKE_FLAGS (formatted_string_traits)

Variables

 TOML_DISABLE_WARNINGS
 TOML_ENABLE_WARNINGS
 TOML_PUSH_WARNINGS
 TOML_DISABLE_SPAM_WARNINGS
 TOML_DISABLE_SWITCH_WARNINGS
 TOML_DISABLE_SUGGEST_ATTR_WARNINGS
 TOML_NAMESPACE_START
 TOML_NAMESPACE_END
 TOML_ABI_NAMESPACE_END
 TOML_IMPL_NAMESPACE_START
constexpr std::string_view control_char_escapes []
constexpr std::string_view node_type_friendly_names []
 TOML_IMPL_NAMESPACE_END
enum TOML_OPEN_FLAGS_ENUM value_flags
enum TOML_OPEN_FLAGS_ENUM format_as_binary = 1
enum TOML_OPEN_FLAGS_ENUM format_as_octal = 2
enum TOML_OPEN_FLAGS_ENUM format_as_hexadecimal = 3
constexpr value_flags preserve_source_value_flags
enum TOML_CLOSED_FLAGS_ENUM format_flags
enum TOML_CLOSED_FLAGS_ENUM quote_dates_and_times = (1ull << 0)
enum TOML_CLOSED_FLAGS_ENUM quote_infinities_and_nans = (1ull << 1)
enum TOML_CLOSED_FLAGS_ENUM allow_literal_strings = (1ull << 2)
enum TOML_CLOSED_FLAGS_ENUM allow_multi_line_strings = (1ull << 3)
enum TOML_CLOSED_FLAGS_ENUM allow_real_tabs_in_strings = (1ull << 4)
enum TOML_CLOSED_FLAGS_ENUM allow_unicode_strings = (1ull << 5)
enum TOML_CLOSED_FLAGS_ENUM allow_binary_integers = (1ull << 6)
enum TOML_CLOSED_FLAGS_ENUM allow_octal_integers = (1ull << 7)
enum TOML_CLOSED_FLAGS_ENUM allow_hexadecimal_integers = (1ull << 8)
enum TOML_CLOSED_FLAGS_ENUM indent_sub_tables = (1ull << 9)
enum TOML_CLOSED_FLAGS_ENUM indent_array_elements = (1ull << 10)
enum TOML_CLOSED_FLAGS_ENUM indentation = indent_sub_tables | indent_array_elements
enum TOML_CLOSED_FLAGS_ENUM relaxed_float_precision = (1ull << 11)
enum TOML_CLOSED_FLAGS_ENUM terse_key_value_pairs = (1ull << 12)
template<typename T, typename... U>
constexpr bool is_one_of = (false || ... || std::is_same_v<T, U>)
template<typename... T>
constexpr bool all_integral = (std::is_integral_v<T> && ...)
template<typename T>
constexpr bool is_cvref = std::is_reference_v<T> || std::is_const_v<T> || std::is_volatile_v<T>
template<typename T>
constexpr bool is_wide_string
template<typename T>
constexpr bool value_retrieval_is_nothrow
template<typename...>
constexpr bool always_false = false
template<typename T, typename... U>
constexpr bool first_is_same = false
template<typename T, typename... U>
constexpr bool first_is_same< T, T, U... > = true
template<typename T>
constexpr bool is_native = value_traits<T>::is_native
template<typename T>
constexpr bool can_represent_native = value_traits<T>::can_represent_native
template<typename T>
constexpr bool can_partially_represent_native = value_traits<T>::can_partially_represent_native
template<typename T>
constexpr bool is_losslessly_convertible_to_native = value_traits<T>::is_losslessly_convertible_to_native
template<typename T, typename... U>
constexpr bool is_natively_one_of = is_one_of<native_type_of<T>, U...>
template<typename T>
constexpr node_type node_type_of = node_type_getter<unwrap_node<remove_cvref<T>>>::value
template<typename T, typename ConvertFrom>
constexpr bool is_constructible_or_convertible
template<typename T>
constexpr bool is_array = std::is_same_v<impl::remove_cvref<T>, array>
template<typename T>
constexpr bool is_container = is_table<T> || is_array<T>
template<typename T>
constexpr bool is_string
template<typename T>
constexpr bool is_integer
template<typename T>
constexpr bool is_floating_point
template<typename T>
constexpr bool is_number = is_integer<T> || is_floating_point<T>
template<typename T>
constexpr bool is_boolean
template<typename T>
constexpr bool is_date
template<typename T>
constexpr bool is_time
template<typename T>
constexpr bool is_date_time
template<typename T>
constexpr bool is_chronological = is_date<T> || is_time<T> || is_date_time<T>
template<typename T>
constexpr bool is_value = is_string<T> || is_number<T> || is_boolean<T> || is_chronological<T>
template<typename T>
constexpr bool is_node
template<typename T>
constexpr bool is_node_view = impl::is_one_of<impl::remove_cvref<T>, node_view<node>, node_view<const node>>
 TOML_POP_WARNINGS
 TOML_DISABLE_ARITHMETIC_WARNINGS
template<typename T>
constexpr bool is_key = std::is_same_v<impl::remove_cvref<T>, toml::key>
template<typename T>
constexpr bool is_key_or_convertible
 literals::TOML_ABI_NAMESPACE_END
 TOML_ANON_NAMESPACE_START
template<>
constexpr size_t charconv_buffer_length< int8_t > = 4
template<>
constexpr size_t charconv_buffer_length< int16_t > = 6
template<>
constexpr size_t charconv_buffer_length< int32_t > = 11
template<>
constexpr size_t charconv_buffer_length< int64_t > = 20
template<>
constexpr size_t charconv_buffer_length< uint8_t > = 3
template<>
constexpr size_t charconv_buffer_length< uint16_t > = 5
template<>
constexpr size_t charconv_buffer_length< uint32_t > = 10
template<>
constexpr size_t charconv_buffer_length< uint64_t > = 20
template<>
constexpr size_t charconv_buffer_length< float > = 64
template<>
constexpr size_t charconv_buffer_length< double > = 64
 TOML_ANON_NAMESPACE_END
TOML_INTERNAL_LINKAGE constexpr auto utf8_byte_order_mark = "\xEF\xBB\xBF"sv

Macro Definition Documentation

◆ advance_and_return_if_error

◆ advance_and_return_if_error_or_eof

#define advance_and_return_if_error_or_eof ( ...)

◆ assert_not_eof

◆ assert_not_error

#define assert_not_error ( )
Value:
#define is_error()
Definition toml.hpp:13426
#define TOML_ASSERT(expr)
Definition toml.hpp:1094

Definition at line 13428 of file toml.hpp.

Referenced by parser::parse_document().

◆ INCLUDE_TOMLPLUSPLUS_H

#define INCLUDE_TOMLPLUSPLUS_H

Definition at line 47 of file toml.hpp.

◆ is_eof

◆ is_error

◆ parse_error_break

#define parse_error_break ( )
Value:
static_assert(true)

Definition at line 13461 of file toml.hpp.

Referenced by parser::set_error_at().

◆ POXY_IMPLEMENTATION_DETAIL

#define POXY_IMPLEMENTATION_DETAIL ( ...)
Value:
__VA_ARGS__

Definition at line 658 of file toml.hpp.

◆ push_parse_scope

◆ push_parse_scope_1

#define push_parse_scope_1 ( scope,
line )
Value:
push_parse_scope_2(scope, line)
#define push_parse_scope_2(scope, line)
Definition toml.hpp:13301

Definition at line 13302 of file toml.hpp.

◆ push_parse_scope_2

#define push_parse_scope_2 ( scope,
line )
Value:
parse_scope ps_##line(current_scope, scope)

Definition at line 13301 of file toml.hpp.

◆ return_after_error

#define return_after_error ( ...)
Value:
return __VA_ARGS__

Definition at line 13427 of file toml.hpp.

Referenced by parser::parse_key(), parser::parse_key_value_pair_and_insert(), parser::parse_table_header(), and parser::parse_value().

◆ return_if_eof

#define return_if_eof ( ...)
Value:
do \
{ \
return __VA_ARGS__; \
} \
while (false)
#define TOML_UNLIKELY(...)
Definition toml.hpp:563
#define is_eof()
Definition toml.hpp:13409

Definition at line 13411 of file toml.hpp.

◆ return_if_error

◆ return_if_error_or_eof

#define return_if_error_or_eof ( ...)
Value:
do \
{ \
return __VA_ARGS__; \
} \
while (false)

Definition at line 13436 of file toml.hpp.

Referenced by parser::consume_comment(), parser::consume_leading_whitespace(), parser::consume_line_break(), and parser::consume_rest_of_line().

◆ set_error_and_return

#define set_error_and_return ( ret,
... )
Value:
do \
{ \
if (!is_error()) \
set_error(__VA_ARGS__); \
return_after_error(ret); \
} \
while (false)

Definition at line 13464 of file toml.hpp.

◆ set_error_and_return_default

◆ set_error_and_return_if_eof

◆ TOML_ABI_NAMESPACE_BOOL

#define TOML_ABI_NAMESPACE_BOOL ( cond,
T,
F )
Value:
TOML_ABI_NAMESPACE_START(TOML_CONCAT(TOML_EVAL_BOOL_, cond)(T, F))
#define TOML_CONCAT(x, y)
Definition toml.hpp:374
#define TOML_ABI_NAMESPACE_START(name)
Definition toml.hpp:1194

Definition at line 1195 of file toml.hpp.

◆ TOML_ABI_NAMESPACE_END

#define TOML_ABI_NAMESPACE_END   } static_assert(true)

Definition at line 1196 of file toml.hpp.

Referenced by TOML_ABI_NAMESPACE_BOOL(), and TOML_ABI_NAMESPACE_BOOL().

◆ TOML_ABI_NAMESPACE_START

#define TOML_ABI_NAMESPACE_START ( name)
Value:
inline namespace name { static_assert(true)

Definition at line 1194 of file toml.hpp.

◆ TOML_ABI_NAMESPACES

#define TOML_ABI_NAMESPACES   1

Definition at line 1187 of file toml.hpp.

◆ TOML_ABSTRACT_INTERFACE

#define TOML_ABSTRACT_INTERFACE   TOML_DECLSPEC(novtable)

Definition at line 448 of file toml.hpp.

◆ TOML_ALWAYS_INLINE

#define TOML_ALWAYS_INLINE   inline

Definition at line 430 of file toml.hpp.

Referenced by path::operator+=(), path::operator=(), path::str(), and path::subpath().

◆ TOML_ANON_NAMESPACE

#define TOML_ANON_NAMESPACE   TOML_NAMESPACE::impl

Definition at line 1210 of file toml.hpp.

◆ TOML_ANON_NAMESPACE_END

#define TOML_ANON_NAMESPACE_END   TOML_IMPL_NAMESPACE_END

Definition at line 1209 of file toml.hpp.

◆ TOML_ANON_NAMESPACE_START

#define TOML_ANON_NAMESPACE_START   static_assert(TOML_IMPLEMENTATION); TOML_IMPL_NAMESPACE_START

Definition at line 1208 of file toml.hpp.

◆ TOML_ARCH_AMD64

#define TOML_ARCH_AMD64   0

Definition at line 229 of file toml.hpp.

◆ TOML_ARCH_ARM

#define TOML_ARCH_ARM   0

Definition at line 257 of file toml.hpp.

◆ TOML_ARCH_ARM32

#define TOML_ARCH_ARM32   0

Definition at line 255 of file toml.hpp.

◆ TOML_ARCH_ARM64

#define TOML_ARCH_ARM64   0

Definition at line 256 of file toml.hpp.

◆ TOML_ARCH_BITNESS

#define TOML_ARCH_BITNESS   0

Definition at line 262 of file toml.hpp.

◆ TOML_ARCH_ITANIUM

#define TOML_ARCH_ITANIUM   0

Definition at line 220 of file toml.hpp.

◆ TOML_ARCH_X64

#define TOML_ARCH_X64   0

Definition at line 269 of file toml.hpp.

◆ TOML_ARCH_X86

#define TOML_ARCH_X86   0

Definition at line 238 of file toml.hpp.

◆ TOML_ASSERT

◆ TOML_ASSERT_ASSUME

◆ TOML_ASSUME

#define TOML_ASSUME ( expr)
Value:
static_cast<void>(0)

Definition at line 531 of file toml.hpp.

Referenced by formatter::print_value().

◆ TOML_ASYMMETRICAL_EQUALITY_OPS

#define TOML_ASYMMETRICAL_EQUALITY_OPS ( LHS,
RHS,
... )
Value:
__VA_ARGS__ TOML_NODISCARD \
friend bool operator==(RHS rhs, LHS lhs) noexcept \
{ \
return lhs == rhs; \
} \
__VA_ARGS__ TOML_NODISCARD \
friend bool operator!=(LHS lhs, RHS rhs) noexcept \
{ \
return !(lhs == rhs); \
} \
__VA_ARGS__ TOML_NODISCARD \
friend bool operator!=(RHS rhs, LHS lhs) noexcept \
{ \
return !(lhs == rhs); \
} \
static_assert(true)
*brief compares two JSON pointers for inequality *sa RefStringTypeRhs friend bool operator!=(const json_pointer< RefStringTypeLhs > &lhs, const json_pointer< RefStringTypeRhs > &rhs) noexcept
*brief compares two JSON pointers for equality *sa RefStringTypeRhs friend bool operator==(const json_pointer< RefStringTypeLhs > &lhs, const json_pointer< RefStringTypeRhs > &rhs) noexcept
*brief create a new JSON pointer by appending the right JSON pointer at the end of the left JSON pointer *sa const json_pointer & rhs
Definition json.hpp:13930

Definition at line 636 of file toml.hpp.

◆ TOML_ATTR

#define TOML_ATTR ( ...)

Definition at line 341 of file toml.hpp.

◆ TOML_CALLCONV

◆ TOML_CLANG

#define TOML_CLANG   0

Definition at line 123 of file toml.hpp.

◆ TOML_CLOSED_ENUM

#define TOML_CLOSED_ENUM

Definition at line 582 of file toml.hpp.

Referenced by operator<<(), parser::parse_array(), and parser::parse_inline_table().

◆ TOML_CLOSED_FLAGS_ENUM

#define TOML_CLOSED_FLAGS_ENUM   TOML_CLOSED_ENUM TOML_FLAGS_ENUM

Definition at line 587 of file toml.hpp.

Referenced by parser::parse_value().

◆ TOML_COMPILER_HAS_EXCEPTIONS

◆ TOML_COMPILER_HAS_RTTI

#define TOML_COMPILER_HAS_RTTI   0

Definition at line 368 of file toml.hpp.

◆ TOML_CONCAT

#define TOML_CONCAT ( x,
y )
Value:
#define TOML_CONCAT_1(x, y)
Definition toml.hpp:373

Definition at line 374 of file toml.hpp.

◆ TOML_CONCAT_1

#define TOML_CONCAT_1 ( x,
y )
Value:
x##y

Definition at line 373 of file toml.hpp.

◆ TOML_CONST

#define TOML_CONST

Definition at line 490 of file toml.hpp.

◆ TOML_CONST_GETTER

#define TOML_CONST_GETTER
Value:
TOML_NODISCARD \
TOML_CONST

Definition at line 510 of file toml.hpp.

◆ TOML_CONST_INLINE_GETTER

#define TOML_CONST_INLINE_GETTER
Value:
TOML_NODISCARD \
TOML_ALWAYS_INLINE \
TOML_CONST

Definition at line 515 of file toml.hpp.

Referenced by array::operator=(), and table::operator=().

◆ TOML_CONSTRAINED_TEMPLATE

#define TOML_CONSTRAINED_TEMPLATE ( condition,
... )
Value:
template <__VA_ARGS__ TOML_ENABLE_IF(condition)> \
TOML_REQUIRES(condition)

Definition at line 1135 of file toml.hpp.

Referenced by time_offset::time_offset().

◆ TOML_CPP [1/2]

#define TOML_CPP   0

Definition at line 63 of file toml.hpp.

◆ TOML_CPP [2/2]

#define TOML_CPP   __cplusplus

Definition at line 63 of file toml.hpp.

◆ TOML_CUDA

#define TOML_CUDA   0

Definition at line 211 of file toml.hpp.

◆ TOML_DECLSPEC

#define TOML_DECLSPEC ( ...)

Definition at line 350 of file toml.hpp.

◆ TOML_DELETE_DEFAULTS

#define TOML_DELETE_DEFAULTS ( T)
Value:
T(const T&) = delete; \
T(T&&) = delete; \
T& operator=(const T&) = delete; \
T& operator=(T&&) = delete

Definition at line 630 of file toml.hpp.

◆ TOML_DISABLE_ARITHMETIC_WARNINGS

#define TOML_DISABLE_ARITHMETIC_WARNINGS   static_assert(true)

Definition at line 888 of file toml.hpp.

◆ TOML_DISABLE_CODE_ANALYSIS_WARNINGS

#define TOML_DISABLE_CODE_ANALYSIS_WARNINGS   static_assert(true)

Definition at line 876 of file toml.hpp.

◆ TOML_DISABLE_SPAM_WARNINGS

#define TOML_DISABLE_SPAM_WARNINGS   static_assert(true)

Definition at line 885 of file toml.hpp.

◆ TOML_DISABLE_SUGGEST_ATTR_WARNINGS

#define TOML_DISABLE_SUGGEST_ATTR_WARNINGS   static_assert(true)

Definition at line 882 of file toml.hpp.

◆ TOML_DISABLE_SWITCH_WARNINGS

#define TOML_DISABLE_SWITCH_WARNINGS   static_assert(true)

Definition at line 879 of file toml.hpp.

◆ TOML_DISABLE_WARNINGS

#define TOML_DISABLE_WARNINGS   static_assert(true)

Definition at line 894 of file toml.hpp.

Referenced by is_ascii().

◆ TOML_DOXYGEN

#define TOML_DOXYGEN   0

Definition at line 115 of file toml.hpp.

◆ TOML_EMPTY_BASES

#define TOML_EMPTY_BASES   TOML_DECLSPEC(empty_bases)

Definition at line 449 of file toml.hpp.

◆ TOML_ENABLE_FLOAT16

#define TOML_ENABLE_FLOAT16   0

Definition at line 1103 of file toml.hpp.

◆ TOML_ENABLE_FORMATTERS

#define TOML_ENABLE_FORMATTERS   1

Definition at line 1004 of file toml.hpp.

◆ TOML_ENABLE_IF

#define TOML_ENABLE_IF ( ...)
Value:
, typename std::enable_if<(__VA_ARGS__), int>::type = 0

Definition at line 1134 of file toml.hpp.

◆ TOML_ENABLE_PARSER

#define TOML_ENABLE_PARSER   1

Definition at line 998 of file toml.hpp.

◆ TOML_ENABLE_SIMD

#define TOML_ENABLE_SIMD   1

Definition at line 1010 of file toml.hpp.

◆ TOML_ENABLE_UNRELEASED_FEATURES

#define TOML_ENABLE_UNRELEASED_FEATURES   0

Definition at line 989 of file toml.hpp.

◆ TOML_ENABLE_WARNINGS

#define TOML_ENABLE_WARNINGS   static_assert(true)

Definition at line 897 of file toml.hpp.

Referenced by is_ascii().

◆ TOML_ENABLE_WINDOWS_COMPAT [1/2]

#define TOML_ENABLE_WINDOWS_COMPAT   0

Definition at line 1020 of file toml.hpp.

◆ TOML_ENABLE_WINDOWS_COMPAT [2/2]

#define TOML_ENABLE_WINDOWS_COMPAT   1

◆ TOML_ENV_MESSAGE

#define TOML_ENV_MESSAGE
Value:
"If you're seeing this error it's because you're building toml++ for an environment that doesn't conform to " \
"one of the 'ground truths' assumed by the library. Essentially this just means that I don't have the " \
"resources to test on more platforms, but I wish I did! You can try disabling the checks by defining " \
"TOML_DISABLE_ENVIRONMENT_CHECKS, but your mileage may vary. Please consider filing an issue at " \
"https://github.com/marzer/tomlplusplus/issues to help me improve support for your target environment. " \
"Thanks!"

Definition at line 1408 of file toml.hpp.

◆ TOML_EVAL_BOOL_0

#define TOML_EVAL_BOOL_0 ( T,
F )
Value:
F

Definition at line 655 of file toml.hpp.

◆ TOML_EVAL_BOOL_1

#define TOML_EVAL_BOOL_1 ( T,
F )
Value:
T

Definition at line 654 of file toml.hpp.

◆ TOML_EXCEPTIONS

#define TOML_EXCEPTIONS   0

◆ TOML_EXPORTED_CLASS

#define TOML_EXPORTED_CLASS

Definition at line 967 of file toml.hpp.

◆ TOML_EXPORTED_FREE_FUNCTION

◆ TOML_EXPORTED_MEMBER_FUNCTION

◆ TOML_EXPORTED_STATIC_FUNCTION

#define TOML_EXPORTED_STATIC_FUNCTION

Definition at line 973 of file toml.hpp.

Referenced by path::print_to().

◆ TOML_EXTERNAL_LINKAGE

#define TOML_EXTERNAL_LINKAGE   inline

Definition at line 1211 of file toml.hpp.

Referenced by TOML_MAKE_FLAGS().

◆ TOML_FLAGS_ENUM

#define TOML_FLAGS_ENUM

Definition at line 573 of file toml.hpp.

◆ TOML_FLOAT_CHARCONV [1/2]

#define TOML_FLOAT_CHARCONV   0

Definition at line 1120 of file toml.hpp.

◆ TOML_FLOAT_CHARCONV [2/2]

#define TOML_FLOAT_CHARCONV   1

Definition at line 1120 of file toml.hpp.

◆ TOML_GCC

#define TOML_GCC   0

Definition at line 203 of file toml.hpp.

◆ TOML_GCC_LIKE

#define TOML_GCC_LIKE   0

Definition at line 195 of file toml.hpp.

◆ TOML_HAS_ATTR

#define TOML_HAS_ATTR ( attr)
Value:
0

Definition at line 323 of file toml.hpp.

◆ TOML_HAS_BUILTIN

#define TOML_HAS_BUILTIN ( name)
Value:
0

Definition at line 305 of file toml.hpp.

◆ TOML_HAS_CHAR8

#define TOML_HAS_CHAR8   0

Definition at line 1325 of file toml.hpp.

◆ TOML_HAS_CPP_ATTR

#define TOML_HAS_CPP_ATTR ( attr)
Value:
0

Definition at line 332 of file toml.hpp.

◆ TOML_HAS_CUSTOM_OPTIONAL_TYPE

#define TOML_HAS_CUSTOM_OPTIONAL_TYPE   0

Definition at line 1036 of file toml.hpp.

Referenced by TOML_ABI_NAMESPACE_BOOL().

◆ TOML_HAS_FEATURE

#define TOML_HAS_FEATURE ( name)
Value:
0

Definition at line 314 of file toml.hpp.

◆ TOML_HAS_INCLUDE

#define TOML_HAS_INCLUDE ( header)
Value:
0

Definition at line 296 of file toml.hpp.

◆ TOML_HAS_SSE2

#define TOML_HAS_SSE2   0

Definition at line 12385 of file toml.hpp.

◆ TOML_HAS_SSE4_1

#define TOML_HAS_SSE4_1   0

Definition at line 12388 of file toml.hpp.

◆ TOML_HEADER_ONLY

#define TOML_HEADER_ONLY   1

Definition at line 918 of file toml.hpp.

◆ TOML_HIDDEN_CONSTRAINT

#define TOML_HIDDEN_CONSTRAINT ( condition,
... )
Value:
TOML_CONSTRAINED_TEMPLATE(condition, __VA_ARGS__)
#define TOML_CONSTRAINED_TEMPLATE(condition,...)
Definition toml.hpp:1135

Definition at line 1138 of file toml.hpp.

◆ TOML_ICC

#define TOML_ICC   0

Definition at line 170 of file toml.hpp.

◆ TOML_ICC_CL

#define TOML_ICC_CL   0

Definition at line 171 of file toml.hpp.

◆ TOML_IMPL_NAMESPACE_END

#define TOML_IMPL_NAMESPACE_END   } TOML_NAMESPACE_END

Definition at line 1206 of file toml.hpp.

Referenced by is_ascii().

◆ TOML_IMPL_NAMESPACE_START

#define TOML_IMPL_NAMESPACE_START   TOML_NAMESPACE_START { namespace impl

Definition at line 1205 of file toml.hpp.

◆ TOML_IMPLEMENTATION

#define TOML_IMPLEMENTATION   1

Definition at line 928 of file toml.hpp.

◆ TOML_INCLUDE_WINDOWS_H

#define TOML_INCLUDE_WINDOWS_H   0

Definition at line 1029 of file toml.hpp.

◆ TOML_INLINE_GETTER

#define TOML_INLINE_GETTER
Value:
TOML_NODISCARD \
TOML_ALWAYS_INLINE

Definition at line 494 of file toml.hpp.

◆ TOML_INT_CHARCONV [1/2]

#define TOML_INT_CHARCONV   0

Definition at line 1117 of file toml.hpp.

◆ TOML_INT_CHARCONV [2/2]

#define TOML_INT_CHARCONV   1

Definition at line 1117 of file toml.hpp.

◆ TOML_INTELLISENSE

#define TOML_INTELLISENSE   0

Definition at line 106 of file toml.hpp.

◆ TOML_INTERNAL_LINKAGE

#define TOML_INTERNAL_LINKAGE   inline

Definition at line 1212 of file toml.hpp.

◆ TOML_LANG_AT_LEAST

#define TOML_LANG_AT_LEAST ( major,
minor,
patch )
Value:
#define TOML_MAKE_VERSION(major, minor, patch)
Definition toml.hpp:99
#define TOML_LANG_EFFECTIVE_VERSION
Definition toml.hpp:1170

Definition at line 1177 of file toml.hpp.

◆ TOML_LANG_EFFECTIVE_VERSION

#define TOML_LANG_EFFECTIVE_VERSION    TOML_MAKE_VERSION(TOML_LANG_MAJOR, TOML_LANG_MINOR, TOML_LANG_PATCH)

Definition at line 1170 of file toml.hpp.

◆ TOML_LANG_HIGHER_THAN

#define TOML_LANG_HIGHER_THAN ( major,
minor,
patch )
Value:

Definition at line 1174 of file toml.hpp.

◆ TOML_LANG_MAJOR

#define TOML_LANG_MAJOR   1

Definition at line 1158 of file toml.hpp.

◆ TOML_LANG_MINOR

#define TOML_LANG_MINOR   0

Definition at line 1159 of file toml.hpp.

◆ TOML_LANG_PATCH

#define TOML_LANG_PATCH   0

Definition at line 1160 of file toml.hpp.

◆ TOML_LANG_UNRELEASED

Definition at line 1180 of file toml.hpp.

Referenced by parser::parse_inline_table(), and parser::parse_time().

◆ TOML_LAUNDER

#define TOML_LAUNDER ( x)

◆ TOML_LIB_MAJOR

#define TOML_LIB_MAJOR   3

Definition at line 1154 of file toml.hpp.

◆ TOML_LIB_MINOR

#define TOML_LIB_MINOR   4

Definition at line 1155 of file toml.hpp.

◆ TOML_LIB_PATCH

#define TOML_LIB_PATCH   0

Definition at line 1156 of file toml.hpp.

◆ TOML_LIB_SINGLE_HEADER

#define TOML_LIB_SINGLE_HEADER   1

Definition at line 1164 of file toml.hpp.

◆ TOML_LIFETIME_HOOKS

#define TOML_LIFETIME_HOOKS   0

Definition at line 1081 of file toml.hpp.

◆ TOML_LIKELY

#define TOML_LIKELY ( ...)
Value:
(__VA_ARGS__)

Definition at line 550 of file toml.hpp.

◆ TOML_LIKELY_CASE

#define TOML_LIKELY_CASE

Definition at line 553 of file toml.hpp.

Referenced by parser::parse_float().

◆ TOML_LINUX

#define TOML_LINUX   0

Definition at line 288 of file toml.hpp.

◆ TOML_MAKE_FLAGS

#define TOML_MAKE_FLAGS ( T)
Value:
#define TOML_MAKE_FLAGS_1(T, linkage)
Definition toml.hpp:604

Definition at line 626 of file toml.hpp.

◆ TOML_MAKE_FLAGS_1

#define TOML_MAKE_FLAGS_1 ( T,
linkage )
Value:
static_assert(std::is_enum_v<T>); \
\
TOML_MAKE_FLAGS_2(T, &, linkage); \
TOML_MAKE_FLAGS_2(T, |, linkage); \
TOML_MAKE_FLAGS_2(T, ^, linkage); \
\
TOML_CONST_INLINE_GETTER \
linkage constexpr T operator~(T val) noexcept \
{ \
using under = std::underlying_type_t<T>; \
return static_cast<T>(~static_cast<under>(val)); \
} \
\
TOML_CONST_INLINE_GETTER \
linkage constexpr bool operator!(T val) noexcept \
{ \
using under = std::underlying_type_t<T>; \
return !static_cast<under>(val); \
} \
\
static_assert(true)

Definition at line 604 of file toml.hpp.

◆ TOML_MAKE_FLAGS_2

#define TOML_MAKE_FLAGS_2 ( T,
op,
linkage )
Value:
TOML_CONST_INLINE_GETTER \
linkage constexpr T operator op(T lhs, T rhs) noexcept \
{ \
using under = std::underlying_type_t<T>; \
return static_cast<T>(static_cast<under>(lhs) op static_cast<under>(rhs)); \
} \
\
linkage constexpr T& operator TOML_CONCAT(op, =)(T & lhs, T rhs) noexcept \
{ \
return lhs = (lhs op rhs); \
} \
\
static_assert(true)

Definition at line 590 of file toml.hpp.

◆ TOML_MAKE_STRING

#define TOML_MAKE_STRING ( s)
Value:
#define TOML_MAKE_STRING_1(s)
Definition toml.hpp:377

Definition at line 378 of file toml.hpp.

◆ TOML_MAKE_STRING_1

#define TOML_MAKE_STRING_1 ( s)
Value:
#s

Definition at line 377 of file toml.hpp.

◆ TOML_MAKE_VERSION

#define TOML_MAKE_VERSION ( major,
minor,
patch )
Value:
(((major)*10000) + ((minor)*100) + ((patch)))

Definition at line 99 of file toml.hpp.

◆ TOML_MAX_NESTED_VALUES

#define TOML_MAX_NESTED_VALUES   256

Definition at line 1063 of file toml.hpp.

◆ TOML_MSVC

#define TOML_MSVC   0

Definition at line 187 of file toml.hpp.

◆ TOML_MSVC_LIKE

#define TOML_MSVC_LIKE   0

Definition at line 179 of file toml.hpp.

◆ TOML_NAMESPACE

#define TOML_NAMESPACE   ::toml::TOML_CONCAT(v, TOML_LIB_MAJOR)

Definition at line 1193 of file toml.hpp.

◆ TOML_NAMESPACE_END

#define TOML_NAMESPACE_END   } static_assert(true)

Definition at line 1192 of file toml.hpp.

◆ TOML_NAMESPACE_START

#define TOML_NAMESPACE_START   namespace toml { inline namespace TOML_CONCAT(v, TOML_LIB_MAJOR)

Definition at line 1191 of file toml.hpp.

Referenced by operator<<().

◆ TOML_NEVER_INLINE

#define TOML_NEVER_INLINE

Definition at line 444 of file toml.hpp.

◆ TOML_NODISCARD

◆ TOML_NODISCARD_CTOR

◆ TOML_OPEN_ENUM

#define TOML_OPEN_ENUM

Definition at line 581 of file toml.hpp.

◆ TOML_OPEN_FLAGS_ENUM

#define TOML_OPEN_FLAGS_ENUM   TOML_OPEN_ENUM TOML_FLAGS_ENUM

Definition at line 586 of file toml.hpp.

◆ TOML_OVERALIGNED

#define TOML_OVERALIGNED   alignas(32)

Definition at line 12678 of file toml.hpp.

Referenced by utf8_reader< T >::read_next_block().

◆ TOML_PARSE_ERROR_BASE

#define TOML_PARSE_ERROR_BASE

Definition at line 9061 of file toml.hpp.

◆ TOML_PARSE_FILE_ERROR

#define TOML_PARSE_FILE_ERROR ( msg,
path )
Value:
return parse_result \
{ \
parse_error \
{ \
msg, source_position{}, std::make_shared<const std::string>(std::move(path)) \
} \
}

◆ TOML_PARSER_TYPENAME

#define TOML_PARSER_TYPENAME   TOML_NAMESPACE::impl::impl_noex::parser

Definition at line 1558 of file toml.hpp.

◆ TOML_POP_WARNINGS

#define TOML_POP_WARNINGS   static_assert(true)

Definition at line 891 of file toml.hpp.

Referenced by is_ascii().

◆ TOML_PRAGMA_CLANG

#define TOML_PRAGMA_CLANG ( decl)

Definition at line 384 of file toml.hpp.

◆ TOML_PRAGMA_CLANG_GE_10

#define TOML_PRAGMA_CLANG_GE_10 ( decl)

Definition at line 399 of file toml.hpp.

◆ TOML_PRAGMA_CLANG_GE_11

#define TOML_PRAGMA_CLANG_GE_11 ( decl)

Definition at line 404 of file toml.hpp.

◆ TOML_PRAGMA_CLANG_GE_8

#define TOML_PRAGMA_CLANG_GE_8 ( decl)

Definition at line 389 of file toml.hpp.

◆ TOML_PRAGMA_CLANG_GE_9

#define TOML_PRAGMA_CLANG_GE_9 ( decl)

Definition at line 394 of file toml.hpp.

◆ TOML_PRAGMA_GCC

#define TOML_PRAGMA_GCC ( decl)

Definition at line 409 of file toml.hpp.

◆ TOML_PRAGMA_ICC

#define TOML_PRAGMA_ICC ( ...)

Definition at line 419 of file toml.hpp.

◆ TOML_PRAGMA_MSVC

#define TOML_PRAGMA_MSVC ( ...)

Definition at line 414 of file toml.hpp.

◆ TOML_PURE

#define TOML_PURE

Definition at line 481 of file toml.hpp.

◆ TOML_PURE_GETTER

◆ TOML_PURE_INLINE_GETTER

#define TOML_PURE_INLINE_GETTER
Value:
TOML_NODISCARD \
TOML_ALWAYS_INLINE \
TOML_PURE

Definition at line 504 of file toml.hpp.

Referenced by path_component::equal(), table::get(), and path::path().

◆ TOML_PUSH_WARNINGS

#define TOML_PUSH_WARNINGS   static_assert(true)

Definition at line 873 of file toml.hpp.

Referenced by is_ascii().

◆ TOML_REQUIRES

#define TOML_REQUIRES ( ...)

Definition at line 1132 of file toml.hpp.

◆ TOML_RETURN_BOOL_FROM_FOR_EACH_BROKEN

#define TOML_RETURN_BOOL_FROM_FOR_EACH_BROKEN   0

Definition at line 6032 of file toml.hpp.

◆ TOML_RETURNS_BY_THROWING

#define TOML_RETURNS_BY_THROWING

Definition at line 13048 of file toml.hpp.

◆ TOML_SA_LIST_BEG

#define TOML_SA_LIST_BEG   TOML_SA_LIST_SEP

Definition at line 1240 of file toml.hpp.

◆ TOML_SA_LIST_END

#define TOML_SA_LIST_END

Definition at line 1241 of file toml.hpp.

◆ TOML_SA_LIST_NEW

#define TOML_SA_LIST_NEW   TOML_SA_NEWLINE TOML_SA_NEWLINE

Definition at line 1242 of file toml.hpp.

◆ TOML_SA_LIST_NXT

#define TOML_SA_LIST_NXT   TOML_SA_LIST_NEW

Definition at line 1243 of file toml.hpp.

◆ TOML_SA_LIST_SEP

#define TOML_SA_LIST_SEP   TOML_SA_NEWLINE " - "

Definition at line 1239 of file toml.hpp.

◆ TOML_SA_NATIVE_VALUE_TYPE_LIST

#define TOML_SA_NATIVE_VALUE_TYPE_LIST
Value:
TOML_SA_LIST_BEG "std::string" \
TOML_SA_LIST_SEP "int64_t" \
TOML_SA_LIST_SEP "double" \
TOML_SA_LIST_SEP "toml::date" \
TOML_SA_LIST_SEP "toml::time" \
TOML_SA_LIST_SEP "toml::date_time" \
#define TOML_SA_LIST_BEG
Definition toml.hpp:1240
#define TOML_SA_LIST_END
Definition toml.hpp:1241
#define TOML_SA_LIST_SEP
Definition toml.hpp:1239

Definition at line 1247 of file toml.hpp.

◆ TOML_SA_NEWLINE

#define TOML_SA_NEWLINE   "\n| "

Definition at line 1238 of file toml.hpp.

◆ TOML_SA_NODE_TYPE_LIST

#define TOML_SA_NODE_TYPE_LIST
Value:
TOML_SA_LIST_BEG "toml::table" \
TOML_SA_LIST_SEP "toml::array" \
TOML_SA_LIST_SEP "toml::value<std::string>" \
TOML_SA_LIST_SEP "toml::value<int64_t>" \
TOML_SA_LIST_SEP "toml::value<double>" \
TOML_SA_LIST_SEP "toml::value<bool>" \
TOML_SA_LIST_SEP "toml::value<toml::date>" \
TOML_SA_LIST_SEP "toml::value<toml::time>" \
TOML_SA_LIST_SEP "toml::value<toml::date_time>" \

Definition at line 1257 of file toml.hpp.

Referenced by array::do_for_each(), and table::do_for_each().

◆ TOML_SA_UNWRAPPED_NODE_TYPE_LIST

#define TOML_SA_UNWRAPPED_NODE_TYPE_LIST
Value:
TOML_SA_LIST_NEW "A native TOML value type" \
\
TOML_SA_LIST_NXT "A TOML node type" \
#define TOML_SA_NODE_TYPE_LIST
Definition toml.hpp:1257
#define TOML_SA_LIST_NEW
Definition toml.hpp:1242
#define TOML_SA_LIST_NXT
Definition toml.hpp:1243
#define TOML_SA_NATIVE_VALUE_TYPE_LIST
Definition toml.hpp:1247

Definition at line 1269 of file toml.hpp.

Referenced by array::emplace(), array::emplace_back(), array::is_homogeneous(), table::is_homogeneous(), and table::TOML_CONSTRAINED_TEMPLATE().

◆ TOML_SA_VALUE_EXACT_FUNC_MESSAGE

#define TOML_SA_VALUE_EXACT_FUNC_MESSAGE ( type_arg)
Value:
"The " type_arg " must be one of:" \
TOML_SA_LIST_NEW "A native TOML value type" \
\
TOML_SA_LIST_NXT "A non-view type capable of losslessly representing a native TOML value type" \
TOML_SA_LIST_BEG "std::string" \
TOML_SA_VALUE_MESSAGE_WSTRING \
TOML_SA_LIST_SEP "any signed integer type >= 64 bits" \
TOML_SA_LIST_SEP "any floating-point type >= 64 bits" \
\
TOML_SA_LIST_NXT "An immutable view type not requiring additional temporary storage" \
TOML_SA_LIST_BEG "std::string_view" \
TOML_SA_VALUE_MESSAGE_U8STRING_VIEW \
TOML_SA_LIST_SEP "const char*" \
TOML_SA_VALUE_MESSAGE_CONST_CHAR8 \
TOML_SA_LIST_END

Definition at line 4772 of file toml.hpp.

◆ TOML_SA_VALUE_FUNC_MESSAGE

#define TOML_SA_VALUE_FUNC_MESSAGE ( type_arg)
Value:
"The " type_arg " must be one of:" \
TOML_SA_LIST_NEW "A native TOML value type" \
\
TOML_SA_LIST_NXT "A non-view type capable of losslessly representing a native TOML value type" \
TOML_SA_LIST_BEG "std::string" \
TOML_SA_VALUE_MESSAGE_WSTRING \
TOML_SA_LIST_SEP "any signed integer type >= 64 bits" \
TOML_SA_LIST_SEP "any floating-point type >= 64 bits" \
\
TOML_SA_LIST_NXT "A non-view type capable of (reasonably) representing a native TOML value type" \
TOML_SA_LIST_BEG "any other integral type" \
TOML_SA_LIST_SEP "any floating-point type" \
\
TOML_SA_LIST_NXT "An immutable view type not requiring additional temporary storage" \
TOML_SA_LIST_BEG "std::string_view" \
TOML_SA_VALUE_MESSAGE_U8STRING_VIEW \
TOML_SA_LIST_SEP "const char*" \
TOML_SA_VALUE_MESSAGE_CONST_CHAR8 \
TOML_SA_LIST_END

Definition at line 4791 of file toml.hpp.

◆ TOML_SA_VALUE_MESSAGE_CONST_CHAR8

#define TOML_SA_VALUE_MESSAGE_CONST_CHAR8

Definition at line 4769 of file toml.hpp.

◆ TOML_SA_VALUE_MESSAGE_U8STRING_VIEW

#define TOML_SA_VALUE_MESSAGE_U8STRING_VIEW

Definition at line 4768 of file toml.hpp.

◆ TOML_SA_VALUE_MESSAGE_WSTRING

#define TOML_SA_VALUE_MESSAGE_WSTRING

Definition at line 4762 of file toml.hpp.

◆ TOML_SHARED_LIB

#define TOML_SHARED_LIB   0

Definition at line 909 of file toml.hpp.

◆ TOML_SIMPLE_STATIC_ASSERT_MESSAGES

#define TOML_SIMPLE_STATIC_ASSERT_MESSAGES   0

Definition at line 900 of file toml.hpp.

◆ TOML_TRIVIAL_ABI

#define TOML_TRIVIAL_ABI

Definition at line 455 of file toml.hpp.

◆ TOML_UNDEF_MACROS

#define TOML_UNDEF_MACROS   1

Definition at line 1059 of file toml.hpp.

◆ TOML_UNIX

#define TOML_UNIX   0

Definition at line 282 of file toml.hpp.

◆ TOML_UNLIKELY

◆ TOML_UNLIKELY_CASE

#define TOML_UNLIKELY_CASE

Definition at line 566 of file toml.hpp.

Referenced by parser::parse_basic_string().

◆ TOML_UNREACHABLE

◆ TOML_UNUSED

#define TOML_UNUSED ( ...)
Value:
static_cast<void>(__VA_ARGS__)

Definition at line 628 of file toml.hpp.

Referenced by parser::update_region_ends().

◆ TOML_WINDOWS

#define TOML_WINDOWS   0

Definition at line 276 of file toml.hpp.

◆ TOMLPLUSPLUS_H

#define TOMLPLUSPLUS_H

Definition at line 48 of file toml.hpp.

◆ utf8_buffered_reader_error_check

#define utf8_buffered_reader_error_check ( ...)
Value:
do \
{ \
if TOML_UNLIKELY(reader_.error()) \
return __VA_ARGS__; \
} \
while (false)

Definition at line 12934 of file toml.hpp.

Referenced by utf8_buffered_reader::read_next(), and utf8_buffered_reader::step_back().

◆ utf8_reader_error

#define utf8_reader_error ( ...)
Value:
err_.emplace(__VA_ARGS__)

Definition at line 12663 of file toml.hpp.

Referenced by utf8_reader< T >::read_next_block().

◆ utf8_reader_error_check

#define utf8_reader_error_check ( ...)
Value:
do \
{ \
if TOML_UNLIKELY(err_) \
return __VA_ARGS__; \
} \
while (false)

Definition at line 12665 of file toml.hpp.

Referenced by utf8_reader< T >::read_next().

◆ utf8_reader_return_after_error

#define utf8_reader_return_after_error ( ...)
Value:
return __VA_ARGS__

Definition at line 12664 of file toml.hpp.

Referenced by utf8_reader< T >::read_next_block().

Typedef Documentation

◆ common_signed_type

template<typename... T>
using common_signed_type = std::common_type_t<std::make_signed_t<T>...>

Definition at line 1658 of file toml.hpp.

◆ const_array_iterator

using const_array_iterator = POXY_IMPLEMENTATION_DETAIL(impl::array_iterator<true>)

Definition at line 6242 of file toml.hpp.

◆ const_table_iterator

using const_table_iterator = POXY_IMPLEMENTATION_DETAIL(impl::table_iterator<true>)

Definition at line 7623 of file toml.hpp.

◆ copy_cv

template<typename Dest, typename Src>
using copy_cv = typename copy_cv_<Dest, Src>::type

Definition at line 1707 of file toml.hpp.

◆ copy_cvref

template<typename Dest, typename Src>
using copy_cvref
Initial value:
copy_ref<copy_ref<copy_cv<std::remove_reference_t<Dest>, std::remove_reference_t<Src>>, Dest>, Src>
typename copy_ref_< Dest, Src >::type copy_ref
Definition toml.hpp:1684

Definition at line 1734 of file toml.hpp.

◆ copy_ref

template<typename Dest, typename Src>
using copy_ref = typename copy_ref_<Dest, Src>::type

Definition at line 1684 of file toml.hpp.

◆ default_formatter

using default_formatter = toml_formatter

Definition at line 1648 of file toml.hpp.

◆ emplaced_type_of

template<typename... T>
using emplaced_type_of = typename emplaced_type_of_<remove_cvref<T>...>::type

Definition at line 5995 of file toml.hpp.

◆ native_type_of

template<typename T>
using native_type_of = typename value_traits<T>::native_type

Definition at line 2088 of file toml.hpp.

◆ source_path_ptr

using source_path_ptr = std::shared_ptr<const std::string>

Definition at line 2508 of file toml.hpp.

◆ underlying_type

template<typename T>
using underlying_type = typename underlying_type_<T>::type

Definition at line 1756 of file toml.hpp.

◆ unwrap_node

template<typename T>
using unwrap_node = typename node_unwrapper<std::remove_reference_t<T>>::type

Definition at line 2186 of file toml.hpp.

◆ wrap_node

template<typename T>
using wrap_node = typename node_wrapper<std::remove_reference_t<T>>::type

Definition at line 2157 of file toml.hpp.

Function Documentation

◆ at_path() [1/3]

TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION node_view< const node > TOML_CALLCONV at_path ( const node & root,
const toml::path & path )
noexcept

References TOML_CALLCONV.

◆ at_path() [2/3]

TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION node_view< const node > TOML_CALLCONV at_path ( const node & root,
std::string_view path )
noexcept

◆ at_path() [3/3]

TOML_NODISCARD TOML_EXPORTED_FREE_FUNCTION node_view< node > TOML_CALLCONV at_path ( node & root,
const toml::path & path )
noexcept

◆ concatenate()

template<typename T>
TOML_INTERNAL_LINKAGE void concatenate ( char *& write_pos,
char *const buf_end,
const T & arg )
noexcept

◆ find()

template<typename Iterator, typename T>
TOML_PURE_GETTER auto find ( Iterator start,
Iterator end,
const T & needle )->decltype(&(*start))
inlinenoexcept

Definition at line 2324 of file toml.hpp.

References end(), and start().

◆ fpclassify()

TOML_PURE_GETTER fp_class fpclassify ( const double & val)
inlinenoexcept

Definition at line 2301 of file toml.hpp.

Referenced by formatter::print().

◆ inserter() [1/2]

template<typename T>
inserter ( T && ) ->inserter< T && >

◆ inserter() [2/2]

template<typename T>
inserter ( T & ) ->inserter< T & >

◆ is_ascii()

TOML_PURE_GETTER bool is_ascii ( const char * str,
size_t len )
noexcept

◆ make_node()

template<typename T>
TOML_NODISCARD node_ptr make_node ( T && val,
value_flags flags = preserve_source_value_flags )

◆ min()

template<typename T>
TOML_PURE_INLINE_GETTER constexpr const T & min ( const T & a,
const T & b )
constexprnoexcept

Definition at line 2335 of file toml.hpp.

References a, and b.

◆ node_integer_cast()

template<typename T>
TOML_CONST_GETTER optional< T > node_integer_cast ( int64_t val)
inlinenoexcept

Definition at line 4908 of file toml.hpp.

References is_cvref, and node_type_of.

◆ node_view() [1/4]

◆ node_view() [2/4]

template<typename T>
node_view ( const T * ) ->node_view< constnode >

◆ node_view() [3/4]

template<typename T>
node_view ( T & ) ->node_view< node >

◆ node_view() [4/4]

template<typename T>
node_view ( T * ) ->node_view< node >

◆ operator<<()

template<typename Char>
std::basic_ostream< Char > & operator<< ( std::basic_ostream< Char > & lhs,
node_type rhs )
inline

Definition at line 1568 of file toml.hpp.

References operator<<(), rhs, TOML_CLOSED_ENUM, and TOML_NAMESPACE_START.

Referenced by operator<<().

◆ parse() [1/4]

TOML_EXTERNAL_LINKAGE parse_result TOML_CALLCONV parse ( std::istream & doc,
std::string && source_path )

Definition at line 16282 of file toml.hpp.

References TOML_CALLCONV.

◆ parse() [2/4]

TOML_EXTERNAL_LINKAGE parse_result TOML_CALLCONV parse ( std::istream & doc,
std::string_view source_path = {} )

Definition at line 16276 of file toml.hpp.

References TOML_CALLCONV.

◆ parse() [3/4]

TOML_EXTERNAL_LINKAGE parse_result TOML_CALLCONV parse ( std::string_view doc,
std::string && source_path )

Definition at line 16270 of file toml.hpp.

References TOML_CALLCONV.

◆ parse() [4/4]

TOML_EXTERNAL_LINKAGE parse_result TOML_CALLCONV parse ( std::string_view doc,
std::string_view source_path = {} )

Definition at line 16264 of file toml.hpp.

References TOML_CALLCONV.

◆ parse_file()

TOML_EXTERNAL_LINKAGE parse_result TOML_CALLCONV parse_file ( std::string_view file_path)

Definition at line 16288 of file toml.hpp.

References TOML_CALLCONV.

◆ parse_path()

TOML_NODISCARD bool TOML_CALLCONV parse_path ( std::string_view ,
void * ,
parse_path_callback< std::string_view > ,
parse_path_callback< size_t >  )

References TOML_CALLCONV.

◆ print_floating_point_to_stream()

template<typename T>
TOML_INTERNAL_LINKAGE void print_floating_point_to_stream ( std::ostream & stream,
T val,
value_flags format,
bool relaxed_precision )

Definition at line 10384 of file toml.hpp.

References format(), res, TOML_UNREACHABLE, and value_flags::value_flags.

◆ print_integer_to_stream()

template<typename T>
TOML_INTERNAL_LINKAGE void print_integer_to_stream ( std::ostream & stream,
T val,
value_flags format = {},
size_t min_digits = 0 )

Definition at line 10297 of file toml.hpp.

References format(), and value_flags::value_flags.

◆ print_to_stream() [1/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
bool  )

◆ print_to_stream() [2/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
char  )

◆ print_to_stream() [3/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const array &  )

◆ print_to_stream() [4/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const source_position &  )

◆ print_to_stream() [5/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const source_region &  )

◆ print_to_stream() [6/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const std::string &  )

◆ print_to_stream() [7/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const table &  )

◆ print_to_stream() [8/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const toml::date &  )

◆ print_to_stream() [9/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const toml::date_time &  )

◆ print_to_stream() [10/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const toml::time &  )

◆ print_to_stream() [11/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const toml::time_offset &  )

◆ print_to_stream() [12/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const value< bool > &  )

◆ print_to_stream() [13/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const value< date > &  )

◆ print_to_stream() [14/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const value< date_time > &  )

References TOML_CALLCONV.

◆ print_to_stream() [15/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const value< double > &  )

◆ print_to_stream() [16/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const value< int64_t > &  )

◆ print_to_stream() [17/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const value< std::string > &  )

◆ print_to_stream() [18/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
const value< time > &  )

◆ print_to_stream() [19/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
double ,
value_flags = {},
bool relaxed_precision = false )

◆ print_to_stream() [20/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
float ,
value_flags = {},
bool relaxed_precision = false )

◆ print_to_stream() [21/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
signed char ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [22/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
signed int ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [23/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
signed long long ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [24/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
signed long ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [25/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
signed short ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [26/31]

◆ print_to_stream() [27/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
unsigned char ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [28/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
unsigned int ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [29/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
unsigned long long ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [30/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
unsigned long ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream() [31/31]

TOML_EXPORTED_FREE_FUNCTION void TOML_CALLCONV print_to_stream ( std::ostream & ,
unsigned short ,
value_flags = {},
size_t min_digits = 0 )

◆ print_to_stream_bookended()

template<typename T, typename U>
void print_to_stream_bookended ( std::ostream & stream,
const T & val,
const U & bookend )
inline

Definition at line 2473 of file toml.hpp.

References print_to_stream().

Referenced by formatter::print(), formatter::print(), formatter::print(), and formatter::print().

◆ to_sv() [1/5]

TOML_CONST_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv ( bool val)
noexcept

Definition at line 13123 of file toml.hpp.

◆ to_sv() [2/5]

TOML_PURE_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv ( const std::string & str)
noexcept

Definition at line 13116 of file toml.hpp.

◆ to_sv() [3/5]

TOML_PURE_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv ( const utf8_codepoint & cp)
noexcept

Definition at line 13132 of file toml.hpp.

◆ to_sv() [4/5]

TOML_PURE_GETTER TOML_INTERNAL_LINKAGE std::string_view to_sv ( const utf8_codepoint * cp)
noexcept

Definition at line 13144 of file toml.hpp.

References to_sv().

◆ to_sv() [5/5]

◆ TOML_ABI_NAMESPACE_BOOL() [1/3]

TOML_ABI_NAMESPACE_BOOL ( TOML_EXCEPTIONS ,
ex ,
noex  )

◆ TOML_ABI_NAMESPACE_BOOL() [2/3]

TOML_ABI_NAMESPACE_BOOL ( TOML_EXCEPTIONS ,
impl_ex ,
impl_noex  )

◆ TOML_ABI_NAMESPACE_BOOL() [3/3]

TOML_ABI_NAMESPACE_BOOL ( TOML_HAS_CUSTOM_OPTIONAL_TYPE ,
custopt ,
stdopt  )

◆ TOML_MAKE_FLAGS() [1/3]

enum TOML_CLOSED_FLAGS_ENUM TOML_MAKE_FLAGS ( format_flags )

◆ TOML_MAKE_FLAGS() [2/3]

TOML_MAKE_FLAGS ( formatted_string_traits )

References TOML_EXTERNAL_LINKAGE.

◆ TOML_MAKE_FLAGS() [3/3]

enum TOML_OPEN_FLAGS_ENUM TOML_MAKE_FLAGS ( value_flags )

◆ utf8_reader() [1/4]

template<typename Char>
utf8_reader ( std::basic_istream< Char > & ,
std::string &&  )->utf8_reader< std::basic_istream< Char > >

◆ utf8_reader() [2/4]

template<typename Char>
utf8_reader ( std::basic_istream< Char > & ,
std::string_view  )->utf8_reader< std::basic_istream< Char > >

◆ utf8_reader() [3/4]

template<typename Char>
utf8_reader ( std::basic_string_view< Char > ,
std::string &&  )->utf8_reader< std::basic_string_view< Char > >

◆ utf8_reader() [4/4]

template<typename Char>
utf8_reader ( std::basic_string_view< Char > ,
std::string_view  )->utf8_reader< std::basic_string_view< Char > >

◆ value() [1/2]

◆ value() [2/2]

Variable Documentation

◆ all_integral

template<typename... T>
bool all_integral = (std::is_integral_v<T> && ...)
inlineconstexpr

Definition at line 1664 of file toml.hpp.

Referenced by time_offset::time_offset(), and time::TOML_CONSTRAINED_TEMPLATE().

◆ allow_binary_integers

enum TOML_CLOSED_FLAGS_ENUM allow_binary_integers = (1ull << 6)

Definition at line 1625 of file toml.hpp.

◆ allow_hexadecimal_integers

enum TOML_CLOSED_FLAGS_ENUM allow_hexadecimal_integers = (1ull << 8)

Definition at line 1627 of file toml.hpp.

◆ allow_literal_strings

enum TOML_CLOSED_FLAGS_ENUM allow_literal_strings = (1ull << 2)

Definition at line 1621 of file toml.hpp.

◆ allow_multi_line_strings

enum TOML_CLOSED_FLAGS_ENUM allow_multi_line_strings = (1ull << 3)

Definition at line 1622 of file toml.hpp.

◆ allow_octal_integers

enum TOML_CLOSED_FLAGS_ENUM allow_octal_integers = (1ull << 7)

Definition at line 1626 of file toml.hpp.

◆ allow_real_tabs_in_strings

enum TOML_CLOSED_FLAGS_ENUM allow_real_tabs_in_strings = (1ull << 4)

Definition at line 1623 of file toml.hpp.

◆ allow_unicode_strings

enum TOML_CLOSED_FLAGS_ENUM allow_unicode_strings = (1ull << 5)

Definition at line 1624 of file toml.hpp.

◆ always_false

template<typename...>
bool always_false = false
inlineconstexpr

Definition at line 1738 of file toml.hpp.

Referenced by value().

◆ can_partially_represent_native

template<typename T>
bool can_partially_represent_native = value_traits<T>::can_partially_represent_native
inlineconstexpr

Definition at line 2094 of file toml.hpp.

◆ can_represent_native

template<typename T>
bool can_represent_native = value_traits<T>::can_represent_native
inlineconstexpr

Definition at line 2092 of file toml.hpp.

Referenced by value().

◆ charconv_buffer_length< double >

template<>
size_t charconv_buffer_length< double > = 64
inlineconstexpr

Definition at line 10293 of file toml.hpp.

◆ charconv_buffer_length< float >

template<>
size_t charconv_buffer_length< float > = 64
inlineconstexpr

Definition at line 10290 of file toml.hpp.

◆ charconv_buffer_length< int16_t >

template<>
size_t charconv_buffer_length< int16_t > = 6
inlineconstexpr

Definition at line 10269 of file toml.hpp.

◆ charconv_buffer_length< int32_t >

template<>
size_t charconv_buffer_length< int32_t > = 11
inlineconstexpr

Definition at line 10272 of file toml.hpp.

◆ charconv_buffer_length< int64_t >

template<>
size_t charconv_buffer_length< int64_t > = 20
inlineconstexpr

Definition at line 10275 of file toml.hpp.

◆ charconv_buffer_length< int8_t >

template<>
size_t charconv_buffer_length< int8_t > = 4
inlineconstexpr

Definition at line 10266 of file toml.hpp.

◆ charconv_buffer_length< uint16_t >

template<>
size_t charconv_buffer_length< uint16_t > = 5
inlineconstexpr

Definition at line 10281 of file toml.hpp.

◆ charconv_buffer_length< uint32_t >

template<>
size_t charconv_buffer_length< uint32_t > = 10
inlineconstexpr

Definition at line 10284 of file toml.hpp.

◆ charconv_buffer_length< uint64_t >

template<>
size_t charconv_buffer_length< uint64_t > = 20
inlineconstexpr

Definition at line 10287 of file toml.hpp.

◆ charconv_buffer_length< uint8_t >

template<>
size_t charconv_buffer_length< uint8_t > = 3
inlineconstexpr

Definition at line 10278 of file toml.hpp.

◆ control_char_escapes

std::string_view control_char_escapes[]
inlineconstexpr

Definition at line 1500 of file toml.hpp.

Referenced by formatter::print_string().

◆ first_is_same

template<typename T, typename... U>
bool first_is_same = false
inlineconstexpr

Definition at line 1741 of file toml.hpp.

◆ first_is_same< T, T, U... >

template<typename T, typename... U>
bool first_is_same< T, T, U... > = true
inlineconstexpr

Definition at line 1743 of file toml.hpp.

◆ format_as_binary

enum TOML_OPEN_FLAGS_ENUM format_as_binary = 1

Definition at line 1607 of file toml.hpp.

◆ format_as_hexadecimal

enum TOML_OPEN_FLAGS_ENUM format_as_hexadecimal = 3

Definition at line 1609 of file toml.hpp.

◆ format_as_octal

enum TOML_OPEN_FLAGS_ENUM format_as_octal = 2

Definition at line 1608 of file toml.hpp.

◆ format_flags

enum TOML_CLOSED_FLAGS_ENUM format_flags
strong

Definition at line 1616 of file toml.hpp.

Referenced by TOML_MAKE_FLAGS().

◆ indent_array_elements

enum TOML_CLOSED_FLAGS_ENUM indent_array_elements = (1ull << 10)

Definition at line 1629 of file toml.hpp.

◆ indent_sub_tables

enum TOML_CLOSED_FLAGS_ENUM indent_sub_tables = (1ull << 9)

Definition at line 1628 of file toml.hpp.

◆ indentation

Definition at line 1630 of file toml.hpp.

◆ is_array

template<typename T>
bool is_array = std::is_same_v<impl::remove_cvref<T>, array>
inlineconstexpr

◆ is_boolean

template<typename T>
bool is_boolean
inlineconstexpr
Initial value:
= std::is_same_v<
impl::remove_cvref<impl::wrap_node<impl::remove_cvref<T>>>,

Definition at line 2247 of file toml.hpp.

◆ is_chronological

template<typename T>
bool is_chronological = is_date<T> || is_time<T> || is_date_time<T>
inlineconstexpr

Definition at line 2267 of file toml.hpp.

◆ is_constructible_or_convertible

template<typename T, typename ConvertFrom>
bool is_constructible_or_convertible
inlineconstexpr
Initial value:
= std::is_constructible_v<T, ConvertFrom>
|| std::is_convertible_v<ConvertFrom, T>

Definition at line 2212 of file toml.hpp.

◆ is_container

template<typename T>
bool is_container = is_table<T> || is_array<T>
inlineconstexpr

Definition at line 2226 of file toml.hpp.

◆ is_cvref

template<typename T>
bool is_cvref = std::is_reference_v<T> || std::is_const_v<T> || std::is_volatile_v<T>
inlineconstexpr

Definition at line 1667 of file toml.hpp.

Referenced by node_integer_cast(), and value().

◆ is_date

template<typename T>
bool is_date
inlineconstexpr
Initial value:
= std::is_same_v<
impl::remove_cvref<impl::wrap_node<impl::remove_cvref<T>>>,

Definition at line 2252 of file toml.hpp.

◆ is_date_time

template<typename T>
bool is_date_time
inlineconstexpr
Initial value:
= std::is_same_v<
impl::remove_cvref<impl::wrap_node<impl::remove_cvref<T>>>,

Definition at line 2262 of file toml.hpp.

◆ is_floating_point

template<typename T>
bool is_floating_point
inlineconstexpr
Initial value:
= std::is_same_v<
impl::remove_cvref<impl::wrap_node<impl::remove_cvref<T>>>,

Definition at line 2239 of file toml.hpp.

◆ is_integer

template<typename T>
bool is_integer
inlineconstexpr
Initial value:
= std::is_same_v<
impl::remove_cvref<impl::wrap_node<impl::remove_cvref<T>>>,

Definition at line 2234 of file toml.hpp.

◆ is_key

template<typename T>
bool is_key = std::is_same_v<impl::remove_cvref<T>, toml::key>
inlineconstexpr

Definition at line 7420 of file toml.hpp.

◆ is_key_or_convertible

template<typename T>
bool is_key_or_convertible
inlineconstexpr
Initial value:
|| impl::is_constructible_or_convertible<toml::key, T>
constexpr bool is_key
Definition toml.hpp:7420

Definition at line 7423 of file toml.hpp.

Referenced by table::TOML_CONSTRAINED_TEMPLATE(), table::TOML_CONSTRAINED_TEMPLATE(), and table::TOML_CONSTRAINED_TEMPLATE().

◆ is_losslessly_convertible_to_native

template<typename T>
bool is_losslessly_convertible_to_native = value_traits<T>::is_losslessly_convertible_to_native
inlineconstexpr

Definition at line 2096 of file toml.hpp.

◆ is_native

template<typename T>
bool is_native = value_traits<T>::is_native
inlineconstexpr

Definition at line 2090 of file toml.hpp.

Referenced by value().

◆ is_natively_one_of

template<typename T, typename... U>
bool is_natively_one_of = is_one_of<native_type_of<T>, U...>
inlineconstexpr

Definition at line 2098 of file toml.hpp.

◆ is_node

template<typename T>
bool is_node
inlineconstexpr
Initial value:
= std::is_same_v<toml::node, impl::remove_cvref<T>>
|| std::is_base_of_v<toml::node, impl::remove_cvref<T>>

Definition at line 2273 of file toml.hpp.

◆ is_node_view

template<typename T>
bool is_node_view = impl::is_one_of<impl::remove_cvref<T>, node_view<node>, node_view<const node>>
inlineconstexpr

◆ is_number

template<typename T>
bool is_number = is_integer<T> || is_floating_point<T>
inlineconstexpr

◆ is_one_of

template<typename T, typename... U>
bool is_one_of = (false || ... || std::is_same_v<T, U>)
inlineconstexpr

Definition at line 1661 of file toml.hpp.

Referenced by value().

◆ is_string

template<typename T>
bool is_string
inlineconstexpr
Initial value:
= std::is_same_v<
impl::remove_cvref<impl::wrap_node<impl::remove_cvref<T>>>,

Definition at line 2229 of file toml.hpp.

◆ is_time

template<typename T>
bool is_time
inlineconstexpr
Initial value:
= std::is_same_v<
impl::remove_cvref<impl::wrap_node<impl::remove_cvref<T>>>,

Definition at line 2257 of file toml.hpp.

◆ is_value

template<typename T>
bool is_value = is_string<T> || is_number<T> || is_boolean<T> || is_chronological<T>
inlineconstexpr

Definition at line 2270 of file toml.hpp.

◆ is_wide_string

template<typename T>
bool is_wide_string
inlineconstexpr
Initial value:
=
is_one_of<std::decay_t<T>, const wchar_t*, wchar_t*, std::wstring_view, std::wstring>
constexpr bool is_one_of
Definition toml.hpp:1661

Definition at line 1670 of file toml.hpp.

Referenced by table::TOML_CONSTRAINED_TEMPLATE().

◆ node_type_friendly_names

std::string_view node_type_friendly_names[]
inlineconstexpr
Initial value:
=
{
"none"sv,
"table"sv,
"array"sv,
"string"sv,
"integer"sv,
"floating-point"sv,
"boolean"sv,
"date"sv,
"time"sv,
"date-time"sv
}

Definition at line 1536 of file toml.hpp.

◆ node_type_of

template<typename T>
node_type node_type_of = node_type_getter<unwrap_node<remove_cvref<T>>>::value
inlineconstexpr

Definition at line 2209 of file toml.hpp.

Referenced by node_integer_cast(), and value().

◆ preserve_source_value_flags

value_flags preserve_source_value_flags
inlineconstexpr
Initial value:
=
POXY_IMPLEMENTATION_DETAIL(value_flags{ static_cast<std::underlying_type_t<value_flags>>(-1) })
enum TOML_OPEN_FLAGS_ENUM value_flags
Definition toml.hpp:1604
#define POXY_IMPLEMENTATION_DETAIL(...)
Definition toml.hpp:658

Definition at line 1613 of file toml.hpp.

Referenced by array_init_elem::array_init_elem(), array::insert(), array::insert(), array::insert(), array::insert(), table::insert(), make_node(), array::push_back(), array::replace(), array::resize(), table_init_pair::table_init_pair(), and table::TOML_CONSTRAINED_TEMPLATE().

◆ quote_dates_and_times

enum TOML_CLOSED_FLAGS_ENUM quote_dates_and_times = (1ull << 0)

Definition at line 1619 of file toml.hpp.

◆ quote_infinities_and_nans

enum TOML_CLOSED_FLAGS_ENUM quote_infinities_and_nans = (1ull << 1)

Definition at line 1620 of file toml.hpp.

◆ relaxed_float_precision

enum TOML_CLOSED_FLAGS_ENUM relaxed_float_precision = (1ull << 11)

Definition at line 1631 of file toml.hpp.

◆ terse_key_value_pairs

enum TOML_CLOSED_FLAGS_ENUM terse_key_value_pairs = (1ull << 12)

Definition at line 1632 of file toml.hpp.

◆ TOML_ABI_NAMESPACE_END

TOML_ABI_NAMESPACE_END

Definition at line 1459 of file toml.hpp.

◆ TOML_ANON_NAMESPACE_END

TOML_ANON_NAMESPACE_END

Definition at line 10450 of file toml.hpp.

◆ TOML_ANON_NAMESPACE_START

TOML_ANON_NAMESPACE_START
Initial value:
{
template <typename T>
inline constexpr size_t charconv_buffer_length = 0

Definition at line 10260 of file toml.hpp.

◆ TOML_DISABLE_ARITHMETIC_WARNINGS

TOML_DISABLE_ARITHMETIC_WARNINGS

Definition at line 4238 of file toml.hpp.

◆ TOML_DISABLE_SPAM_WARNINGS

TOML_DISABLE_SPAM_WARNINGS

Definition at line 1279 of file toml.hpp.

◆ TOML_DISABLE_SUGGEST_ATTR_WARNINGS

TOML_DISABLE_SUGGEST_ATTR_WARNINGS

Definition at line 1281 of file toml.hpp.

◆ TOML_DISABLE_SWITCH_WARNINGS

TOML_DISABLE_SWITCH_WARNINGS

Definition at line 1280 of file toml.hpp.

◆ TOML_DISABLE_WARNINGS

TOML_DISABLE_WARNINGS

Definition at line 1090 of file toml.hpp.

◆ TOML_ENABLE_WARNINGS

TOML_ENABLE_WARNINGS

Definition at line 1092 of file toml.hpp.

◆ TOML_IMPL_NAMESPACE_END

TOML_IMPL_NAMESPACE_END

Definition at line 1552 of file toml.hpp.

◆ TOML_IMPL_NAMESPACE_START

TOML_IMPL_NAMESPACE_START
Initial value:
{
using node_ptr = std::unique_ptr<node>

Definition at line 1490 of file toml.hpp.

◆ TOML_NAMESPACE_END

TOML_NAMESPACE_END

Definition at line 1380 of file toml.hpp.

◆ TOML_NAMESPACE_START

TOML_NAMESPACE_START
Initial value:
{
template <typename T>
using optional = std::optional<T>

Definition at line 1366 of file toml.hpp.

◆ TOML_POP_WARNINGS

TOML_POP_WARNINGS

Definition at line 2349 of file toml.hpp.

◆ TOML_PUSH_WARNINGS

TOML_PUSH_WARNINGS

Definition at line 1278 of file toml.hpp.

◆ utf8_byte_order_mark

TOML_INTERNAL_LINKAGE constexpr auto utf8_byte_order_mark = "\xEF\xBB\xBF"sv
constexpr

Definition at line 12498 of file toml.hpp.

Referenced by utf8_byte_stream< std::istream >::utf8_byte_stream().

◆ value_flags

◆ value_retrieval_is_nothrow

template<typename T>
bool value_retrieval_is_nothrow
inlineconstexpr
Initial value:
= !std::is_same_v<remove_cvref<T>, std::string>
constexpr bool is_wide_string
Definition toml.hpp:1670

Definition at line 1674 of file toml.hpp.

Referenced by value().