a structure holding information that affects the itemization process.
the text to itemize.
first byte in text to process
the number of bytes (not characters) to process after start_index. This must be >= 0.
the set of attributes that apply to text.
Cached attribute iterator, or NULL
Breaks a piece of text into segments with consistent directional level and shaping engine. Each byte of text will be contained in exactly one of the items in the returned list; the generated list of items will be in logical order (the start offsets of the items are ascending).
cached_iter should be an iterator over attrs currently positioned at a range before or containing start_index; cached_iter will be advanced to the range covering the position just after start_index + length. (i.e. if itemizing in a loop, just keep passing in the same cached_iter).