1 #ifndef cetlib_propagate_const_h 2 #define cetlib_propagate_const_h 24 #include <type_traits> 49 typename std::remove_reference<decltype(*std::declval<T&>())>
::type;
66 m_value = std::forward<U>(iValue);
103 template <
typename T>
element_type const & operator*() const
propagate_const & operator=(U &&iValue)
propagate_const(U &&iValue)
propagate_const()=default
propagate_const< T > & operator=(propagate_const &&)=default
element_type * operator->()
element_type const * operator->() const
element_type & operator*()
typename std::remove_reference< decltype(*std::declval< T & >())>::type element_type
T & get_underlying(propagate_const< T > &)
friend T & get_underlying(propagate_const< T > &)