rroonga 2.0.5 → 2.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. data/Rakefile +5 -1
  2. data/ext/groonga/extconf.rb +36 -4
  3. data/ext/groonga/rb-grn-accessor.c +8 -10
  4. data/ext/groonga/rb-grn-array-cursor.c +2 -2
  5. data/ext/groonga/rb-grn-array.c +35 -59
  6. data/ext/groonga/rb-grn-column.c +105 -192
  7. data/ext/groonga/rb-grn-context.c +60 -63
  8. data/ext/groonga/rb-grn-database.c +27 -37
  9. data/ext/groonga/rb-grn-double-array-trie-cursor.c +3 -3
  10. data/ext/groonga/rb-grn-double-array-trie.c +75 -126
  11. data/ext/groonga/rb-grn-encoding.c +27 -27
  12. data/ext/groonga/rb-grn-expression.c +29 -24
  13. data/ext/groonga/rb-grn-fix-size-column.c +7 -9
  14. data/ext/groonga/rb-grn-hash-cursor.c +3 -3
  15. data/ext/groonga/rb-grn-hash.c +57 -108
  16. data/ext/groonga/rb-grn-index-column.c +17 -29
  17. data/ext/groonga/rb-grn-logger.c +11 -14
  18. data/ext/groonga/rb-grn-object.c +51 -94
  19. data/ext/groonga/rb-grn-patricia-trie-cursor.c +2 -2
  20. data/ext/groonga/rb-grn-patricia-trie.c +161 -276
  21. data/ext/groonga/rb-grn-plugin.c +6 -10
  22. data/ext/groonga/rb-grn-table-cursor.c +14 -21
  23. data/ext/groonga/rb-grn-table-key-support.c +32 -35
  24. data/ext/groonga/rb-grn-table.c +149 -252
  25. data/ext/groonga/rb-grn-variable.c +6 -7
  26. data/ext/groonga/rb-grn-view-accessor.c +1 -1
  27. data/ext/groonga/rb-grn-view-cursor.c +2 -2
  28. data/ext/groonga/rb-grn-view.c +28 -45
  29. data/ext/groonga/rb-grn.h +1 -1
  30. data/ext/groonga/rb-groonga.c +6 -6
  31. data/lib/groonga/database.rb +1 -1
  32. data/lib/groonga/dumper.rb +109 -33
  33. data/lib/groonga/expression-builder.rb +24 -0
  34. data/lib/groonga/pagination.rb +30 -24
  35. data/lib/groonga/record.rb +21 -18
  36. data/lib/groonga/schema.rb +156 -140
  37. data/test/test-command-select.rb +66 -1
  38. data/test/test-database-dumper.rb +50 -10
  39. data/test/test-expression-builder.rb +41 -0
  40. metadata +4 -4
@@ -23,9 +23,9 @@ VALUE rb_cGrnPatriciaTrieCursor;
23
23
  /*
24
24
  * Document-class: Groonga::PatriciaTrieCursor < Groonga::TableCursor
25
25
  *
26
- * Groonga::PatriciaTrieに登録されているレコードを順番に取り
26
+ * {Groonga::PatriciaTrie} に登録されているレコードを順番に取り
27
27
  * 出すためのオブジェクト。利用できるメソッドは
28
- * Groonga::TableCursorとGroonga::TableCursor::KeySupportを
28
+ * {Groonga::TableCursor} {Groonga::TableCursor::KeySupport}
29
29
  * 参照。
30
30
  */
31
31
 
@@ -62,12 +62,12 @@ VALUE rb_cGrnPatriciaTrie;
62
62
  * #(キーの種類を表すオブジェクトは文字列で指定。)
63
63
  * Groonga::PatriciaTrie.create(:key_type => "ShortText")
64
64
  *
65
- * #キーとして<tt>Bookmarks</tt>テーブルのレコードを使用す
65
+ * #キーとしてBookmarksテーブルのレコードを使用す
66
66
  * #る無名一時テーブルを生成する。
67
67
  * bookmarks = Groonga::PatriciaTrie.create(:name => "Bookmarks")
68
68
  * Groonga::PatriciaTrie.create(:key_type => bookmarks)
69
69
  *
70
- * #キーとして<tt>Bookmarks</tt>テーブルのレコードを使用す
70
+ * #キーとしてBookmarksテーブルのレコードを使用す
71
71
  * #る無名一時テーブルを生成する。
72
72
  * #(テーブルは文字列で指定。)
73
73
  * Groonga::PatriciaTrie.create(:name => "Bookmarks")
@@ -84,120 +84,67 @@ VALUE rb_cGrnPatriciaTrie;
84
84
  *
85
85
  * @overload create(options={})
86
86
  * @return [Groonga::PatriciaTrie]
87
- * @param options [::Hash] The name and value
88
- * pairs. Omitted names are initialized as the default value.
89
- * @option options [Groonga::Context] :context (Groonga::Context.default)
90
- * テーブルが利用するGroonga::Context
91
- * @option options :name
92
- * テーブルの名前。名前をつけると、Groonga::Context#[]に名
93
- * 前を指定してテーブルを取得することができる。省略すると
94
- * 無名テーブルになり、テーブルIDでのみ取得できる。
95
- * @option options :path
96
- * テーブルを保存するパス。パスを指定すると永続テーブルとな
97
- * り、プロセス終了後もレコードは保持される。次回起動時に
98
- * Groonga::Context#[]で保存されたレコードを利用する
99
- * ことができる。省略すると一時テーブルになり、プロセスが終
100
- * 了するとレコードは破棄される。
101
- * @option options :persistent
102
- * +true+ を指定すると永続テーブルとなる。 +path+ を省略した
103
- * 場合は自動的にパスが付加される。 +:context+ で指定した
104
- * Groonga::Contextに結びついているデータベースが一時デー
105
- * タベースの場合は例外が発生する。
106
- * @option options :key_normalize
107
- * +true+ を指定するとキーを正規化する。
108
- * @option options :key_with_sis
109
- * +true+ を指定するとキーの文字列の全suffixが自動的に登
110
- * 録される。
111
- * @option options :key_type
112
- * キーの種類を示すオブジェクトを指定する。キーの種類には型
113
- * 名("Int32"や"ShortText"など)またはGroonga::Typeまたは
114
- * テーブル(Groonga::Array、Groonga::Hash、
115
- * Groonga::PatriciaTrieのどれか)を指定する。
116
- *
117
- * Groonga::Typeを指定した場合は、その型が示す範囲の値をキー
118
- * として使用する。ただし、キーの最大サイズは4096バイトで
119
- * あるため、Groonga::Type::TEXTやGroonga::Type::LONG_TEXT
120
- * は使用できない。
121
- *
122
- * テーブルを指定した場合はレコードIDをキーとして使用する。
123
- * 指定したテーブルのGroonga::Recordをキーとして使用するこ
124
- * ともでき、その場合は自動的にGroonga::Recordからレコード
125
- * IDを取得する。
126
- *
127
- * 省略した場合はShortText型をキーとして使用する。この場合、
128
- * 4096バイトまで使用可能である。
129
- * @option options :value_type
130
- * 値の型を指定する。省略すると値のための領域を確保しない。
131
- * 値を保存したい場合は必ず指定すること。
132
- *
133
- * 参考: Groonga::Type.new
134
- * @option options :default_tokenizer
135
- * Groonga::IndexColumnで使用するトークナイザを指定する。
136
- * デフォルトでは何も設定されていないので、テーブルに
137
- * Groonga::IndexColumnを定義する場合は
138
- * <tt>"TokenBigram"</tt>などを指定する必要がある。
139
- * @option options :sub_records
140
- * +true+ を指定すると#groupでグループ化したときに、
141
- * Groonga::Record#n_sub_recordsでグループに含まれるレコー
142
- * ドの件数を取得できる。
87
+ * @!macro [new] patricia_trie.create.options
88
+ * @param options [::Hash] The name and value
89
+ * pairs. Omitted names are initialized as the default value.
90
+ * @option options [Groonga::Context] :context (Groonga::Context.default)
91
+ * テーブルが利用する {Groonga::Context}
92
+ * @option options :name
93
+ * テーブルの名前。名前をつけると、 {Groonga::Context#[]} に名
94
+ * 前を指定してテーブルを取得することができる。省略すると
95
+ * 無名テーブルになり、テーブルIDでのみ取得できる。
96
+ * @option options :path
97
+ * テーブルを保存するパス。パスを指定すると永続テーブルとな
98
+ * り、プロセス終了後もレコードは保持される。次回起動時に
99
+ * {Groonga::Context#[]} で保存されたレコードを利用する
100
+ * ことができる。省略すると一時テーブルになり、プロセスが終
101
+ * 了するとレコードは破棄される。
102
+ * @option options :persistent
103
+ * +true+ を指定すると永続テーブルとなる。 +path+ を省略した
104
+ * 場合は自動的にパスが付加される。 +:context+ で指定した
105
+ * {Groonga::Context} に結びついているデータベースが一時デー
106
+ * タベースの場合は例外が発生する。
107
+ * @option options :key_normalize
108
+ * +true+ を指定するとキーを正規化する。
109
+ * @option options :key_with_sis
110
+ * +true+ を指定するとキーの文字列の全suffixが自動的に登
111
+ * 録される。
112
+ * @option options :key_type
113
+ * キーの種類を示すオブジェクトを指定する。キーの種類には型
114
+ * 名("Int32"や"ShortText"など)または {Groonga::Type} または
115
+ * テーブル( {Groonga::Array} 、 {Groonga::Hash} 、
116
+ * {Groonga::PatriciaTrie} のどれか)を指定する。
117
+ *
118
+ * {Groonga::Type} を指定した場合は、その型が示す範囲の値をキー
119
+ * として使用する。ただし、キーの最大サイズは4096バイトで
120
+ * あるため、 {Groonga::Type::TEXT} や {Groonga::Type::LONG_TEXT}
121
+ * は使用できない。
122
+ *
123
+ * テーブルを指定した場合はレコードIDをキーとして使用する。
124
+ * 指定したテーブルの {Groonga::Record} をキーとして使用するこ
125
+ * ともでき、その場合は自動的に {Groonga::Record} からレコード
126
+ * IDを取得する。
127
+ *
128
+ * 省略した場合はShortText型をキーとして使用する。この場合、
129
+ * 4096バイトまで使用可能である。
130
+ * @option options :value_type
131
+ * 値の型を指定する。省略すると値のための領域を確保しない。
132
+ * 値を保存したい場合は必ず指定すること。
133
+ *
134
+ * 参考: {Groonga::Type.new}
135
+ * @option options :default_tokenizer
136
+ * {Groonga::IndexColumn} で使用するトークナイザを指定する。
137
+ * デフォルトでは何も設定されていないので、テーブルに
138
+ * {Groonga::IndexColumn} を定義する場合は
139
+ * @"TokenBigram"@ などを指定する必要がある。
140
+ * @option options :sub_records
141
+ * +true+ を指定すると {#group} でグループ化したときに、
142
+ * {Groonga::Record#n_sub_records} でグループに含まれるレコー
143
+ * ドの件数を取得できる。
144
+ * @!macro patricia_trie.create.options
143
145
  * @overload create(options={})
144
146
  * @yield [table]
145
- * @param options [::Hash] The name and value
146
- * pairs. Omitted names are initialized as the default value.
147
- * @option options [Groonga::Context] :context (Groonga::Context.default)
148
- * テーブルが利用するGroonga::Context。
149
- * @option options :name
150
- * テーブルの名前。名前をつけると、Groonga::Context#[]に名
151
- * 前を指定してテーブルを取得することができる。省略すると
152
- * 無名テーブルになり、テーブルIDでのみ取得できる。
153
- * @option options :path
154
- * テーブルを保存するパス。パスを指定すると永続テーブルとな
155
- * り、プロセス終了後もレコードは保持される。次回起動時に
156
- * Groonga::Context#[]で保存されたレコードを利用する
157
- * ことができる。省略すると一時テーブルになり、プロセスが終
158
- * 了するとレコードは破棄される。
159
- * @option options :persistent
160
- * +true+ を指定すると永続テーブルとなる。 +path+ を省略した
161
- * 場合は自動的にパスが付加される。 +:context+ で指定した
162
- * Groonga::Contextに結びついているデータベースが一時デー
163
- * タベースの場合は例外が発生する。
164
- * @option options :key_normalize
165
- * +true+ を指定するとキーを正規化する。
166
- * @option options :key_with_sis
167
- * +true+ を指定するとキーの文字列の全suffixが自動的に登
168
- * 録される。
169
- * @option options :key_type
170
- * キーの種類を示すオブジェクトを指定する。キーの種類には型
171
- * 名("Int32"や"ShortText"など)またはGroonga::Typeまたは
172
- * テーブル(Groonga::Array、Groonga::Hash、
173
- * Groonga::PatriciaTrieのどれか)を指定する。
174
- *
175
- * Groonga::Typeを指定した場合は、その型が示す範囲の値をキー
176
- * として使用する。ただし、キーの最大サイズは4096バイトで
177
- * あるため、Groonga::Type::TEXTやGroonga::Type::LONG_TEXT
178
- * は使用できない。
179
- *
180
- * テーブルを指定した場合はレコードIDをキーとして使用する。
181
- * 指定したテーブルのGroonga::Recordをキーとして使用するこ
182
- * ともでき、その場合は自動的にGroonga::Recordからレコード
183
- * IDを取得する。
184
- *
185
- * 省略した場合はShortText型をキーとして使用する。この場合、
186
- * 4096バイトまで使用可能である。
187
- * @option options :value_type
188
- * 値の型を指定する。省略すると値のための領域を確保しない。
189
- * 値を保存したい場合は必ず指定すること。
190
- *
191
- * 参考: Groonga::Type.new
192
- * @option options :default_tokenizer
193
- * Groonga::IndexColumnで使用するトークナイザを指定する。
194
- * デフォルトでは何も設定されていないので、テーブルに
195
- * Groonga::IndexColumnを定義する場合は
196
- * <tt>"TokenBigram"</tt>などを指定する必要がある。
197
- * @option options :sub_records
198
- * +true+ を指定すると#groupでグループ化したときに、
199
- * Groonga::Record#n_sub_recordsでグループに含まれるレコー
200
- * ドの件数を取得できる。
147
+ * @!macro patricia_trie.create.options
201
148
  */
202
149
  static VALUE
203
150
  rb_grn_patricia_trie_s_create (int argc, VALUE *argv, VALUE klass)
@@ -279,8 +226,8 @@ rb_grn_patricia_trie_s_create (int argc, VALUE *argv, VALUE klass)
279
226
  }
280
227
 
281
228
  /*
282
- * _key_ にマッチするレコードのIDがキーに入っているGroonga::Hashを返す。
283
- * マッチするレコードがない場合は空のGroonga::Hashが返る。
229
+ * _key_ にマッチするレコードのIDがキーに入っている {Groonga::Hash} を返す。
230
+ * マッチするレコードがない場合は空の {Groonga::Hash} が返る。
284
231
  *
285
232
  * _options_ で +:result+ を指定することにより、そのテーブルにマッチした
286
233
  * レコードIDがキーのレコードを追加することができる。
@@ -306,20 +253,19 @@ rb_grn_patricia_trie_s_create (int argc, VALUE *argv, VALUE klass)
306
253
  * マッチしたレコードをどのように扱うか。指定可能な値は以
307
254
  * 下の通り。
308
255
  *
309
- * [Groonga::Operator::OR]
256
+ * - Groonga::Operator::OR :=
310
257
  * マッチしたレコードを追加。すでにレコードが追加され
311
- * ている場合は何もしない。
312
- * [Groonga::Operator::AND]
258
+ * ている場合は何もしない。 =:
259
+ * - Groonga::Operator::AND :=
313
260
  * マッチしたレコードのスコアを増加。マッチしなかった
314
- * レコードを削除。
315
- * [Groonga::Operator::BUT]
316
- * マッチしたレコードを削除。
317
- * [Groonga::Operator::ADJUST]
318
- * マッチしたレコードのスコアを増加。
319
- *
320
- * [+:type+]
321
- * ?????
322
- * @return [Groonga::Hash]
261
+ * レコードを削除。 =:
262
+ * - Groonga::Operator::BUT :=
263
+ * マッチしたレコードを削除。 =:
264
+ * - Groonga::Operator::ADJUST :=
265
+ * マッチしたレコードのスコアを増加。 =:
266
+ * - +:type+ :=
267
+ * ????? =:
268
+ * @return [Groonga::Hash]
323
269
  */
324
270
  static VALUE
325
271
  rb_grn_patricia_trie_search (int argc, VALUE *argv, VALUE self)
@@ -370,29 +316,14 @@ rb_grn_patricia_trie_search (int argc, VALUE *argv, VALUE self)
370
316
  }
371
317
 
372
318
  /*
373
- * call-seq:
374
- * patricia_trie.scan(string) -> Array
375
- * patricia_trie.scan(string) {|record, word, start, length| ... }
376
- *
377
319
  * _string_ を走査し、 _patricia_trie_ 内に格納されているキーに
378
320
  * マッチした部分文字列の情報をブロックに渡す。複数のキーが
379
321
  * マッチする場合は最長一致するキーを優先する。
380
322
  *
381
- * [_record_]
382
- * マッチしたキーのGroonga::Record。
383
- *
384
- * [_word_]
385
- * マッチした部分文字列。
386
- *
387
- * [_start_]
388
- * _string_ 内での _word_ の出現位置。(バイト単位)
389
- *
390
- * [_length_]
391
- * _word_ の長さ。(バイト単位)
392
- *
393
323
  * ブロックを指定しない場合は、マッチした部分文字列の情報を
394
324
  * まとめて配列として返す。
395
325
  *
326
+ * @example
396
327
  * words = Groonga::PatriciaTrie.create(:key_type => "ShortText",
397
328
  * :key_normalize => true)
398
329
  * words.add("リンク")
@@ -413,6 +344,15 @@ rb_grn_patricia_trie_search (int argc, VALUE *argv, VALUE self)
413
344
  * # -> [[muteki, "muTEki", 0, 6],
414
345
  * # [adventure_of_link, "リンクの冒険", 7, 18],
415
346
  * # [gaxtu, "ガッ", 42, 6]]
347
+ *
348
+ * @overload scan(string)
349
+ * @return [Array]
350
+ * @overload scan(string)
351
+ * @yield [record, word, start, length]
352
+ * @yieldparam record マッチしたキーの {Groonga::Record} 。
353
+ * @yieldparam word マッチした部分文字列。
354
+ * @yieldparam start _string_ 内での _word_ の出現位置。(バイト単位)
355
+ * @yieldparam length _word_ の長さ。(バイト単位)
416
356
  */
417
357
  static VALUE
418
358
  rb_grn_patricia_trie_scan (VALUE self, VALUE rb_string)
@@ -476,13 +416,12 @@ rb_grn_patricia_trie_scan (VALUE self, VALUE rb_string)
476
416
  }
477
417
 
478
418
  /*
479
- * call-seq:
480
- * patricia_trie.prefix_search(prefix) -> Groonga::Hash
481
- *
482
419
  * キーが _prefix_ に前方一致するレコードのIDがキーに入っている
483
- * Groonga::Hashを返す。マッチするレコードがない場合は空の
484
- * Groonga::Hashが返る。
420
+ * {Groonga::Hash} を返す。マッチするレコードがない場合は空の
421
+ * {Groonga::Hash} が返る。
485
422
  *
423
+ * @overload prefix_search(prefix)
424
+ * @return [Groonga::Hash]
486
425
  */
487
426
  static VALUE
488
427
  rb_grn_patricia_trie_prefix_search (VALUE self, VALUE rb_prefix)
@@ -514,11 +453,10 @@ rb_grn_patricia_trie_prefix_search (VALUE self, VALUE rb_prefix)
514
453
  }
515
454
 
516
455
  /*
517
- * call-seq:
518
- * table.register_key_with_sis? -> true/false
519
- *
520
456
  * キーを登録するときに文字列の全suffixも一緒に登録する場合
521
457
  * は +true+ 、登録しない場合は +false+ を返す。
458
+ *
459
+ * @overload register_key_with_sis?
522
460
  */
523
461
  static VALUE
524
462
  rb_grn_patricia_trie_register_key_with_sis_p (VALUE self)
@@ -635,62 +573,38 @@ rb_grn_patricia_trie_open_grn_prefix_cursor (int argc, VALUE *argv, VALUE self,
635
573
  *
636
574
  * @overload open_prefix_cursor(prefix, options={})
637
575
  * @return [Groonga::PatriciaTrieCursor]
638
- * @param options [::Hash] The name and value
639
- * pairs. Omitted names are initialized as the default value.
640
- * @option options :key_bytes
641
- * _prefix_ のサイズ(byte)
642
- * @option options :key_bits
643
- * _prefix_ のサイズ(bit)
644
- * @option options :offset
645
- * 該当する範囲のレコードのうち、(0ベースで) _:offset_ 番目
646
- * からレコードを取り出す。
647
- * @option options :limit
648
- * 該当する範囲のレコードのうち、 _:limit_ 件のみを取り出す。
649
- * 省略された場合または-1が指定された場合は、全件が指定され
650
- * たものとみなす。
651
- * @option options :order
652
- * +:asc+ または +:ascending+ を指定すると昇順にレコードを取
653
- * り出す。
654
- * +:desc+ または +:descending+ を指定すると降順にレコードを
655
- * 取り出す。
656
- * @option options :order_by (:id)
657
- * +:id+ を指定するとID順にレコードを取り出す。(デフォルト)
658
- * +:key+指定するとキー順にレコードを取り出す。
659
- * @option options :greater_than
660
- * +true+ を指定すると _prefix_ で指定した値に一致した [ +key+ ] を
661
- * 範囲に含まない。
662
- * @option options :less_than
663
- * +true+ を指定すると _prefix_ で指定した値に一致した [ +key+ ] を
664
- * 範囲に含まない。
576
+ * @!macro [new] patricia-trie.open_prefix_cursor.options
577
+ * @param options [::Hash] The name and value
578
+ * pairs. Omitted names are initialized as the default value.
579
+ * @option options :key_bytes
580
+ * _prefix_ のサイズ(byte)
581
+ * @option options :key_bits
582
+ * _prefix_ のサイズ(bit)
583
+ * @option options :offset
584
+ * 該当する範囲のレコードのうち、(0ベースで) _:offset_ 番目
585
+ * からレコードを取り出す。
586
+ * @option options :limit
587
+ * 該当する範囲のレコードのうち、 _:limit_ 件のみを取り出す。
588
+ * 省略された場合または-1が指定された場合は、全件が指定され
589
+ * たものとみなす。
590
+ * @option options :order
591
+ * +:asc+ または +:ascending+ を指定すると昇順にレコードを取
592
+ * り出す。
593
+ * +:desc+ または +:descending+ を指定すると降順にレコードを
594
+ * 取り出す。
595
+ * @option options :order_by (:id)
596
+ * +:id+ を指定するとID順にレコードを取り出す。(デフォルト)
597
+ * +:key+指定するとキー順にレコードを取り出す。
598
+ * @option options :greater_than
599
+ * +true+ を指定すると _prefix_ で指定した値に一致した [ +key+ ] を
600
+ * 範囲に含まない。
601
+ * @option options :less_than
602
+ * +true+ を指定すると _prefix_ で指定した値に一致した [ +key+ ] を
603
+ * 範囲に含まない。
604
+ * @!macro patricia-trie.open_prefix_cursor.options
665
605
  * @overload open_prefix_cursor(prefix, options={})
666
606
  * @yield [cursor]
667
- * @param options [::Hash] The name and value
668
- * pairs. Omitted names are initialized as the default value.
669
- * @option options :key_bytes
670
- * _prefix_ のサイズ(byte)
671
- * @option options :key_bits
672
- * _prefix_ のサイズ(bit)
673
- * @option options :offset
674
- * 該当する範囲のレコードのうち、(0ベースで) _:offset_ 番目
675
- * からレコードを取り出す。
676
- * @option options :limit
677
- * 該当する範囲のレコードのうち、 _:limit_ 件のみを取り出す。
678
- * 省略された場合または-1が指定された場合は、全件が指定され
679
- * たものとみなす。
680
- * @option options :order
681
- * +:asc+ または +:ascending+ を指定すると昇順にレコードを取
682
- * り出す。
683
- * +:desc+ または +:descending+ を指定すると降順にレコードを
684
- * 取り出す。
685
- * @option options :order_by (:id)
686
- * +:id+ を指定するとID順にレコードを取り出す。(デフォルト)
687
- * +:key+指定するとキー順にレコードを取り出す。
688
- * @option options :greater_than
689
- * +true+ を指定すると _prefix_ で指定した値に一致した [ +key+ ] を
690
- * 範囲に含まない。
691
- * @option options :less_than
692
- * +true+ を指定すると _prefix_ で指定した値に一致した [ +key+ ] を
693
- * 範囲に含まない。
607
+ * @!macro patricia-trie.open_prefix_cursor.options
694
608
  */
695
609
  static VALUE
696
610
  rb_grn_patricia_trie_open_prefix_cursor (int argc, VALUE *argv, VALUE self)
@@ -780,44 +694,29 @@ rb_grn_patricia_trie_open_grn_rk_cursor (int argc, VALUE *argv, VALUE self,
780
694
  *
781
695
  * @overload open_rk_cursor(key, options={})
782
696
  * @return [Groonga::PatriciaTrieCursor]
783
- * @param options [::Hash]
784
- * pairs. Omitted names are initialized as the default value.
785
- * @option options :key_bytes
786
- * _key_のサイズ(byte)
787
- * @option options :key_bits
788
- * _key_のサイズ(bit)(現在は未サポート)
789
- * @option options :offset
790
- * 該当する範囲のレコードのうち、(0ベースで)_:offset_番目から
791
- * レコードを取り出す。
792
- * @option options :limit
793
- * 該当する範囲のレコードのうち、 _:limit_ 件のみを取り出す。
794
- * 省略された場合または-1が指定された場合は、全件が指定されたものとみなす。
795
- * @option options :greater_than
796
- * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
797
- * 範囲に含まない。
798
- * @option options :less_than
799
- * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
800
- * 範囲に含まない。
697
+ * @!macro [new] patricia-trie.open_rk_cursor.options
698
+ * @param options [::Hash]
699
+ * pairs. Omitted names are initialized as the default value.
700
+ * @option options :key_bytes
701
+ * _key_のサイズ(byte)
702
+ * @option options :key_bits
703
+ * _key_のサイズ(bit)(現在は未サポート)
704
+ * @option options :offset
705
+ * 該当する範囲のレコードのうち、(0ベースで) _:offset_ 番目から
706
+ * レコードを取り出す。
707
+ * @option options :limit
708
+ * 該当する範囲のレコードのうち、 _:limit_ 件のみを取り出す。
709
+ * 省略された場合または-1が指定された場合は、全件が指定されたものとみなす。
710
+ * @option options :greater_than
711
+ * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
712
+ * 範囲に含まない。
713
+ * @option options :less_than
714
+ * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
715
+ * 範囲に含まない。
716
+ * @!macro patricia-trie.open_rk_cursor.options
801
717
  * @overload open_rk_cursor(key, options={})
802
718
  * @yield [cursor]
803
- * @param options [::Hash]
804
- * pairs. Omitted names are initialized as the default value.
805
- * @option options :key_bytes
806
- * _key_のサイズ(byte)
807
- * @option options :key_bits
808
- * _key_のサイズ(bit)(現在は未サポート)
809
- * @option options :offset
810
- * 該当する範囲のレコードのうち、(0ベースで)_:offset_番目から
811
- * レコードを取り出す。
812
- * @option options :limit
813
- * 該当する範囲のレコードのうち、 _:limit_ 件のみを取り出す。
814
- * 省略された場合または-1が指定された場合は、全件が指定されたものとみなす。
815
- * @option options :greater_than
816
- * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
817
- * 範囲に含まない。
818
- * @option options :less_than
819
- * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
820
- * 範囲に含まない。
719
+ * @!macro patricia-trie.open_rk_cursor.options
821
720
  */
822
721
  static VALUE
823
722
  rb_grn_patricia_trie_open_rk_cursor (int argc, VALUE *argv, VALUE self)
@@ -905,42 +804,28 @@ rb_grn_patricia_trie_open_grn_near_cursor (int argc, VALUE *argv, VALUE self,
905
804
  *
906
805
  * @overload open_near_cursor(key, options={})
907
806
  * @return [Groonga::PatriciaTrieCursor]
908
- * @param options [::Hash] The name and value
909
- * pairs. Omitted names are initialized as the default value.
910
- * @option options :size
911
- * _size_ バイト以降のデータが同じキーのレコードに限定する。
912
- * @option options :offset
913
- * 該当する範囲のレコードのうち、(0ベースで)_:offset_番目
914
- * からレコードを取り出す。
915
- * @option options :limit
916
- * 該当する範囲のレコードのうち、_:limit_件のみを取り出す。
917
- * 省略された場合または-1が指定された場合は、全件が指定され
918
- * たものとみなす。
919
- * @option options :greater_than
920
- * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
921
- * 範囲に含まない。
922
- * @option options :less_than
923
- * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
924
- * 範囲に含まない。
807
+ * @!macro [new] patricia-trie.open_near_cursor.options
808
+ * @param options [::Hash] The name and value
809
+ * pairs. Omitted names are initialized as the default value.
810
+ * @option options :size
811
+ * _size_ バイト以降のデータが同じキーのレコードに限定する。
812
+ * @option options :offset
813
+ * 該当する範囲のレコードのうち、(0ベースで) _:offset_ 番目
814
+ * からレコードを取り出す。
815
+ * @option options :limit
816
+ * 該当する範囲のレコードのうち、 _:limit_ 件のみを取り出す。
817
+ * 省略された場合または-1が指定された場合は、全件が指定され
818
+ * たものとみなす。
819
+ * @option options :greater_than
820
+ * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
821
+ * 範囲に含まない。
822
+ * @option options :less_than
823
+ * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
824
+ * 範囲に含まない。
825
+ * @!macro patricia-trie.open_near_cursor.options
925
826
  * @overload open_near_cursor(key, options={})
926
827
  * @yield [cursor]
927
- * @param options [::Hash] The name and value
928
- * pairs. Omitted names are initialized as the default value.
929
- * @option options :size
930
- * _size_ バイト以降のデータが同じキーのレコードに限定する。
931
- * @option options :offset
932
- * 該当する範囲のレコードのうち、(0ベースで)_:offset_番目
933
- * からレコードを取り出す。
934
- * @option options :limit
935
- * 該当する範囲のレコードのうち、_:limit_件のみを取り出す。
936
- * 省略された場合または-1が指定された場合は、全件が指定され
937
- * たものとみなす。
938
- * @option options :greater_than
939
- * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
940
- * 範囲に含まない。
941
- * @option options :less_than
942
- * +true+ を指定すると _key_ で指定した値に一致した [ +key+ ] を
943
- * 範囲に含まない。
828
+ * @!macro patricia-trie.open_near_cursor.options
944
829
  */
945
830
  static VALUE
946
831
  rb_grn_patricia_trie_open_near_cursor (int argc, VALUE *argv, VALUE self)