Tomotaka SUWA
t-suw****@users*****
2005年 10月 20日 (木) 02:10:31 JST
Index: AquaSKK/SKKDictionary.cpp
diff -u AquaSKK/SKKDictionary.cpp:1.3 AquaSKK/SKKDictionary.cpp:1.4
--- AquaSKK/SKKDictionary.cpp:1.3 Thu Oct 13 23:22:35 2005
+++ AquaSKK/SKKDictionary.cpp Thu Oct 20 02:10:31 2005
@@ -1,5 +1,5 @@
/*
- $Id: SKKDictionary.cpp,v 1.3 2005/10/13 14:22:35 t-suwa Exp $
+ $Id: SKKDictionary.cpp,v 1.4 2005/10/19 17:10:31 t-suwa Exp $
---------
MacOS X implementation of the SKK input method.
@@ -208,60 +208,54 @@
}
}
-vector<CppCFString> SKKDictionary::findWithoutOkuri(const CppCFString& query)
-{
- // ¶ÝµÈ¯êÎóÌvectorðÔ·B
- vector<CppCFString> *candidates = okuri_nasi_table[query];
- if (candidates == NULL) // Gg©Ì¶ÝµÈ¢©Aܾp[X³êĢȢB
- {
- for (unsigned i = 0;i < okuri_nasi_unparsed.size();i++)
- {
- CppCFString line(okuri_nasi_unparsed[i].c_str(),kCFStringEncodingEUC_JP); // EUC-JP
- if (line.startsWith(query))
- {
- CppCFString index;
- vector<CppCFString> entries;
- parseOkuriNasiEntry(line,index,entries);
-
- return entries;
- }
- }
-
- vector<CppCFString> empty;
- return empty;
- }
- else
- {
- return *candidates;
+std::vector<CppCFString>
+SKKDictionary::findWithoutOkuri(const CppCFString& query) {
+ // ©Â©Á½H
+ if(okuri_nasi_table.find(query) != okuri_nasi_table.end()) {
+ return *okuri_nasi_table[query];
+ }
+
+ // Gg©Ì¶ÝµÈ¢©Aܾp[X³êĢȢ
+ for(unsigned i = 0; i < okuri_nasi_unparsed.size() ; ++ i) {
+ CppCFString line(okuri_nasi_unparsed[i].c_str(), kCFStringEncodingEUC_JP); // EUC-JP
+
+ if(line.startsWith(query)) {
+ CppCFString index;
+ std::vector<CppCFString> entries;
+
+ parseOkuriNasiEntry(line, index, entries);
+
+ return entries;
}
+ }
+
+ // ¶ÝµÈ¯êÎóÌ vector ðÔ·
+ return std::vector<CppCFString>();
}
-vector<OkuriganaEntry> SKKDictionary::findWithOkuri(const CppCFString& root)
-{
- // ¶ÝµÈ¯êÎóÌvectorðÔ·B
- vector<OkuriganaEntry> *candidates = okuri_ari_table[root];
- if (candidates == NULL) // Gg©Ì¶ÝµÈ¢©Aܾp[X³êĢȢB
- {
- for (unsigned i = 0;i < okuri_ari_unparsed.size();i++)
- {
- CppCFString line(okuri_ari_unparsed[i].c_str(),kCFStringEncodingEUC_JP); // EUC-JP
- if (line.startsWith(root))
- {
- CppCFString index;
- vector<OkuriganaEntry> entries;
- parseOkuriAriEntry(line,index,entries);
-
- return entries;
- }
- }
-
- vector<OkuriganaEntry> empty;
- return empty;
- }
- else
- {
- return *candidates;
+std::vector<OkuriganaEntry>
+SKKDictionary::findWithOkuri(const CppCFString& root) {
+ // ©Â©Á½H
+ if(okuri_ari_table.find(root) != okuri_ari_table.end()) {
+ return *okuri_ari_table[root];
+ }
+
+ // Gg©Ì¶ÝµÈ¢©Aܾp[X³êĢȢB
+ for(unsigned i = 0; i < okuri_ari_unparsed.size(); ++ i) {
+ CppCFString line(okuri_ari_unparsed[i].c_str(), kCFStringEncodingEUC_JP); // EUC-JP
+
+ if(line.startsWith(root)) {
+ CppCFString index;
+ std::vector<OkuriganaEntry> entries;
+
+ parseOkuriAriEntry(line, index, entries);
+
+ return entries;
}
+ }
+
+ // ¶ÝµÈ¯êÎóÌ vector ðÔ·
+ return std::vector<OkuriganaEntry>();
}
vector<CppCFString> SKKDictionary::findCompletions(const CppCFString& query)