PrevUpHomeNext

Struct template lazy_bidi_segment_range

boost::text::lazy_bidi_segment_range

Synopsis

// In header: <boost/text/bidirectional.hpp>

template<typename CPIter, typename Sentinel, typename ResultType, 
         typename NextLineBreakFunc = detail::bidi_next_hard_line_break_callable> 
struct lazy_bidi_segment_range {
  // types
  typedef unspecified iterator;

  // construct/copy/destruct
  lazy_bidi_segment_range();
  lazy_bidi_segment_range(CPIter, Sentinel, int, 
                          NextLineBreakFunc = NextLineBreakFunc{});

  // public member functions
  iterator begin();
  iterator end();
};

Description

Represents a range of non-overlapping subranges. Each subrange is a sequence of code points that are all in a consistent direction (left-to-right or right-to-left). Each subrange is lazily produced; an output subrange is not produced until an iterator is dereferenced. If C++20 coroutines are available (determined by whether __cpp_impl_coroutine and __cpp_lib_coroutine are defined, and the value of BOOST_TEXT_USE_COROUTINES), lazy_bidi_segment_range will be an alias for a generator of ResultType elements.

lazy_bidi_segment_range public construct/copy/destruct

  1. lazy_bidi_segment_range();
  2. lazy_bidi_segment_range(CPIter first, Sentinel last, 
                            int paragraph_embedding_level, 
                            NextLineBreakFunc next = NextLineBreakFunc{});

lazy_bidi_segment_range public member functions

  1. iterator begin();
  2. iterator end();

PrevUpHomeNext