Nui
Public Member Functions | List of all members
Nui::Lazy< ValueT > Class Template Reference

#include <lazy.hpp>

Public Member Functions

 Lazy ()=default
 
 Lazy (Lazy const &)=default
 
 Lazy (Lazy &&)=default
 
Lazyoperator= (Lazy const &)=default
 
Lazyoperator= (Lazy &&)=default
 
template<typename FuncT >
 Lazy (FuncT &&func)
 
 operator bool () const
 
bool hasValue () const
 
bool tryObtainValue () const
 
std::optional< ValueT > const & value () const &
 
std::optional< ValueT > && value () &&
 
std::optional< ValueT > value () const &&
 
std::optional< ValueT > & value () &
 

Constructor & Destructor Documentation

◆ Lazy() [1/4]

template<typename ValueT >
Nui::Lazy< ValueT >::Lazy ( )
default

◆ Lazy() [2/4]

template<typename ValueT >
Nui::Lazy< ValueT >::Lazy ( Lazy< ValueT > const &  )
default

◆ Lazy() [3/4]

template<typename ValueT >
Nui::Lazy< ValueT >::Lazy ( Lazy< ValueT > &&  )
default

◆ Lazy() [4/4]

template<typename ValueT >
template<typename FuncT >
Nui::Lazy< ValueT >::Lazy ( FuncT &&  func)
inline

Member Function Documentation

◆ hasValue()

template<typename ValueT >
bool Nui::Lazy< ValueT >::hasValue ( ) const
inline

◆ operator bool()

template<typename ValueT >
Nui::Lazy< ValueT >::operator bool ( ) const
inlineexplicit

◆ operator=() [1/2]

template<typename ValueT >
Lazy& Nui::Lazy< ValueT >::operator= ( Lazy< ValueT > &&  )
default

◆ operator=() [2/2]

template<typename ValueT >
Lazy& Nui::Lazy< ValueT >::operator= ( Lazy< ValueT > const &  )
default

◆ tryObtainValue()

template<typename ValueT >
bool Nui::Lazy< ValueT >::tryObtainValue ( ) const
inline

◆ value() [1/4]

template<typename ValueT >
std::optional<ValueT>& Nui::Lazy< ValueT >::value ( ) &
inline

◆ value() [2/4]

template<typename ValueT >
std::optional<ValueT>&& Nui::Lazy< ValueT >::value ( ) &&
inline

◆ value() [3/4]

template<typename ValueT >
std::optional<ValueT> const& Nui::Lazy< ValueT >::value ( ) const &
inline

◆ value() [4/4]

template<typename ValueT >
std::optional<ValueT> Nui::Lazy< ValueT >::value ( ) const &&
inline

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