|
template<typename _Up , typename enable_if< __and_< is_constructible< _Tp, _Up && >, is_convertible< _Up &&, _Tp >, __not_< __is_propagate_const< typename decay< _Up >::type > > >::value, bool >::type = true> |
constexpr | propagate_const (_Up &&__u) |
|
template<typename _Up , typename enable_if< __and_< is_constructible< _Tp, _Up && >, __not_< is_convertible< _Up &&, _Tp > >, __not_< __is_propagate_const< typename decay< _Up >::type > > >::value, bool >::type = false> |
constexpr | propagate_const (_Up &&__u) |
|
| propagate_const (const propagate_const &__p)=delete |
|
constexpr | propagate_const (propagate_const &&__p)=default |
|
template<typename _Up , typename enable_if< __and_< is_constructible< _Tp, _Up && >, is_convertible< _Up &&, _Tp > >::value, bool >::type = true> |
constexpr | propagate_const (propagate_const< _Up > &&__pu) |
|
template<typename _Up , typename enable_if< __and_< is_constructible< _Tp, _Up && >, __not_< is_convertible< _Up &&, _Tp > > >::value, bool >::type = false> |
constexpr | propagate_const (propagate_const< _Up > &&__pu) |
|
constexpr element_type * | get () |
|
constexpr const element_type * | get () const |
|
constexpr | operator bool () const |
|
template<typename _Up = _Tp, typename enable_if< __or_< is_pointer< _Up >, is_convertible< _Up, const element_type * > >::value, bool >::type = true> |
constexpr | operator const element_type * () const |
|
template<typename _Up = _Tp, typename enable_if< __or_< is_pointer< _Up >, is_convertible< _Up, const element_type * > >::value, bool >::type = true> |
constexpr | operator element_type * () |
|
constexpr element_type & | operator* () |
|
constexpr const element_type & | operator* () const |
|
constexpr element_type * | operator-> () |
|
constexpr const element_type * | operator-> () const |
|
template<typename _Up , typename = typename enable_if<__and_<is_convertible<_Up&&, _Tp>, __not_<__is_propagate_const< typename decay<_Up>::type>> >::value>::type> |
constexpr propagate_const & | operator= (_Up &&__u) |
|
propagate_const & | operator= (const propagate_const &__p)=delete |
|
constexpr propagate_const & | operator= (propagate_const &&__p)=default |
|
template<typename _Up , typename = typename enable_if<is_convertible<_Up&&, _Tp>::value>::type> |
constexpr propagate_const & | operator= (propagate_const< _Up > &&__pu) |
|
constexpr void | swap (propagate_const &__pt) noexcept(__is_nothrow_swappable< _Tp >::value) |
|
template<typename _Tp>
class std::experimental::fundamentals_v2::propagate_const< _Tp >
Const-propagating wrapper.
Definition at line 64 of file propagate_const.