boost::text::break_view
// In header: <boost/text/break_view.hpp> template<typename CPIter, typename CPSentinel, typename PrevFunc, typename NextFunc, typename Subrange = utf32_view<CPIter> > struct break_view : public stl_interfaces::view_interface< break_view< CPIter, CPSentinel, PrevFunc, NextFunc, utf32_view< CPIter > > > { // types typedef unspecified iterator; typedef unspecified sentinel; // construct/copy/destruct break_view(); break_view(CPIter, CPSentinel, PrevFunc, NextFunc); // public member functions iterator begin() const; sentinel end() const; PrevFunc && prev_func(); NextFunc && next_func(); };
Represents a bidirectionally-iterable range of non-overlapping code point subranges. Each code point subrange represents some semantically significant segment, the semantics of which are controlled by the PrevFunc
and NextFunc
template parameters. For instance, if NextFunc
is next_paragraph_break, the subranges produced by break_view will be paragraphs. Each subrange is lazily produced; an output subrange is not produced until a view iterator is dereferenced.