gi-pango-1.0.25: Pango bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Pango.Structs.ScriptIter

Description

A PangoScriptIter is used to iterate through a string and identify ranges in different scripts.

Synopsis

Exported types

newtype ScriptIter Source #

Memory-managed wrapper type.

Methods

Click to display all available methods, including inherited ones

Expand

Methods

free, next.

Getters

getRange.

Setters

None.

free

scriptIterFree Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> ScriptIter

iter: a PangoScriptIter

-> m () 

Frees a PangoScriptIter.

Since: 1.4

getRange

scriptIterGetRange Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> ScriptIter

iter: a PangoScriptIter

-> m (Text, Text, Script) 

Gets information about the range to which iter currently points.

The range is the set of locations p where *start <= p < *end. (That is, it doesn't include the character stored at *end)

Note that while the type of the script argument is declared as PangoScript, as of Pango 1.18, this function simply returns GUnicodeScript values. Callers must be prepared to handle unknown values.

Since: 1.4

new

scriptIterNew Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Text

text: a UTF-8 string

-> Int32

length: length of text, or -1 if text is nul-terminated

-> m ScriptIter

Returns: the new script iterator, initialized to point at the first range in the text, which should be freed with scriptIterFree. If the string is empty, it will point at an empty range.

Create a new PangoScriptIter, used to break a string of Unicode text into runs by Unicode script.

No copy is made of text, so the caller needs to make sure it remains valid until the iterator is freed with scriptIterFree.

Since: 1.4

next

scriptIterNext Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> ScriptIter

iter: a PangoScriptIter

-> m Bool

Returns: True if iter was successfully advanced

Advances a PangoScriptIter to the next range.

If iter is already at the end, it is left unchanged and False is returned.

Since: 1.4