boost::unicode::combine_sorter
// In header: <boost/unicode/combining.hpp> struct combine_sorter { // types typedef char32 input_type; typedef char32 output_type; typedef combining_max max_output; // public member functions template<typename In, typename Out> Out ltr(In &, In, Out); template<typename In, typename Out> Out rtl(In, In &, Out); // private member functions template<typename Range, typename Out> Out combine_sort_impl(const Range &, Out); template<typename In, typename Out> Out combine_sort_impl(In, In, Out, std::random_access_iterator_tag *); template<typename In, typename Out> Out combine_sort_impl(In, In, Out, std::output_iterator_tag *); };
Model of Converter
that canonically sorts a combining character sequence.
combine_sorter
private member functionstemplate<typename Range, typename Out> Out combine_sort_impl(const Range & range, Out out);
template<typename In, typename Out> Out combine_sort_impl(In begin, In end, Out out, std::random_access_iterator_tag *);
template<typename In, typename Out> Out combine_sort_impl(In begin, In end, Out out, std::output_iterator_tag *);