inline basic_cstring<CharT>& basic_cstring<CharT>::trim_left( basic_cstring exclusions ) { if( exclusions.is_empty() ) exclusions = default_trim_ex(); iterator it; for( it = begin(); it != end(); ++it ) { if( traits_type::find( exclusions.begin(), exclusions.size(), *it ) == reinterpret_cast<pointer>(0) ) break; } return trim_left( it ); }
inline basic_cstring<CharT>& basic_cstring<CharT>::trim_right( basic_cstring exclusions ) { if( exclusions.is_empty() ) exclusions = default_trim_ex(); iterator it; for( it = end()-1; it != begin()-1; --it ) { if( self_type::traits_type::find( exclusions.begin(), exclusions.size(), *it ) == (pointer)0 ) break; } return trim_right( it+1 ); }