UText Struct Reference

UText struct. More...

`#include <utext.h>`

## Data Fields

uint32_t | magic
int32_t | flags
int32_t | providerProperties
| Text provider properties. More...
int32_t | sizeOfStruct
| (public) sizeOfStruct=sizeof(UText) Allows possible backward compatible extension. More...
int64_t | chunkNativeLimit
| (protected) Native index of the first character position following the current chunk. More...
int32_t | extraSize
| (protected) Size in bytes of the extra space (pExtra). More...
int32_t | nativeIndexingLimit
| (protected) The highest chunk offset where native indexing and chunk (UTF-16) indexing correspond. More...
int64_t | chunkNativeStart
| (protected) Native index of the first character in the text chunk. More...
int32_t | chunkOffset
| (protected) Current iteration position within the text chunk (UTF-16 buffer). More...
int32_t | chunkLength
| (protected) Length the text chunk (UTF-16 buffer), in UChars. More...
const UChar * | chunkContents
| (protected) pointer to a chunk of text in UTF-16 format. More...
const UTextFuncs * | pFuncs
| (public) Pointer to Dispatch table for accessing functions for this UText. More...
void * | pExtra
| (protected) Pointer to additional space requested by the text provider during the utext_open operation. More...
const void * | context
| (protected) Pointer to string or text-containing object or similar. More...
const void * | p
| (protected) Pointer fields available for use by the text provider. More...
const void * | q
| (protected) Pointer fields available for use by the text provider. More...
const void * | r
| (protected) Pointer fields available for use by the text provider. More...
void * | privP
| Private field reserved for future use by the UText framework itself. More...
int64_t | a
| (protected) Integer field reserved for use by the text provider. More...
int32_t | b
| (protected) Integer field reserved for use by the text provider. More...
int32_t | c
| (protected) Integer field reserved for use by the text provider. More...
int64_t | privA
| Private field reserved for future use by the UText framework itself. More...
int32_t | privB
| Private field reserved for future use by the UText framework itself. More...
int32_t | privC
| Private field reserved for future use by the UText framework itself. More...

## Detailed Description

UText struct.

Provides the interface between the generic UText access code and the UText provider code that works on specific kinds of text (UTF-8, noncontiguous UTF-16, whatever.)

Applications that are using predefined types of text providers to pass text data to ICU services will have no need to view the internals of the UText structs that they open.

Stable:
  ICU 3.6

Definition at line 1328 of file utext.h.

## Field Documentation

## a

int64_t UText::a

(protected) Integer field reserved for use by the text provider.

Not used by the UText framework, or by the client (user) of the UText.

Stable:
  ICU 3.4

Definition at line 1482 of file utext.h.

## b

int32_t UText::b

(protected) Integer field reserved for use by the text provider.

Not used by the UText framework, or by the client (user) of the UText.

Stable:
  ICU 3.4

Definition at line 1489 of file utext.h.

## c

int32_t UText::c

(protected) Integer field reserved for use by the text provider.

Not used by the UText framework, or by the client (user) of the UText.

Stable:
  ICU 3.4

Definition at line 1496 of file utext.h.

## chunkContents

const UChar* UText::chunkContents

(protected) pointer to a chunk of text in UTF-16 format.

May refer either to original storage of the source of the text, or if conversion was required, to a buffer owned by the UText.

Stable:
  ICU 3.6

Definition at line 1422 of file utext.h.

## chunkLength

int32_t UText::chunkLength

(protected) Length the text chunk (UTF-16 buffer), in UChars.

Stable:
  ICU 3.6

Definition at line 1411 of file utext.h.

## chunkNativeLimit

int64_t UText::chunkNativeLimit

(protected) Native index of the first character position following the current chunk.

Stable:
  ICU 3.6

Definition at line 1375 of file utext.h.

## chunkNativeStart

int64_t UText::chunkNativeStart

(protected) Native index of the first character in the text chunk.

Stable:
  ICU 3.6

Definition at line 1398 of file utext.h.

## chunkOffset

int32_t UText::chunkOffset

(protected) Current iteration position within the text chunk (UTF-16 buffer).

This is the index to the character that will be returned by utext_next32().

Stable:
  ICU 3.6

Definition at line 1405 of file utext.h.

## context

const void* UText::context

(protected) Pointer to string or text-containing object or similar.

This is the source of the text that this UText is wrapping, in a format that is known to the text provider functions.

Stable:
  ICU 3.4

Definition at line 1443 of file utext.h.

## extraSize

int32_t UText::extraSize

(protected) Size in bytes of the extra space (pExtra).

Stable:
  ICU 3.4

Definition at line 1381 of file utext.h.

## flags

int32_t UText::flags

    (private)  Flags for managing the allocation and freeing of
               memory associated with this UText.

Internal:
  Do not use. This API is for internal use only.

Definition at line 1349 of file utext.h.

## magic

uint32_t UText::magic

    (private)  Magic.  Used to help detect when UText functions are handed
                       invalid or uninitialized UText structs.
                       utext_openXYZ() functions take an initialized,
                       but not necessarily open, UText struct as an
                       optional fill-in parameter.  This magic field
                       is used to check for that initialization.
                       Text provider close functions must NOT clear
                       the magic field because that would prevent
                       reuse of the UText struct.

Internal:
  Do not use. This API is for internal use only.

Definition at line 1341 of file utext.h.

## nativeIndexingLimit

int32_t UText::nativeIndexingLimit

(protected) The highest chunk offset where native indexing and chunk (UTF-16) indexing correspond.

For UTF-16 sources, value will be equal to chunkLength.

Stable:
  ICU 3.6

Definition at line 1390 of file utext.h.

## p

const void* UText::p

(protected) Pointer fields available for use by the text provider.

Not used by UText common code.

Stable:
  ICU 3.6

Definition at line 1452 of file utext.h.

## pExtra

void* UText::pExtra

(protected) Pointer to additional space requested by the text provider during the utext_open operation.

Stable:
  ICU 3.4

Definition at line 1435 of file utext.h.

## pFuncs

const UTextFuncs* UText::pFuncs

(public) Pointer to Dispatch table for accessing functions for this UText.

Stable:
  ICU 3.6

Definition at line 1428 of file utext.h.

## privA

int64_t UText::privA

Private field reserved for future use by the UText framework itself.

This is not to be touched by the text providers.

Internal:
  Do not use. This API is for internal use only. ICU 3.4

Definition at line 1506 of file utext.h.

## privB

int32_t UText::privB

Private field reserved for future use by the UText framework itself.

This is not to be touched by the text providers.

Internal:
  Do not use. This API is for internal use only. ICU 3.4

Definition at line 1512 of file utext.h.

## privC

int32_t UText::privC

Private field reserved for future use by the UText framework itself.

This is not to be touched by the text providers.

Internal:
  Do not use. This API is for internal use only. ICU 3.4

Definition at line 1518 of file utext.h.

## privP

void* UText::privP

Private field reserved for future use by the UText framework itself.

This is not to be touched by the text providers.

Internal:
  Do not use. This API is for internal use only. ICU 3.4

Definition at line 1471 of file utext.h.

## providerProperties

int32_t UText::providerProperties

Text provider properties.

This set of flags is maintained by the text provider implementation.

Stable:
  ICU 3.4

Definition at line 1357 of file utext.h.

## q

const void* UText::q

(protected) Pointer fields available for use by the text provider.

Not used by UText common code.

Stable:
  ICU 3.6

Definition at line 1458 of file utext.h.

## r

const void* UText::r

(protected) Pointer fields available for use by the text provider.

Not used by UText common code.

Stable:
  ICU 3.6

Definition at line 1464 of file utext.h.

## sizeOfStruct

int32_t UText::sizeOfStruct

(public) sizeOfStruct=sizeof(UText) Allows possible backward compatible extension.

Stable:
  ICU 3.4

Definition at line 1365 of file utext.h.

The documentation for this struct was generated from the following file:

- common/unicode/utext.h