|
|
template<typename T , typename U > |
| using | bpstd::detail::optional_is_convertible = conjunction< std::is_constructible< T, optional< U > & >, std::is_constructible< T, const optional< U > & >, std::is_constructible< T, optional< U > && >, std::is_constructible< T, const optional< U > && >, std::is_convertible< optional< U > &, T >, std::is_convertible< const optional< U > &, T >, std::is_convertible< optional< U > &&, T >, std::is_convertible< const optional< U > &&, T > > |
| |
|
template<typename T , typename U > |
| using | bpstd::detail::optional_is_copy_convertible = conjunction< optional_is_convertible< T, U >, std::is_constructible< T, const U & > > |
| |
|
template<typename T , typename U > |
| using | bpstd::detail::optional_is_move_convertible = conjunction< optional_is_convertible< T, U >, std::is_constructible< T, U && > > |
| |
|
template<typename T , typename U > |
| using | bpstd::detail::optional_is_value_convertible = conjunction< std::is_constructible< T, U && >, negation< std::is_same< decay_t< U >, in_place_t > >, negation< std::is_same< decay_t< U >, optional< T > >> > |
| |
|
template<typename T , typename U > |
| using | bpstd::detail::optional_is_convert_assignable = conjunction< optional_is_convertible< T, U >, std::is_assignable< T &, optional< U > & >, std::is_assignable< T &, const optional< U > & >, std::is_assignable< T &, optional< U > && >, std::is_assignable< T &, const optional< U > && > > |
| |
|
template<typename T , typename U > |
| using | bpstd::detail::optional_is_copy_convert_assignable = conjunction< optional_is_convert_assignable< T, U >, std::is_constructible< T, const U & >, std::is_assignable< T &, const U & > > |
| |
|
template<typename T , typename U > |
| using | bpstd::detail::optional_is_move_convert_assignable = conjunction< optional_is_convert_assignable< T, U >, std::is_constructible< T, U && >, std::is_assignable< T &, U && > > |
| |
|
template<typename T , typename U > |
| using | bpstd::detail::optional_is_value_assignable = conjunction< negation< std::is_same< decay_t< U >, optional< T > >>, std::is_constructible< T, U >, std::is_assignable< T, U >, disjunction< negation< std::is_same< decay_t< U >, T > >, negation< std::is_scalar< T > > > > |
| |
|
|
template<typename T > |
| BPSTD_CPP14_CONSTEXPR bool | bpstd::operator== (const optional< T > &lhs, const optional< T > &rhs) |
| |
|
template<typename T > |
| BPSTD_CPP14_CONSTEXPR bool | bpstd::operator!= (const optional< T > &lhs, const optional< T > &rhs) |
| |
|
template<typename T > |
| BPSTD_CPP14_CONSTEXPR bool | bpstd::operator< (const optional< T > &lhs, const optional< T > &rhs) |
| |
|
template<typename T > |
| BPSTD_CPP14_CONSTEXPR bool | bpstd::operator> (const optional< T > &lhs, const optional< T > &rhs) |
| |
|
template<typename T > |
| BPSTD_CPP14_CONSTEXPR bool | bpstd::operator<= (const optional< T > &lhs, const optional< T > &rhs) |
| |
|
template<typename T > |
| BPSTD_CPP14_CONSTEXPR bool | bpstd::operator>= (const optional< T > &lhs, const optional< T > &rhs) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator== (const optional< T > &opt, nullopt_t) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator== (nullopt_t, const optional< T > &opt) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator!= (const optional< T > &opt, nullopt_t) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator!= (nullopt_t, const optional< T > &opt) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator< (const optional< T > &opt, nullopt_t) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator< (nullopt_t, const optional< T > &opt) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator> (const optional< T > &opt, nullopt_t) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator> (nullopt_t, const optional< T > &opt) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator<= (const optional< T > &opt, nullopt_t) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator<= (nullopt_t, const optional< T > &opt) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator>= (const optional< T > &opt, nullopt_t) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator>= (nullopt_t, const optional< T > &opt) noexcept |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator== (const optional< T > &opt, const T &value) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator== (const T &value, const optional< T > &opt) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator!= (const optional< T > &opt, const T &value) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator!= (const T &value, const optional< T > &opt) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator< (const optional< T > &opt, const T &value) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator< (const T &value, const optional< T > &opt) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator> (const optional< T > &opt, const T &value) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator> (const T &value, const optional< T > &opt) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator<= (const optional< T > &opt, const T &value) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator<= (const T &value, const optional< T > &opt) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator>= (const optional< T > &opt, const T &value) |
| |
|
template<typename T > |
| constexpr bool | bpstd::operator>= (const T &value, const optional< T > &opt) |
| |
| template<typename T > |
| constexpr optional< decay_t< T > > | bpstd::make_optional (T &&value) |
| | Creates an optional object from value. More...
|
| |
| template<typename T , typename... Args> |
| constexpr optional< T > | bpstd::make_optional (Args &&... args) |
| | Creates an optional object of type T from the given args. More...
|
| |
| template<typename T , typename U , typename... Args> |
| constexpr optional< T > | bpstd::make_optional (std::initializer_list< U > il, Args &&... args) |
| | Creates an optional object of type T from the given il args. More...
|
| |
| template<typename T > |
| void | bpstd::swap (optional< T > &lhs, optional< T > &rhs) |
| | Swaps lhs and rhs. More...
|
| |
This header provides definitions from the C++ header <optional>
Definition in file optional.hpp.