libthai: thai/thcell.h File Reference

# thai/thcell.h File Reference

Thai string cell custering. More...

## Data Structures
struct | thcell_t
| Thai char cell representation. More...
## Functions
void | th_init_cell (struct thcell_t *cell)
| Initialize a Thai cell.
size_t | th_next_cell (const thchar_t *s, size_t len, struct thcell_t *cell, int is_decomp_am)
| Get first cell from string.
size_t | th_prev_cell (const thchar_t *s, size_t pos, struct thcell_t *cell, int is_decomp_am)
| Get previous cell from string.
size_t | th_make_cells (const thchar_t *s, size_t len, struct thcell_t cells[], size_t *ncells, int is_decomp_am)
| Tokenize string into cells.

## Detailed Description

Thai string cell custering.

## Function Documentation

void th_init_cell | ( | struct thcell_t * | cell | ) |

Initialize a Thai cell.

Parameters:

  | cell | : pointer to the cell to initialize

Initializes values in the Thai cell struct.

size_t th_make_cells | ( | const thchar_t * | s,
|  | size_t | len,
|  | struct thcell_t | cells[],
|  | size_t * | ncells,
|  | int | is_decomp_am |
| ) |  |  |

Tokenize string into cells.

Parameters:

  | s | : the string
  | len | : the length of string
  | cells | : the array of output cells buffer
  | ncells | : the address of integer storing the number of cells provided by the buffer, and to keep the number of resulting cells on return
  | is_decomp_am | : whether SARA AM is to be decomposed into NIKHANIT and SARA AA and to be in separate cells

Returns:
  total characters consumed

Tokenizes the string bounded by s and len into cells, and stores at most *ncells resulting cells in the cells buffer. On return, *ncells is also set to the total cells stored in cells[].

size_t th_next_cell | ( | const thchar_t * | s,
|  | size_t | len,
|  | struct thcell_t * | cell,
|  | int | is_decomp_am |
| ) |  |  |

Get first cell from string.

Parameters:

  | s | : the string
  | len | : the length of string
  | cell | : the output buffer
  | is_decomp_am | : whether SARA AM is to be decomposed into NIKHANIT and SARA AA and to be in separate cells

Returns:
  total chars consumed by the cell

Gets first cell from the string bounded by s and len, and, if cell is not null, stores the cell data in it.

size_t th_prev_cell | ( | const thchar_t * | s,
|  | size_t | pos,
|  | struct thcell_t * | cell,
|  | int | is_decomp_am |
| ) |  |  |

Get previous cell from string.

Parameters:

  | s | : the string
  | pos | : the position in string to get cell previous to
  | cell | : the output buffer
  | is_decomp_am | : whether SARA AM is to be decomposed into NIKHANIT and SARA AA and to be in separate cells

Returns:
  total chars consumed by the cell

Gets last cell from the string bounded by s and pos, and if cell is not null, stores the cell data in it.