```{index} single: Unicode::GCString ``` # Unicode::GCString ```{pperl-module-badges} Unicode::GCString ``` ## Functions ### Grapheme cluster strings #### `as_array` The grapheme clusters as one-cluster `Unicode::GCString`s - what `@{$gcstring}` gives. #### `as_string` The string, as a Perl (UTF-8) string - what `"$gcstring"` gives. #### `chars` The number of characters (code points). #### `cmp` Compare with another string by code points, as `cmp` does - the overloaded `cmp`. #### `columns` The number of columns the string occupies (UAX #11). #### `concat` Join with another string, re-segmenting where they meet - the overloaded `.` and `.=`. #### `copy` A copy of the string. #### `eos` True when the iterator position is at the end. #### `flag` Get, or set, the break flag of cluster `i` (default: the current position). #### `item` Cluster `i` (default: the current position) as a string. #### `join` The strings given, joined with this one between them. #### `length` The number of grapheme clusters. #### `next` The cluster at the iterator position, advancing it; undef at the end - the overloaded `<>`. #### `pos` The iterator position, after setting it when an argument is given (negative counts from the end). #### `substr` `length` clusters from `offset`, as `substr` counts characters; with a replacement, those clusters are replaced in the string. ### Overload glue #### `as_scalarref` A reference to the object's name, "Unicode::GCString(0x...)". ### Properties #### `lbc` The line breaking class of the first grapheme base. #### `lbcext` The line breaking class of the last grapheme extender, or of its base when the extender has none of its own. #### `lbclass` Obsolete: the class of cluster `i`'s base; use `lbc`. #### `lbclass_ext` Obsolete: the class of cluster `i`'s extender; use `lbcext`.