#include <di/util/reference_wrapper.h>
Public Types | |
using | Value = T |
Public Member Functions | |
constexpr | ReferenceWrapper (vocab::NullOpt) |
template<typename U> requires (!concepts::ReferenceWrapper<meta::Decay<U>> && requires { get_address(util::declval<U>()); }) | |
constexpr | ReferenceWrapper (U &&value) |
constexpr | ReferenceWrapper (ReferenceWrapper const &)=default |
constexpr auto | operator= (ReferenceWrapper const &) -> ReferenceWrapper &=default |
constexpr | operator T& () const |
constexpr auto | get () const -> T & |
template<typename... Args> requires (concepts::Invocable<T&, Args...>) | |
constexpr auto | operator() (Args &&... args) const -> meta::InvokeResult< T &, Args... > |
Static Public Member Functions | |
static constexpr void | get_address (T &&)=delete |
Friends | |
constexpr friend auto | tag_invoke (types::Tag< vocab::is_nullopt >, ReferenceWrapper const &self) -> bool |
constexpr friend auto | tag_invoke (types::Tag< vocab::get_value >, ReferenceWrapper const &self) -> T & |
constexpr friend void | tag_invoke (types::Tag< vocab::set_nullopt >, ReferenceWrapper &self) |
constexpr friend void | tag_invoke (types::Tag< vocab::set_value >, ReferenceWrapper &self, T &value) |
using di::util::ReferenceWrapper< T >::Value = T |
|
inlineexplicitconstexpr |
|
inlineconstexpr |
|
constexprdefault |
|
inlineconstexpr |
|
staticconstexprdelete |
|
inlineconstexpr |
|
inlineconstexpr |
|
constexprdefault |
|
friend |
|
friend |
|
friend |
|
friend |