dictre.h
author viric <viriketo@gmail.com>
Fri, 30 Mar 2012 18:55:30 +0200
branchsql
changeset 32 6a1a709330bf
parent 24 026a2ba0ce16
permissions -rw-r--r--
Adding code to dump the words as sql.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
     1
enum {
14
a961bb8806b9 first 'zparsetext'.
viric@llimona
parents: 10
diff changeset
     2
    MAXWORD=200,
24
026a2ba0ce16 Now the HTML result shows word meanings.
viric@llimona
parents: 21
diff changeset
     3
    MAXDEF=100000,
17
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
     4
    END_OF_URL=-2,
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
     5
    HTTP_DECODE_ERROR=-3
10
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
     6
};
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
     7
15
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
     8
enum Case
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
     9
{
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
    10
    LCASE = 0,
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
    11
    UCASE = 1
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
    12
};
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
    13
0
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    14
struct Words
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    15
{
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    16
    struct Word *first;
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    17
    int length;
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    18
};
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    19
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    20
struct Word
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    21
{
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    22
    char *w;
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    23
    int def;
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    24
};
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    25
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    26
struct Def
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    27
{
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    28
    char *d;
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    29
    int offset;
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    30
    int length;
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    31
};
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    32
17
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    33
struct Dict
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    34
{
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    35
    unsigned char *index;
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    36
    int indexfd;
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    37
    int indexsize;
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    38
    FILE *defs;
21
01fe372188ac Added capabilities to the dictionary finder.
viric@llimona
parents: 17
diff changeset
    39
    int trim_first_line;
01fe372188ac Added capabilities to the dictionary finder.
viric@llimona
parents: 17
diff changeset
    40
    int trim_last_newlines;
17
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    41
};
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    42
0
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    43
/* write.c */
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    44
void write_dictionary(const char *name);
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    45
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    46
/* dict.c */
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    47
char * get_word(FILE *index);
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    48
int get_int(FILE *index);
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    49
char * get_def(FILE *fdefs, int offset, int length);
8
09ec33061ff3 Added 'ia5' binary, and fixed the ia5 functions.
viric@llimona
parents: 5
diff changeset
    50
int str2int(const char *str);
09ec33061ff3 Added 'ia5' binary, and fixed the ia5 functions.
viric@llimona
parents: 5
diff changeset
    51
int num_to_ia5(char *dest, int n);
0
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    52
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    53
/* filter.c */
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    54
void filter_all(const char *filter_par);
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    55
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    56
/* sort.c */
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    57
int sort_words();
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    58
/* load.c */
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    59
void load_init();
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    60
void load_dictionary(FILE *index, FILE *fdefs);
7f37716d4f1e Initial. Awful makefile.
viric@llimona
parents:
diff changeset
    61
void print_words();
2
57a1fcb0c75c Some improvements.
viric@mandarina
parents: 0
diff changeset
    62
57a1fcb0c75c Some improvements.
viric@mandarina
parents: 0
diff changeset
    63
/* fastmalloc */
57a1fcb0c75c Some improvements.
viric@mandarina
parents: 0
diff changeset
    64
void * fastmalloc(int newsize);
5
c87681fff7d3 Checks for repeated definitions.
viric@mandarina
parents: 2
diff changeset
    65
c87681fff7d3 Checks for repeated definitions.
viric@mandarina
parents: 2
diff changeset
    66
/* repeated.c */
c87681fff7d3 Checks for repeated definitions.
viric@mandarina
parents: 2
diff changeset
    67
void new_hashdef(struct Def *ptr, int index);
c87681fff7d3 Checks for repeated definitions.
viric@mandarina
parents: 2
diff changeset
    68
int def_repeated(struct Def *ptr);
c87681fff7d3 Checks for repeated definitions.
viric@mandarina
parents: 2
diff changeset
    69
void init_repeated();
c87681fff7d3 Checks for repeated definitions.
viric@mandarina
parents: 2
diff changeset
    70
void remove_def(int i);
10
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    71
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    72
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    73
/* FOR ZPROCESS */
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    74
/* zdefs.c */
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    75
void zprocess_def(const char *root, char *def);
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    76
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    77
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    78
/* zhash.c */
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    79
void insert_word(const char *word, const char *unflexed);
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    80
void init_wordlist();
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    81
void dump_wordlist();
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    82
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    83
/* zrus.c */
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    84
char * mix_accents(char *a, const char *b);
188a0e3b3fb4 Fixed a bug in dict.c
viric@llimona
parents: 8
diff changeset
    85
void remove_accent(unsigned char *dest, const unsigned char *from);
14
a961bb8806b9 first 'zparsetext'.
viric@llimona
parents: 10
diff changeset
    86
int until_newword(const unsigned char *str, int *index);
a961bb8806b9 first 'zparsetext'.
viric@llimona
parents: 10
diff changeset
    87
int until_noword(const char *str, int *index);
a961bb8806b9 first 'zparsetext'.
viric@llimona
parents: 10
diff changeset
    88
int skip_newline(const char *str, int *index);
a961bb8806b9 first 'zparsetext'.
viric@llimona
parents: 10
diff changeset
    89
int is_ASCII(unsigned char c);
15
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
    90
int get_case(enum Case *vcase, const char *str);
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
    91
void get_lowcase_str(char *inout, const char *str);
17a66ceb774a Pritraktado de majuskloj per ICU.
viric@llimona
parents: 14
diff changeset
    92
void reapply_case(char *out, const char *in, const enum Case *vcase);
16
b4e251400e36 Improved hash on zprocess, and added parsing for "jo".
viric@llimona
parents: 15
diff changeset
    93
void remove_jo(char *str);
14
a961bb8806b9 first 'zparsetext'.
viric@llimona
parents: 10
diff changeset
    94
a961bb8806b9 first 'zparsetext'.
viric@llimona
parents: 10
diff changeset
    95
/* find.c */
17
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    96
void init_dictionary(struct Dict *d, const char *base);
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    97
void end_dictionary(struct Dict *d);
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    98
void find_def(struct Dict *d, const char *word, char * def);
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
    99
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
   100
/* http_dec.c */
d95d9e7a2b81 General interface to dictionary search.
viric@llimona
parents: 16
diff changeset
   101
int http_getc(FILE *f);