.TH "std::experimental::propagate_const< _Tp >" 3cxx "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME std::experimental::propagate_const< _Tp > \- Const-propagating wrapper\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Public Types" .in +1c .ti -1c .RI "\fBtypedef\fP \fBremove_reference_t\fP< \fBdecltype\fP(*\fBstd::declval\fP< _Tp & >())> \fBelement_type\fP" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "template<\fBtypename\fP _Up , \fBtypename\fP \fBenable_if\fP< __and_< \fBis_constructible\fP< _Tp, _Up && >, \fBis_convertible\fP< _Up &&, _Tp >, __not_< __is_propagate_const< \fBtypename\fP \fBdecay\fP< _Up >::type > > >::value, bool >::type = true> \fBconstexpr\fP \fBpropagate_const\fP (_Up &&\fB__u\fP)" .br .ti -1c .RI "template<\fBtypename\fP _Up , \fBtypename\fP \fBenable_if\fP< __and_< \fBis_constructible\fP< _Tp, _Up && >, __not_< \fBis_convertible\fP< _Up &&, _Tp > >, __not_< __is_propagate_const< \fBtypename\fP \fBdecay\fP< _Up >::type > > >::value, bool >::type = false> \fBconstexpr\fP \fBpropagate_const\fP (_Up &&\fB__u\fP)" .br .ti -1c .RI "\fBpropagate_const\fP (\fBconst\fP \fBpropagate_const\fP &__p)=\fBdelete\fP" .br .ti -1c .RI "\fBconstexpr\fP \fBpropagate_const\fP (\fBpropagate_const\fP &&__p)=\fBdefault\fP" .br .ti -1c .RI "template<\fBtypename\fP _Up , \fBtypename\fP \fBenable_if\fP< __and_< \fBis_constructible\fP< _Tp, _Up && >, \fBis_convertible\fP< _Up &&, _Tp > >::value, bool >::type = true> \fBconstexpr\fP \fBpropagate_const\fP (\fBpropagate_const\fP< _Up > &&\fB__pu\fP)" .br .ti -1c .RI "template<\fBtypename\fP _Up , \fBtypename\fP \fBenable_if\fP< __and_< \fBis_constructible\fP< _Tp, _Up && >, __not_< \fBis_convertible\fP< _Up &&, _Tp > > >::value, bool >::type = false> \fBconstexpr\fP \fBpropagate_const\fP (\fBpropagate_const\fP< _Up > &&\fB__pu\fP)" .br .ti -1c .RI "\fBconstexpr\fP \fBelement_type\fP * \fBget\fP ()" .br .ti -1c .RI "\fBconstexpr\fP \fBconst\fP \fBelement_type\fP * \fBget\fP () \fBconst\fP" .br .ti -1c .RI "\fBconstexpr\fP \fBoperator bool\fP () \fBconst\fP" .br .ti -1c .RI "template<\fBtypename\fP _Up = _Tp, \fBtypename\fP \fBenable_if\fP< __or_< \fBis_pointer\fP< _Up >, \fBis_convertible\fP< _Up, \fBconst\fP \fBelement_type\fP * > >::value, bool >::type = true> \fBconstexpr\fP \fBoperator const element_type *\fP () \fBconst\fP" .br .ti -1c .RI "template<\fBtypename\fP _Up = _Tp, \fBtypename\fP \fBenable_if\fP< __or_< \fBis_pointer\fP< _Up >, \fBis_convertible\fP< _Up, \fBconst\fP \fBelement_type\fP * > >::value, bool >::type = true> \fBconstexpr\fP \fBoperator element_type *\fP ()" .br .ti -1c .RI "\fBconstexpr\fP \fBelement_type\fP & \fBoperator*\fP ()" .br .ti -1c .RI "\fBconstexpr\fP \fBconst\fP \fBelement_type\fP & \fBoperator*\fP () \fBconst\fP" .br .ti -1c .RI "\fBconstexpr\fP \fBelement_type\fP * \fBoperator\->\fP ()" .br .ti -1c .RI "\fBconstexpr\fP \fBconst\fP \fBelement_type\fP * \fBoperator\->\fP () \fBconst\fP" .br .ti -1c .RI "template<\fBtypename\fP _Up , \fBtypename\fP = typename enable_if<__and_, __not_<__is_propagate_const< typename decay<_Up>::type>> >::value>::type> \fBconstexpr\fP \fBpropagate_const\fP & \fBoperator=\fP (_Up &&\fB__u\fP)" .br .ti -1c .RI "\fBpropagate_const\fP & \fBoperator=\fP (\fBconst\fP \fBpropagate_const\fP &__p)=\fBdelete\fP" .br .ti -1c .RI "\fBconstexpr\fP \fBpropagate_const\fP & \fBoperator=\fP (\fBpropagate_const\fP &&__p)=\fBdefault\fP" .br .ti -1c .RI "template<\fBtypename\fP _Up , \fBtypename\fP = typename enable_if::value>::type> \fBconstexpr\fP \fBpropagate_const\fP & \fBoperator=\fP (\fBpropagate_const\fP< _Up > &&\fB__pu\fP)" .br .ti -1c .RI "\fBconstexpr\fP \fBvoid\fP \fBswap\fP (\fBpropagate_const\fP &\fB__pt\fP) \fBnoexcept\fP(\fB__is_nothrow_swappable\fP< _Tp >::value)" .br .in -1c .SS "Friends" .in +1c .ti -1c .RI "template<\fBtypename\fP _Up > \fBconstexpr\fP \fBconst\fP _Up & \fBget_underlying\fP (\fBconst\fP \fBpropagate_const\fP< _Up > &\fB__pt\fP) \fBnoexcept\fP" .br .ti -1c .RI "template<\fBtypename\fP _Up > \fBconstexpr\fP _Up & \fBget_underlying\fP (\fBpropagate_const\fP< _Up > &\fB__pt\fP) \fBnoexcept\fP" .br .in -1c .SH "Detailed Description" .PP .SS "template<\fBtypename\fP _Tp> .br class std::experimental::propagate_const< _Tp >"Const-propagating wrapper\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.