optional.hpp File Reference

## Classes

struct | ranges::bad_optional_access
struct | ranges::nullopt_t
struct | ranges::nullopt_t::tag
struct | ranges::optional< T >

## Variables

template<typename U , typename T >
concept | ranges::ooptional_should_convert
| \concept optional_should_convert More...
template<typename U , typename T >
concept | ranges::ooptional_should_convert_assign
| \concept optional_should_convert_assign More...

## Variable Documentation

## ooptional_should_convert

template<typename U , typename T >

concept ranges::ooptional_should_convert

Initial value:
=
!(
constructible_from<T, optional<U> & > ||
constructible_from<T, optional<U> && > ||
constructible_from<T, optional<U> const & > ||
constructible_from<T, optional<U> const &&> ||
convertible_to<optional<U> &, T> ||
convertible_to<optional<U> &&, T> ||
convertible_to<optional<U> const &, T> ||
convertible_to<optional<U> const &&, T>
)

\concept optional_should_convert

The `optional_should_convert` concept

## ooptional_should_convert_assign

template<typename U , typename T >

concept ranges::ooptional_should_convert_assign

Initial value:
=
optional_should_convert<U, T> &&
!(assignable_from<T &, optional<U> &> ||
assignable_from<T &, optional<U> &&> ||
assignable_from<T &, optional<U> const &> ||
assignable_from<T &, optional<U> const &&>)

\concept optional_should_convert_assign

The `optional_should_convert_assign` concept