dot-xx
A personal collection of small C++ modules
Loading...
Searching...
No Matches
option.xx File Reference
module dxx.utils

Heap-allocated optional type. More...

import dxx.utils:traits;
import std;

Classes

class  dxx::utils::heap::Option< T >
 An std::optional replacement with heap-allocated storage. More...

Namespaces

namespace  dxx::utils
 The main namespace of the dxx::utils module.
namespace  dxx::utils::heap
 The namespace for heap-allocated replacements for some standard library classes.

Functions

template<typename T, std::three_way_comparable_with< T > U>
constexpr std::compare_three_way_result_t< T, U > dxx::utils::heap::operator<=> (const Option< T > &lhs, const Option< U > &rhs)
template<typename T>
constexpr std::compare_three_way_result_t< bool, bool > dxx::utils::heap::operator<=> (const Option< T > &lhs, std::nullopt_t)
template<typename T, typename U>
constexpr std::compare_three_way_result_t< T, U > dxx::utils::heap::operator<=> (const Option< T > &lhs, const U &rhs)
template<typename T, std::equality_comparable_with< T > U>
constexpr bool dxx::utils::heap::operator== (const Option< T > &lhs, const Option< U > &rhs)
template<typename T, std::equality_comparable_with< T > U>
constexpr bool dxx::utils::heap::operator== (const Option< T > &lhs, const U &rhs)
template<typename T>
constexpr bool dxx::utils::heap::operator== (const Option< T > &lhs, std::nullopt_t)
template<typename T>
constexpr void std::swap (dxx::utils::heap::Option< T > &lhs, dxx::utils::heap::Option< T > &rhs) noexcept

Detailed Description

Heap-allocated optional type.