4
* Copyright 2010 BYVoid <byvoid1@gmail.com>
6
* Licensed under the Apache License, Version 2.0 (the "License");
7
* you may not use this file except in compliance with the License.
8
* You may obtain a copy of the License at
10
* http://www.apache.org/licenses/LICENSE-2.0
12
* Unless required by applicable law or agreed to in writing, software
13
* distributed under the License is distributed on an "AS IS" BASIS,
14
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
* See the License for the specific language governing permissions and
16
* limitations under the License.
19
#ifndef __OPENCC_DICTIONARY_ABSTRACT_H_
20
#define __OPENCC_DICTIONARY_ABSTRACT_H_
22
#include "../opencc_utils.h"
23
#include "../opencc_dictionary.h"
25
#define DICTIONARY_MAX_COUNT 128
27
typedef void * dict_ptr;
31
opencc_dictionary_type type;
39
dictionary dict[DICTIONARY_MAX_COUNT];
40
} opencc_dictionary_description;
42
dict_ptr dict_abstract_open(dictionary * dict);
44
void dict_abstract_close(dictionary * dict);
46
const ucs4_t * dict_abstract_match_longest(dictionary * dict, const ucs4_t * word,
49
size_t dict_abstract_get_all_match_lengths(dictionary * dict, const ucs4_t * word,
50
size_t * match_length);
52
size_t dict_abstract_get_lexicon(dictionary * dict, opencc_entry * lexicon);
54
#endif /* __OPENCC_DICTIONARY_ABSTRACT_H_ */