safec  3.3
Safe C Library - ISO TR24731 Bounds Checking Interface
wcsnorm_s.c File Reference
#include "safe_str_lib.h"
#include "unw16ifcan.h"
#include "unw16ifcmb.h"
#include "unw16ifcmp.h"
#include "unw16ifexc.h"
#include "hangul.h"
+ Include dependency graph for wcsnorm_s.c:

Data Structures

struct  UNWIF_cc
 

Macros

#define _UNICODE_MAX   0x10ffff
 
#define CC_SEQ_SIZE   10
 
#define CC_SEQ_STEP   5
 

Functions

bool isExclusion (uint32_t uv)
 
bool isSingleton (uint32_t uv)
 
bool isNonStDecomp (uint32_t uv)
 
bool isComp2nd (uint32_t uv)
 
static int _decomp_canonical_s (wchar_t *dest, rsize_t dmax, uint32_t cp)
 
static int _decomp_hangul_s (wchar_t *dest, rsize_t dmax, uint32_t cp)
 
EXPORT int _decomp_s (wchar_t *restrict dest, rsize_t dmax, const uint32_t cp, const bool iscompat)
 
static int _compare_cc (const void *a, const void *b)
 
static uint32_t _composite_cp (uint32_t cp, uint32_t cp2)
 
static uint8_t _combin_class (uint32_t cp)
 
EXPORT errno_t _wcsnorm_decompose_s_chk (wchar_t *restrict dest, rsize_t dmax, const wchar_t *restrict src, rsize_t *restrict lenp, const bool iscompat, const size_t destbos)
 
EXPORT errno_t _wcsnorm_reorder_s_chk (wchar_t *restrict dest, rsize_t dmax, const wchar_t *restrict src, const rsize_t len, const size_t destbos)
 
EXPORT errno_t _wcsnorm_compose_s_chk (wchar_t *restrict dest, rsize_t dmax, const wchar_t *restrict src, rsize_t *restrict lenp, const bool iscontig, const size_t destbos)
 
EXPORT errno_t _wcsnorm_s_chk (wchar_t *restrict dest, rsize_t dmax, const wchar_t *restrict src, const wcsnorm_mode_t mode, rsize_t *restrict lenp, const size_t destbos)
 

Macro Definition Documentation

◆ _UNICODE_MAX

#define _UNICODE_MAX   0x10ffff

◆ CC_SEQ_SIZE

#define CC_SEQ_SIZE   10

◆ CC_SEQ_STEP

#define CC_SEQ_STEP   5

Function Documentation

◆ isExclusion()

bool isExclusion ( uint32_t  uv)

◆ isSingleton()

bool isSingleton ( uint32_t  uv)

◆ isNonStDecomp()

bool isNonStDecomp ( uint32_t  uv)

◆ isComp2nd()

bool isComp2nd ( uint32_t  uv)

◆ _decomp_canonical_s()

static int _decomp_canonical_s ( wchar_t *  dest,
rsize_t  dmax,
uint32_t  cp 
)
static

◆ _decomp_hangul_s()

static int _decomp_hangul_s ( wchar_t *  dest,
rsize_t  dmax,
uint32_t  cp 
)
static

◆ _decomp_s()

EXPORT int _decomp_s ( wchar_t *restrict  dest,
rsize_t  dmax,
const uint32_t  cp,
const bool  iscompat 
)

◆ _compare_cc()

static int _compare_cc ( const void *  a,
const void *  b 
)
static

◆ _composite_cp()

static uint32_t _composite_cp ( uint32_t  cp,
uint32_t  cp2 
)
static

◆ _combin_class()

static uint8_t _combin_class ( uint32_t  cp)
static

◆ _wcsnorm_decompose_s_chk()

EXPORT errno_t _wcsnorm_decompose_s_chk ( wchar_t *restrict  dest,
rsize_t  dmax,
const wchar_t *restrict  src,
rsize_t *restrict  lenp,
const bool  iscompat,
const size_t  destbos 
)

◆ _wcsnorm_reorder_s_chk()

EXPORT errno_t _wcsnorm_reorder_s_chk ( wchar_t *restrict  dest,
rsize_t  dmax,
const wchar_t *restrict  src,
const rsize_t  len,
const size_t  destbos 
)

◆ _wcsnorm_compose_s_chk()

EXPORT errno_t _wcsnorm_compose_s_chk ( wchar_t *restrict  dest,
rsize_t  dmax,
const wchar_t *restrict  src,
rsize_t *restrict  lenp,
const bool  iscontig,
const size_t  destbos 
)

◆ _wcsnorm_s_chk()

EXPORT errno_t _wcsnorm_s_chk ( wchar_t *restrict  dest,
rsize_t  dmax,
const wchar_t *restrict  src,
const wcsnorm_mode_t  mode,
rsize_t *restrict  lenp,
const size_t  destbos 
)