(linenum→info "unix/slp.c:2238")

anthy/9100e/src-worddic/dic_main.h

    1: #ifndef _dic_main_h_included_
    2: #define _dic_main_h_included_
    3: 
    4: #include <anthy/dic.h>
    5: #include <anthy/word_dic.h>
    6: #include <anthy/wtype.h>
    7: #include <anthy/xstr.h>
    8: 
    9: 
   10: /* 辞書中の頻度に対して内部の頻度の倍率 */
   11: #define FREQ_RATIO 8
   12: 
   13: 
   14: /* dic_main.c */
   15: int anthy_init_dic_cache(void);
   16: struct seq_ent *anthy_cache_get_seq_ent(xstr *x, int is_reverse);
   17: 
   18: 
   19: /* word_dic.c */
   20: /* 辞書検索のキーに使用する部分文字列 */
   21: struct gang_elm {
   22:   char *key;
   23:   xstr xs;
   24:   union {
   25:     /* 省メモリのためにunionにしている */
   26:     int idx;
   27:     struct gang_elm *next;
   28:   } tmp;
   29: };
   30: struct seq_ent *anthy_cache_get_seq_ent(xstr *xs, int is_reverse);
   31: struct seq_ent *anthy_validate_seq_ent(struct seq_ent *seq, xstr *xs,
   32:                                        int is_reverse);
   33: 
   34: 
   35: /* word_lookup.c */
   36: void anthy_init_word_dic(void);
   37: struct word_dic* anthy_create_word_dic(void);
   38: void anthy_release_word_dic(struct word_dic *);
   39: void anthy_gang_fill_seq_ent(struct word_dic *wd,
   40:                              struct gang_elm **array, int nr,
   41:                              int is_reverse);
   42: 
   43: 
   44: /* use_dic.c */
   45: void anthy_init_use_dic(void);
   46: void anthy_quit_use_dic(void);
   47: int anthy_word_dic_check_word_relation(struct word_dic *,
   48:                                        int from, int to);
   49: 
   50: struct dic_session *anthy_create_session(void);
   51: void anthy_activate_session(struct dic_session *);
   52: void anthy_release_session(struct dic_session *);
   53: int anthy_get_current_session_mask(void);
   54: 
   55: /* mem_dic.c */
   56: void anthy_init_mem_dic(void);
   57: void anthy_quit_mem_dic(void);
   58: struct mem_dic * anthy_create_mem_dic(void);
   59: void anthy_release_mem_dic(struct mem_dic * );
   60: /* node がなければ作る */
   61: struct seq_ent *anthy_mem_dic_alloc_seq_ent_by_xstr(struct mem_dic * d,
   62:                                                     xstr *, int is_reverse);
   63: /* node がなければ作らない */
   64: struct seq_ent *anthy_mem_dic_find_seq_ent_by_xstr(struct mem_dic * d,
   65:                                                    xstr *, int is_reverse);
   66: /**/
   67: void anthy_mem_dic_push_back_dic_ent(struct seq_ent *se, int is_compound,
   68:                                      xstr *xs, wtype_t wt,
   69:                                      const char *wt_name, int freq,
   70:                                      int feature);
   71: void anthy_mem_dic_release_seq_ent(struct mem_dic * d, xstr *, int is_reverse);
   72: 
   73: 
   74: /* priv_dic.c */
   75: void anthy_init_private_dic(const char *id);
   76: void anthy_copy_words_from_private_dic(struct seq_ent *seq, xstr *xs,
   77:                                        int is_reverse);
   78: void anthy_release_private_dic(void);
   79: void anthy_check_user_dir(void);
   80: void anthy_priv_dic_lock(void);
   81: void anthy_priv_dic_unlock(void);
   82: void anthy_priv_dic_update(void);
   83: struct word_line {
   84:   char wt[10];
   85:   int freq;
   86:   const char *word;
   87: };
   88: int anthy_parse_word_line(const char *line, struct word_line *res);
   89: struct textdict;
   90: void anthy_ask_scan(void (*request_scan)(struct textdict *, void *),
   91:                     void *arg);
   92: 
   93: #endif
Syntax (Markdown)