Open Chinese Convert
1.1.1
A project for conversion between Traditional and Simplified Chinese
src
DartsDict.hpp
1
/*
2
* Open Chinese Convert
3
*
4
* Copyright 2010-2014 Carbo Kuo <byvoid@byvoid.com>
5
*
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
9
*
10
* http://www.apache.org/licenses/LICENSE-2.0
11
*
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.
17
*/
18
19
#pragma once
20
21
#include "Common.hpp"
22
#include "SerializableDict.hpp"
23
24
namespace
opencc {
29
class
OPENCC_EXPORT
DartsDict
:
public
Dict
,
public
SerializableDict
{
30
public
:
31
virtual
~
DartsDict
();
32
33
virtual
size_t
KeyMaxLength()
const
;
34
35
virtual
Optional<const DictEntry*>
Match(
const
char
* word,
size_t
len)
const
;
36
37
virtual
Optional<const DictEntry*>
MatchPrefix(
const
char
* word,
38
size_t
len)
const
;
39
40
virtual
LexiconPtr GetLexicon()
const
;
41
42
virtual
void
SerializeToFile(FILE* fp)
const
;
43
47
static
DartsDictPtr NewFromDict(
const
Dict
& thatDict);
48
49
static
DartsDictPtr NewFromFile(FILE* fp);
50
51
private
:
52
DartsDict
();
53
54
size_t
maxLength;
55
LexiconPtr lexicon;
56
57
class
DartsInternal;
58
DartsInternal*
internal
;
59
};
60
}
// namespace opencc
opencc::Dict
Abstract class of dictionary.
Definition:
Dict.hpp:29
opencc::Optional
A class that wraps type T into a nullable type.
Definition:
Optional.hpp:26
opencc::SerializableDict
Serializable dictionary interface.
Definition:
SerializableDict.hpp:28
opencc::DartsDict
Darts dictionary.
Definition:
DartsDict.hpp:29
Generated on Fri Jan 15 2021 21:12:36 for Open Chinese Convert by
1.8.17