|
a/src/rcldb/rcldb.h |
|
b/src/rcldb/rcldb.h |
|
... |
|
... |
25 |
#include "cstr.h"
|
25 |
#include "cstr.h"
|
26 |
#include "refcntr.h"
|
26 |
#include "refcntr.h"
|
27 |
#include "rcldoc.h"
|
27 |
#include "rcldoc.h"
|
28 |
#include "stoplist.h"
|
28 |
#include "stoplist.h"
|
29 |
#include "rclconfig.h"
|
29 |
#include "rclconfig.h"
|
|
|
30 |
#include "utf8iter.h"
|
|
|
31 |
#include "textsplit.h"
|
30 |
|
32 |
|
31 |
using std::string;
|
33 |
using std::string;
|
32 |
using std::vector;
|
34 |
using std::vector;
|
33 |
|
35 |
|
34 |
// rcldb defines an interface for a 'real' text database. The current
|
36 |
// rcldb defines an interface for a 'real' text database. The current
|
|
... |
|
... |
189 |
static bool isSpellingCandidate(const string& term)
|
191 |
static bool isSpellingCandidate(const string& term)
|
190 |
{
|
192 |
{
|
191 |
if (term.empty() || term.length() > 50)
|
193 |
if (term.empty() || term.length() > 50)
|
192 |
return false;
|
194 |
return false;
|
193 |
if (has_prefix(term))
|
195 |
if (has_prefix(term))
|
|
|
196 |
return false;
|
|
|
197 |
Utf8Iter u8i(term);
|
|
|
198 |
if (TextSplit::isCJK(*u8i))
|
194 |
return false;
|
199 |
return false;
|
195 |
if (term.find_first_of(" !\"#$%&()*+,-./0123456789:;<=>?@[\\]^_`{|}~")
|
200 |
if (term.find_first_of(" !\"#$%&()*+,-./0123456789:;<=>?@[\\]^_`{|}~")
|
196 |
!= string::npos)
|
201 |
!= string::npos)
|
197 |
return false;
|
202 |
return false;
|
198 |
return true;
|
203 |
return true;
|