Add an allocator argument to operator string()

This commit is contained in:
Peter Dimov
2021-10-09 19:50:15 +03:00
parent c43a172ded
commit 54965f567d

View File

@ -383,23 +383,11 @@ public:
// conversions // conversions
#if !defined(BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS) template<class A> operator std::basic_string<Ch, std::char_traits<Ch>, A>() const
template<class Ch2, class En = typename boost::enable_if<is_same<Ch2, Ch> >::type>
operator std::basic_string<Ch2>() const
{ {
return std::basic_string<Ch>( data(), size() ); return std::basic_string<Ch, std::char_traits<Ch>, A>( data(), size() );
} }
#else
operator std::basic_string<Ch>() const
{
return std::basic_string<Ch>( data(), size() );
}
#endif
#if !defined(BOOST_NO_CXX17_HDR_STRING_VIEW) #if !defined(BOOST_NO_CXX17_HDR_STRING_VIEW)
template<class Ch2, class En = typename boost::enable_if<is_same<Ch2, Ch> >::type> template<class Ch2, class En = typename boost::enable_if<is_same<Ch2, Ch> >::type>