Commit graph

203 commits

Author SHA1 Message Date
Jean Chalard
3e954347e3 Fix typos
I think I may pass out from the sheer ugliness

Change-Id: I1e709f03ef47ec713552d41fd9e37e01b810ae88
2013-10-01 21:08:14 +09:00
Keisuke Kuroyanagi
6995310996 Separate "GC" and "GC with decay".
Bug: 6669677
Change-Id: I9d6aba76cef2616f0549e612db9701e1d6a19467
2013-10-01 18:09:31 +09:00
Jean Chalard
bf1beefd08 Merge "Surface the distance after first word for autocommit." 2013-09-30 14:06:02 +00:00
Jean Chalard
da06e385f5 Surface the distance after first word for autocommit.
Bug: 9059617
Change-Id: Ie9b4cc8148ae8e0ff437b3337ab6c1bde95500f5
2013-09-30 23:02:04 +09:00
Keisuke Kuroyanagi
fd02b2d6ee Implement simple dictionary decay.
Groundwork and implement simple decay.
Increment probability when typed and decrement probability
at GC.

Bug: 6669677

Change-Id: Ib12caead0cbeef4ce7808fe8ac0b00ee331523fe
2013-09-30 20:53:35 +09:00
Keisuke Kuroyanagi
c18510049a Prepare dictionary decay.
Bug: 6669677
Change-Id: I8fbae190dd44a6bdbee7e9b6d3a16208322727f7
2013-09-30 13:57:54 +09:00
Keisuke Kuroyanagi
68bc4ba5c2 Merge "Add boundary checking for PtNode Array reading." 2013-09-27 14:25:24 +00:00
Keisuke Kuroyanagi
8b580819a5 Merge "Add unigram/bigram counting." 2013-09-27 14:14:49 +00:00
Keisuke Kuroyanagi
31097a57cc Add unigram/bigram counting.
Bug: 6669677
Change-Id: I05ea2201d822dddf062b08c8467daa336760e16c
2013-09-27 23:12:12 +09:00
Keisuke Kuroyanagi
67cb282b64 Add boundary checking for PtNode Array reading.
Bug: 6669677
Change-Id: Iea5e19d98d2fc26f137046dd5f8e339239672351
2013-09-27 22:28:54 +09:00
Keisuke Kuroyanagi
85463c7f40 Merge "Use base lower character to get point to key length." 2013-09-26 08:28:41 +00:00
Keisuke Kuroyanagi
e639d7346c Use base lower character to get point to key length.
Bug: 9490364
Change-Id: I3755f00ab22f926f087fc917b95a2db7d722fa00
2013-09-26 16:36:05 +09:00
Keisuke Kuroyanagi
5ef6209656 Create empty dictionary file in native code.
Bug: 6669677
Change-Id: I46d23deee1fd091678f4593561cb8687eb815212
2013-09-26 12:59:02 +09:00
Keisuke Kuroyanagi
10b56df486 Merge "Prepare dictionary file creating in native code." 2013-09-26 02:38:19 +00:00
Keisuke Kuroyanagi
c6015327fb Merge "Add empty PtNode checking for PatriciaTriePolicy." 2013-09-26 02:32:03 +00:00
Keisuke Kuroyanagi
9155eec0d9 Add empty PtNode checking for PatriciaTriePolicy.
Bug: 9503570
Change-Id: I784d29c307c1040699fa0aadfc6a47d97f03ffe4
2013-09-26 11:19:04 +09:00
Keisuke Kuroyanagi
36f4592128 Merge "Refactoring header attribute reading." 2013-09-26 01:57:22 +00:00
Keisuke Kuroyanagi
1592eb8a3a Prepare dictionary file creating in native code.
Bug: 6669677
Change-Id: I7c476a6e99ec7ac883f05d84ef306265255154da
2013-09-26 10:48:43 +09:00
Keisuke Kuroyanagi
989596844e Refactoring header attribute reading.
Bug: 6669677
Change-Id: Ifc11da614d5c331ac61019a324e3a0ff187329cd
2013-09-26 10:45:03 +09:00
Keisuke Kuroyanagi
009dcac33f Boundary check for children creating of PatriciaTriePolicy.
Bug: 10537529
Change-Id: I0cd8b6de230795498395ca08789ccc1c74780f2c
2013-09-25 19:54:31 +09:00
Keisuke Kuroyanagi
3d2802ef2e Allow large memory space for GC.
Bug: 6669677
Change-Id: I021c92a1ca5cd28f745cbfe729c99e346c58074d
2013-09-24 19:21:17 +09:00
Keisuke Kuroyanagi
f3cd38f2c7 GC step 5. Add large tests and fix bugs.
Bug: 6669677
Change-Id: I41e44a64730f9c66645995095a7ecff51ffd5351
2013-09-24 16:32:25 +09:00
Keisuke Kuroyanagi
2cfe7f9e3b GC step 4. Update all positions in new dict and add a test.
Bug: 6669677
Change-Id: I035d848a210653dcd3c1a1f21781968adced9225
2013-09-24 15:29:56 +09:00
Keisuke Kuroyanagi
0355bf2d4c GC step 3. Place and write valid PtNodes.
Bug: 6669677

Change-Id: Id2b7359bafb34acf12dc3bf4c595a03073fda805
2013-09-20 21:11:49 +09:00
Keisuke Kuroyanagi
77ef75cbe6 GC step 2. Finding garbage bigram entries.
Bug: 6669677
Change-Id: Ie3f406776ab56bf589ac10e15e2534ff8cb1f275
2013-09-20 20:04:57 +09:00
Keisuke Kuroyanagi
2a64726a16 Step 1 to implement GC. Finding garbage PtNodes.
Bug: 6669677
Change-Id: I3551fe2f16a09d2bf7761f4e1d73ebd4a03380e7
2013-09-20 15:37:14 +09:00
Keisuke Kuroyanagi
b7e8a9abf5 Groundwork for implementing GC.
Bug: 6669677

Change-Id: Ia2b2f338795ab62cc9eef73731285b2a5a0ac5e4
2013-09-19 14:48:59 +09:00
Keisuke Kuroyanagi
e28927dfb6 Change name of header_reading_utlis.*
Bug: 6669677
Change-Id: I91389050148237580ef640d3a58b935ea752954e
2013-09-18 18:27:01 +09:00
Keisuke Kuroyanagi
484fa7b59c Add dictionary header writing methods.
Bug: 6669677
Change-Id: I392ac4776b55779903cbaa17e683005d80017a41
2013-09-18 18:08:33 +09:00
Keisuke Kuroyanagi
1560543754 Implement dictionary flush.
Bug: 6669677
Change-Id: I1d70ac6319fb6d8700074de382568c2108887960
2013-09-18 13:19:14 +09:00
Keisuke Kuroyanagi
ac7e005ef0 Merge "Prepare dictionary saving in native code." 2013-09-17 09:18:32 +00:00
Keisuke Kuroyanagi
d0246277fd Prepare dictionary saving in native code.
Bug: 6669677

Change-Id: I0787f66409e2b183c6328fa05805945520e1e93a
2013-09-17 18:07:16 +09:00
Keisuke Kuroyanagi
d9f450ef00 Implement removeBigramWords() for DynamicPatriciaTrie.
Bug: 6669677
Change-Id: I99cb517511b4c968b8bf937baab5d7f42b0f534e
2013-09-17 18:05:32 +09:00
Keisuke Kuroyanagi
78b55a31cb Fix handling multi-bytes characters and add a test.
Bug: 6669677

Change-Id: Id2154db47adea2929559a4187a726f9dfa83363e
2013-09-17 15:11:24 +09:00
Keisuke Kuroyanagi
6d1a29eaab Fix build.
Change-Id: I1c3c2996ca11bfe8864df774e9280893cf17c0d4
2013-09-17 13:03:12 +09:00
Keisuke Kuroyanagi
cd6a0430c7 Implement addBigramWords() for DynamicPatriciaTrie.
Bug: 6669677
Change-Id: Ia6aa76c212165690191c65fee9dacdc44be5acd5
2013-09-17 12:52:21 +09:00
Keisuke Kuroyanagi
cb816e5e16 Merge NOT_A_VALID_WORD_POS into NOT_A_DICT_POS.
Change-Id: I2ac3aa2a19d14e8c4159a59334e7816bd1409688
2013-09-16 18:37:23 +09:00
Keisuke Kuroyanagi
9ea9c61c99 Move methods using ByteArrayUtils from .h to .cpp.
Bug: 10402083
Change-Id: Ic5f1aa11eb403f5bdc83de8e38a6457200519cae
2013-09-16 18:37:08 +09:00
Keisuke Kuroyanagi
f874728496 Add boundary check for PtNode reading position.
Bug: 10743878
Change-Id: I6727b12b0ef98bb9cfb3ca95aeab2c79749f47a2
2013-09-16 18:34:34 +09:00
Keisuke Kuroyanagi
04bf3cd4e0 Merge "Employ "bigram link" for handling moved bigram target." 2013-09-13 09:46:27 +00:00
Keisuke Kuroyanagi
8c69ddb53e Employ "bigram link" for handling moved bigram target.
Bug: 6669677

Change-Id: I9a6c0cdb28265e3215ced88f38344df12c25a76d
2013-09-13 18:36:29 +09:00
Keisuke Kuroyanagi
ebe3b3e8fd Merge "Fix bug related to dynamic patricia trie bigram adding." 2013-09-13 05:49:26 +00:00
Keisuke Kuroyanagi
0243c9ae3d Update children's parent position when the node get moved.
Bug: 6669677
Change-Id: Ifcaf784afd218c7afd70167045cd2aed8b7909c2
2013-09-13 14:26:00 +09:00
Keisuke Kuroyanagi
1c0fc852f6 Fix bug related to dynamic patricia trie bigram adding.
Bug: 6669677

Change-Id: Ia1216a1860a7c5c12a0d8a0816dda8d6a3bea123
2013-09-13 11:38:53 +09:00
Keisuke Kuroyanagi
f38969f3f8 Fix bug of dictionary dynamic updating methods.
Bug: 6669677
Change-Id: I5483adb03e1ac0c27bbfd99d5f4d7cc29809d70a
2013-09-10 22:32:30 +09:00
Keisuke Kuroyanagi
e531c2241e Move a flag about switching dynamic update to java.
Bug: 6669677

Change-Id: I6aa99cae4a227f9202179c2873d13473a773e024
2013-09-10 18:45:53 +09:00
Keisuke Kuroyanagi
210669605a Merge "Fix: ExtendableBuffer" 2013-09-10 06:45:41 +00:00
Keisuke Kuroyanagi
4e79fb24ab Fix: ExtendableBuffer
Bug: 6669677
Change-Id: I73142fdabac1cbd4128b83c3b26b642b4b4f4da7
2013-09-10 15:40:11 +09:00
Keisuke Kuroyanagi
216617062a Merge "Implement split and create node methods." 2013-09-10 06:38:05 +00:00
Keisuke Kuroyanagi
fdcd67ba15 Implement split and create node methods.
Bug: 6669677
Change-Id: Iac4afb637a8ba3d55f7a88f4a532831c1731f93e
2013-09-10 15:27:19 +09:00
Keisuke Kuroyanagi
c5f35a9c86 Merge "Calculate parent offset from the head of moved node." 2013-09-10 06:08:56 +00:00
Keisuke Kuroyanagi
9c820de7a1 Calculate parent offset from the head of moved node.
Bug: 6669677
Change-Id: I710453f1c37ec14e5b6830595c1afb2caff83cf2
2013-09-10 15:03:44 +09:00
Keisuke Kuroyanagi
1d4a07f6c7 Merge "Re-call getBuffer after writing in bigram/shortcut policy." 2013-09-10 03:27:30 +00:00
Keisuke Kuroyanagi
c987120cbc Re-call getBuffer after writing in bigram/shortcut policy.
Bug: 6669677
Change-Id: I35dc290aa9582e019681b8aae49db3f8d37c90d4
2013-09-10 12:12:42 +09:00
Keisuke Kuroyanagi
a159ad473c Implement create children array and add child method.
Bug: 6669677
Change-Id: Ic89c3dfe01937e771db8fc59d5259496a9464a47
2013-09-09 16:44:17 +09:00
Keisuke Kuroyanagi
7bd7dc5d0d Implement update node probability method.
Bug: 6669677
Change-Id: I61ac0d05e362fc7d8a967ddd8286580998c70487
2013-09-09 15:29:11 +09:00
Keisuke Kuroyanagi
3fbc5ef196 Implement inserting new node into PtNode array.
Bug: 6669677

Change-Id: I0171476231181e41234dde76ac9061febb2e8c35
2013-09-06 20:40:08 +09:00
Keisuke Kuroyanagi
40182c737d Merge "Compute probability using structure policy." 2013-09-06 08:10:07 +00:00
Keisuke Kuroyanagi
65d19946be Compute probability using structure policy.
Bug: 6669677
Change-Id: Icd50fc30274cce65ebeb2e7cc8368b59e5cda05a
2013-09-06 16:50:09 +09:00
Keisuke Kuroyanagi
e4dcebe0c3 Add node flags creating methods.
Bug: 6669677
Change-Id: Ieb4178da61fa38f6b32baefa099cc0724f9fb6be
2013-09-06 14:56:59 +09:00
Keisuke Kuroyanagi
96a0631664 DynamicPatriciaTrieWritingUtils to write PtNodes.
Bug: 6669677
Change-Id: I67cce3c1d338cf747ed2204c96768907d990d269
2013-09-05 20:12:56 +09:00
Keisuke Kuroyanagi
2a41a35635 Add code point writing methods for updatable dictionaries.
Bug: 6669677
Change-Id: If7ab6fefdb9a7f0d21c397edbb7d9e7fddc0e0db
2013-09-05 14:24:07 +09:00
Keisuke Kuroyanagi
5901b5e1bd Check usesForgettingCurve in HeaderPolicy.
Bug: 6669677
Change-Id: I47ebfc50f477b2a6514fba6fad421dd90f29ecb1
2013-09-05 12:28:38 +09:00
Keisuke Kuroyanagi
91486bdb3d Merge "Employ a header attribute map in headerPolicy." 2013-09-04 10:06:05 +00:00
Keisuke Kuroyanagi
5754817a5e Employ a header attribute map in headerPolicy.
Bug: 6669677
Change-Id: I4a084cdd7fcd7a8ed3a70fb7e365031eedd981e5
2013-09-04 19:00:53 +09:00
Keisuke Kuroyanagi
5d8fd5457d Change name of bigram_list_reading_utils.* .
Bug: 6669677
Change-Id: Ifd2baa11fb4ee083be1d23e8235f6f903c1b5747
2013-09-03 20:44:58 +09:00
Keisuke Kuroyanagi
202e416b51 Add bigram writing methods.
Bug: 6669677

Change-Id: Ib62f6c31c4bcbb41ac200dccccb13e366b3c2173
2013-09-03 20:44:51 +09:00
Keisuke Kuroyanagi
9e3082e016 Add DynamicShortcutListPolicy::copyAllShortcuts().
Bug: 6669677
Change-Id: I74959fe3ca59d77ba0279c75f4d72db13735322f
2013-09-03 18:36:53 +09:00
Keisuke Kuroyanagi
f1cd7a081c Implement reading side of updating methods of dpt.
Reading methods are used to determine the position to
be updated in dynamic patricia trie.

Bug: 6669677

Change-Id: Ie9acdcdbc73aa3fd4294c97aa39451a96b165ed9
2013-09-03 14:47:30 +09:00
Keisuke Kuroyanagi
75d1cb667d Add buffer writing methods.
Bug: 6669677

Change-Id: Ic3345e36a7842b77598c21de9b54f7c2863df38f
2013-09-02 19:27:01 +09:00
Keisuke Kuroyanagi
2660f83a12 Change name of extendable_buffer.h to buffer_with_... .
Bug: 6669677

Change-Id: Id2bd79d8f86c690d5c16d1ab726c5f6fa28ba5e3
2013-09-02 17:18:41 +09:00
Keisuke Kuroyanagi
3e76487c6c Consolidating dict buffers into BufferWithExtendableBuffer.
Bug: 6669677

Change-Id: Ied58c123b68199bddb91293ff5cf5d96691e1f6b
2013-09-02 17:18:41 +09:00
Keisuke Kuroyanagi
4d814bfcb7 Introduce DynamicPatriciaTrieReadingHelper.
It supports iterating nodes and dealing with additional
buffer. It counts nodes and node arrays to avoid infinite
loop.

Bug: 6669677

Change-Id: I322e7263c0535e098635a1e5de098838de09467d
2013-08-30 19:41:58 +09:00
Keisuke Kuroyanagi
69ebca0643 Fix children position reading for dynamic patricia trie.
Bug: 6669677
Change-Id: I68ad68361676f952bd25903c253c22617d3ce361
2013-08-29 18:31:15 +09:00
Keisuke Kuroyanagi
6c4d09e9e1 Use extendable buffer for reading node info.
Bug: 6669677
Change-Id: I78ba80100e3a38f2b49e43db1e6aef4e56ed062c
2013-08-27 18:06:42 +09:00
Keisuke Kuroyanagi
2f0c1253e2 Use extendable buffer for reading bigram and shortcut.
Bug: 6669677

Change-Id: I4017c0ecc5d8baff1b16ff370d3eec85de9a0f9f
2013-08-27 17:48:04 +09:00
Keisuke Kuroyanagi
27b12933cd Rename CharGroup to PtNode in native code.
Bug: 10233675
Change-Id: I5a4215cc79b37bfd317e60101e06b2ab9c332653
2013-08-26 14:51:43 +09:00
Keisuke Kuroyanagi
ad4e0108a9 Fix: reading uninitialized area.
Bug: 10402083
Change-Id: I083beea29fe563b1e7739653d756b77820753e3f
2013-08-23 19:55:55 +09:00
Keisuke Kuroyanagi
941811cbd6 Introduce ExtendableBuffer for dynamic update.
Bug: 6669677

Change-Id: I6343c348334c0dace8b12a71eb992d6f040e8c95
2013-08-22 18:05:15 +09:00
Keisuke Kuroyanagi
a72a33388f Fix native crash by caused wrong munmap.
Bug: 10402083
Change-Id: I5aa2cecd20cd3202c2326b1cbb6758257afd6d5d
2013-08-21 18:57:58 +09:00
Keisuke Kuroyanagi
381c12df20 Move methods in BinaryFormat to PatriciaTriePolicy.
Bug: 6669677

Change-Id: Ic9bc03a9d8ec789281d83d4b9e58042a083c3ba1
2013-08-16 16:42:17 +09:00
Keisuke Kuroyanagi
0624cc6cf3 Remove BinaryDictionaryInfo and introduce MmapedBuffer.
Bug: 6669677
Change-Id: I70e47fa20109060b6ea7a04bcc42ab8f7c543f77
2013-08-16 12:52:04 +09:00
Ken Wakasa
d4fcf1dbc5 Revert "Remove BinaryDictionaryInfo and introduce MmapedBuffer."
This reverts commit d14ffcfcbc.

This broke a bunch of unit tests -- https://sponge.corp.google.com/target?id=a8a62bd0-3aab-4520-ae64-53f9652ef64b&target=com.google.android.inputmethod.latin.tests&searchFor=&show=FAILED&sortBy=STATUS

Change-Id: I1eae460e09808513eacefd523609330819d73d16
2013-08-15 11:37:48 +00:00
Keisuke Kuroyanagi
d14ffcfcbc Remove BinaryDictionaryInfo and introduce MmapedBuffer.
Bug: 6669677

Change-Id: I1459bb53a9761d920427e4b5d925a2844955c88c
2013-08-15 18:17:44 +09:00
Keisuke Kuroyanagi
6ec3f63d59 Merge "Make dictionary structure policy have updating methods." 2013-08-15 03:15:43 +00:00
Yuichiro Hanada
46ebaa49e9 Fix a comment.
Change-Id: I5d09fd2474c7a0e6f42b6c7c6e717692636fbc6d
2013-08-15 11:57:58 +09:00
Keisuke Kuroyanagi
7fd9667d76 Remove NodeFilter.
Change-Id: I27d905dd3581cbb0e67d071dba04066aaa2ba22e
2013-08-14 18:20:15 +09:00
Keisuke Kuroyanagi
dfecc86f25 Fix ShortcutListPolicy::getStartPos().
Bug: 6669677
Change-Id: I1fa9967fc6aa0956986954c8ea1f990a47c15764
2013-08-14 17:23:57 +09:00
Keisuke Kuroyanagi
90619ae02b Move utils for reading dict to policyimpl.
Bug: 6669677
Change-Id: Ia1da3cb84b457665cf26172d3810e1d28329bca4
2013-08-14 15:50:42 +09:00
Keisuke Kuroyanagi
66facd37dd Make dictionary structure policy have updating methods.
Bug: 6669677

Change-Id: I6aa8e377c6347e0db4b7a82293b316ec64d87bec
2013-08-14 11:34:42 +09:00
Keisuke Kuroyanagi
23d3ed962f Move files for headerPolicy to policyimpl.
Bug: 6669677
Change-Id: Ic90feb9c3a9a7b698e588c8ad25c765a246706a8
2013-08-13 20:35:16 +09:00
Keisuke Kuroyanagi
76e579c7ca Move header reading methods to policyimpl.
Bug: 6669677
Change-Id: I24cb32f28cf355485b431cc56d877000e3f946d4
2013-08-13 20:22:40 +09:00
Keisuke Kuroyanagi
d81654cd61 Use DictionaryStructureWithBufferPolicy for traversing.
Bug: 6669677
Change-Id: If7bc038278b7217ed5ba4cb77b1238b2dad0001b
2013-08-13 19:38:20 +09:00
Keisuke Kuroyanagi
f4688f8df0 Cleanup ShortcutListReadingUtils.
Bug: 6669677
Change-Id: Ifd61022665c89f492933dde9811ec644f7e1f5c4
2013-08-12 17:46:13 +09:00
Keisuke Kuroyanagi
f1e383ed45 Change name of shortcut reading util class.
Bug: 6669677
Change-Id: If93916f4c3d568119ff6b83e22e95c7086423d2f
2013-08-12 17:37:59 +09:00
Keisuke Kuroyanagi
7c48352af8 Move methods for Shortcut reading to policyimpl.
Bug: 6669677
Change-Id: If0a565de015564f803429f4fbf21b05687f80553
2013-08-12 17:18:28 +09:00
Keisuke Kuroyanagi
fd10db04e0 Move shortcut iteration methods to poilcy.
Bug: 6669677
Change-Id: I6e535ce7962de8e153a52fd1085fe961649ffe16
2013-08-12 15:53:09 +09:00
Keisuke Kuroyanagi
277053af7c Move bigram reading methods to BigramListReadingUtils.
Bug: 6669677
Change-Id: Icb024a8af577323b4dcf74f4c4054cfb8b57a943
2013-08-12 11:54:31 +09:00
Keisuke Kuroyanagi
668870be43 Move bigrams iteration methods to policy.
To support various bigram format.

Bug: 6669677
Change-Id: Ifc8c1a855b03cd5a39d97a6e10872ef8ef76475b
2013-08-09 20:20:34 +09:00
Keisuke Kuroyanagi
e1ebef6124 Make DictionaryStructurePolicy have buffer info.
To support various format dictionary, extendable
buffers or multiple files.

Bug: 6669677
Change-Id: I203a5a4adc049a6322cfba4eacb4cb6715f8dfc2
2013-08-09 05:27:22 +00:00