.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(*std::declval< _Tp & >())> \fBelement_type\fP" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "template<\fBtypename\fP \fB_Up\fP , \fBtypename\fP \fBenable_if\fP< __and_< \fBis_constructible\fP< _Tp, \fB_Up\fP && >, \fBis_convertible\fP< \fB_Up\fP &&, _Tp >, __not_< __is_propagate_const< \fBtypename\fP \fBdecay\fP< \fB_Up\fP >::type > > >::value, bool >::type = true> \fBconstexpr\fP \fBpropagate_const\fP (\fB_Up\fP &&\fB__u\fP)" .br .ti -1c .RI "template<\fBtypename\fP \fB_Up\fP , \fBtypename\fP \fBenable_if\fP< __and_< \fBis_constructible\fP< _Tp, \fB_Up\fP && >, __not_< \fBis_convertible\fP< \fB_Up\fP &&, _Tp > >, __not_< __is_propagate_const< \fBtypename\fP \fBdecay\fP< \fB_Up\fP >::type > > >::value, bool >::type = false> \fBconstexpr\fP \fBpropagate_const\fP (\fB_Up\fP &&\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 \fB_Up\fP , \fBtypename\fP \fBenable_if\fP< __and_< \fBis_constructible\fP< _Tp, \fB_Up\fP && >, \fBis_convertible\fP< \fB_Up\fP &&, _Tp > >::value, bool >::type = true> \fBconstexpr\fP \fBpropagate_const\fP (\fBpropagate_const\fP< \fB_Up\fP > &&\fB__pu\fP)" .br .ti -1c .RI "template<\fBtypename\fP \fB_Up\fP , \fBtypename\fP \fBenable_if\fP< __and_< \fBis_constructible\fP< _Tp, \fB_Up\fP && >, __not_< \fBis_convertible\fP< \fB_Up\fP &&, _Tp > > >::value, bool >::type = false> \fBconstexpr\fP \fBpropagate_const\fP (\fBpropagate_const\fP< \fB_Up\fP > &&\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 \fB_Up\fP = _Tp, \fBtypename\fP \fBenable_if\fP< __or_< \fBis_pointer\fP< \fB_Up\fP >, \fBis_convertible\fP< \fB_Up\fP, \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 \fB_Up\fP = _Tp, \fBtypename\fP \fBenable_if\fP< __or_< \fBis_pointer\fP< \fB_Up\fP >, \fBis_convertible\fP< \fB_Up\fP, \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 \fB_Up\fP , \fBtypename\fP = typename enable_if<__and_, __not_<__is_propagate_const< typename decay<_Up>::type>> >::value>::type> \fBconstexpr\fP \fBpropagate_const\fP & \fBoperator=\fP (\fB_Up\fP &&\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 \fB_Up\fP , \fBtypename\fP = typename enable_if::value>::type> \fBconstexpr\fP \fBpropagate_const\fP & \fBoperator=\fP (\fBpropagate_const\fP< \fB_Up\fP > &&\fB__pu\fP)" .br .ti -1c .RI "\fBconstexpr\fP \fBvoid\fP \fBswap\fP (\fBpropagate_const\fP &\fB__pt\fP) \fBnoexcept\fP(__is_nothrow_swappable< _Tp >::value)" .br .in -1c .SS "Friends" .in +1c .ti -1c .RI "template<\fBtypename\fP \fB_Up\fP > \fBconstexpr\fP \fBconst\fP \fB_Up\fP & \fBget_underlying\fP (\fBconst\fP \fBpropagate_const\fP< \fB_Up\fP > &\fB__pt\fP) \fBnoexcept\fP" .br .ti -1c .RI "template<\fBtypename\fP \fB_Up\fP > \fBconstexpr\fP \fB_Up\fP & \fBget_underlying\fP (\fBpropagate_const\fP< \fB_Up\fP > &\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\&.