safec  3.5.1
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
 
#define UNWIF_compat_exc_t   UNWIF_canon_exc_t
 

Functions

static int _bsearch_exc (const void *ptr1, const void *ptr2)
 
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

◆ UNWIF_compat_exc_t

Function Documentation

◆ _bsearch_exc()

static int _bsearch_exc ( const void *  ptr1,
const void *  ptr2 
)
static

◆ _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 
)