libgpac
Documentation of the core library of GPAC
Loading...
Searching...
No Matches
libunicode.h File Reference
#include <stdint.h>
+ Include dependency graph for libunicode.h:
+ This graph shows which files directly or indirectly include this file:

Data Structures

struct  CharRange
 

Macros

#define CONFIG_ALL_UNICODE
 
#define LRE_CC_RES_LEN_MAX   3
 

Typedefs

typedef void UnicodeSequencePropCB(void *opaque, const uint32_t *buf, int len)
 

Enumerations

enum  CharRangeOpEnum { CR_OP_UNION , CR_OP_INTER , CR_OP_XOR , CR_OP_SUB }
 
enum  UnicodeNormalizationEnum { UNICODE_NFC , UNICODE_NFD , UNICODE_NFKC , UNICODE_NFKD }
 
enum  {
  UNICODE_C_SPACE = (1 << 0) , UNICODE_C_DIGIT = (1 << 1) , UNICODE_C_UPPER = (1 << 2) , UNICODE_C_LOWER = (1 << 3) ,
  UNICODE_C_UNDER = (1 << 4) , UNICODE_C_DOLLAR = (1 << 5) , UNICODE_C_XDIGIT = (1 << 6)
}
 

Functions

void cr_init (CharRange *cr, void *mem_opaque, void *(*realloc_func)(void *opaque, void *ptr, size_t size))
 
void cr_free (CharRange *cr)
 
int cr_realloc (CharRange *cr, int size)
 
int cr_copy (CharRange *cr, const CharRange *cr1)
 
static int cr_add_point (CharRange *cr, uint32_t v)
 
static int cr_add_interval (CharRange *cr, uint32_t c1, uint32_t c2)
 
int cr_op (CharRange *cr, const uint32_t *a_pt, int a_len, const uint32_t *b_pt, int b_len, int op)
 
int cr_op1 (CharRange *cr, const uint32_t *b_pt, int b_len, int op)
 
static int cr_union_interval (CharRange *cr, uint32_t c1, uint32_t c2)
 
int cr_invert (CharRange *cr)
 
int cr_regexp_canonicalize (CharRange *cr, int is_unicode)
 
int unicode_normalize (uint32_t **pdst, const uint32_t *src, int src_len, UnicodeNormalizationEnum n_type, void *opaque, void *(*realloc_func)(void *opaque, void *ptr, size_t size))
 
int unicode_script (CharRange *cr, const char *script_name, int is_ext)
 
int unicode_general_category (CharRange *cr, const char *gc_name)
 
int unicode_prop (CharRange *cr, const char *prop_name)
 
int unicode_sequence_prop (const char *prop_name, UnicodeSequencePropCB *cb, void *opaque, CharRange *cr)
 
int lre_case_conv (uint32_t *res, uint32_t c, int conv_type)
 
int lre_canonicalize (uint32_t c, int is_unicode)
 
int lre_is_cased (uint32_t c)
 
int lre_is_case_ignorable (uint32_t c)
 
int lre_is_id_start (uint32_t c)
 
int lre_is_id_continue (uint32_t c)
 
static int lre_is_space_byte (uint8_t c)
 
static int lre_is_id_start_byte (uint8_t c)
 
static int lre_is_id_continue_byte (uint8_t c)
 
int lre_is_space_non_ascii (uint32_t c)
 
static int lre_is_space (uint32_t c)
 
static int lre_js_is_ident_first (uint32_t c)
 
static int lre_js_is_ident_next (uint32_t c)
 

Variables

uint8_t const lre_ctype_bits [256]
 

Macro Definition Documentation

◆ CONFIG_ALL_UNICODE

#define CONFIG_ALL_UNICODE

◆ LRE_CC_RES_LEN_MAX

#define LRE_CC_RES_LEN_MAX   3

Typedef Documentation

◆ UnicodeSequencePropCB

typedef void UnicodeSequencePropCB(void *opaque, const uint32_t *buf, int len)

Enumeration Type Documentation

◆ CharRangeOpEnum

Enumerator
CR_OP_UNION 
CR_OP_INTER 
CR_OP_XOR 
CR_OP_SUB 

◆ UnicodeNormalizationEnum

Enumerator
UNICODE_NFC 
UNICODE_NFD 
UNICODE_NFKC 
UNICODE_NFKD 

◆ anonymous enum

anonymous enum
Enumerator
UNICODE_C_SPACE 
UNICODE_C_DIGIT 
UNICODE_C_UPPER 
UNICODE_C_LOWER 
UNICODE_C_UNDER 
UNICODE_C_DOLLAR 
UNICODE_C_XDIGIT 

Function Documentation

◆ cr_init()

void cr_init ( CharRange cr,
void *  mem_opaque,
void *(*)(void *opaque, void *ptr, size_t size)  realloc_func 
)

◆ cr_free()

void cr_free ( CharRange cr)
+ Here is the caller graph for this function:

◆ cr_realloc()

int cr_realloc ( CharRange cr,
int  size 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cr_copy()

int cr_copy ( CharRange cr,
const CharRange cr1 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cr_add_point()

static int cr_add_point ( CharRange cr,
uint32_t  v 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cr_add_interval()

static int cr_add_interval ( CharRange cr,
uint32_t  c1,
uint32_t  c2 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cr_op()

int cr_op ( CharRange cr,
const uint32_t a_pt,
int  a_len,
const uint32_t b_pt,
int  b_len,
int  op 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cr_op1()

int cr_op1 ( CharRange cr,
const uint32_t b_pt,
int  b_len,
int  op 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cr_union_interval()

static int cr_union_interval ( CharRange cr,
uint32_t  c1,
uint32_t  c2 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cr_invert()

int cr_invert ( CharRange cr)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cr_regexp_canonicalize()

int cr_regexp_canonicalize ( CharRange cr,
int  is_unicode 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ unicode_normalize()

int unicode_normalize ( uint32_t **  pdst,
const uint32_t src,
int  src_len,
UnicodeNormalizationEnum  n_type,
void *  opaque,
void *(*)(void *opaque, void *ptr, size_t size)  realloc_func 
)

◆ unicode_script()

int unicode_script ( CharRange cr,
const char *  script_name,
int  is_ext 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ unicode_general_category()

int unicode_general_category ( CharRange cr,
const char *  gc_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ unicode_prop()

int unicode_prop ( CharRange cr,
const char *  prop_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ unicode_sequence_prop()

int unicode_sequence_prop ( const char *  prop_name,
UnicodeSequencePropCB cb,
void *  opaque,
CharRange cr 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_case_conv()

int lre_case_conv ( uint32_t res,
uint32_t  c,
int  conv_type 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_canonicalize()

int lre_canonicalize ( uint32_t  c,
int  is_unicode 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_is_cased()

int lre_is_cased ( uint32_t  c)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_is_case_ignorable()

int lre_is_case_ignorable ( uint32_t  c)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_is_id_start()

int lre_is_id_start ( uint32_t  c)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_is_id_continue()

int lre_is_id_continue ( uint32_t  c)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_is_space_byte()

static int lre_is_space_byte ( uint8_t  c)
static
+ Here is the caller graph for this function:

◆ lre_is_id_start_byte()

static int lre_is_id_start_byte ( uint8_t  c)
static
+ Here is the caller graph for this function:

◆ lre_is_id_continue_byte()

static int lre_is_id_continue_byte ( uint8_t  c)
static
+ Here is the caller graph for this function:

◆ lre_is_space_non_ascii()

int lre_is_space_non_ascii ( uint32_t  c)
+ Here is the caller graph for this function:

◆ lre_is_space()

static int lre_is_space ( uint32_t  c)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_js_is_ident_first()

static int lre_js_is_ident_first ( uint32_t  c)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lre_js_is_ident_next()

static int lre_js_is_ident_next ( uint32_t  c)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ lre_ctype_bits

uint8_t const lre_ctype_bits[256]
extern