libunibreak: graphemebreak.c File Reference

libunibreak 7.0

Loading...
Searching...
No Matches
Macros | Enumerations | Functions
graphemebreak.c File Reference

Implementation of the grapheme breaking algorithm as described in Unicode Standard Annex 29. More...

`#include <string.h>`
`#include "graphemebreak.h"`
`#include "graphemebreakdata.c"`
`#include "indicconjunctbreakdata.c"`
`#include "indicconjunctbreakdef.h"`
`#include "emojidef.h"`
`#include "unibreakdef.h"`
Include dependency graph for graphemebreak.c:

## Macros
#define | UNIBREAK_LAZY_INCB 1

## Enumerations
enum | Rule9cStage { R9C_INACTIVE , R9C_STARTED , R9C_LINKER , R9C_END }

## Functions
void | init_graphemebreak (void)
| Initializes the wordbreak internals.
void | set_graphemebreaks_utf8 (const utf8_t *s, size_t len, const char *lang, char *brks)
| Sets the grapheme breaking information for a UTF-8 input string.
void | set_graphemebreaks_utf16 (const utf16_t *s, size_t len, const char *lang, char *brks)
| Sets the grapheme breaking information for a UTF-16 input string.
void | set_graphemebreaks_utf32 (const utf32_t *s, size_t len, const char *lang, char *brks)
| Sets the grapheme breaking information for a UTF-32 input string.

## Detailed Description

Implementation of the grapheme breaking algorithm as described in Unicode Standard Annex 29.

Author
  Andreas Röver

## Macro Definition Documentation

## ◆ UNIBREAK_LAZY_INCB

#define UNIBREAK_LAZY_INCB 1

## Enumeration Type Documentation

## ◆ Rule9cStage

enum Rule9cStage

Enumerator
R9C_INACTIVE |
R9C_STARTED |
R9C_LINKER |
R9C_END |

## Function Documentation

## ◆ init_graphemebreak()

void init_graphemebreak | ( | void |  | ) |

Initializes the wordbreak internals.

It currently does nothing, but it may in the future.

## ◆ set_graphemebreaks_utf16()

void set_graphemebreaks_utf16 | ( | const utf16_t * | s,
|  | size_t | len,
|  | const char * | lang,
|  | char * | brks )

Sets the grapheme breaking information for a UTF-16 input string.

Parameters

  [in] | s | input UTF-16 string
  [in] | len | length of the input
  [in] | lang | language of the input (reserved for future use)
  [out] | brks | pointer to the output breaking data, containing GRAPHEMEBREAK_BREAK or GRAPHEMEBREAK_NOBREAK. First element in output array is for the break behind the first character the pointer must point to an array with at least as many elements as there are characters in the string

## ◆ set_graphemebreaks_utf32()

void set_graphemebreaks_utf32 | ( | const utf32_t * | s,
|  | size_t | len,
|  | const char * | lang,
|  | char * | brks )

Sets the grapheme breaking information for a UTF-32 input string.

Parameters

  [in] | s | input UTF-32 string
  [in] | len | length of the input
  [in] | lang | language of the input (reserved for future use)
  [out] | brks | pointer to the output breaking data, containing GRAPHEMEBREAK_BREAK or GRAPHEMEBREAK_NOBREAK. First element in output array is for the break behind the first character the pointer must point to an array with at least as many elements as there are characters in the string

## ◆ set_graphemebreaks_utf8()

void set_graphemebreaks_utf8 | ( | const utf8_t * | s,
|  | size_t | len,
|  | const char * | lang,
|  | char * | brks )

Sets the grapheme breaking information for a UTF-8 input string.

Parameters

  [in] | s | input UTF-8 string
  [in] | len | length of the input
  [in] | lang | language of the input (reserved for future use)
  [out] | brks | pointer to the output breaking data, containing GRAPHEMEBREAK_BREAK or GRAPHEMEBREAK_NOBREAK. First element in output array is for the break behind the first character the pointer must point to an array with at least as many elements as there are characters in the string