rroonga 1.2.7-x86-mingw32 → 1.3.0-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (548) hide show
  1. data/Gemfile +1 -0
  2. data/Rakefile +1 -0
  3. data/bin/grntest-log-analyze +123 -0
  4. data/bin/groonga-query-log-extract +117 -0
  5. data/ext/groonga/rb-grn-accessor.c +7 -5
  6. data/ext/groonga/rb-grn-array-cursor.c +1 -1
  7. data/ext/groonga/rb-grn-array.c +34 -44
  8. data/ext/groonga/rb-grn-column.c +74 -38
  9. data/ext/groonga/rb-grn-context.c +41 -16
  10. data/ext/groonga/rb-grn-database.c +50 -43
  11. data/ext/groonga/rb-grn-double-array-trie-cursor.c +40 -0
  12. data/ext/groonga/rb-grn-double-array-trie.c +530 -0
  13. data/ext/groonga/rb-grn-encoding-support.c +1 -1
  14. data/ext/groonga/rb-grn-encoding.c +1 -1
  15. data/ext/groonga/rb-grn-exception.c +1 -1
  16. data/ext/groonga/rb-grn-expression-builder.c +1 -1
  17. data/ext/groonga/rb-grn-expression.c +63 -51
  18. data/ext/groonga/rb-grn-fix-size-column.c +7 -7
  19. data/ext/groonga/rb-grn-hash-cursor.c +1 -1
  20. data/ext/groonga/rb-grn-hash.c +42 -39
  21. data/ext/groonga/rb-grn-index-column.c +35 -31
  22. data/ext/groonga/rb-grn-index-cursor.c +1 -1
  23. data/ext/groonga/rb-grn-logger.c +23 -18
  24. data/ext/groonga/rb-grn-object.c +69 -40
  25. data/ext/groonga/rb-grn-operator.c +1 -1
  26. data/ext/groonga/rb-grn-patricia-trie-cursor.c +1 -1
  27. data/ext/groonga/rb-grn-patricia-trie.c +122 -90
  28. data/ext/groonga/rb-grn-plugin.c +8 -7
  29. data/ext/groonga/rb-grn-posting.c +1 -1
  30. data/ext/groonga/rb-grn-procedure.c +1 -1
  31. data/ext/groonga/rb-grn-query.c +12 -12
  32. data/ext/groonga/rb-grn-record.c +1 -1
  33. data/ext/groonga/rb-grn-snippet.c +26 -19
  34. data/ext/groonga/rb-grn-table-cursor-key-support.c +1 -1
  35. data/ext/groonga/rb-grn-table-cursor.c +4 -3
  36. data/ext/groonga/rb-grn-table-key-support.c +23 -23
  37. data/ext/groonga/rb-grn-table.c +280 -149
  38. data/ext/groonga/rb-grn-type.c +11 -7
  39. data/ext/groonga/rb-grn-utils.c +81 -9
  40. data/ext/groonga/rb-grn-variable-size-column.c +1 -1
  41. data/ext/groonga/rb-grn-variable.c +2 -2
  42. data/ext/groonga/rb-grn-view-accessor.c +1 -1
  43. data/ext/groonga/rb-grn-view-cursor.c +1 -1
  44. data/ext/groonga/rb-grn-view-record.c +1 -1
  45. data/ext/groonga/rb-grn-view.c +43 -34
  46. data/ext/groonga/rb-grn.h +10 -2
  47. data/ext/groonga/rb-groonga.c +1 -1
  48. data/lib/1.8/groonga.so +0 -0
  49. data/lib/1.9/groonga.so +0 -0
  50. data/lib/groonga/context.rb +16 -41
  51. data/lib/groonga/dumper.rb +41 -10
  52. data/lib/groonga/expression-builder-19.rb +40 -0
  53. data/lib/groonga/expression-builder.rb +56 -26
  54. data/lib/groonga/grntest-log.rb +206 -0
  55. data/lib/groonga/pagination.rb +21 -19
  56. data/lib/groonga/patricia-trie.rb +7 -10
  57. data/lib/groonga/posting.rb +1 -1
  58. data/lib/groonga/query-log.rb +348 -0
  59. data/lib/groonga/record.rb +47 -143
  60. data/lib/groonga/schema.rb +679 -406
  61. data/lib/groonga/view-record.rb +4 -10
  62. data/lib/groonga.rb +4 -2
  63. data/rroonga-build.rb +1 -1
  64. data/test/groonga-test-utils.rb +8 -0
  65. data/test/test-array.rb +25 -4
  66. data/test/test-column.rb +8 -8
  67. data/test/test-database.rb +2 -3
  68. data/test/test-double-array-trie.rb +164 -0
  69. data/test/test-expression-builder.rb +2 -2
  70. data/test/test-expression.rb +10 -9
  71. data/test/test-gqtp.rb +2 -2
  72. data/test/test-hash.rb +32 -8
  73. data/test/test-patricia-trie.rb +34 -10
  74. data/test/test-query-log.rb +258 -0
  75. data/test/test-record.rb +6 -5
  76. data/test/test-schema-create-table.rb +8 -0
  77. data/test/test-schema-dumper.rb +6 -0
  78. data/test/test-schema.rb +491 -234
  79. data/test/test-table-select.rb +9 -0
  80. data/test/test-table.rb +17 -24
  81. data/vendor/local/bin/grntest.exe +0 -0
  82. data/vendor/local/bin/groonga-query-log-analyzer +22 -17
  83. data/vendor/local/bin/groonga.exe +0 -0
  84. data/vendor/local/bin/libgroonga-0.dll +0 -0
  85. data/vendor/local/bin/libmecab-1.dll +0 -0
  86. data/vendor/local/bin/mecab-config +2 -2
  87. data/vendor/local/bin/mecab.exe +0 -0
  88. data/vendor/local/include/groonga/groonga.h +251 -5
  89. data/vendor/local/lib/groonga/plugins/suggest/suggest.a +0 -0
  90. data/vendor/local/lib/groonga/plugins/suggest/suggest.dll +0 -0
  91. data/vendor/local/lib/groonga/plugins/suggest/suggest.dll.a +0 -0
  92. data/vendor/local/lib/groonga/plugins/suggest/suggest.la +2 -2
  93. data/vendor/local/lib/groonga/plugins/tokenizers/mecab.a +0 -0
  94. data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll +0 -0
  95. data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll.a +0 -0
  96. data/vendor/local/lib/groonga/plugins/tokenizers/mecab.la +2 -2
  97. data/vendor/local/lib/libgroonga.a +0 -0
  98. data/vendor/local/lib/libgroonga.dll.a +0 -0
  99. data/vendor/local/lib/libgroonga.la +1 -1
  100. data/vendor/local/lib/libmecab.a +0 -0
  101. data/vendor/local/lib/libmecab.dll.a +0 -0
  102. data/vendor/local/lib/libmecab.la +1 -1
  103. data/vendor/local/lib/pkgconfig/groonga.pc +3 -2
  104. data/vendor/local/libexec/mecab/mecab-cost-train.exe +0 -0
  105. data/vendor/local/libexec/mecab/mecab-dict-gen.exe +0 -0
  106. data/vendor/local/libexec/mecab/mecab-dict-index.exe +0 -0
  107. data/vendor/local/libexec/mecab/mecab-system-eval.exe +0 -0
  108. data/vendor/local/libexec/mecab/mecab-test-gen.exe +0 -0
  109. data/vendor/local/share/doc/groonga/en/html/.buildinfo +1 -1
  110. data/vendor/local/share/doc/groonga/en/html/_images/geo-points.png +0 -0
  111. data/vendor/local/share/doc/groonga/en/html/_sources/characteristic.txt +32 -31
  112. data/vendor/local/share/doc/groonga/en/html/_sources/commands/select.txt +7 -1
  113. data/vendor/local/share/doc/groonga/en/html/_sources/contribution/documentation/i18n.txt +6 -0
  114. data/vendor/local/share/doc/groonga/en/html/_sources/executables/grntest.txt +6 -6
  115. data/vendor/local/share/doc/groonga/en/html/_sources/geolocation_search.txt +52 -0
  116. data/vendor/local/share/doc/groonga/en/html/_sources/index.txt +1 -0
  117. data/vendor/local/share/doc/groonga/en/html/_sources/install.txt +31 -40
  118. data/vendor/local/share/doc/groonga/en/html/_sources/news/senna.txt +109 -0
  119. data/vendor/local/share/doc/groonga/en/html/_sources/news.txt +118 -0
  120. data/vendor/local/share/doc/groonga/{ja/html/_sources/tutorial/tutorial03.txt → en/html/_sources/tutorial/data.txt} +5 -5
  121. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/{tutorial05.txt → drilldown.txt} +8 -7
  122. data/vendor/local/share/doc/groonga/{source/tutorial/tutorial06.txt → en/html/_sources/tutorial/index.txt} +8 -8
  123. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/introduction.txt +297 -0
  124. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/{tutorial09.txt → lexicon.txt} +0 -0
  125. data/vendor/local/share/doc/groonga/{source/tutorial/tutorial07.txt → en/html/_sources/tutorial/match_columns.txt} +4 -4
  126. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/{tutorial10.txt → micro_blog.txt} +17 -17
  127. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/network.txt +103 -0
  128. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/{tutorial08.txt → patricia_trie.txt} +4 -4
  129. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/query_expansion.txt +57 -0
  130. data/vendor/local/share/doc/groonga/{source/tutorial/tutorial04.txt → en/html/_sources/tutorial/search.txt} +17 -12
  131. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial.txt +11 -2
  132. data/vendor/local/share/doc/groonga/en/html/_static/groonga.css +9 -0
  133. data/vendor/local/share/doc/groonga/en/html/characteristic.html +46 -46
  134. data/vendor/local/share/doc/groonga/en/html/command_version.html +30 -30
  135. data/vendor/local/share/doc/groonga/en/html/commands/cache_limit.html +34 -34
  136. data/vendor/local/share/doc/groonga/en/html/commands/check.html +34 -34
  137. data/vendor/local/share/doc/groonga/en/html/commands/clearlock.html +34 -34
  138. data/vendor/local/share/doc/groonga/en/html/commands/column_create.html +34 -34
  139. data/vendor/local/share/doc/groonga/en/html/commands/column_list.html +34 -34
  140. data/vendor/local/share/doc/groonga/en/html/commands/column_remove.html +34 -34
  141. data/vendor/local/share/doc/groonga/en/html/commands/define_selector.html +36 -36
  142. data/vendor/local/share/doc/groonga/en/html/commands/defrag.html +34 -34
  143. data/vendor/local/share/doc/groonga/en/html/commands/delete.html +34 -34
  144. data/vendor/local/share/doc/groonga/en/html/commands/dump.html +32 -32
  145. data/vendor/local/share/doc/groonga/en/html/commands/load.html +36 -36
  146. data/vendor/local/share/doc/groonga/en/html/commands/log_level.html +36 -36
  147. data/vendor/local/share/doc/groonga/en/html/commands/log_put.html +36 -36
  148. data/vendor/local/share/doc/groonga/en/html/commands/log_reopen.html +38 -38
  149. data/vendor/local/share/doc/groonga/en/html/commands/quit.html +32 -32
  150. data/vendor/local/share/doc/groonga/en/html/commands/select.html +44 -39
  151. data/vendor/local/share/doc/groonga/en/html/commands/shutdown.html +32 -32
  152. data/vendor/local/share/doc/groonga/en/html/commands/status.html +34 -34
  153. data/vendor/local/share/doc/groonga/en/html/commands/suggest.html +47 -47
  154. data/vendor/local/share/doc/groonga/en/html/commands/table_create.html +34 -34
  155. data/vendor/local/share/doc/groonga/en/html/commands/table_list.html +34 -34
  156. data/vendor/local/share/doc/groonga/en/html/commands/table_remove.html +34 -34
  157. data/vendor/local/share/doc/groonga/en/html/commands/view_add.html +34 -34
  158. data/vendor/local/share/doc/groonga/en/html/commands.html +41 -41
  159. data/vendor/local/share/doc/groonga/en/html/community.html +5 -5
  160. data/vendor/local/share/doc/groonga/en/html/contribution/development/com.html +7 -7
  161. data/vendor/local/share/doc/groonga/en/html/contribution/development/document.html +7 -7
  162. data/vendor/local/share/doc/groonga/en/html/contribution/development/query.html +7 -7
  163. data/vendor/local/share/doc/groonga/en/html/contribution/development/test.html +7 -7
  164. data/vendor/local/share/doc/groonga/en/html/contribution/development.html +8 -8
  165. data/vendor/local/share/doc/groonga/en/html/contribution/documentation/c-api.html +7 -7
  166. data/vendor/local/share/doc/groonga/en/html/contribution/documentation/i18n.html +13 -7
  167. data/vendor/local/share/doc/groonga/en/html/contribution/documentation.html +8 -8
  168. data/vendor/local/share/doc/groonga/en/html/contribution/report.html +12 -12
  169. data/vendor/local/share/doc/groonga/en/html/contribution.html +10 -10
  170. data/vendor/local/share/doc/groonga/en/html/executables/grnslap.html +32 -32
  171. data/vendor/local/share/doc/groonga/en/html/executables/grntest.html +55 -55
  172. data/vendor/local/share/doc/groonga/en/html/executables/groonga-http.html +30 -30
  173. data/vendor/local/share/doc/groonga/en/html/executables/groonga-suggest-create-dataset.html +36 -36
  174. data/vendor/local/share/doc/groonga/en/html/executables/groonga.html +36 -36
  175. data/vendor/local/share/doc/groonga/en/html/executables.html +22 -22
  176. data/vendor/local/share/doc/groonga/en/html/expr.html +26 -26
  177. data/vendor/local/share/doc/groonga/en/html/functions/edit_distance.html +32 -32
  178. data/vendor/local/share/doc/groonga/en/html/functions/geo_distance.html +32 -32
  179. data/vendor/local/share/doc/groonga/en/html/functions/geo_in_circle.html +32 -32
  180. data/vendor/local/share/doc/groonga/en/html/functions/geo_in_rectangle.html +32 -32
  181. data/vendor/local/share/doc/groonga/en/html/functions/now.html +30 -30
  182. data/vendor/local/share/doc/groonga/en/html/functions/rand.html +32 -32
  183. data/vendor/local/share/doc/groonga/en/html/functions.html +23 -23
  184. data/vendor/local/share/doc/groonga/en/html/genindex.html +17 -17
  185. data/vendor/local/share/doc/groonga/en/html/geolocation_search.html +176 -0
  186. data/vendor/local/share/doc/groonga/en/html/index.html +149 -138
  187. data/vendor/local/share/doc/groonga/en/html/install.html +57 -65
  188. data/vendor/local/share/doc/groonga/en/html/limitations.html +17 -17
  189. data/vendor/local/share/doc/groonga/en/html/log.html +26 -26
  190. data/vendor/local/share/doc/groonga/en/html/news/0.x.html +5 -5
  191. data/vendor/local/share/doc/groonga/en/html/news/1.0.x.html +5 -5
  192. data/vendor/local/share/doc/groonga/en/html/news/1.1.x.html +5 -5
  193. data/vendor/local/share/doc/groonga/en/html/news/senna.html +281 -0
  194. data/vendor/local/share/doc/groonga/en/html/news.html +219 -65
  195. data/vendor/local/share/doc/groonga/en/html/objects.inv +0 -0
  196. data/vendor/local/share/doc/groonga/en/html/pseudo_column.html +22 -22
  197. data/vendor/local/share/doc/groonga/en/html/reference.html +69 -69
  198. data/vendor/local/share/doc/groonga/en/html/search.html +5 -5
  199. data/vendor/local/share/doc/groonga/en/html/searchindex.js +1 -1
  200. data/vendor/local/share/doc/groonga/en/html/spec/search.html +28 -28
  201. data/vendor/local/share/doc/groonga/en/html/spec.html +15 -15
  202. data/vendor/local/share/doc/groonga/en/html/suggest/completion.html +7 -7
  203. data/vendor/local/share/doc/groonga/en/html/suggest/correction.html +7 -7
  204. data/vendor/local/share/doc/groonga/en/html/suggest/introduction.html +5 -5
  205. data/vendor/local/share/doc/groonga/en/html/suggest/suggestion.html +12 -12
  206. data/vendor/local/share/doc/groonga/en/html/suggest/tutorial.html +5 -5
  207. data/vendor/local/share/doc/groonga/en/html/suggest.html +10 -10
  208. data/vendor/local/share/doc/groonga/en/html/troubleshooting/different_results_with_the_same_keyword.html +26 -26
  209. data/vendor/local/share/doc/groonga/en/html/troubleshooting.html +19 -19
  210. data/vendor/local/share/doc/groonga/en/html/tutorial/{tutorial03.html → data.html} +32 -32
  211. data/vendor/local/share/doc/groonga/en/html/tutorial/{tutorial05.html → drilldown.html} +31 -31
  212. data/vendor/local/share/doc/groonga/en/html/tutorial/{tutorial06.html → index.html} +44 -44
  213. data/vendor/local/share/doc/groonga/en/html/tutorial/introduction.html +438 -0
  214. data/vendor/local/share/doc/groonga/en/html/tutorial/{tutorial09.html → lexicon.html} +16 -16
  215. data/vendor/local/share/doc/groonga/en/html/tutorial/{tutorial07.html → match_columns.html} +39 -39
  216. data/vendor/local/share/doc/groonga/en/html/tutorial/{tutorial10.html → micro_blog.html} +43 -43
  217. data/vendor/local/share/doc/groonga/en/html/tutorial/network.html +236 -0
  218. data/vendor/local/share/doc/groonga/en/html/tutorial/{tutorial08.html → patricia_trie.html} +27 -27
  219. data/vendor/local/share/doc/groonga/en/html/tutorial/query_expansion.html +197 -0
  220. data/vendor/local/share/doc/groonga/en/html/tutorial/{tutorial04.html → search.html} +41 -35
  221. data/vendor/local/share/doc/groonga/en/html/tutorial.html +60 -55
  222. data/vendor/local/share/doc/groonga/en/html/type.html +30 -30
  223. data/vendor/local/share/doc/groonga/ja/html/.buildinfo +1 -1
  224. data/vendor/local/share/doc/groonga/ja/html/_images/geo-points.png +0 -0
  225. data/vendor/local/share/doc/groonga/ja/html/_sources/characteristic.txt +32 -31
  226. data/vendor/local/share/doc/groonga/ja/html/_sources/commands/select.txt +7 -1
  227. data/vendor/local/share/doc/groonga/ja/html/_sources/contribution/documentation/i18n.txt +6 -0
  228. data/vendor/local/share/doc/groonga/ja/html/_sources/executables/grntest.txt +6 -6
  229. data/vendor/local/share/doc/groonga/ja/html/_sources/geolocation_search.txt +52 -0
  230. data/vendor/local/share/doc/groonga/ja/html/_sources/index.txt +1 -0
  231. data/vendor/local/share/doc/groonga/ja/html/_sources/install.txt +31 -40
  232. data/vendor/local/share/doc/groonga/ja/html/_sources/news/senna.txt +109 -0
  233. data/vendor/local/share/doc/groonga/ja/html/_sources/news.txt +118 -0
  234. data/vendor/local/share/doc/groonga/{en/html/_sources/tutorial/tutorial03.txt → ja/html/_sources/tutorial/data.txt} +5 -5
  235. data/vendor/local/share/doc/groonga/{source/tutorial/tutorial05.txt → ja/html/_sources/tutorial/drilldown.txt} +8 -7
  236. data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial/{tutorial06.txt → index.txt} +8 -8
  237. data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial/introduction.txt +297 -0
  238. data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial/{tutorial09.txt → lexicon.txt} +0 -0
  239. data/vendor/local/share/doc/groonga/{en/html/_sources/tutorial/tutorial07.txt → ja/html/_sources/tutorial/match_columns.txt} +4 -4
  240. data/vendor/local/share/doc/groonga/{source/tutorial/tutorial10.txt → ja/html/_sources/tutorial/micro_blog.txt} +17 -17
  241. data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial/network.txt +103 -0
  242. data/vendor/local/share/doc/groonga/{source/tutorial/tutorial08.txt → ja/html/_sources/tutorial/patricia_trie.txt} +4 -4
  243. data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial/query_expansion.txt +57 -0
  244. data/vendor/local/share/doc/groonga/{en/html/_sources/tutorial/tutorial04.txt → ja/html/_sources/tutorial/search.txt} +17 -12
  245. data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial.txt +11 -2
  246. data/vendor/local/share/doc/groonga/ja/html/_static/groonga.css +9 -0
  247. data/vendor/local/share/doc/groonga/ja/html/characteristic.html +32 -32
  248. data/vendor/local/share/doc/groonga/ja/html/command_version.html +30 -30
  249. data/vendor/local/share/doc/groonga/ja/html/commands/cache_limit.html +34 -34
  250. data/vendor/local/share/doc/groonga/ja/html/commands/check.html +34 -34
  251. data/vendor/local/share/doc/groonga/ja/html/commands/clearlock.html +34 -34
  252. data/vendor/local/share/doc/groonga/ja/html/commands/column_create.html +34 -34
  253. data/vendor/local/share/doc/groonga/ja/html/commands/column_list.html +34 -34
  254. data/vendor/local/share/doc/groonga/ja/html/commands/column_remove.html +34 -34
  255. data/vendor/local/share/doc/groonga/ja/html/commands/define_selector.html +36 -36
  256. data/vendor/local/share/doc/groonga/ja/html/commands/defrag.html +34 -34
  257. data/vendor/local/share/doc/groonga/ja/html/commands/delete.html +34 -34
  258. data/vendor/local/share/doc/groonga/ja/html/commands/dump.html +32 -32
  259. data/vendor/local/share/doc/groonga/ja/html/commands/load.html +36 -36
  260. data/vendor/local/share/doc/groonga/ja/html/commands/log_level.html +36 -36
  261. data/vendor/local/share/doc/groonga/ja/html/commands/log_put.html +36 -36
  262. data/vendor/local/share/doc/groonga/ja/html/commands/log_reopen.html +38 -38
  263. data/vendor/local/share/doc/groonga/ja/html/commands/quit.html +32 -32
  264. data/vendor/local/share/doc/groonga/ja/html/commands/select.html +44 -39
  265. data/vendor/local/share/doc/groonga/ja/html/commands/shutdown.html +32 -32
  266. data/vendor/local/share/doc/groonga/ja/html/commands/status.html +34 -34
  267. data/vendor/local/share/doc/groonga/ja/html/commands/suggest.html +47 -47
  268. data/vendor/local/share/doc/groonga/ja/html/commands/table_create.html +34 -34
  269. data/vendor/local/share/doc/groonga/ja/html/commands/table_list.html +34 -34
  270. data/vendor/local/share/doc/groonga/ja/html/commands/table_remove.html +34 -34
  271. data/vendor/local/share/doc/groonga/ja/html/commands/view_add.html +34 -34
  272. data/vendor/local/share/doc/groonga/ja/html/commands.html +41 -41
  273. data/vendor/local/share/doc/groonga/ja/html/community.html +5 -5
  274. data/vendor/local/share/doc/groonga/ja/html/contribution/development/com.html +7 -7
  275. data/vendor/local/share/doc/groonga/ja/html/contribution/development/document.html +7 -7
  276. data/vendor/local/share/doc/groonga/ja/html/contribution/development/query.html +7 -7
  277. data/vendor/local/share/doc/groonga/ja/html/contribution/development/test.html +7 -7
  278. data/vendor/local/share/doc/groonga/ja/html/contribution/development.html +8 -8
  279. data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/c-api.html +7 -7
  280. data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/i18n.html +13 -8
  281. data/vendor/local/share/doc/groonga/ja/html/contribution/documentation.html +8 -8
  282. data/vendor/local/share/doc/groonga/ja/html/contribution/report.html +12 -12
  283. data/vendor/local/share/doc/groonga/ja/html/contribution.html +10 -10
  284. data/vendor/local/share/doc/groonga/ja/html/executables/grnslap.html +32 -32
  285. data/vendor/local/share/doc/groonga/ja/html/executables/grntest.html +55 -55
  286. data/vendor/local/share/doc/groonga/ja/html/executables/groonga-http.html +30 -30
  287. data/vendor/local/share/doc/groonga/ja/html/executables/groonga-suggest-create-dataset.html +36 -36
  288. data/vendor/local/share/doc/groonga/ja/html/executables/groonga.html +36 -36
  289. data/vendor/local/share/doc/groonga/ja/html/executables.html +22 -22
  290. data/vendor/local/share/doc/groonga/ja/html/expr.html +26 -26
  291. data/vendor/local/share/doc/groonga/ja/html/functions/edit_distance.html +32 -32
  292. data/vendor/local/share/doc/groonga/ja/html/functions/geo_distance.html +32 -32
  293. data/vendor/local/share/doc/groonga/ja/html/functions/geo_in_circle.html +32 -32
  294. data/vendor/local/share/doc/groonga/ja/html/functions/geo_in_rectangle.html +32 -32
  295. data/vendor/local/share/doc/groonga/ja/html/functions/now.html +30 -30
  296. data/vendor/local/share/doc/groonga/ja/html/functions/rand.html +32 -32
  297. data/vendor/local/share/doc/groonga/ja/html/functions.html +23 -23
  298. data/vendor/local/share/doc/groonga/ja/html/genindex.html +17 -17
  299. data/vendor/local/share/doc/groonga/ja/html/geolocation_search.html +165 -0
  300. data/vendor/local/share/doc/groonga/ja/html/index.html +144 -133
  301. data/vendor/local/share/doc/groonga/ja/html/install.html +52 -65
  302. data/vendor/local/share/doc/groonga/ja/html/limitations.html +17 -17
  303. data/vendor/local/share/doc/groonga/ja/html/log.html +26 -26
  304. data/vendor/local/share/doc/groonga/ja/html/news/0.x.html +5 -5
  305. data/vendor/local/share/doc/groonga/ja/html/news/1.0.x.html +5 -5
  306. data/vendor/local/share/doc/groonga/ja/html/news/1.1.x.html +5 -5
  307. data/vendor/local/share/doc/groonga/ja/html/news/senna.html +282 -0
  308. data/vendor/local/share/doc/groonga/ja/html/news.html +203 -63
  309. data/vendor/local/share/doc/groonga/ja/html/objects.inv +0 -0
  310. data/vendor/local/share/doc/groonga/ja/html/pseudo_column.html +22 -22
  311. data/vendor/local/share/doc/groonga/ja/html/reference.html +69 -69
  312. data/vendor/local/share/doc/groonga/ja/html/search.html +5 -5
  313. data/vendor/local/share/doc/groonga/ja/html/searchindex.js +1 -1
  314. data/vendor/local/share/doc/groonga/ja/html/spec/search.html +28 -28
  315. data/vendor/local/share/doc/groonga/ja/html/spec.html +15 -15
  316. data/vendor/local/share/doc/groonga/ja/html/suggest/completion.html +7 -7
  317. data/vendor/local/share/doc/groonga/ja/html/suggest/correction.html +7 -7
  318. data/vendor/local/share/doc/groonga/ja/html/suggest/introduction.html +5 -5
  319. data/vendor/local/share/doc/groonga/ja/html/suggest/suggestion.html +12 -12
  320. data/vendor/local/share/doc/groonga/ja/html/suggest/tutorial.html +5 -5
  321. data/vendor/local/share/doc/groonga/ja/html/suggest.html +10 -10
  322. data/vendor/local/share/doc/groonga/ja/html/troubleshooting/different_results_with_the_same_keyword.html +26 -26
  323. data/vendor/local/share/doc/groonga/ja/html/troubleshooting.html +19 -19
  324. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial03.html → data.html} +31 -31
  325. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial05.html → drilldown.html} +31 -31
  326. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial06.html → index.html} +44 -44
  327. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial01.html → introduction.html} +140 -129
  328. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial09.html → lexicon.html} +16 -16
  329. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial07.html → match_columns.html} +39 -39
  330. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial10.html → micro_blog.html} +43 -43
  331. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial02.html → network.html} +56 -58
  332. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial08.html → patricia_trie.html} +27 -27
  333. data/vendor/local/share/doc/groonga/ja/html/tutorial/query_expansion.html +198 -0
  334. data/vendor/local/share/doc/groonga/ja/html/tutorial/{tutorial04.html → search.html} +41 -35
  335. data/vendor/local/share/doc/groonga/ja/html/tutorial.html +59 -54
  336. data/vendor/local/share/doc/groonga/ja/html/type.html +30 -30
  337. data/vendor/local/share/doc/groonga/source/characteristic.txt +32 -31
  338. data/vendor/local/share/doc/groonga/source/commands/select.txt +7 -1
  339. data/vendor/local/share/doc/groonga/source/commands/suggest-completion.log +5 -0
  340. data/vendor/local/share/doc/groonga/source/commands/suggest-correction.log +5 -0
  341. data/vendor/local/share/doc/groonga/source/commands/suggest-learn-completion.log +13 -0
  342. data/vendor/local/share/doc/groonga/source/commands/suggest-learn-correction.log +15 -0
  343. data/vendor/local/share/doc/groonga/source/commands/suggest-learn-suggestion.log +9 -0
  344. data/vendor/local/share/doc/groonga/source/commands/suggest-mixed.log +5 -0
  345. data/vendor/local/share/doc/groonga/source/commands/suggest-suggestion.log +5 -0
  346. data/vendor/local/share/doc/groonga/source/conf.py +1 -1
  347. data/vendor/local/share/doc/groonga/source/contribution/documentation/i18n.txt +6 -0
  348. data/vendor/local/share/doc/groonga/source/example/completion-1.log +2 -2
  349. data/vendor/local/share/doc/groonga/source/example/correction-1.log +2 -2
  350. data/vendor/local/share/doc/groonga/source/example/suggestion-1.log +2 -2
  351. data/vendor/local/share/doc/groonga/source/example/{tutorial03-1.log → tutorial/data-1.log} +0 -0
  352. data/vendor/local/share/doc/groonga/source/example/{tutorial03-2.log → tutorial/data-2.log} +0 -0
  353. data/vendor/local/share/doc/groonga/source/example/{tutorial03-3.log → tutorial/data-3.log} +0 -0
  354. data/vendor/local/share/doc/groonga/source/example/{tutorial05-1.log → tutorial/drilldown-1.log} +6 -6
  355. data/vendor/local/share/doc/groonga/source/example/tutorial/drilldown-2.log +5 -0
  356. data/vendor/local/share/doc/groonga/source/example/{tutorial05-3.log → tutorial/drilldown-3.log} +2 -2
  357. data/vendor/local/share/doc/groonga/source/example/tutorial/drilldown-4.log +5 -0
  358. data/vendor/local/share/doc/groonga/source/example/{tutorial05-5.log → tutorial/drilldown-5.log} +2 -2
  359. data/vendor/local/share/doc/groonga/source/example/{tutorial05-6.log → tutorial/drilldown-6.log} +2 -2
  360. data/vendor/local/share/doc/groonga/source/example/tutorial/index-1.log +25 -0
  361. data/vendor/local/share/doc/groonga/source/example/{tutorial06-2.log → tutorial/index-2.log} +4 -4
  362. data/vendor/local/share/doc/groonga/source/example/tutorial/index-3.log +21 -0
  363. data/vendor/local/share/doc/groonga/source/example/{tutorial06-4.log → tutorial/index-4.log} +3 -3
  364. data/vendor/local/share/doc/groonga/source/example/{tutorial06-5.log → tutorial/index-5.log} +2 -2
  365. data/vendor/local/share/doc/groonga/source/example/{tutorial06-6.log → tutorial/index-6.log} +5 -5
  366. data/vendor/local/share/doc/groonga/source/example/{tutorial06-7.log → tutorial/index-7.log} +2 -2
  367. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-1.log +18 -0
  368. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-10.log +5 -0
  369. data/vendor/local/share/doc/groonga/source/example/{tutorial01-11.log → tutorial/introduction-11.log} +2 -2
  370. data/vendor/local/share/doc/groonga/source/example/{tutorial01-12.log → tutorial/introduction-12.log} +2 -2
  371. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-13.log +5 -0
  372. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-14.log +9 -0
  373. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-15.log +5 -0
  374. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-16.log +5 -0
  375. data/vendor/local/share/doc/groonga/source/example/{tutorial01-17.log → tutorial/introduction-17.log} +2 -2
  376. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-2.log +10 -0
  377. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-3.log +10 -0
  378. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-4.log +7 -0
  379. data/vendor/local/share/doc/groonga/source/example/{tutorial01-5.log → tutorial/introduction-5.log} +2 -2
  380. data/vendor/local/share/doc/groonga/source/example/{tutorial01-6.log → tutorial/introduction-6.log} +2 -2
  381. data/vendor/local/share/doc/groonga/source/example/{tutorial01-7.log → tutorial/introduction-7.log} +2 -2
  382. data/vendor/local/share/doc/groonga/source/example/{tutorial01-8.log → tutorial/introduction-8.log} +2 -2
  383. data/vendor/local/share/doc/groonga/source/example/tutorial/introduction-9.log +5 -0
  384. data/vendor/local/share/doc/groonga/source/example/{tutorial07-1.log → tutorial/match_columns-1.log} +8 -8
  385. data/vendor/local/share/doc/groonga/source/example/{tutorial07-2.log → tutorial/match_columns-2.log} +4 -4
  386. data/vendor/local/share/doc/groonga/source/example/{tutorial07-3.log → tutorial/match_columns-3.log} +7 -7
  387. data/vendor/local/share/doc/groonga/source/example/{tutorial07-4.log → tutorial/match_columns-4.log} +4 -4
  388. data/vendor/local/share/doc/groonga/source/example/{tutorial10-1.log → tutorial/micro_blog-1.log} +2 -2
  389. data/vendor/local/share/doc/groonga/source/example/{tutorial10-10.log → tutorial/micro_blog-10.log} +2 -2
  390. data/vendor/local/share/doc/groonga/source/example/{tutorial10-2.log → tutorial/micro_blog-2.log} +2 -2
  391. data/vendor/local/share/doc/groonga/source/example/{tutorial10-3.log → tutorial/micro_blog-3.log} +2 -2
  392. data/vendor/local/share/doc/groonga/source/example/{tutorial10-4.log → tutorial/micro_blog-4.log} +2 -2
  393. data/vendor/local/share/doc/groonga/source/example/{tutorial10-5.log → tutorial/micro_blog-5.log} +2 -2
  394. data/vendor/local/share/doc/groonga/source/example/tutorial/micro_blog-6.log +5 -0
  395. data/vendor/local/share/doc/groonga/source/example/{tutorial10-7.log → tutorial/micro_blog-7.log} +2 -2
  396. data/vendor/local/share/doc/groonga/source/example/{tutorial10-8.log → tutorial/micro_blog-8.log} +2 -2
  397. data/vendor/local/share/doc/groonga/source/example/{tutorial10-9.log → tutorial/micro_blog-9.log} +2 -2
  398. data/vendor/local/share/doc/groonga/source/example/tutorial/network-1.log +8 -0
  399. data/vendor/local/share/doc/groonga/source/example/{tutorial02-2.log → tutorial/network-2.log} +1 -1
  400. data/vendor/local/share/doc/groonga/source/example/{tutorial02-3.log → tutorial/network-3.log} +3 -3
  401. data/vendor/local/share/doc/groonga/source/example/{tutorial08-1.log → tutorial/patricia_trie-1.log} +4 -4
  402. data/vendor/local/share/doc/groonga/source/example/{tutorial08-2.log → tutorial/patricia_trie-2.log} +6 -6
  403. data/vendor/local/share/doc/groonga/source/example/tutorial/query_expansion-1.log +27 -0
  404. data/vendor/local/share/doc/groonga/source/example/tutorial/query_expansion-2.log +7 -0
  405. data/vendor/local/share/doc/groonga/source/example/tutorial/query_expansion-3.log +7 -0
  406. data/vendor/local/share/doc/groonga/source/example/{tutorial04-1.log → tutorial/search-1.log} +2 -2
  407. data/vendor/local/share/doc/groonga/source/example/tutorial/search-2.log +7 -0
  408. data/vendor/local/share/doc/groonga/source/example/tutorial/search-3.log +7 -0
  409. data/vendor/local/share/doc/groonga/source/example/{tutorial04-4.log → tutorial/search-4.log} +4 -4
  410. data/vendor/local/share/doc/groonga/source/example/{tutorial04-5.log → tutorial/search-5.log} +2 -2
  411. data/vendor/local/share/doc/groonga/source/example/tutorial/search-6.log +5 -0
  412. data/vendor/local/share/doc/groonga/source/example/{tutorial04-7.log → tutorial/search-7.log} +2 -2
  413. data/vendor/local/share/doc/groonga/source/executables/grntest.txt +6 -6
  414. data/vendor/local/share/doc/groonga/source/geolocation_search.txt +52 -0
  415. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/array.png +0 -0
  416. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/array.svg +188 -0
  417. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/columns.png +0 -0
  418. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/columns.svg +501 -0
  419. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/hash-table.png +0 -0
  420. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/hash-table.svg +275 -0
  421. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/index-column.png +0 -0
  422. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/index-column.svg +899 -0
  423. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/inverted-index.png +0 -0
  424. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/inverted-index.svg +249 -0
  425. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/patricia-trie.png +0 -0
  426. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/patricia-trie.svg +275 -0
  427. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/prefix-search.png +0 -0
  428. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/prefix-search.svg +743 -0
  429. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/record-id.png +0 -0
  430. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/record-id.svg +261 -0
  431. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/record.png +0 -0
  432. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/record.svg +228 -0
  433. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/scalar-column.png +0 -0
  434. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/scalar-column.svg +241 -0
  435. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-bigram-index-column-value.png +0 -0
  436. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-bigram-index-column-value.svg +879 -0
  437. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-bigram-token-id.png +0 -0
  438. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-bigram-token-id.svg +879 -0
  439. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-bigram.png +0 -0
  440. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-bigram.svg +879 -0
  441. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-choose-tokenizer.png +0 -0
  442. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-choose-tokenizer.svg +602 -0
  443. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-first-index-column-value.png +0 -0
  444. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-first-index-column-value.svg +600 -0
  445. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-first-token-id.png +0 -0
  446. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-first-token-id.svg +600 -0
  447. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-initial-state.png +0 -0
  448. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-initial-state.svg +600 -0
  449. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-on-key-table.png +0 -0
  450. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-on-key-table.svg +917 -0
  451. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-result.png +0 -0
  452. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-result.svg +600 -0
  453. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-second-index-column-value.png +0 -0
  454. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-second-index-column-value.svg +600 -0
  455. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-second-token-id.png +0 -0
  456. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/search-second-token-id.svg +600 -0
  457. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/tokenizer.png +0 -0
  458. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/tokenizer.svg +561 -0
  459. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-initial.png +0 -0
  460. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-initial.svg +389 -0
  461. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-process-first-data-first-token.png +0 -0
  462. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-process-first-data-first-token.svg +469 -0
  463. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-process-first-data-second-token.png +0 -0
  464. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-process-first-data-second-token.svg +514 -0
  465. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-process-second-data-first-token.png +0 -0
  466. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-process-second-data-first-token.svg +595 -0
  467. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-process-second-data-second-token.png +0 -0
  468. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-process-second-data-second-token.svg +600 -0
  469. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-save-first-data.png +0 -0
  470. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-save-first-data.svg +424 -0
  471. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-save-second-data.png +0 -0
  472. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/update-save-second-data.svg +549 -0
  473. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/vector-column.png +0 -0
  474. data/vendor/local/share/doc/groonga/source/images/fulltext-introduction/vector-column.svg +241 -0
  475. data/vendor/local/share/doc/groonga/source/images/geo-encode-leading-2bit.png +0 -0
  476. data/vendor/local/share/doc/groonga/source/images/geo-encode-leading-2bit.svg +203 -0
  477. data/vendor/local/share/doc/groonga/source/images/geo-encode-leading-4bit.png +0 -0
  478. data/vendor/local/share/doc/groonga/source/images/geo-encode-leading-4bit.svg +264 -0
  479. data/vendor/local/share/doc/groonga/source/images/geo-in-rectangle.png +0 -0
  480. data/vendor/local/share/doc/groonga/source/images/geo-points-distance.png +0 -0
  481. data/vendor/local/share/doc/groonga/source/images/geo-points-distance.svg +317 -0
  482. data/vendor/local/share/doc/groonga/source/images/geo-points-in-circle.png +0 -0
  483. data/vendor/local/share/doc/groonga/source/images/geo-points-in-circle.svg +306 -0
  484. data/vendor/local/share/doc/groonga/source/images/geo-points-in-rectangle.png +0 -0
  485. data/vendor/local/share/doc/groonga/source/images/geo-points-in-rectangle.svg +304 -0
  486. data/vendor/local/share/doc/groonga/source/images/geo-points-sort.png +0 -0
  487. data/vendor/local/share/doc/groonga/source/images/geo-points-sort.svg +383 -0
  488. data/vendor/local/share/doc/groonga/source/images/geo-points.png +0 -0
  489. data/vendor/local/share/doc/groonga/source/images/geo-points.svg +296 -0
  490. data/vendor/local/share/doc/groonga/source/images/geo-search-in-circle.png +0 -0
  491. data/vendor/local/share/doc/groonga/source/images/geo-search-in-circle.svg +287 -0
  492. data/vendor/local/share/doc/groonga/source/images/geo-search-in-rectangle.png +0 -0
  493. data/vendor/local/share/doc/groonga/source/images/geo-search-in-rectangle.svg +174 -0
  494. data/vendor/local/share/doc/groonga/source/index.txt +1 -0
  495. data/vendor/local/share/doc/groonga/source/install.txt +31 -40
  496. data/vendor/local/share/doc/groonga/source/news/senna.txt +109 -0
  497. data/vendor/local/share/doc/groonga/source/news.txt +118 -0
  498. data/vendor/local/share/doc/groonga/source/tutorial/{tutorial03.txt → data.txt} +5 -5
  499. data/vendor/local/share/doc/groonga/{ja/html/_sources/tutorial/tutorial05.txt → source/tutorial/drilldown.txt} +8 -7
  500. data/vendor/local/share/doc/groonga/{en/html/_sources/tutorial/tutorial06.txt → source/tutorial/index.txt} +8 -8
  501. data/vendor/local/share/doc/groonga/source/tutorial/introduction.txt +297 -0
  502. data/vendor/local/share/doc/groonga/source/tutorial/{tutorial09.txt → lexicon.txt} +0 -0
  503. data/vendor/local/share/doc/groonga/{ja/html/_sources/tutorial/tutorial07.txt → source/tutorial/match_columns.txt} +4 -4
  504. data/vendor/local/share/doc/groonga/{ja/html/_sources/tutorial/tutorial10.txt → source/tutorial/micro_blog.txt} +17 -17
  505. data/vendor/local/share/doc/groonga/source/tutorial/network.txt +103 -0
  506. data/vendor/local/share/doc/groonga/{ja/html/_sources/tutorial/tutorial08.txt → source/tutorial/patricia_trie.txt} +4 -4
  507. data/vendor/local/share/doc/groonga/source/tutorial/query_expansion.txt +57 -0
  508. data/vendor/local/share/doc/groonga/{ja/html/_sources/tutorial/tutorial04.txt → source/tutorial/search.txt} +17 -12
  509. data/vendor/local/share/doc/groonga/source/tutorial.txt +11 -2
  510. data/vendor/local/share/man/ja/man1/groonga.1 +449 -772
  511. data/vendor/local/share/man/man1/groonga.1 +591 -875
  512. metadata +232 -124
  513. data/vendor/local/etc/groonga/init.d/redhat/groonga +0 -160
  514. data/vendor/local/etc/groonga/init.d/redhat/sysconfig/groonga +0 -8
  515. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/tutorial01.txt +0 -296
  516. data/vendor/local/share/doc/groonga/en/html/_sources/tutorial/tutorial02.txt +0 -102
  517. data/vendor/local/share/doc/groonga/en/html/tutorial/tutorial01.html +0 -409
  518. data/vendor/local/share/doc/groonga/en/html/tutorial/tutorial02.html +0 -235
  519. data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial/tutorial01.txt +0 -296
  520. data/vendor/local/share/doc/groonga/ja/html/_sources/tutorial/tutorial02.txt +0 -102
  521. data/vendor/local/share/doc/groonga/source/example/tutorial01-1.log +0 -6
  522. data/vendor/local/share/doc/groonga/source/example/tutorial01-10.log +0 -5
  523. data/vendor/local/share/doc/groonga/source/example/tutorial01-13.log +0 -5
  524. data/vendor/local/share/doc/groonga/source/example/tutorial01-14.log +0 -9
  525. data/vendor/local/share/doc/groonga/source/example/tutorial01-15.log +0 -5
  526. data/vendor/local/share/doc/groonga/source/example/tutorial01-16.log +0 -5
  527. data/vendor/local/share/doc/groonga/source/example/tutorial01-2.log +0 -5
  528. data/vendor/local/share/doc/groonga/source/example/tutorial01-3.log +0 -5
  529. data/vendor/local/share/doc/groonga/source/example/tutorial01-4.log +0 -7
  530. data/vendor/local/share/doc/groonga/source/example/tutorial01-9.log +0 -5
  531. data/vendor/local/share/doc/groonga/source/example/tutorial02-1.log +0 -8
  532. data/vendor/local/share/doc/groonga/source/example/tutorial04-2.log +0 -7
  533. data/vendor/local/share/doc/groonga/source/example/tutorial04-3.log +0 -7
  534. data/vendor/local/share/doc/groonga/source/example/tutorial04-6.log +0 -5
  535. data/vendor/local/share/doc/groonga/source/example/tutorial05-2.log +0 -5
  536. data/vendor/local/share/doc/groonga/source/example/tutorial05-4.log +0 -5
  537. data/vendor/local/share/doc/groonga/source/example/tutorial06-1.log +0 -25
  538. data/vendor/local/share/doc/groonga/source/example/tutorial06-3.log +0 -21
  539. data/vendor/local/share/doc/groonga/source/example/tutorial10-6.log +0 -5
  540. data/vendor/local/share/doc/groonga/source/tutorial/tutorial01.txt +0 -296
  541. data/vendor/local/share/doc/groonga/source/tutorial/tutorial02.txt +0 -102
  542. data/vendor/local/share/groonga/munin/plugins/groonga_cpu_load +0 -47
  543. data/vendor/local/share/groonga/munin/plugins/groonga_cpu_time +0 -57
  544. data/vendor/local/share/groonga/munin/plugins/groonga_disk +0 -162
  545. data/vendor/local/share/groonga/munin/plugins/groonga_memory +0 -51
  546. data/vendor/local/share/groonga/munin/plugins/groonga_n_records +0 -110
  547. data/vendor/local/share/groonga/munin/plugins/groonga_query_performance +0 -133
  548. data/vendor/local/share/groonga/munin/plugins/groonga_status +0 -84
@@ -0,0 +1,530 @@
1
+ /* -*- coding: utf-8; c-file-style: "ruby" -*- */
2
+ /* vim: set sts=4 sw=4 ts=8 noet: */
3
+ /*
4
+ Copyright (C) 2011 Kouhei Sutou <kou@clear-code.com>
5
+
6
+ This library is free software; you can redistribute it and/or
7
+ modify it under the terms of the GNU Lesser General Public
8
+ License version 2.1 as published by the Free Software Foundation.
9
+
10
+ This library is distributed in the hope that it will be useful,
11
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ Lesser General Public License for more details.
14
+
15
+ You should have received a copy of the GNU Lesser General Public
16
+ License along with this library; if not, write to the Free Software
17
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
+ */
19
+
20
+ #include "rb-grn.h"
21
+
22
+ #define SELF(object) ((RbGrnTableKeySupport *)DATA_PTR(object))
23
+
24
+ VALUE rb_cGrnDoubleArrayTrie;
25
+
26
+ /*
27
+ * Document-class: Groonga::DoubleArrayTrie < Groonga::Table
28
+ *
29
+ * It's a table that manages records by double array
30
+ * trie. It can change key without ID change. This feature
31
+ * is supported by only Groonga::DoubleArrayTrie. But it
32
+ * requires large spaces rather than other tables. It is
33
+ * used by Groonga::Database for key management
34
+ * internally. It's reasonable choice because number of
35
+ * tables and columns in Groonga::Database (number of their
36
+ * names equals to number of keys to be managed by
37
+ * Groonga::DoubleArrayTrie) will be less than number of
38
+ * records of user defined tables.
39
+ *
40
+ * Groonga::DoubleArrayTrie supports exact match search,
41
+ * predictive search and common prefix search like
42
+ * Groonga::PatriciaTrie. It also supports cursor API.
43
+ */
44
+
45
+ /*
46
+ * call-seq:
47
+ * Groonga::DoubleArrayTrie.create(options={}) -> Groonga::DoubleArrayTrie
48
+ * Groonga::DoubleArrayTrie.create(options={}) {|table| ... }
49
+ *
50
+ * It creates a table that manages records by double array trie.
51
+ * ブロックを指定すると、そのブロックに生成したテーブルが渡さ
52
+ * れ、ブロックを抜けると自動的にテーブルが破棄される。
53
+ *
54
+ * _options_ に指定可能な値は以下の通り。
55
+ * @param options [::Hash] The name and value
56
+ * pairs. Omitted names are initialized as the default value.
57
+ * @option options [Groonga::Context] :context (Groonga::Context.default)
58
+ *
59
+ * テーブルが利用するGroonga::Context。
60
+ *
61
+ * @option options :name The table name
62
+ *
63
+ * テーブルの名前。名前をつけると、Groonga::Context#[]に名
64
+ * 前を指定してテーブルを取得することができる。省略すると
65
+ * 無名テーブルになり、テーブルIDでのみ取得できる。
66
+ *
67
+ * @option options :path The path
68
+ *
69
+ * テーブルを保存するパス。パスを指定すると永続テーブルとな
70
+ * り、プロセス終了後もレコードは保持される。次回起動時に
71
+ * Groonga::Context#[]で保存されたレコードを利用する
72
+ * ことができる。省略すると一時テーブルになり、プロセスが終
73
+ * 了するとレコードは破棄される。
74
+ *
75
+ * @option options :persistent The persistent
76
+ *
77
+ * +true+ を指定すると永続テーブルとなる。 +path+ を省略した
78
+ * 場合は自動的にパスが付加される。 +:context+ で指定した
79
+ * Groonga::Contextに結びついているデータベースが一時デー
80
+ * タベースの場合は例外が発生する。
81
+ *
82
+ * @option options :key_normalize The key_normalize
83
+ *
84
+ * +true+ を指定するとキーを正規化する。
85
+ *
86
+ * @option options :key_with_sis The key_with_sis
87
+ *
88
+ * +true+ を指定するとキーの文字列の全suffixが自動的に登
89
+ * 録される。
90
+ *
91
+ * @option options :key_type The key_type
92
+ *
93
+ * キーの種類を示すオブジェクトを指定する。キーの種類には型
94
+ * 名("Int32"や"ShortText"など)またはGroonga::Typeまたは
95
+ * テーブル(Groonga::Array、Groonga::Hash、
96
+ * Groonga::DoubleArrayTrieのどれか)を指定する。
97
+ *
98
+ * Groonga::Typeを指定した場合は、その型が示す範囲の値をキー
99
+ * として使用する。ただし、キーの最大サイズは4096バイトで
100
+ * あるため、Groonga::Type::TEXTやGroonga::Type::LONG_TEXT
101
+ * は使用できない。
102
+ *
103
+ * テーブルを指定した場合はレコードIDをキーとして使用する。
104
+ * 指定したテーブルのGroonga::Recordをキーとして使用するこ
105
+ * ともでき、その場合は自動的にGroonga::Recordからレコード
106
+ * IDを取得する。
107
+ *
108
+ * 省略した場合はShortText型をキーとして使用する。この場合、
109
+ * 4096バイトまで使用可能である。
110
+ *
111
+ * @option options :value_type The value_type
112
+ *
113
+ * 値の型を指定する。省略すると値のための領域を確保しない。
114
+ * 値を保存したい場合は必ず指定すること。
115
+ *
116
+ * 参考: Groonga::Type.new
117
+ *
118
+ * @option options :default_tokenizer The default_tokenizer
119
+ *
120
+ * Groonga::IndexColumnで使用するトークナイザを指定する。
121
+ * デフォルトでは何も設定されていないので、テーブルに
122
+ * Groonga::IndexColumnを定義する場合は
123
+ * <tt>"TokenBigram"</tt>などを指定する必要がある。
124
+ *
125
+ * @option options :sub_records The sub_records
126
+ *
127
+ * +true+ を指定すると#groupでグループ化したときに、
128
+ * Groonga::Record#n_sub_recordsでグループに含まれるレコー
129
+ * ドの件数を取得できる。
130
+ *
131
+ * @example
132
+ * #無名一時テーブルを生成する。
133
+ * Groonga::DoubleArrayTrie.create
134
+ *
135
+ * #無名永続テーブルを生成する。
136
+ * Groonga::DoubleArrayTrie.create(:path => "/tmp/hash.grn")
137
+ *
138
+ * #名前付き永続テーブルを生成する。ただし、ファイル名は気に
139
+ * #しない。
140
+ * Groonga::DoubleArrayTrie.create(:name => "Bookmarks",
141
+ * :persistent => true)
142
+ *
143
+ * #それぞれのレコードに512バイトの値を格納できる無名一時テー
144
+ * #ブルを生成する。
145
+ * Groonga::DoubleArrayTrie.create(:value => 512)
146
+ *
147
+ * #キーとして文字列を使用する無名一時テーブルを生成する。
148
+ * Groonga::DoubleArrayTrie.create(:key_type => Groonga::Type::SHORT_TEXT)
149
+ *
150
+ * #キーとして文字列を使用する無名一時テーブルを生成する。
151
+ * #(キーの種類を表すオブジェクトは文字列で指定。)
152
+ * Groonga::DoubleArrayTrie.create(:key_type => "ShortText")
153
+ *
154
+ * #キーとして<tt>Bookmarks</tt>テーブルのレコードを使用す
155
+ * #る無名一時テーブルを生成する。
156
+ * bookmarks = Groonga::DoubleArrayTrie.create(:name => "Bookmarks")
157
+ * Groonga::DoubleArrayTrie.create(:key_type => bookmarks)
158
+ *
159
+ * #キーとして<tt>Bookmarks</tt>テーブルのレコードを使用す
160
+ * #る無名一時テーブルを生成する。
161
+ * #(テーブルは文字列で指定。)
162
+ * Groonga::DoubleArrayTrie.create(:name => "Bookmarks")
163
+ * Groonga::DoubleArrayTrie.create(:key_type => "Bookmarks")
164
+ *
165
+ * #全文検索用のトークンをバイグラムで切り出す無名一時テーブ
166
+ * #ルを生成する。
167
+ * bookmarks = Groonga::DoubleArrayTrie.create(:name => "Bookmarks")
168
+ * bookmarks.define_column("comment", "Text")
169
+ * terms = Groonga::DoubleArrayTrie.create(:name => "Terms",
170
+ * :default_tokenizer => "TokenBigram")
171
+ * terms.define_index_column("content", bookmarks,
172
+ * :source => "Bookmarks.comment")
173
+ */
174
+ static VALUE
175
+ rb_grn_double_array_trie_s_create (int argc, VALUE *argv, VALUE klass)
176
+ {
177
+ grn_ctx *context;
178
+ grn_obj *key_type = NULL, *value_type = NULL, *table;
179
+ const char *name = NULL, *path = NULL;
180
+ unsigned name_size = 0;
181
+ grn_obj_flags flags = GRN_OBJ_TABLE_DAT_KEY;
182
+ VALUE rb_table;
183
+ VALUE options, rb_context, rb_name, rb_path, rb_persistent;
184
+ VALUE rb_key_normalize, rb_key_with_sis, rb_key_type;
185
+ VALUE rb_value_type;
186
+ VALUE rb_default_tokenizer, rb_sub_records;
187
+
188
+ rb_scan_args(argc, argv, "01", &options);
189
+
190
+ rb_grn_scan_options(options,
191
+ "context", &rb_context,
192
+ "name", &rb_name,
193
+ "path", &rb_path,
194
+ "persistent", &rb_persistent,
195
+ "key_normalize", &rb_key_normalize,
196
+ "key_with_sis", &rb_key_with_sis,
197
+ "key_type", &rb_key_type,
198
+ "value_type", &rb_value_type,
199
+ "default_tokenizer", &rb_default_tokenizer,
200
+ "sub_records", &rb_sub_records,
201
+ NULL);
202
+
203
+ context = rb_grn_context_ensure(&rb_context);
204
+
205
+ if (!NIL_P(rb_name)) {
206
+ name = StringValuePtr(rb_name);
207
+ name_size = RSTRING_LEN(rb_name);
208
+ flags |= GRN_OBJ_PERSISTENT;
209
+ }
210
+
211
+ if (!NIL_P(rb_path)) {
212
+ path = StringValueCStr(rb_path);
213
+ flags |= GRN_OBJ_PERSISTENT;
214
+ }
215
+
216
+ if (RVAL2CBOOL(rb_persistent))
217
+ flags |= GRN_OBJ_PERSISTENT;
218
+
219
+ if (RVAL2CBOOL(rb_key_normalize))
220
+ flags |= GRN_OBJ_KEY_NORMALIZE;
221
+
222
+ if (RVAL2CBOOL(rb_key_with_sis))
223
+ flags |= GRN_OBJ_KEY_WITH_SIS;
224
+
225
+ if (NIL_P(rb_key_type)) {
226
+ key_type = grn_ctx_at(context, GRN_DB_SHORT_TEXT);
227
+ } else {
228
+ key_type = RVAL2GRNOBJECT(rb_key_type, &context);
229
+ }
230
+
231
+ if (!NIL_P(rb_value_type))
232
+ value_type = RVAL2GRNOBJECT(rb_value_type, &context);
233
+
234
+ if (RVAL2CBOOL(rb_sub_records))
235
+ flags |= GRN_OBJ_WITH_SUBREC;
236
+
237
+ table = grn_table_create(context, name, name_size, path,
238
+ flags, key_type, value_type);
239
+ if (!table)
240
+ rb_grn_context_check(context, rb_ary_new4(argc, argv));
241
+ rb_table = GRNOBJECT2RVAL(klass, context, table, GRN_TRUE);
242
+
243
+ if (!NIL_P(rb_default_tokenizer))
244
+ rb_funcall(rb_table, rb_intern("default_tokenizer="), 1,
245
+ rb_default_tokenizer);
246
+
247
+ if (rb_block_given_p())
248
+ return rb_ensure(rb_yield, rb_table, rb_grn_object_close, rb_table);
249
+ else
250
+ return rb_table;
251
+ }
252
+
253
+ /*
254
+ * call-seq:
255
+ * double_array_trie.search(key, options=nil) -> Groonga::Hash
256
+ *
257
+ * _key_ にマッチするレコードのIDがキーに入っている
258
+ * Groonga::Hashを返す。マッチするレコードがない場合は空の
259
+ * Groonga::Hashが返る。
260
+ *
261
+ * _options_ で +:result+ を指定することにより、そのテーブルにマッ
262
+ * チしたレコードIDがキーのレコードを追加することができる。
263
+ * +:result+ にテーブルを指定した場合は、そのテーブルが返る。
264
+ *
265
+ * _options_ に指定可能な値は以下の通り。
266
+ * @param options [::Hash] The name and value
267
+ * pairs. Omitted names are initialized as the default value.
268
+ * @option options :result The result
269
+ *
270
+ * 結果を格納するテーブル。
271
+ * @option options :operator (Groonga::Operator::OR)
272
+ *
273
+ * マッチしたレコードをどのように扱うか。指定可能な値は以
274
+ * 下の通り。
275
+ *
276
+ * [Groonga::Operator::OR]
277
+ * マッチしたレコードを追加。すでにレコードが追加され
278
+ * ている場合は何もしない。
279
+ * [Groonga::Operator::AND]
280
+ * マッチしたレコードのスコアを増加。マッチしなかった
281
+ * レコードを削除。
282
+ * [Groonga::Operator::BUT]
283
+ * マッチしたレコードを削除。
284
+ * [Groonga::Operator::ADJUST]
285
+ * マッチしたレコードのスコアを増加。
286
+ *
287
+ * [+:type+]
288
+ * ?????
289
+ *
290
+ * 複数のキーで検索し、結果を1つのテーブルに集める。
291
+ * result = nil
292
+ * keys = ["morita", "gunyara-kun", "yu"]
293
+ * keys.each do |key|
294
+ * result = users.search(key, :result => result)
295
+ * end
296
+ * result.each do |record|
297
+ * user = record.key
298
+ * p user.key # -> "morita"または"gunyara-kun"または"yu"
299
+ * end
300
+ */
301
+ static VALUE
302
+ rb_grn_double_array_trie_search (int argc, VALUE *argv, VALUE self)
303
+ {
304
+ grn_rc rc;
305
+ grn_ctx *context;
306
+ grn_obj *table;
307
+ grn_id domain_id;
308
+ grn_obj *key, *domain, *result;
309
+ grn_operator operator;
310
+ grn_search_optarg search_options;
311
+ grn_bool search_options_is_set = GRN_FALSE;
312
+ VALUE rb_key, options, rb_result, rb_operator, rb_type;
313
+
314
+ rb_grn_table_key_support_deconstruct(SELF(self), &table, &context,
315
+ &key, &domain_id, &domain,
316
+ NULL, NULL, NULL,
317
+ NULL);
318
+
319
+ rb_scan_args(argc, argv, "11", &rb_key, &options);
320
+
321
+ RVAL2GRNKEY(rb_key, context, key, domain_id, domain, self);
322
+
323
+ rb_grn_scan_options(options,
324
+ "result", &rb_result,
325
+ "operator", &rb_operator,
326
+ "type", &rb_type,
327
+ NULL);
328
+
329
+ if (NIL_P(rb_result)) {
330
+ result = grn_table_create(context, NULL, 0, NULL,
331
+ GRN_OBJ_TABLE_HASH_KEY | GRN_OBJ_WITH_SUBREC,
332
+ table, 0);
333
+ rb_grn_context_check(context, self);
334
+ rb_result = GRNOBJECT2RVAL(Qnil, context, result, GRN_TRUE);
335
+ } else {
336
+ result = RVAL2GRNOBJECT(rb_result, &context);
337
+ }
338
+
339
+ operator = RVAL2GRNOPERATOR(rb_operator);
340
+
341
+ rc = grn_obj_search(context, table, key,
342
+ result, operator,
343
+ search_options_is_set ? &search_options : NULL);
344
+ rb_grn_rc_check(rc, self);
345
+
346
+ return rb_result;
347
+ }
348
+
349
+ static grn_table_cursor *
350
+ rb_grn_double_array_trie_open_grn_prefix_cursor (int argc, VALUE *argv,
351
+ VALUE self, grn_ctx **context)
352
+ {
353
+ grn_obj *table;
354
+ grn_table_cursor *cursor;
355
+ void *prefix = NULL;
356
+ unsigned prefix_size = 0;
357
+ int offset = 0, limit = -1;
358
+ int flags = GRN_CURSOR_PREFIX;
359
+ VALUE options, rb_prefix, rb_key_bytes, rb_key_bits;
360
+ VALUE rb_order, rb_order_by;
361
+ VALUE rb_greater_than, rb_less_than, rb_offset, rb_limit;
362
+
363
+ rb_grn_table_deconstruct((RbGrnTable *)SELF(self), &table, context,
364
+ NULL, NULL,
365
+ NULL, NULL, NULL,
366
+ NULL);
367
+
368
+ rb_scan_args(argc, argv, "11", &rb_prefix, &options);
369
+
370
+ rb_grn_scan_options(options,
371
+ "key_bytes", &rb_key_bytes,
372
+ "key_bites", &rb_key_bits,
373
+ "offset", &rb_offset,
374
+ "limit", &rb_limit,
375
+ "order", &rb_order,
376
+ "order_by", &rb_order_by,
377
+ "greater_than", &rb_greater_than,
378
+ "less_than", &rb_less_than,
379
+ NULL);
380
+
381
+ prefix = StringValuePtr(rb_prefix);
382
+ if (!NIL_P(rb_key_bytes) && !NIL_P(rb_key_bits)) {
383
+ rb_raise(rb_eArgError,
384
+ "should not specify both :key_bytes and :key_bits once: %s",
385
+ rb_grn_inspect(rb_ary_new4(argc, argv)));
386
+ } else if (!NIL_P(rb_key_bytes)) {
387
+ prefix_size = NUM2UINT(rb_key_bytes);
388
+ } else if (!NIL_P(rb_key_bits)) {
389
+ prefix_size = NUM2UINT(rb_key_bits);
390
+ flags |= GRN_CURSOR_SIZE_BY_BIT;
391
+ } else {
392
+ prefix_size = RSTRING_LEN(rb_prefix);
393
+ }
394
+ if (!NIL_P(rb_offset))
395
+ offset = NUM2INT(rb_offset);
396
+ if (!NIL_P(rb_limit))
397
+ limit = NUM2INT(rb_limit);
398
+
399
+ if (NIL_P(rb_order)) {
400
+ } else if (rb_grn_equal_option(rb_order, "asc") ||
401
+ rb_grn_equal_option(rb_order, "ascending")) {
402
+ flags |= GRN_CURSOR_ASCENDING;
403
+ } else if (rb_grn_equal_option(rb_order, "desc") ||
404
+ rb_grn_equal_option(rb_order, "descending")) {
405
+ flags |= GRN_CURSOR_DESCENDING;
406
+ } else {
407
+ rb_raise(rb_eArgError,
408
+ "order should be one of "
409
+ "[:asc, :ascending, :desc, :descending]: %s",
410
+ rb_grn_inspect(rb_order));
411
+ }
412
+ if (NIL_P(rb_order_by)) {
413
+ } else if (rb_grn_equal_option(rb_order_by, "id")) {
414
+ flags |= GRN_CURSOR_BY_ID;
415
+ } else if (rb_grn_equal_option(rb_order_by, "key")) {
416
+ if (table->header.type != GRN_TABLE_PAT_KEY) {
417
+ rb_raise(rb_eArgError,
418
+ "order_by => :key is available "
419
+ "only for Groonga::DoubleArrayTrie: %s",
420
+ rb_grn_inspect(self));
421
+ }
422
+ flags |= GRN_CURSOR_BY_KEY;
423
+ } else {
424
+ rb_raise(rb_eArgError,
425
+ "order_by should be one of [:id%s]: %s",
426
+ table->header.type == GRN_TABLE_PAT_KEY ? ", :key" : "",
427
+ rb_grn_inspect(rb_order_by));
428
+ }
429
+
430
+ if (RVAL2CBOOL(rb_greater_than))
431
+ flags |= GRN_CURSOR_GT;
432
+ if (RVAL2CBOOL(rb_less_than))
433
+ flags |= GRN_CURSOR_LT;
434
+
435
+ cursor = grn_table_cursor_open(*context, table,
436
+ prefix, prefix_size,
437
+ NULL, 0,
438
+ offset, limit, flags);
439
+ rb_grn_context_check(*context, self);
440
+
441
+ return cursor;
442
+ }
443
+
444
+
445
+ /*
446
+ * call-seq:
447
+ * table.open_prefix_cursor(prefix, options={}) -> Groonga::DoubleArrayTrieCursor
448
+ * table.open_prefix_cursor(prefix, options={}) {|cursor| ... }
449
+ *
450
+ * _prefix_ に前方一致検索をするカーソルを生成して返す。ブロッ
451
+ * クを指定すると、そのブロックに生成したカーソルが渡され、ブ
452
+ * ロックを抜けると自動的にカーソルが破棄される。
453
+ *
454
+ * _options_ に指定可能な値は以下の通り。
455
+ * @param options [::Hash] The name and value
456
+ * pairs. Omitted names are initialized as the default value.
457
+ * @option options :key_bytes The key_bytes
458
+ *
459
+ * _prefix_ のサイズ(byte)
460
+ *
461
+ * @option options :key_bits The key_bits
462
+ *
463
+ * _prefix_ のサイズ(bit)
464
+ *
465
+ * @option options :offset The offset
466
+ *
467
+ * 該当する範囲のレコードのうち、(0ベースで) _:offset_ 番目
468
+ * からレコードを取り出す。
469
+ *
470
+ * @option options :limit The limit
471
+ *
472
+ * 該当する範囲のレコードのうち、 _:limit_ 件のみを取り出す。
473
+ * 省略された場合または-1が指定された場合は、全件が指定され
474
+ * たものとみなす。
475
+ *
476
+ * @option options :order The order
477
+ *
478
+ * +:asc+ または +:ascending+ を指定すると昇順にレコードを取
479
+ * り出す。
480
+ * +:desc+ または +:descending+ を指定すると降順にレコードを
481
+ * 取り出す。
482
+ *
483
+ * @option options :order_by (:id) The order_by
484
+ *
485
+ * +:id+ を指定するとID順にレコードを取り出す。(デフォルト)
486
+ * +:key+指定するとキー順にレコードを取り出す。
487
+ *
488
+ * @option options :greater_than The greater_than
489
+ *
490
+ * +true+ を指定すると _prefix_ で指定した値に一致した [ +key+ ] を
491
+ * 範囲に含まない。
492
+ *
493
+ * @option options :less_than The less_than
494
+ *
495
+ * +true+ を指定すると _prefix_ で指定した値に一致した [ +key+ ] を
496
+ * 範囲に含まない。
497
+ */
498
+ static VALUE
499
+ rb_grn_double_array_trie_open_prefix_cursor (int argc, VALUE *argv, VALUE self)
500
+ {
501
+ grn_ctx *context = NULL;
502
+ grn_table_cursor *cursor;
503
+ VALUE rb_cursor;
504
+
505
+ cursor = rb_grn_double_array_trie_open_grn_prefix_cursor(argc, argv,
506
+ self, &context);
507
+ rb_cursor = GRNTABLECURSOR2RVAL(Qnil, context, cursor);
508
+ rb_iv_set(rb_cursor, "@table", self); /* FIXME: cursor should mark table */
509
+ if (rb_block_given_p())
510
+ return rb_ensure(rb_yield, rb_cursor, rb_grn_object_close, rb_cursor);
511
+ else
512
+ return rb_cursor;
513
+ }
514
+
515
+ void
516
+ rb_grn_init_double_array_trie (VALUE mGrn)
517
+ {
518
+ rb_cGrnDoubleArrayTrie =
519
+ rb_define_class_under(mGrn, "DoubleArrayTrie", rb_cGrnTable);
520
+
521
+ rb_include_module(rb_cGrnDoubleArrayTrie, rb_mGrnTableKeySupport);
522
+ rb_define_singleton_method(rb_cGrnDoubleArrayTrie, "create",
523
+ rb_grn_double_array_trie_s_create, -1);
524
+
525
+ rb_define_method(rb_cGrnDoubleArrayTrie, "search",
526
+ rb_grn_double_array_trie_search, -1);
527
+
528
+ rb_define_method(rb_cGrnDoubleArrayTrie, "open_prefix_cursor",
529
+ rb_grn_double_array_trie_open_prefix_cursor, -1);
530
+ }
@@ -1,4 +1,4 @@
1
- /* -*- c-file-style: "ruby" -*- */
1
+ /* -*- coding: utf-8; c-file-style: "ruby" -*- */
2
2
  /*
3
3
  Copyright (C) 2009 Kouhei Sutou <kou@clear-code.com>
4
4
 
@@ -1,4 +1,4 @@
1
- /* -*- c-file-style: "ruby" -*- */
1
+ /* -*- coding: utf-8; c-file-style: "ruby" -*- */
2
2
  /*
3
3
  Copyright (C) 2009 Kouhei Sutou <kou@clear-code.com>
4
4
 
@@ -1,4 +1,4 @@
1
- /* -*- c-file-style: "ruby" -*- */
1
+ /* -*- coding: utf-8; c-file-style: "ruby" -*- */
2
2
  /*
3
3
  Copyright (C) 2009-2010 Kouhei Sutou <kou@clear-code.com>
4
4
 
@@ -1,4 +1,4 @@
1
- /* -*- c-file-style: "ruby" -*- */
1
+ /* -*- coding: utf-8; c-file-style: "ruby" -*- */
2
2
  /*
3
3
  Copyright (C) 2009 Kouhei Sutou <kou@clear-code.com>
4
4