some fast patch

This commit is contained in:
Nishi 2026-09-23 19:46:54 +09:00
commit b38b829612
9 changed files with 150 additions and 7 deletions

View file

@ -108,6 +108,17 @@ typedef struct global {
TypeDicSeg Jpeepidx;
} Global;
typedef struct dictskipseg {
u_int first;
u_short count;
TypeDicOfs end;
} DictSkipSeg;
typedef struct dictskipent {
TypeDicOfs offset;
u_short lower;
} DictSkipEnt;
typedef struct vfile {
u_char* buffer;
u_int size;
@ -128,7 +139,9 @@ typedef struct dictfile {
long idxstrt;
long segstrt;
TypeIdxOfs* ofsptr;
TypeIdxOfs* ofsptr;
DictSkipSeg* skipseg;
DictSkipEnt* skipent;
struct dictfile* link;
} DictFile;

View file

@ -65,7 +65,8 @@ CLREC* alloc_clrec(SJ4_CONTEXT2);
void free_clrec(SJ4_CONTEXT CLREC*);
/* charsize.c */
static __inline int codesize_inline(u_char code) {
static __inline int
codesize_inline(u_char code) {
switch(code & KANJIMODEMASK) {
case ZENHIRAASSYUKU:
case ZENKATAASSYUKU:
@ -159,7 +160,8 @@ int getkanji(SJ4_CONTEXT u_char*, int, u_char*, u_char*);
void getrank(SJ4_CONTEXT2);
/* hzstrlen.c */
static __inline int euc_codesize_inline(u_char c) {
static __inline int
euc_codesize_inline(u_char c) {
if((c & KANJIMODEMASK) == 0x90) {
return 1;
} else if(isknj1(c)) {
@ -268,6 +270,7 @@ extern u_char kigou[];
/* sdepend.c */
DictFile* opendict(SJ4_CONTEXT char*, char*);
int closedict(SJ4_CONTEXT DictFile*);
u_char* skipdict(SJ4_CONTEXT u_char*, TypeDicSeg, u_char);
StdyFile* openstdy(SJ4_CONTEXT char*, char*);
int closestdy(SJ4_CONTEXT StdyFile*);
int putstydic(SJ4_CONTEXT2);

View file

@ -142,6 +142,7 @@ typedef struct dict {
IFunc putidx;
IFunc putdic;
IFunc rszdic;
VFuncDict skipdic;
} DICT;
typedef struct dictl {

View file

@ -55,6 +55,12 @@ typedef int (*IFuncDict)(
#endif
void*);
typedef void* (*VFuncDict)(
#ifndef SJ4_GLOBAL
void*,
#endif
void*, short);
typedef u_char TypeGroup;
typedef u_char TypeGram;
typedef u_short TypeIdxOfs;