rroonga 1.2.9 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) 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 +19 -15
  10. data/ext/groonga/rb-grn-database.c +47 -42
  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 +40 -27
  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 +268 -153
  38. data/ext/groonga/rb-grn-type.c +11 -7
  39. data/ext/groonga/rb-grn-utils.c +4 -1
  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 +6 -2
  47. data/ext/groonga/rb-groonga.c +1 -1
  48. data/lib/groonga.rb +4 -2
  49. data/lib/groonga/context.rb +16 -41
  50. data/lib/groonga/dumper.rb +6 -4
  51. data/lib/groonga/expression-builder.rb +52 -26
  52. data/lib/groonga/grntest-log.rb +206 -0
  53. data/lib/groonga/pagination.rb +21 -19
  54. data/lib/groonga/patricia-trie.rb +7 -10
  55. data/lib/groonga/posting.rb +1 -1
  56. data/lib/groonga/query-log.rb +348 -0
  57. data/lib/groonga/record.rb +47 -143
  58. data/lib/groonga/schema.rb +679 -406
  59. data/lib/groonga/view-record.rb +4 -10
  60. data/rroonga-build.rb +1 -1
  61. data/test/test-array.rb +25 -4
  62. data/test/test-column.rb +8 -8
  63. data/test/test-database.rb +2 -3
  64. data/test/test-double-array-trie.rb +164 -0
  65. data/test/test-expression-builder.rb +2 -2
  66. data/test/test-expression.rb +10 -9
  67. data/test/test-gqtp.rb +2 -2
  68. data/test/test-hash.rb +32 -8
  69. data/test/test-patricia-trie.rb +34 -10
  70. data/test/test-query-log.rb +258 -0
  71. data/test/test-record.rb +6 -5
  72. data/test/test-schema-create-table.rb +8 -0
  73. data/test/test-schema.rb +491 -234
  74. data/test/test-table.rb +17 -24
  75. metadata +123 -100
  76. data/ext/groonga/Makefile +0 -233
@@ -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
 
@@ -31,7 +31,7 @@ VALUE rb_cGrnIndexColumn;
31
31
  * とにより高速な全文検索を実現できる。
32
32
  *
33
33
  * テーブルにGroonga::IndexColumnを定義する方法は
34
- * Groonga::Table#define_index_columnを参照。
34
+ * {Groonga::Table#define_index_column} を参照。
35
35
  */
36
36
 
37
37
  void
@@ -100,35 +100,36 @@ rb_grn_index_column_deconstruct (RbGrnIndexColumn *rb_grn_index_column,
100
100
  * column[id] = value
101
101
  * column[id] = options
102
102
  *
103
- * IDが_id_であるレコードを高速に全文検索するため転置索引を作
103
+ * IDが _id_ であるレコードを高速に全文検索するため転置索引を作
104
104
  * 成する。多くの場合、Groonga::Table#define_index_columnで
105
- * +:source+オプションを指定することにより、自動的に全文検索
105
+ * +:source+ オプションを指定することにより、自動的に全文検索
106
106
  * 用の索引は更新されるので、明示的にこのメソッドを使うこと
107
107
  * は少ない。
108
108
  *
109
- * _value_には文字列を指定する。
109
+ * _value_ には文字列を指定する。
110
110
  *
111
- * _options_を指定することにより、より索引の作成を制御できる。
112
- * _options_に指定可能な値は以下の通り。
111
+ * _options_ を指定することにより、より索引の作成を制御できる。
112
+ * @param [::Hash] options The name and value
113
+ * pairs. Omitted names are initialized as the default value
114
+ * @option options :section The section
113
115
  *
114
- * [+:section+]
115
116
  * 段落番号を指定する。省略した場合は1を指定したとみなされ
116
117
  * る。
117
- *
118
118
  * Groonga::Table#define_index_columnで
119
119
  * <tt>{:with_section => true}</tt>を指定していなければい
120
120
  * けない。
121
121
  *
122
- * [+:old_value+]
122
+ * @option options :old_value The old_value
123
+ *
123
124
  * 以前の値を指定する。省略した場合は現在の値が用いられる。
124
125
  * 通常は指定する必要はない。
125
126
  *
126
- * [+:value+]
127
- * 新しい値を指定する。_value_を指定した場合と_options_で
127
+ * @option options :value The value
128
+ * 新しい値を指定する。 _value_ を指定した場合と _options_
128
129
  * <tt>{:value => value}</tt>を指定した場合は同じ動作とな
129
130
  * る。
130
131
  *
131
- * 記事の段落毎に索引を作成する。
132
+ * @example 記事の段落毎に索引を作成する。
132
133
  * articles = Groonga::Array.create(:name => "<articles>")
133
134
  * articles.define_column("title", "ShortText")
134
135
  * articles.define_column("content", "Text")
@@ -400,32 +401,35 @@ rb_grn_index_column_set_source (VALUE self, VALUE rb_source)
400
401
  * call-seq:
401
402
  * column.search(query, options={}) -> Groonga::Hash
402
403
  *
403
- * _object_から_query_に対応するオブジェクトを検索し、見つかっ
404
+ * _object_ から _query_ に対応するオブジェクトを検索し、見つかっ
404
405
  * たオブジェクトのIDがキーになっているGroonga::Hashを返す。
405
406
  *
406
407
  * 利用可能なオプションは以下の通り。
407
- *
408
- * [+:result+]
408
+ * @param [::Hash] options The name and value
409
+ * pairs. Omitted names are initialized as the default value
410
+ * @option options [Groonga::Hash] :result The result
409
411
  * 結果を格納するGroonga::Hash。指定しない場合は新しく
410
412
  * Groonga::Hashを生成し、それに結果を格納して返す。
411
- * [+:operator+]
412
- * 以下のどれかの値を指定する。+nil+, <tt>"or"</tt>, <tt>"||"</tt>,
413
+ * @option options :operator The operator
414
+ *
415
+ * 以下のどれかの値を指定する。 +nil+ , <tt>"or"</tt>, <tt>"||"</tt>,
413
416
  * <tt>"and"</tt>, <tt>"+"</tt>, <tt>"&&"</tt>, <tt>"but"</tt>,
414
417
  * <tt>"not"</tt>, <tt>"-"</tt>, <tt>"adjust"</tt>, <tt>">"</tt>。
415
418
  * それぞれ以下のようになる。(FIXME: 「以下」)
416
- * [+:exact+]
417
- * +true+を指定すると完全一致で検索する
418
- * [+:longest_common_prefix+]
419
- * +true+を指定すると_query_と同じ接頭辞をもつエントリのう
419
+ * @option options :exact The exact
420
+ *
421
+ * +true+ を指定すると完全一致で検索する
422
+ * @option options :longest_common_prefix The longest_common_prefix
423
+ * +true+ を指定すると _query_ と同じ接頭辞をもつエントリのう
420
424
  * ち、もっとも長いエントリを検索する
421
- * [+:suffix+]
422
- * +true+を指定すると_query_が後方一致するエントリを検索す
425
+ * @option options :suffix The suffix
426
+ * +true+ を指定すると _query_ が後方一致するエントリを検索す
423
427
  * る
424
- * [+:prefix+]
425
- * +true+を指定すると_query_が前方一致するレコードを検索す
428
+ * @option options :prefix The prefix
429
+ * +true+ を指定すると _query_ が前方一致するレコードを検索す
426
430
  * る
427
- * [+:near+]
428
- * +true+を指定すると_query_に指定した複数の語が近傍に含ま
431
+ * @option options :near The near
432
+ * +true+ を指定すると _query_ に指定した複数の語が近傍に含ま
429
433
  * れるレコードを検索する
430
434
  * [...]
431
435
  * ...
@@ -494,7 +498,7 @@ rb_grn_index_column_search (int argc, VALUE *argv, VALUE self)
494
498
  * call-seq:
495
499
  * column.with_section? -> true/false
496
500
  *
497
- * _column_が段落情報も格納する場合は+true+を返します。
501
+ * _column_ が段落情報も格納する場合は +true+ を返します。
498
502
  */
499
503
  static VALUE
500
504
  rb_grn_index_column_with_section_p (VALUE self)
@@ -515,7 +519,7 @@ rb_grn_index_column_with_section_p (VALUE self)
515
519
  * call-seq:
516
520
  * column.with_weight? -> true/false
517
521
  *
518
- * _column_がウェイト情報も格納する場合は+true+を返します。
522
+ * _column_ がウェイト情報も格納する場合は +true+ を返します。
519
523
  */
520
524
  static VALUE
521
525
  rb_grn_index_column_with_weight_p (VALUE self)
@@ -536,7 +540,7 @@ rb_grn_index_column_with_weight_p (VALUE self)
536
540
  * call-seq:
537
541
  * column.with_position? -> true/false
538
542
  *
539
- * _column_が位置情報も格納する場合は+true+を返します。
543
+ * _column_ が位置情報も格納する場合は +true+ を返します。
540
544
  */
541
545
  static VALUE
542
546
  rb_grn_index_column_with_position_p (VALUE self)
@@ -1,4 +1,4 @@
1
- /* -*- c-file-style: "ruby" -*- */
1
+ /* -*- coding: utf-8; c-file-style: "ruby" -*- */
2
2
  /*
3
3
  Copyright (C) 2011 Haruka Yoshihara <yoshihara@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-2011 Kouhei Sutou <kou@clear-code.com>
4
4
 
@@ -256,37 +256,42 @@ rb_grn_logger_initialize (int argc, VALUE *argv, VALUE self)
256
256
  * groongaがログを出力する度に呼び出されるブロックを登録す
257
257
  * る。
258
258
  *
259
- * ブロックに渡されてくる引数は_level_, _time_, _title_,
260
- * _message_, _location_の5つで、_level_はSymbol、それ以外は
261
- * 全て文字列で渡される。その4つについては_options_で+false+
259
+ * ブロックに渡されてくる引数は _level_ , _time_ , _title_ ,
260
+ * _message_ , _location_ の5つで、 _level_ はSymbol、それ以外は
261
+ * 全て文字列で渡される。その4つについては _options_ で +false+
262
262
  * を指定することでブロックに渡さないようにすることができ、
263
263
  * その場合は空文字列が実際には渡される。
264
264
  *
265
- * _options_に指定可能な値は以下の通り。
265
+ * _options_ に指定可能な値は以下の通り。
266
+ * @param options [::Hash] The name and value
267
+ * pairs. Omitted names are initialized as the default value.
268
+ * @option options :level (:notice) The log level
266
269
  *
267
- * [+:level+]
268
- * ログのレベルを+:none+, +:emergency+, +:alert+,
269
- * +:critical+, +:error+, +:warning+, +:notice+, +:info+,
270
- * +:debug+, +:dump+のいずれかで指定する。それより重要度が
270
+ * ログのレベルを +:none+ , +:emergency+ , +:alert+ ,
271
+ * +:critical+ , +:error+ , +:warning+ , +:notice+ , +:info+ ,
272
+ * +:debug+ , +:dump+ のいずれかで指定する。それより重要度が
271
273
  * 低いログはブロックに渡されなくなる。デフォルトでは
272
- * +:notice+。
274
+ * +:notice+ 。
273
275
  *
274
- * [+:time+]
275
- * ログが出力された時間をブロックに渡したいなら+true+を指
276
+ * @option options :time
277
+ *
278
+ * ログが出力された時間をブロックに渡したいなら +true+ を指
276
279
  * 定する。デフォルトでは渡す。
277
280
  *
278
- * [+:title+]
279
- * ログのタイトルをブロックに渡したいなら+true+を指定す
281
+ * @option options :title The title
282
+ *
283
+ * ログのタイトルをブロックに渡したいなら +true+ を指定す
280
284
  * る。デフォルトでは渡す。(FIXME: groongaで実装されてい
281
285
  * ない?)
282
286
  *
283
- * [+:message+]
284
- * ログのメッセージをブロックに渡したいなら+true+を指定す
287
+ * @option options :message The message
288
+ * ログのメッセージをブロックに渡したいなら +true+ を指定す
285
289
  * る。デフォルトでは渡す。
286
290
  *
287
- * [+:location+]
291
+ * @option options :location The location
292
+ *
288
293
  * ログの発生元のプロセスIDとgroongaのソースコードのファイ
289
- * ル名、行番号、関数名をブロックに渡したいなら+true+を指
294
+ * ル名、行番号、関数名をブロックに渡したいなら +true+ を指
290
295
  * 定する。デフォルトでは渡す。
291
296
  */
292
297
  static VALUE
@@ -1,4 +1,4 @@
1
- /* -*- c-file-style: "ruby" -*- */
1
+ /* -*- coding: utf-8; c-file-style: "ruby" -*- */
2
2
  /*
3
3
  Copyright (C) 2009-2011 Kouhei Sutou <kou@clear-code.com>
4
4
 
@@ -108,11 +108,13 @@ rb_grn_object_run_finalizer (grn_ctx *context, grn_obj *grn_object,
108
108
  case GRN_PROC:
109
109
  case GRN_CURSOR_TABLE_HASH_KEY:
110
110
  case GRN_CURSOR_TABLE_PAT_KEY:
111
+ case GRN_CURSOR_TABLE_DAT_KEY:
111
112
  case GRN_CURSOR_TABLE_NO_KEY:
112
113
  case GRN_CURSOR_TABLE_VIEW:
113
114
  break;
114
115
  case GRN_TABLE_HASH_KEY:
115
116
  case GRN_TABLE_PAT_KEY:
117
+ case GRN_TABLE_DAT_KEY:
116
118
  rb_grn_table_key_support_finalizer(context, grn_object,
117
119
  RB_GRN_TABLE_KEY_SUPPORT(rb_grn_object));
118
120
  break;
@@ -219,6 +221,9 @@ rb_grn_object_to_ruby_class (grn_obj *object)
219
221
  case GRN_TABLE_PAT_KEY:
220
222
  klass = rb_cGrnPatriciaTrie;
221
223
  break;
224
+ case GRN_TABLE_DAT_KEY:
225
+ klass = rb_cGrnDoubleArrayTrie;
226
+ break;
222
227
  case GRN_TABLE_NO_KEY:
223
228
  klass = rb_cGrnArray;
224
229
  break;
@@ -255,6 +260,9 @@ rb_grn_object_to_ruby_class (grn_obj *object)
255
260
  case GRN_CURSOR_TABLE_PAT_KEY:
256
261
  klass = rb_cGrnPatriciaTrieCursor;
257
262
  break;
263
+ case GRN_CURSOR_TABLE_DAT_KEY:
264
+ klass = rb_cGrnDoubleArrayTrieCursor;
265
+ break;
258
266
  case GRN_CURSOR_TABLE_NO_KEY:
259
267
  klass = rb_cGrnArrayCursor;
260
268
  break;
@@ -337,7 +345,6 @@ rb_grn_object_bind_common (VALUE klass, VALUE self, VALUE rb_context,
337
345
  }
338
346
 
339
347
  switch (object->header.type) {
340
- case GRN_DB:
341
348
  case GRN_PROC:
342
349
  case GRN_TYPE:
343
350
  case GRN_ACCESSOR: /* TODO: We want to close GRN_ACCESSOR. */
@@ -384,6 +391,7 @@ rb_grn_object_assign (VALUE klass, VALUE self, VALUE rb_context,
384
391
  (RVAL2CBOOL(rb_obj_is_kind_of(self, rb_cGrnType))) ||
385
392
  klass == rb_cGrnHashCursor ||
386
393
  klass == rb_cGrnPatriciaTrieCursor ||
394
+ klass == rb_cGrnDoubleArrayTrieCursor ||
387
395
  klass == rb_cGrnArrayCursor ||
388
396
  klass == rb_cGrnViewCursor ||
389
397
  klass == rb_cGrnIndexCursor ||
@@ -527,7 +535,7 @@ rb_grn_object_deconstruct (RbGrnObject *rb_grn_object,
527
535
  * call-seq:
528
536
  * object.close
529
537
  *
530
- * _object_が使用しているリソースを開放する。これ以降_object_を
538
+ * _object_ が使用しているリソースを開放する。これ以降 _object_
531
539
  * 使うことはできない。
532
540
  */
533
541
  VALUE
@@ -554,7 +562,7 @@ rb_grn_object_close (VALUE self)
554
562
  * call-seq:
555
563
  * object.unlink
556
564
  *
557
- * _object_のリファレンスカウンタを1減少する。
565
+ * _object_ のリファレンスカウンタを1減少する。
558
566
  */
559
567
  VALUE
560
568
  rb_grn_object_unlink (VALUE self)
@@ -582,8 +590,8 @@ rb_grn_object_unlink (VALUE self)
582
590
  * call-seq:
583
591
  * object.closed? -> true/false
584
592
  *
585
- * _object_が開放済みの場合は+true+を返し、そうでない場合は
586
- * +false+を返す。
593
+ * _object_ が開放済みの場合は+true+を返し、そうでない場合は
594
+ * +false+ を返す。
587
595
  */
588
596
  VALUE
589
597
  rb_grn_object_closed_p (VALUE self)
@@ -781,6 +789,8 @@ rb_grn_object_inspect_content_flags_with_label (VALUE inspected,
781
789
  rb_ary_push(inspected_flags, rb_str_new2("TABLE_HASH_KEY"));
782
790
  if (flags & GRN_OBJ_TABLE_PAT_KEY)
783
791
  rb_ary_push(inspected_flags, rb_str_new2("TABLE_PAT_KEY"));
792
+ if (flags & GRN_OBJ_TABLE_DAT_KEY)
793
+ rb_ary_push(inspected_flags, rb_str_new2("TABLE_DAT_KEY"));
784
794
  if (flags & GRN_OBJ_TABLE_NO_KEY)
785
795
  rb_ary_push(inspected_flags, rb_str_new2("TABLE_NO_KEY"));
786
796
  if (flags & GRN_OBJ_TABLE_VIEW)
@@ -805,6 +815,7 @@ rb_grn_object_inspect_content_flags_with_label (VALUE inspected,
805
815
  switch (object->header.type) {
806
816
  case GRN_TABLE_HASH_KEY:
807
817
  case GRN_TABLE_PAT_KEY:
818
+ case GRN_TABLE_DAT_KEY:
808
819
  if (flags & GRN_OBJ_KEY_WITH_SIS)
809
820
  rb_ary_push(inspected_flags, rb_str_new2("KEY_WITH_SIS"));
810
821
  if (flags & GRN_OBJ_KEY_NORMALIZE)
@@ -929,7 +940,7 @@ rb_grn_object_inspect_footer (VALUE self, VALUE inspected)
929
940
  * call-seq:
930
941
  * object.inspect -> 詳細情報
931
942
  *
932
- * _object_の詳細を示した文字列を返す。デバッグ用。
943
+ * _object_ の詳細を示した文字列を返す。デバッグ用。
933
944
  */
934
945
  static VALUE
935
946
  rb_grn_object_inspect (VALUE self)
@@ -950,8 +961,8 @@ rb_grn_object_inspect (VALUE self)
950
961
  * call-seq:
951
962
  * object.id -> ID/nil
952
963
  *
953
- * _object_のIDを返す。_object_が#closed?なときやIDがない場合
954
- * は+nil+を返す。
964
+ * _object_ のIDを返す。 _object_ が#closed?なときやIDがない場合
965
+ * は +nil+ を返す。
955
966
  */
956
967
  VALUE
957
968
  rb_grn_object_get_id (VALUE self)
@@ -976,8 +987,8 @@ rb_grn_object_get_id (VALUE self)
976
987
  * call-seq:
977
988
  * object.path -> ファイルパス/nil
978
989
  *
979
- * _object_に対応するファイルパスを返す。一時_object_
980
- * なら+nil+を返す。
990
+ * _object_ に対応するファイルパスを返す。一時 _object_
991
+ * なら +nil+ を返す。
981
992
  */
982
993
  static VALUE
983
994
  rb_grn_object_get_path (VALUE self)
@@ -1003,8 +1014,8 @@ rb_grn_object_get_path (VALUE self)
1003
1014
  * call-seq:
1004
1015
  * object.temporary? -> true/false
1005
1016
  *
1006
- * _object_が一時オブジェクトなら+true+、永続オブジェクトな
1007
- * ら+false+を返す。
1017
+ * _object_ が一時オブジェクトなら +true+ 、永続オブジェクトな
1018
+ * ら +false+ を返す。
1008
1019
  */
1009
1020
  static VALUE
1010
1021
  rb_grn_object_temporary_p (VALUE self)
@@ -1024,8 +1035,8 @@ rb_grn_object_temporary_p (VALUE self)
1024
1035
  * call-seq:
1025
1036
  * object.persistent? -> true/false
1026
1037
  *
1027
- * _object_が永続オブジェクトなら+true+、一時オブジェクトな
1028
- * ら+false+を返す。
1038
+ * _object_ が永続オブジェクトなら +true+ 、一時オブジェクトな
1039
+ * ら +false+ を返す。
1029
1040
  */
1030
1041
  static VALUE
1031
1042
  rb_grn_object_persistent_p (VALUE self)
@@ -1045,9 +1056,9 @@ rb_grn_object_persistent_p (VALUE self)
1045
1056
  * call-seq:
1046
1057
  * object.domain -> Groonga::Object/nil
1047
1058
  *
1048
- * _object_の属しているGroonga::Objectを返す。例えば、
1059
+ * _object_ の属しているGroonga::Objectを返す。例えば、
1049
1060
  * Groonga::ColumnはGroonga::Tableを返す。属している
1050
- * Groonga::Objectがない場合は+nil+を返す。
1061
+ * Groonga::Objectがない場合は +nil+ を返す。
1051
1062
  */
1052
1063
  static VALUE
1053
1064
  rb_grn_object_get_domain (VALUE self)
@@ -1083,7 +1094,7 @@ rb_grn_object_get_domain (VALUE self)
1083
1094
  * call-seq:
1084
1095
  * object.name -> 名前/nil
1085
1096
  *
1086
- * _object_の名前を返す。無名オブジェクトの場合は+nil+を返す。
1097
+ * _object_ の名前を返す。無名オブジェクトの場合は +nil+ を返す。
1087
1098
  */
1088
1099
  static VALUE
1089
1100
  rb_grn_object_get_name (VALUE self)
@@ -1117,11 +1128,11 @@ rb_grn_object_get_name (VALUE self)
1117
1128
  * call-seq:
1118
1129
  * object.range -> Groonga::Object/nil
1119
1130
  *
1120
- * _object_の値がとりうる範囲を示したGroonga::Objectを返す。
1131
+ * _object_ の値がとりうる範囲を示したGroonga::Objectを返す。
1121
1132
  * 例えば、Groonga::Columnの場合は
1122
1133
  * Groonga::Table#define_columnで指定されたGroonga::Typeや
1123
1134
  * Groonga::Tableを返す。
1124
- * 範囲が指定されていないオブジェクトの場合は+nil+を返す。
1135
+ * 範囲が指定されていないオブジェクトの場合は +nil+ を返す。
1125
1136
  */
1126
1137
  static VALUE
1127
1138
  rb_grn_object_get_range (VALUE self)
@@ -1157,8 +1168,8 @@ rb_grn_object_get_range (VALUE self)
1157
1168
  * call-seq:
1158
1169
  * object == other -> true/false
1159
1170
  *
1160
- * _object_と_other_が同じgroongaのオブジェクトなら+true+を返
1161
- * し、そうでなければ+false+を返す。
1171
+ * _object_ _other_ が同じgroongaのオブジェクトなら +true+ を返
1172
+ * し、そうでなければ +false+ を返す。
1162
1173
  */
1163
1174
  static VALUE
1164
1175
  rb_grn_object_equal (VALUE self, VALUE other)
@@ -1184,7 +1195,7 @@ rb_grn_object_equal (VALUE self, VALUE other)
1184
1195
  * call-seq:
1185
1196
  * object[id] -> 値
1186
1197
  *
1187
- * _object_の_id_に対応する値を返す。
1198
+ * _object_ _id_ に対応する値を返す。
1188
1199
  */
1189
1200
  VALUE
1190
1201
  rb_grn_object_array_reference (VALUE self, VALUE rb_id)
@@ -1212,6 +1223,7 @@ rb_grn_object_array_reference (VALUE self, VALUE rb_id)
1212
1223
  switch (object->header.type) {
1213
1224
  case GRN_TABLE_HASH_KEY:
1214
1225
  case GRN_TABLE_PAT_KEY:
1226
+ case GRN_TABLE_DAT_KEY:
1215
1227
  case GRN_TABLE_NO_KEY:
1216
1228
  GRN_OBJ_INIT(&value, GRN_BULK, 0, GRN_ID_NIL);
1217
1229
  break;
@@ -1271,6 +1283,7 @@ rb_uvector_value_p (RbGrnObject *rb_grn_object, VALUE rb_value)
1271
1283
  break;
1272
1284
  case GRN_TABLE_HASH_KEY:
1273
1285
  case GRN_TABLE_PAT_KEY:
1286
+ case GRN_TABLE_DAT_KEY:
1274
1287
  case GRN_TABLE_NO_KEY:
1275
1288
  case GRN_TABLE_VIEW:
1276
1289
  first_element = rb_ary_entry(rb_value, 0);
@@ -1345,7 +1358,7 @@ rb_grn_object_set (VALUE self, VALUE rb_id, VALUE rb_value, int flags)
1345
1358
  * call-seq:
1346
1359
  * object[id] = value
1347
1360
  *
1348
- * _object_の_id_に対応する値を設定する。既存の値は上書きさ
1361
+ * _object_ _id_ に対応する値を設定する。既存の値は上書きさ
1349
1362
  * れる。
1350
1363
  */
1351
1364
  static VALUE
@@ -1360,7 +1373,7 @@ rb_grn_object_array_set (VALUE self, VALUE rb_id, VALUE rb_value)
1360
1373
  * call-seq:
1361
1374
  * object.append(id, value)
1362
1375
  *
1363
- * _object_の_id_に対応する値の最後に_value_を追加する。
1376
+ * _object_ _id_ に対応する値の最後に _value_ を追加する。
1364
1377
  */
1365
1378
  static VALUE
1366
1379
  rb_grn_object_append_value (VALUE self, VALUE rb_id, VALUE rb_value)
@@ -1374,7 +1387,7 @@ rb_grn_object_append_value (VALUE self, VALUE rb_id, VALUE rb_value)
1374
1387
  * call-seq:
1375
1388
  * object.prepend(id, value)
1376
1389
  *
1377
- * _object_の_id_に対応する値の最初に_value_を追加する。
1390
+ * _object_ _id_ に対応する値の最初に _value_ を追加する。
1378
1391
  */
1379
1392
  static VALUE
1380
1393
  rb_grn_object_prepend_value (VALUE self, VALUE rb_id, VALUE rb_value)
@@ -1388,7 +1401,7 @@ rb_grn_object_prepend_value (VALUE self, VALUE rb_id, VALUE rb_value)
1388
1401
  * call-seq:
1389
1402
  * object.remove
1390
1403
  *
1391
- * _object_をメモリから解放し、それが永続オブジェクトであっ
1404
+ * _object_ をメモリから解放し、それが永続オブジェクトであっ
1392
1405
  * た場合は、該当するファイル一式を削除する。
1393
1406
  */
1394
1407
  static VALUE