kblib 0.2.3
General utilities library for modern C++
kblib::heap_value< T > Class Template Reference

#include <kblib/fakestd.h>

Public Types

using element_type = T
 
using pointer = T *
 
using const_pointer = const T *
 
using reference = T &
 
using const_reference = const T &
 

Public Member Functions

constexpr heap_value () noexcept
 
constexpr heap_value (std::nullptr_t) noexcept
 
template<typename... Args, enable_if_t< std::is_constructible< T, Args... >::value > = 0>
constexpr heap_value (fakestd::in_place_t, Args &&... args)
 
template<typename... Args>
constexpr heap_value (in_place_agg_t, Args &&... args)
 
constexpr heap_value (const heap_value &u)
 
constexpr heap_value (heap_value &&u) noexcept
 
constexpr auto operator= (const heap_value &u) &-> heap_value &
 
constexpr auto operator= (heap_value &&u) &noexcept -> heap_value &
 
constexpr auto operator= (const T &val) &-> heap_value &
 
constexpr auto operator= (T &&val) &-> heap_value &
 
constexpr auto assign () &-> void
 
constexpr auto assign (const T &val) &-> void
 
constexpr auto assign (T &&val) &-> void
 
template<typename... Args, enable_if_t< std::is_constructible< T, Args... >::value > = 0>
constexpr auto assign (fakestd::in_place_t, Args &&... args) -> void
 
template<typename... Args>
constexpr auto assign (in_place_agg_t, Args &&... args) -> void
 
constexpr auto reset () noexcept -> void
 
constexpr operator bool () const &noexcept
 
constexpr auto swap (heap_value &other) noexcept -> void
 
constexpr auto get () &noexcept -> pointer
 
constexpr auto get () const &noexcept -> const_pointer
 
constexpr auto value () &noexcept -> reference
 
constexpr auto value () const &noexcept -> const_reference
 
constexpr auto value () &&noexcept -> T &&
 
constexpr auto value () const &&noexcept -> const T &&
 
constexpr auto operator* () &noexcept -> reference
 
constexpr auto operator* () const &noexcept -> const_reference
 
constexpr auto operator* () &&noexcept -> T &&
 
constexpr auto operator* () const &&noexcept -> const T &&
 
constexpr auto operator-> () &noexcept -> pointer
 
constexpr auto operator-> () const &noexcept -> const_pointer
 
 ~heap_value ()=default
 

Detailed Description

template<typename T>
class kblib::heap_value< T >

Definition at line 1139 of file fakestd.h.

Member Typedef Documentation

◆ const_pointer

template<typename T >
using kblib::heap_value< T >::const_pointer = const T*

Definition at line 1143 of file fakestd.h.

◆ const_reference

template<typename T >
using kblib::heap_value< T >::const_reference = const T&

Definition at line 1145 of file fakestd.h.

◆ element_type

template<typename T >
using kblib::heap_value< T >::element_type = T

Definition at line 1141 of file fakestd.h.

◆ pointer

template<typename T >
using kblib::heap_value< T >::pointer = T*

Definition at line 1142 of file fakestd.h.

◆ reference

template<typename T >
using kblib::heap_value< T >::reference = T&

Definition at line 1144 of file fakestd.h.

Constructor & Destructor Documentation

◆ heap_value() [1/6]

template<typename T >
constexpr kblib::heap_value< T >::heap_value ( )
inlineconstexprnoexcept

Definition at line 1147 of file fakestd.h.

◆ heap_value() [2/6]

template<typename T >
constexpr kblib::heap_value< T >::heap_value ( std::nullptr_t  )
inlineconstexprnoexcept

Definition at line 1149 of file fakestd.h.

◆ heap_value() [3/6]

template<typename T >
template<typename... Args, enable_if_t< std::is_constructible< T, Args... >::value > = 0>
constexpr kblib::heap_value< T >::heap_value ( fakestd::in_place_t  ,
Args &&...  args 
)
inlineconstexpr

Definition at line 1154 of file fakestd.h.

◆ heap_value() [4/6]

template<typename T >
template<typename... Args>
constexpr kblib::heap_value< T >::heap_value ( in_place_agg_t  ,
Args &&...  args 
)
inlineconstexpr

Definition at line 1157 of file fakestd.h.

◆ heap_value() [5/6]

template<typename T >
constexpr kblib::heap_value< T >::heap_value ( const heap_value< T > &  u)
inlineconstexpr

Definition at line 1160 of file fakestd.h.

◆ heap_value() [6/6]

template<typename T >
constexpr kblib::heap_value< T >::heap_value ( heap_value< T > &&  u)
inlineconstexprnoexcept

Definition at line 1162 of file fakestd.h.

◆ ~heap_value()

template<typename T >
kblib::heap_value< T >::~heap_value ( )
default

Member Function Documentation

◆ assign() [1/5]

template<typename T >
constexpr auto kblib::heap_value< T >::assign ( ) & -> void
inlineconstexpr

Definition at line 1199 of file fakestd.h.

◆ assign() [2/5]

template<typename T >
constexpr auto kblib::heap_value< T >::assign ( const T &  val) & -> void
inlineconstexpr

Definition at line 1200 of file fakestd.h.

◆ assign() [3/5]

template<typename T >
template<typename... Args, enable_if_t< std::is_constructible< T, Args... >::value > = 0>
constexpr auto kblib::heap_value< T >::assign ( fakestd::in_place_t  ,
Args &&...  args 
) -> void
inlineconstexpr

Definition at line 1204 of file fakestd.h.

◆ assign() [4/5]

template<typename T >
template<typename... Args>
constexpr auto kblib::heap_value< T >::assign ( in_place_agg_t  ,
Args &&...  args 
) -> void
inlineconstexpr

Definition at line 1208 of file fakestd.h.

◆ assign() [5/5]

template<typename T >
constexpr auto kblib::heap_value< T >::assign ( T &&  val) & -> void
inlineconstexpr

Definition at line 1201 of file fakestd.h.

◆ get() [1/2]

template<typename T >
constexpr auto kblib::heap_value< T >::get ( ) & -> pointer
inlineconstexprnoexcept

Definition at line 1225 of file fakestd.h.

◆ get() [2/2]

template<typename T >
constexpr auto kblib::heap_value< T >::get ( ) const & -> const_pointer
inlineconstexprnoexcept

Definition at line 1228 of file fakestd.h.

◆ operator bool()

template<typename T >
constexpr kblib::heap_value< T >::operator bool ( ) const &
inlineexplicitconstexprnoexcept

Definition at line 1217 of file fakestd.h.

◆ operator*() [1/4]

template<typename T >
constexpr auto kblib::heap_value< T >::operator* ( ) && -> T&&
inlineconstexprnoexcept

Definition at line 1248 of file fakestd.h.

◆ operator*() [2/4]

template<typename T >
constexpr auto kblib::heap_value< T >::operator* ( ) & -> reference
inlineconstexprnoexcept

Definition at line 1241 of file fakestd.h.

◆ operator*() [3/4]

template<typename T >
constexpr auto kblib::heap_value< T >::operator* ( ) const && -> const T&&
inlineconstexprnoexcept

Definition at line 1249 of file fakestd.h.

◆ operator*() [4/4]

template<typename T >
constexpr auto kblib::heap_value< T >::operator* ( ) const & -> const_reference
inlineconstexprnoexcept

Definition at line 1244 of file fakestd.h.

◆ operator->() [1/2]

template<typename T >
constexpr auto kblib::heap_value< T >::operator-> ( ) & -> pointer
inlineconstexprnoexcept

Definition at line 1253 of file fakestd.h.

◆ operator->() [2/2]

template<typename T >
constexpr auto kblib::heap_value< T >::operator-> ( ) const & -> const_pointer
inlineconstexprnoexcept

Definition at line 1256 of file fakestd.h.

◆ operator=() [1/4]

template<typename T >
constexpr auto kblib::heap_value< T >::operator= ( const heap_value< T > &  u) & -> heap_value&
inlineconstexpr

Definition at line 1165 of file fakestd.h.

◆ operator=() [2/4]

template<typename T >
constexpr auto kblib::heap_value< T >::operator= ( const T &  val) & -> heap_value&
inlineconstexpr

Definition at line 1186 of file fakestd.h.

◆ operator=() [3/4]

template<typename T >
constexpr auto kblib::heap_value< T >::operator= ( heap_value< T > &&  u) & -> heap_value&
inlineconstexprnoexcept

Definition at line 1178 of file fakestd.h.

◆ operator=() [4/4]

template<typename T >
constexpr auto kblib::heap_value< T >::operator= ( T &&  val) & -> heap_value&
inlineconstexpr

Definition at line 1192 of file fakestd.h.

◆ reset()

template<typename T >
constexpr auto kblib::heap_value< T >::reset ( ) -> void
inlineconstexprnoexcept

Definition at line 1212 of file fakestd.h.

◆ swap()

template<typename T >
constexpr auto kblib::heap_value< T >::swap ( heap_value< T > &  other) -> void
inlineconstexprnoexcept

Definition at line 1221 of file fakestd.h.

◆ value() [1/4]

template<typename T >
constexpr auto kblib::heap_value< T >::value ( ) && -> T&&
inlineconstexprnoexcept

Definition at line 1236 of file fakestd.h.

◆ value() [2/4]

template<typename T >
constexpr auto kblib::heap_value< T >::value ( ) & -> reference
inlineconstexprnoexcept

Definition at line 1232 of file fakestd.h.

◆ value() [3/4]

template<typename T >
constexpr auto kblib::heap_value< T >::value ( ) const && -> const T&&
inlineconstexprnoexcept

Definition at line 1237 of file fakestd.h.

◆ value() [4/4]

template<typename T >
constexpr auto kblib::heap_value< T >::value ( ) const & -> const_reference
inlineconstexprnoexcept

Definition at line 1233 of file fakestd.h.


The documentation for this class was generated from the following file: