7#ifndef RIME_TRANSLATOR_COMMONS_H_
8#define RIME_TRANSLATOR_COMMONS_H_
10#include <boost/regex.hpp>
38 size_t NextStop(
size_t caret_pos)
const;
39 size_t Count(
size_t start_pos,
size_t end_pos)
const;
40 size_t Count()
const {
return vertices_.empty() ? 0 : vertices_.size() - 1; }
41 size_t start()
const {
return vertices_.empty() ? 0 : vertices_.front(); }
42 size_t end()
const {
return vertices_.empty() ? 0 : vertices_.back(); }
44 void set_vertices(vector<size_t>&& vertices) { vertices_ = vertices; }
47 vector<size_t> vertices_;
85 return entry_->matching_code_size != 0 ?
entry_->matching_code_size
89 return entry_->matching_code_size == 0 ||
93 return entry_->matching_code_size != 0 &&
97 return entry_->matching_code_size == 0
124 void Extend(
const DictEntry& another,
size_t end_pos,
double new_weight);
125 void Offset(
size_t offset);
152 if (
tags_.size() == 0) {
153 tags_.push_back(
"abc");
std::shared_ptr< T > an
Definition common.h:60
boost::unordered_set< T > hash_set
Definition common.h:55
an< T > New(Args &&... args)
Definition common.h:77
const string & type() const
Definition candidate.h:26
size_t start() const
Definition candidate.h:28
size_t end() const
Definition candidate.h:29
Definition vocabulary.h:21
Definition vocabulary.h:46
Definition translator_commons.h:23
bool Load(an< ConfigList > patterns)
Definition translator_commons.cc:19
Definition translator_commons.h:30
size_t start() const
Definition translator_commons.h:41
void set_vertices(vector< size_t > &&vertices)
Definition translator_commons.h:44
size_t NextStop(size_t caret_pos) const
Definition translator_commons.cc:67
void Clear()
Definition translator_commons.cc:55
bool HasVertex(size_t vertex) const
Definition translator_commons.cc:88
void AddVertex(size_t vertex)
Definition translator_commons.cc:33
size_t end() const
Definition translator_commons.h:42
size_t PreviousStop(size_t caret_pos) const
Definition translator_commons.cc:59
size_t Count(size_t start_pos, size_t end_pos) const
Definition translator_commons.cc:75
void AddSpans(const Spans &spans)
Definition translator_commons.cc:49
size_t Count() const
Definition translator_commons.h:40
void AddSpan(size_t start, size_t end)
Definition translator_commons.cc:44
Definition translator_commons.h:52
virtual Spans Syllabify(const Phrase *phrase)=0
virtual ~PhraseSyllabifier()=default
Definition translator_commons.h:63
void set_syllabifier(an< PhraseSyllabifier > syllabifier)
Definition translator_commons.h:76
an< PhraseSyllabifier > syllabifier_
Definition translator_commons.h:109
const DictEntry & entry() const
Definition translator_commons.h:82
Spans spans()
Definition translator_commons.h:102
string comment() const
Definition translator_commons.h:72
const string & text() const
Definition translator_commons.h:71
bool is_exact_match() const
Definition translator_commons.h:88
string preedit() const
Definition translator_commons.h:73
Code & code() const
Definition translator_commons.h:81
Phrase(const Language *language, const string &type, size_t start, size_t end, const an< DictEntry > &entry)
Definition translator_commons.h:65
Code matching_code() const
Definition translator_commons.h:96
size_t matching_code_size() const
Definition translator_commons.h:84
double weight() const
Definition translator_commons.h:79
bool is_predicitve_match() const
Definition translator_commons.h:92
const Language * language_
Definition translator_commons.h:107
void set_preedit(const string &preedit)
Definition translator_commons.h:75
an< DictEntry > entry_
Definition translator_commons.h:108
void set_weight(double weight)
Definition translator_commons.h:80
const Language * language() const
Definition translator_commons.h:83
void set_comment(const string &comment)
Definition translator_commons.h:74
bool empty() const
Definition translator_commons.h:127
Sentence(const Sentence &other)
Definition translator_commons.h:118
Sentence(const Language *language)
Definition translator_commons.h:116
const vector< size_t > & word_lengths() const
Definition translator_commons.h:132
void Offset(size_t offset)
Definition translator_commons.cc:108
const vector< DictEntry > & components() const
Definition translator_commons.h:131
vector< size_t > word_lengths_
Definition translator_commons.h:136
void Extend(const DictEntry &another, size_t end_pos, double new_weight)
Definition translator_commons.cc:94
size_t size() const
Definition translator_commons.h:129
vector< DictEntry > components_
Definition translator_commons.h:135
void set_strict_spelling(bool is_strict)
Definition translator_commons.h:165
const string & delimiters() const
Definition translator_commons.h:148
bool enable_completion() const
Definition translator_commons.h:162
vector< string > tags() const
Definition translator_commons.h:149
double initial_quality_
Definition translator_commons.h:178
bool strict_spelling() const
Definition translator_commons.h:164
string delimiters_
Definition translator_commons.h:173
void set_initial_quality(double quality)
Definition translator_commons.h:167
bool strict_spelling_
Definition translator_commons.h:177
void set_tag(const string &tag)
Definition translator_commons.h:157
const hash_set< string > & blacklist()
Definition translator_commons.h:170
Projection comment_formatter_
Definition translator_commons.h:182
const string & tag() const
Definition translator_commons.h:156
TranslatorOptions(const Ticket &ticket)
Definition translator_commons.cc:115
void set_tags(const vector< string > &tags)
Definition translator_commons.h:150
bool contextual_suggestions() const
Definition translator_commons.h:158
bool enable_completion_
Definition translator_commons.h:176
double sentence_cutoff_threshold_
Definition translator_commons.h:180
bool contextual_suggestions_
Definition translator_commons.h:175
Projection & preedit_formatter()
Definition translator_commons.h:168
double initial_quality() const
Definition translator_commons.h:166
Patterns user_dict_disabling_patterns_
Definition translator_commons.h:183
bool IsUserDictDisabledFor(const string &input) const
Definition translator_commons.cc:170
void set_enable_completion(bool enabled)
Definition translator_commons.h:163
void set_contextual_suggestions(bool enabled)
Definition translator_commons.h:159
vector< string > tags_
Definition translator_commons.h:174
int max_sentences_
Definition translator_commons.h:179
hash_set< string > blacklist_
Definition translator_commons.h:184
Projection preedit_formatter_
Definition translator_commons.h:181
Projection & comment_formatter()
Definition translator_commons.h:169