Skip to content

Commit

Permalink
uint16_t, uint32_t 사용 정리
Browse files Browse the repository at this point in the history
- <stdint.h> 사용
- Cython/cffi가 생성한 C 파일에서 함수 포인터 incompatible-pointer-type 경고 제거
  • Loading branch information
mete0r committed Mar 27, 2023
1 parent 806bfe8 commit ef4a426
Show file tree
Hide file tree
Showing 12 changed files with 1,042 additions and 961 deletions.
86 changes: 46 additions & 40 deletions hypua2jamo_build.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,58 +28,64 @@


c_declarations = '''
size_t hypua_c2d_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_c2d_ucs4_encode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_c2d_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_c2d_ucs2_encode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_p2jc_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_p2jc_ucs4_encode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_p2jc_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_p2jc_ucs2_encode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_p2jd_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_p2jd_ucs4_encode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_p2jd_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_p2jd_ucs2_encode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_d2c_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_d2c_ucs4_decode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_d2c_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_d2c_ucs2_decode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_jc2p_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_jc2p_ucs4_decode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_jc2p_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_jc2p_ucs2_decode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_jd2p_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_jd2p_ucs4_decode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_jd2p_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_jd2p_ucs2_decode(const unsigned short *src, size_t srclen, unsigned short *dst);
/* encoder */
size_t hypua_c2d_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_c2d_ucs4_encode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_c2d_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_c2d_ucs2_encode(const uint16_t *src, size_t srclen, uint16_t *dst);
size_t hypua_p2jc_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_p2jc_ucs4_encode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_p2jc_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_p2jc_ucs2_encode(const uint16_t *src, size_t srclen, uint16_t *dst);
size_t hypua_p2jd_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_p2jd_ucs4_encode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_p2jd_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_p2jd_ucs2_encode(const uint16_t *src, size_t srclen, uint16_t *dst);
/* decoder */
size_t hypua_d2c_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_d2c_ucs4_decode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_d2c_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_d2c_ucs2_decode(const uint16_t *src, size_t srclen, uint16_t *dst);
size_t hypua_jc2p_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_jc2p_ucs4_decode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_jc2p_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_jc2p_ucs2_decode(const uint16_t *src, size_t srclen, uint16_t *dst);
size_t hypua_jd2p_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_jd2p_ucs4_decode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_jd2p_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_jd2p_ucs2_decode(const uint16_t *src, size_t srclen, uint16_t *dst);
/* decoder generic */
int hypua_decoder_alloc_size();
void hypua_decoder_init_d2c(void *decoder);
void hypua_decoder_init_jc2p(void *decoder);
void hypua_decoder_init_jd2p(void *decoder);
void hypua_decoder_init_d2c(void *decoder);
void hypua_decoder_init(
void *decoder,
void *root,
void *nodelist,
int nodelistLen
void *decoder,
const void *root,
const void *nodelist,
int nodelistLen
);
int hypua_decoder_getstate(void *decoder);
int hypua_decoder_setstate(void *decoder, int state);
size_t hypua_decoder_calcsize_ucs2(void *decoder, void *src, size_t srclen);
size_t hypua_decoder_calcsize_ucs4(void *decoder, void *src, size_t srclen);
size_t hypua_decoder_calcsize_ucs2(void *decoder, const uint16_t *src, size_t srclen);
size_t hypua_decoder_calcsize_ucs4(void *decoder, const uint32_t *src, size_t srclen);
size_t hypua_decoder_calcsize_flush(void *decoder);
size_t hypua_decoder_decode_ucs2(
void *decoder,
void *src,
size_t srclen,
void *dst
void *decoder,
uint16_t *src,
size_t srclen,
uint16_t *dst
);
size_t hypua_decoder_decode_ucs4(
void *decoder,
void *src,
size_t srclen,
void *dst
void *decoder,
uint32_t *src,
size_t srclen,
uint32_t *dst
);
size_t hypua_decoder_decode_flush_ucs2(void *decoder, void *dst);
size_t hypua_decoder_decode_flush_ucs4(void *decoder, void *dst);
Expand Down
5 changes: 2 additions & 3 deletions src/hypua2jamo-c/c2d.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,13 @@

#include "config.h"

#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
#ifdef HAVE_STDINT_H
#include <stdint.h>
#else
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
#endif


#include "c2d-table.h"


Expand Down
4 changes: 2 additions & 2 deletions src/hypua2jamo-c/d2c.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

#include "config.h"

#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
#ifdef HAVE_STDINT_H
#include <stdint.h>
#else
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
Expand Down
73 changes: 42 additions & 31 deletions src/hypua2jamo-c/hypua2jamo.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,35 +3,46 @@

#include <stddef.h>

#ifdef _MSC_VER
# if _MSC_VER < 1600
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
# else
# include <stdint.h>
# endif
#else
# include <stdint.h>
#endif

/* encoder */

size_t hypua_c2d_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_c2d_ucs4_encode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_c2d_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_c2d_ucs2_encode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_p2jc_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_p2jc_ucs4_encode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_p2jc_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_p2jc_ucs2_encode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_p2jd_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_p2jd_ucs4_encode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_p2jd_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_p2jd_ucs2_encode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_c2d_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_c2d_ucs4_encode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_c2d_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_c2d_ucs2_encode(const uint16_t *src, size_t srclen, uint16_t *dst);
size_t hypua_p2jc_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_p2jc_ucs4_encode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_p2jc_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_p2jc_ucs2_encode(const uint16_t *src, size_t srclen, uint16_t *dst);
size_t hypua_p2jd_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_p2jd_ucs4_encode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_p2jd_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_p2jd_ucs2_encode(const uint16_t *src, size_t srclen, uint16_t *dst);

/* decoder */

size_t hypua_d2c_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_d2c_ucs4_decode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_d2c_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_d2c_ucs2_decode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_jc2p_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_jc2p_ucs4_decode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_jc2p_ucs2_calcsize(const unsigned short *src, size_t srclen);
size_t hypua_jc2p_ucs2_decode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_jd2p_ucs4_calcsize(const unsigned int *src, size_t srclen);
size_t hypua_jd2p_ucs4_decode(const unsigned int *src, size_t srclen, unsigned int *dst);
size_t hypua_jd2p_calcsize_ucs2(const unsigned short *src, size_t srclen);
size_t hypua_jd2p_ucs2_decode(const unsigned short *src, size_t srclen, unsigned short *dst);
size_t hypua_d2c_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_d2c_ucs4_decode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_d2c_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_d2c_ucs2_decode(const uint16_t *src, size_t srclen, uint16_t *dst);
size_t hypua_jc2p_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_jc2p_ucs4_decode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_jc2p_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_jc2p_ucs2_decode(const uint16_t *src, size_t srclen, uint16_t *dst);
size_t hypua_jd2p_ucs4_calcsize(const uint32_t *src, size_t srclen);
size_t hypua_jd2p_ucs4_decode(const uint32_t *src, size_t srclen, uint32_t *dst);
size_t hypua_jd2p_ucs2_calcsize(const uint16_t *src, size_t srclen);
size_t hypua_jd2p_ucs2_decode(const uint16_t *src, size_t srclen, uint16_t *dst);

/* decoder generic */

Expand All @@ -47,20 +58,20 @@ void hypua_decoder_init(
);
int hypua_decoder_getstate(void *decoder);
int hypua_decoder_setstate(void *decoder, int state);
size_t hypua_decoder_calcsize_ucs2(void *decoder, void *src, size_t srclen);
size_t hypua_decoder_calcsize_ucs4(void *decoder, void *src, size_t srclen);
size_t hypua_decoder_calcsize_flush(void *t);
size_t hypua_decoder_calcsize_ucs2(void *decoder, const uint16_t *src, size_t srclen);
size_t hypua_decoder_calcsize_ucs4(void *decoder, const uint32_t *src, size_t srclen);
size_t hypua_decoder_calcsize_flush(void *decoder);
size_t hypua_decoder_decode_ucs2(
void *decoder,
void *src,
uint16_t *src,
size_t srclen,
void *dst
uint16_t *dst
);
size_t hypua_decoder_decode_ucs4(
void *decoder,
void *src,
uint32_t *src,
size_t srclen,
void *dst
uint32_t *dst
);
size_t hypua_decoder_decode_flush_ucs2(void *decoder, void *dst);
size_t hypua_decoder_decode_flush_ucs4(void *decoder, void *dst);
Expand Down
4 changes: 2 additions & 2 deletions src/hypua2jamo-c/jc2p.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

#include "config.h"

#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
#ifdef HAVE_STDINT_H
#include <stdint.h>
#else
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
Expand Down
4 changes: 2 additions & 2 deletions src/hypua2jamo-c/jd2p.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

#include "config.h"

#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
#ifdef HAVE_STDINT_H
#include <stdint.h>
#else
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
Expand Down
4 changes: 2 additions & 2 deletions src/hypua2jamo-c/jx2p.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

#include "config.h"

#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
#ifdef HAVE_STDINT_H
#include <stdint.h>
#else
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
Expand Down
5 changes: 2 additions & 3 deletions src/hypua2jamo-c/p2jc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,13 @@

#include "config.h"

#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
#ifdef HAVE_STDINT_H
#include <stdint.h>
#else
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
#endif


#include "p2jc-table.h"


Expand Down
5 changes: 2 additions & 3 deletions src/hypua2jamo-c/p2jd.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,13 @@

#include "config.h"

#ifdef HAVE_INTTYPES_H
#include <inttypes.h>
#ifdef HAVE_STDINT_H
#include <stdint.h>
#else
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
#endif


#include "p2jd-table.h"


Expand Down
Loading

0 comments on commit ef4a426

Please sign in to comment.