couchbase 3.4.1-arm64-darwin-20 → 3.4.3-arm64-darwin-20
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/lib/couchbase/authenticator.rb +0 -1
- data/lib/couchbase/cluster.rb +13 -13
- data/lib/couchbase/cluster_registry.rb +7 -2
- data/lib/couchbase/config_profiles.rb +1 -1
- data/lib/couchbase/configuration.rb +3 -4
- data/lib/couchbase/json_transcoder.rb +12 -5
- data/lib/couchbase/libcouchbase.bundle +0 -0
- data/lib/couchbase/management/collection_query_index_manager.rb +54 -15
- data/lib/couchbase/management/query_index_manager.rb +70 -5
- data/lib/couchbase/options.rb +85 -2
- data/lib/couchbase/raw_binary_transcoder.rb +37 -0
- data/lib/couchbase/raw_json_transcoder.rb +38 -0
- data/lib/couchbase/raw_string_transcoder.rb +40 -0
- data/lib/couchbase/search_options.rb +163 -240
- data/lib/couchbase/transcoder_flags.rb +62 -0
- data/lib/couchbase/version.rb +1 -1
- metadata +10 -6
@@ -25,6 +25,16 @@ module Couchbase
|
|
25
25
|
MatchQuery.new(match, &block)
|
26
26
|
end
|
27
27
|
|
28
|
+
# @return [Hash<Symbol, #to_json>]
|
29
|
+
def to_h
|
30
|
+
{}
|
31
|
+
end
|
32
|
+
|
33
|
+
# @return [String]
|
34
|
+
def to_json(*args)
|
35
|
+
to_h.to_json(*args)
|
36
|
+
end
|
37
|
+
|
28
38
|
# A match query analyzes the input text and uses that analyzed text to query the index.
|
29
39
|
class MatchQuery < SearchQuery
|
30
40
|
# @return [Float]
|
@@ -53,17 +63,16 @@ module Couchbase
|
|
53
63
|
yield self if block_given?
|
54
64
|
end
|
55
65
|
|
56
|
-
# @return [
|
57
|
-
def
|
58
|
-
data = {
|
59
|
-
data[
|
60
|
-
data[
|
61
|
-
data[
|
62
|
-
if
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
data.to_json(*args)
|
66
|
+
# @return [Hash<Symbol, #to_json>]
|
67
|
+
def to_h
|
68
|
+
data = {:match => @match}
|
69
|
+
data[:boost] = boost if boost
|
70
|
+
data[:field] = field if field
|
71
|
+
data[:analyzer] = analyzer if analyzer
|
72
|
+
data[:operator] = operator if operator
|
73
|
+
data[:fuzziness] = fuzziness if fuzziness
|
74
|
+
data[:prefix_length] = prefix_length if prefix_length
|
75
|
+
data
|
67
76
|
end
|
68
77
|
end
|
69
78
|
|
@@ -82,9 +91,6 @@ module Couchbase
|
|
82
91
|
# @return [Float]
|
83
92
|
attr_accessor :boost
|
84
93
|
|
85
|
-
# @return [nil, :or, :and]
|
86
|
-
attr_accessor :operator
|
87
|
-
|
88
94
|
# @return [String]
|
89
95
|
attr_accessor :field
|
90
96
|
|
@@ -100,14 +106,14 @@ module Couchbase
|
|
100
106
|
yield self if block_given?
|
101
107
|
end
|
102
108
|
|
103
|
-
# @return [
|
104
|
-
def
|
105
|
-
data = {
|
106
|
-
data[
|
107
|
-
data[
|
108
|
-
data[
|
109
|
-
data[
|
110
|
-
data
|
109
|
+
# @return [Hash<Symbol, #to_json>]
|
110
|
+
def to_h
|
111
|
+
data = {:match_phrase => @match_phrase}
|
112
|
+
data[:boost] = boost if boost
|
113
|
+
data[:operator] = operator.to_s if operator
|
114
|
+
data[:field] = field if field
|
115
|
+
data[:analyzer] = analyzer if analyzer
|
116
|
+
data
|
111
117
|
end
|
112
118
|
end
|
113
119
|
|
@@ -126,9 +132,6 @@ module Couchbase
|
|
126
132
|
# @return [Float]
|
127
133
|
attr_accessor :boost
|
128
134
|
|
129
|
-
# @return [nil, :or, :and]
|
130
|
-
attr_accessor :operator
|
131
|
-
|
132
135
|
# @return [String]
|
133
136
|
attr_accessor :field
|
134
137
|
|
@@ -141,13 +144,12 @@ module Couchbase
|
|
141
144
|
yield self if block_given?
|
142
145
|
end
|
143
146
|
|
144
|
-
# @return [
|
145
|
-
def
|
146
|
-
data = {
|
147
|
-
data[
|
148
|
-
data[
|
149
|
-
data
|
150
|
-
data.to_json(*args)
|
147
|
+
# @return [Hash<Symbol, #to_json>]
|
148
|
+
def to_h
|
149
|
+
data = {:regexp => @regexp}
|
150
|
+
data[:boost] = boost if boost
|
151
|
+
data[:field] = field if field
|
152
|
+
data
|
151
153
|
end
|
152
154
|
end
|
153
155
|
|
@@ -166,9 +168,6 @@ module Couchbase
|
|
166
168
|
# @return [Float]
|
167
169
|
attr_accessor :boost
|
168
170
|
|
169
|
-
# @return [nil, :or, :and]
|
170
|
-
attr_accessor :operator
|
171
|
-
|
172
171
|
# @param [String] query_string
|
173
172
|
#
|
174
173
|
# @yieldparam [QueryStringQuery] self
|
@@ -178,12 +177,11 @@ module Couchbase
|
|
178
177
|
yield self if block_given?
|
179
178
|
end
|
180
179
|
|
181
|
-
# @return [
|
182
|
-
def
|
183
|
-
data = {
|
184
|
-
data[
|
185
|
-
data
|
186
|
-
data.to_json(*args)
|
180
|
+
# @return [Hash<Symbol, #to_json>]
|
181
|
+
def to_h
|
182
|
+
data = {:query => @query_string}
|
183
|
+
data[:boost] = boost if boost
|
184
|
+
data
|
187
185
|
end
|
188
186
|
end
|
189
187
|
|
@@ -202,9 +200,6 @@ module Couchbase
|
|
202
200
|
# @return [Float]
|
203
201
|
attr_accessor :boost
|
204
202
|
|
205
|
-
# @return [nil, :or, :and]
|
206
|
-
attr_accessor :operator
|
207
|
-
|
208
203
|
# @return [String]
|
209
204
|
attr_accessor :field
|
210
205
|
|
@@ -217,13 +212,12 @@ module Couchbase
|
|
217
212
|
yield self if block_given?
|
218
213
|
end
|
219
214
|
|
220
|
-
# @return [
|
221
|
-
def
|
222
|
-
data = {
|
223
|
-
data[
|
224
|
-
data[
|
225
|
-
data
|
226
|
-
data.to_json(*args)
|
215
|
+
# @return [Hash<Symbol, #to_json>]
|
216
|
+
def to_h
|
217
|
+
data = {:wildcard => @wildcard}
|
218
|
+
data[:boost] = boost if boost
|
219
|
+
data[:field] = field if field
|
220
|
+
data
|
227
221
|
end
|
228
222
|
end
|
229
223
|
|
@@ -242,12 +236,6 @@ module Couchbase
|
|
242
236
|
# @return [Float]
|
243
237
|
attr_accessor :boost
|
244
238
|
|
245
|
-
# @return [nil, :or, :and]
|
246
|
-
attr_accessor :operator
|
247
|
-
|
248
|
-
# @return [String]
|
249
|
-
attr_accessor :field
|
250
|
-
|
251
239
|
# @param [String...] doc_ids
|
252
240
|
#
|
253
241
|
# @yieldparam [DocIdQuery] self
|
@@ -257,13 +245,11 @@ module Couchbase
|
|
257
245
|
yield self if block_given?
|
258
246
|
end
|
259
247
|
|
260
|
-
# @return [
|
261
|
-
def
|
262
|
-
data = {
|
263
|
-
data[
|
264
|
-
data
|
265
|
-
data["field"] = field if field
|
266
|
-
data.to_json(*args)
|
248
|
+
# @return [Hash<Symbol, #to_json>]
|
249
|
+
def to_h
|
250
|
+
data = {:ids => @doc_ids.flatten.uniq}
|
251
|
+
data[:boost] = boost if boost
|
252
|
+
data
|
267
253
|
end
|
268
254
|
end
|
269
255
|
|
@@ -282,9 +268,6 @@ module Couchbase
|
|
282
268
|
# @return [Float]
|
283
269
|
attr_accessor :boost
|
284
270
|
|
285
|
-
# @return [nil, :or, :and]
|
286
|
-
attr_accessor :operator
|
287
|
-
|
288
271
|
# @return [String]
|
289
272
|
attr_accessor :field
|
290
273
|
|
@@ -297,13 +280,12 @@ module Couchbase
|
|
297
280
|
yield self if block_given?
|
298
281
|
end
|
299
282
|
|
300
|
-
# @return [
|
301
|
-
def
|
302
|
-
data = {
|
303
|
-
data[
|
304
|
-
data[
|
305
|
-
data
|
306
|
-
data.to_json(*args)
|
283
|
+
# @return [Hash<Symbol, #to_json>]
|
284
|
+
def to_h
|
285
|
+
data = {:bool => @value}
|
286
|
+
data[:boost] = boost if boost
|
287
|
+
data[:field] = field if field
|
288
|
+
data
|
307
289
|
end
|
308
290
|
end
|
309
291
|
|
@@ -321,9 +303,6 @@ module Couchbase
|
|
321
303
|
# @return [Float]
|
322
304
|
attr_accessor :boost
|
323
305
|
|
324
|
-
# @return [nil, :or, :and]
|
325
|
-
attr_accessor :operator
|
326
|
-
|
327
306
|
# @return [String]
|
328
307
|
attr_accessor :field
|
329
308
|
|
@@ -365,32 +344,31 @@ module Couchbase
|
|
365
344
|
|
366
345
|
DATE_FORMAT_RFC3339 = "%Y-%m-%dT%H:%M:%S%:z".freeze
|
367
346
|
|
368
|
-
# @return [
|
369
|
-
def
|
347
|
+
# @return [Hash<Symbol, #to_json>]
|
348
|
+
def to_h
|
370
349
|
raise ArgumentError, "either start_time or end_time must be set for DateRangeQuery" if @start_time.nil? && @end_time.nil?
|
371
350
|
|
372
351
|
data = {}
|
373
|
-
data[
|
374
|
-
data[
|
375
|
-
data[
|
376
|
-
data["datetime_parser"] = date_time_parser if date_time_parser
|
352
|
+
data[:boost] = boost if boost
|
353
|
+
data[:field] = field if field
|
354
|
+
data[:datetime_parser] = date_time_parser if date_time_parser
|
377
355
|
if @start_time
|
378
|
-
data[
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
data[
|
356
|
+
data[:start] = if @start_time.respond_to?(:strftime)
|
357
|
+
@start_time.strftime(DATE_FORMAT_RFC3339)
|
358
|
+
else
|
359
|
+
@start_time
|
360
|
+
end
|
361
|
+
data[:inclusive_start] = @start_inclusive unless @start_inclusive.nil?
|
384
362
|
end
|
385
363
|
if @end_time
|
386
|
-
data[
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
data[
|
364
|
+
data[:end] = if @end_time.respond_to?(:strftime)
|
365
|
+
@end_time.strftime(DATE_FORMAT_RFC3339)
|
366
|
+
else
|
367
|
+
@end_time
|
368
|
+
end
|
369
|
+
data[:inclusive_end] = @end_inclusive unless @end_inclusive.nil?
|
392
370
|
end
|
393
|
-
data
|
371
|
+
data
|
394
372
|
end
|
395
373
|
end
|
396
374
|
|
@@ -408,9 +386,6 @@ module Couchbase
|
|
408
386
|
# @return [Float]
|
409
387
|
attr_accessor :boost
|
410
388
|
|
411
|
-
# @return [nil, :or, :and]
|
412
|
-
attr_accessor :operator
|
413
|
-
|
414
389
|
# @return [String]
|
415
390
|
attr_accessor :field
|
416
391
|
|
@@ -446,23 +421,22 @@ module Couchbase
|
|
446
421
|
yield self if block_given?
|
447
422
|
end
|
448
423
|
|
449
|
-
# @return [
|
450
|
-
def
|
424
|
+
# @return [Hash<Symbol, #to_json>]
|
425
|
+
def to_h
|
451
426
|
raise ArgumentError, "either min or max must be set for NumericRangeQuery" if @min.nil? && @max.nil?
|
452
427
|
|
453
428
|
data = {}
|
454
|
-
data[
|
455
|
-
data[
|
456
|
-
data["field"] = field if field
|
429
|
+
data[:boost] = boost if boost
|
430
|
+
data[:field] = field if field
|
457
431
|
if @min
|
458
|
-
data[
|
459
|
-
data[
|
432
|
+
data[:min] = @min
|
433
|
+
data[:inclusive_min] = @min_inclusive unless @min_inclusive.nil?
|
460
434
|
end
|
461
435
|
if @max
|
462
|
-
data[
|
463
|
-
data[
|
436
|
+
data[:max] = @max
|
437
|
+
data[:inclusive_max] = @max_inclusive unless @max_inclusive.nil?
|
464
438
|
end
|
465
|
-
data
|
439
|
+
data
|
466
440
|
end
|
467
441
|
end
|
468
442
|
|
@@ -480,9 +454,6 @@ module Couchbase
|
|
480
454
|
# @return [Float]
|
481
455
|
attr_accessor :boost
|
482
456
|
|
483
|
-
# @return [nil, :or, :and]
|
484
|
-
attr_accessor :operator
|
485
|
-
|
486
457
|
# @return [String]
|
487
458
|
attr_accessor :field
|
488
459
|
|
@@ -518,23 +489,22 @@ module Couchbase
|
|
518
489
|
yield self if block_given?
|
519
490
|
end
|
520
491
|
|
521
|
-
# @return [
|
522
|
-
def
|
492
|
+
# @return [Hash<Symbol, #to_json>]
|
493
|
+
def to_h
|
523
494
|
raise ArgumentError, "either min or max must be set for TermRangeQuery" if @min.nil? && @max.nil?
|
524
495
|
|
525
496
|
data = {}
|
526
|
-
data[
|
527
|
-
data[
|
528
|
-
data["field"] = field if field
|
497
|
+
data[:boost] = boost if boost
|
498
|
+
data[:field] = field if field
|
529
499
|
if @min
|
530
|
-
data[
|
531
|
-
data[
|
500
|
+
data[:min] = @min
|
501
|
+
data[:inclusive_min] = @min_inclusive unless @min_inclusive.nil?
|
532
502
|
end
|
533
503
|
if @max
|
534
|
-
data[
|
535
|
-
data[
|
504
|
+
data[:max] = @max
|
505
|
+
data[:inclusive_max] = @max_inclusive unless @max_inclusive.nil?
|
536
506
|
end
|
537
|
-
data
|
507
|
+
data
|
538
508
|
end
|
539
509
|
end
|
540
510
|
|
@@ -556,9 +526,6 @@ module Couchbase
|
|
556
526
|
# @return [Float]
|
557
527
|
attr_accessor :boost
|
558
528
|
|
559
|
-
# @return [nil, :or, :and]
|
560
|
-
attr_accessor :operator
|
561
|
-
|
562
529
|
# @return [String]
|
563
530
|
attr_accessor :field
|
564
531
|
|
@@ -574,16 +541,15 @@ module Couchbase
|
|
574
541
|
yield self if block_given?
|
575
542
|
end
|
576
543
|
|
577
|
-
# @return [
|
578
|
-
def
|
544
|
+
# @return [Hash<Symbol, #to_json>]
|
545
|
+
def to_h
|
579
546
|
data = {
|
580
|
-
|
581
|
-
|
547
|
+
:location => [@longitude, @latitude],
|
548
|
+
:distance => @distance,
|
582
549
|
}
|
583
|
-
data[
|
584
|
-
data[
|
585
|
-
data
|
586
|
-
data.to_json(*args)
|
550
|
+
data[:boost] = boost if boost
|
551
|
+
data[:field] = field if field
|
552
|
+
data
|
587
553
|
end
|
588
554
|
end
|
589
555
|
|
@@ -606,9 +572,6 @@ module Couchbase
|
|
606
572
|
# @return [Float]
|
607
573
|
attr_accessor :boost
|
608
574
|
|
609
|
-
# @return [nil, :or, :and]
|
610
|
-
attr_accessor :operator
|
611
|
-
|
612
575
|
# @return [String]
|
613
576
|
attr_accessor :field
|
614
577
|
|
@@ -627,16 +590,15 @@ module Couchbase
|
|
627
590
|
yield self if block_given?
|
628
591
|
end
|
629
592
|
|
630
|
-
# @return [
|
631
|
-
def
|
593
|
+
# @return [Hash<Symbol, #to_json>]
|
594
|
+
def to_h
|
632
595
|
data = {
|
633
|
-
|
634
|
-
|
596
|
+
:top_left => [@top_left_longitude, @top_left_latitude],
|
597
|
+
:bottom_right => [@bottom_right_longitude, @bottom_right_latitude],
|
635
598
|
}
|
636
|
-
data[
|
637
|
-
data[
|
638
|
-
data
|
639
|
-
data.to_json(*args)
|
599
|
+
data[:boost] = boost if boost
|
600
|
+
data[:field] = field if field
|
601
|
+
data
|
640
602
|
end
|
641
603
|
end
|
642
604
|
|
@@ -675,9 +637,6 @@ module Couchbase
|
|
675
637
|
# @return [Float]
|
676
638
|
attr_accessor :boost
|
677
639
|
|
678
|
-
# @return [nil, :or, :and]
|
679
|
-
attr_accessor :operator
|
680
|
-
|
681
640
|
# @return [String]
|
682
641
|
attr_accessor :field
|
683
642
|
|
@@ -690,15 +649,14 @@ module Couchbase
|
|
690
649
|
yield self if block_given?
|
691
650
|
end
|
692
651
|
|
693
|
-
# @return [
|
694
|
-
def
|
652
|
+
# @return [Hash<Symbol, #to_json>]
|
653
|
+
def to_h
|
695
654
|
data = {
|
696
|
-
|
655
|
+
:polygon_points => @coordinates.map { |coord| [coord.longitude, coord.latitude] },
|
697
656
|
}
|
698
|
-
data[
|
699
|
-
data[
|
700
|
-
data
|
701
|
-
data.to_json(*args)
|
657
|
+
data[:boost] = boost if boost
|
658
|
+
data[:field] = field if field
|
659
|
+
data
|
702
660
|
end
|
703
661
|
end
|
704
662
|
|
@@ -716,9 +674,6 @@ module Couchbase
|
|
716
674
|
# @return [Float]
|
717
675
|
attr_accessor :boost
|
718
676
|
|
719
|
-
# @return [nil, :or, :and]
|
720
|
-
attr_accessor :operator
|
721
|
-
|
722
677
|
# @yieldparam [ConjunctionQuery] self
|
723
678
|
#
|
724
679
|
# @param [*SearchQuery] queries
|
@@ -737,22 +692,21 @@ module Couchbase
|
|
737
692
|
@queries.empty?
|
738
693
|
end
|
739
694
|
|
740
|
-
# @return [
|
741
|
-
def
|
695
|
+
# @return [Hash<Symbol, #to_json>]
|
696
|
+
def to_h
|
742
697
|
raise ArgumentError, "compound conjunction query must have sub-queries" if @queries.nil? || @queries.empty?
|
743
698
|
|
744
|
-
data = {
|
745
|
-
data[
|
746
|
-
data
|
747
|
-
data.to_json(*args)
|
699
|
+
data = {:conjuncts => @queries.uniq.map(&:to_h)}
|
700
|
+
data[:boost] = boost if boost
|
701
|
+
data
|
748
702
|
end
|
749
703
|
end
|
750
704
|
|
751
705
|
# Prepare {ConjunctionQuery} body
|
752
706
|
#
|
753
|
-
# @yieldparam [
|
707
|
+
# @yieldparam [DisjunctionQuery] query
|
754
708
|
#
|
755
|
-
# @return [
|
709
|
+
# @return [DisjunctionQuery]
|
756
710
|
def self.disjuncts(...)
|
757
711
|
DisjunctionQuery.new(...)
|
758
712
|
end
|
@@ -762,9 +716,6 @@ module Couchbase
|
|
762
716
|
# @return [Float]
|
763
717
|
attr_accessor :boost
|
764
718
|
|
765
|
-
# @return [nil, :or, :and]
|
766
|
-
attr_accessor :operator
|
767
|
-
|
768
719
|
# @return [Integer]
|
769
720
|
attr_accessor :min
|
770
721
|
|
@@ -786,19 +737,18 @@ module Couchbase
|
|
786
737
|
@queries.empty?
|
787
738
|
end
|
788
739
|
|
789
|
-
# @return [
|
790
|
-
def
|
740
|
+
# @return [Hash<Symbol, #to_json>]
|
741
|
+
def to_h
|
791
742
|
raise ArgumentError, "compound disjunction query must have sub-queries" if @queries.nil? || @queries.empty?
|
792
743
|
|
793
|
-
data = {
|
744
|
+
data = {:disjuncts => @queries.uniq.map(&:to_h)}
|
794
745
|
if min
|
795
746
|
raise ArgumentError, "disjunction query has fewer sub-queries than configured minimum" if @queries.size < min
|
796
747
|
|
797
|
-
data[
|
748
|
+
data[:min] = min
|
798
749
|
end
|
799
|
-
data[
|
800
|
-
data
|
801
|
-
data.to_json(*args)
|
750
|
+
data[:boost] = boost if boost
|
751
|
+
data
|
802
752
|
end
|
803
753
|
end
|
804
754
|
|
@@ -816,9 +766,6 @@ module Couchbase
|
|
816
766
|
# @return [Float]
|
817
767
|
attr_accessor :boost
|
818
768
|
|
819
|
-
# @return [nil, :or, :and]
|
820
|
-
attr_accessor :operator
|
821
|
-
|
822
769
|
# @yieldparam [BooleanQuery] self
|
823
770
|
def initialize
|
824
771
|
super()
|
@@ -852,19 +799,18 @@ module Couchbase
|
|
852
799
|
self
|
853
800
|
end
|
854
801
|
|
855
|
-
# @return [
|
856
|
-
def
|
802
|
+
# @return [Hash<Symbol, #to_json>]
|
803
|
+
def to_h
|
857
804
|
if @must.empty? && @must_not.empty? && @should.empty?
|
858
805
|
raise ArgumentError, "BooleanQuery must have at least one non-empty sub-query"
|
859
806
|
end
|
860
807
|
|
861
808
|
data = {}
|
862
|
-
data[
|
863
|
-
data[
|
864
|
-
data[
|
865
|
-
data[
|
866
|
-
data
|
867
|
-
data.to_json(*args)
|
809
|
+
data[:must] = @must.to_h unless @must.empty?
|
810
|
+
data[:must_not] = @must_not.to_h unless @must_not.empty?
|
811
|
+
data[:should] = @should.to_h unless @should.empty?
|
812
|
+
data[:boost] = boost if boost
|
813
|
+
data
|
868
814
|
end
|
869
815
|
end
|
870
816
|
|
@@ -884,9 +830,6 @@ module Couchbase
|
|
884
830
|
# @return [Float]
|
885
831
|
attr_accessor :boost
|
886
832
|
|
887
|
-
# @return [nil, :or, :and]
|
888
|
-
attr_accessor :operator
|
889
|
-
|
890
833
|
# @return [String]
|
891
834
|
attr_accessor :field
|
892
835
|
|
@@ -905,18 +848,16 @@ module Couchbase
|
|
905
848
|
yield self if block_given?
|
906
849
|
end
|
907
850
|
|
908
|
-
# @return [
|
909
|
-
def
|
910
|
-
data = {
|
911
|
-
data[
|
912
|
-
data[
|
913
|
-
data["operator"] = operator.to_s if operator
|
914
|
-
data["field"] = field if field
|
851
|
+
# @return [Hash<Symbol, #to_json>]
|
852
|
+
def to_h
|
853
|
+
data = {:term => @term}
|
854
|
+
data[:boost] = boost if boost
|
855
|
+
data[:field] = field if field
|
915
856
|
if fuzziness
|
916
|
-
data[
|
917
|
-
data[
|
857
|
+
data[:fuzziness] = fuzziness
|
858
|
+
data[:prefix_length] = prefix_length if prefix_length
|
918
859
|
end
|
919
|
-
data
|
860
|
+
data
|
920
861
|
end
|
921
862
|
end
|
922
863
|
|
@@ -950,13 +891,12 @@ module Couchbase
|
|
950
891
|
yield self if block_given?
|
951
892
|
end
|
952
893
|
|
953
|
-
# @return [
|
954
|
-
def
|
955
|
-
data = {
|
956
|
-
data[
|
957
|
-
data[
|
958
|
-
data
|
959
|
-
data.to_json(*args)
|
894
|
+
# @return [Hash<Symbol, #to_json>]
|
895
|
+
def to_h
|
896
|
+
data = {:prefix => @prefix}
|
897
|
+
data[:boost] = boost if boost
|
898
|
+
data[:field] = field if field
|
899
|
+
data
|
960
900
|
end
|
961
901
|
end
|
962
902
|
|
@@ -975,9 +915,6 @@ module Couchbase
|
|
975
915
|
# @return [Float]
|
976
916
|
attr_accessor :boost
|
977
917
|
|
978
|
-
# @return [nil, :or, :and]
|
979
|
-
attr_accessor :operator
|
980
|
-
|
981
918
|
# @return [String]
|
982
919
|
attr_accessor :field
|
983
920
|
|
@@ -990,13 +927,12 @@ module Couchbase
|
|
990
927
|
yield self if block_given?
|
991
928
|
end
|
992
929
|
|
993
|
-
# @return [
|
994
|
-
def
|
995
|
-
data = {
|
996
|
-
data[
|
997
|
-
data[
|
998
|
-
data
|
999
|
-
data.to_json(*args)
|
930
|
+
# @return [Hash<Symbol, #to_json>]
|
931
|
+
def to_h
|
932
|
+
data = {:terms => @terms.flatten.uniq}
|
933
|
+
data[:boost] = boost if boost
|
934
|
+
data[:field] = field if field
|
935
|
+
data
|
1000
936
|
end
|
1001
937
|
end
|
1002
938
|
|
@@ -1011,24 +947,15 @@ module Couchbase
|
|
1011
947
|
|
1012
948
|
# A query that matches all indexed documents.
|
1013
949
|
class MatchAllQuery < SearchQuery
|
1014
|
-
# @return [Float]
|
1015
|
-
attr_accessor :boost
|
1016
|
-
|
1017
|
-
# @return [nil, :or, :and]
|
1018
|
-
attr_accessor :operator
|
1019
|
-
|
1020
950
|
# @yieldparam [MatchAllQuery] self
|
1021
951
|
def initialize
|
1022
952
|
super()
|
1023
953
|
yield self if block_given?
|
1024
954
|
end
|
1025
955
|
|
1026
|
-
# @return [
|
1027
|
-
def
|
1028
|
-
|
1029
|
-
data["boost"] = boost if boost
|
1030
|
-
data["operator"] = operator.to_s if operator
|
1031
|
-
data.to_json(*args)
|
956
|
+
# @return [Hash<Symbol, #to_json>]
|
957
|
+
def to_h
|
958
|
+
{:match_all => nil}
|
1032
959
|
end
|
1033
960
|
end
|
1034
961
|
|
@@ -1043,24 +970,15 @@ module Couchbase
|
|
1043
970
|
|
1044
971
|
# A query that matches nothing.
|
1045
972
|
class MatchNoneQuery < SearchQuery
|
1046
|
-
# @return [Float]
|
1047
|
-
attr_accessor :boost
|
1048
|
-
|
1049
|
-
# @return [nil, :or, :and]
|
1050
|
-
attr_accessor :operator
|
1051
|
-
|
1052
973
|
# @yieldparam [MatchNoneQuery] self
|
1053
974
|
def initialize
|
1054
975
|
super()
|
1055
976
|
yield self if block_given?
|
1056
977
|
end
|
1057
978
|
|
1058
|
-
# @return [
|
1059
|
-
def
|
1060
|
-
|
1061
|
-
data["boost"] = boost if boost
|
1062
|
-
data["operator"] = operator.to_s if operator
|
1063
|
-
data.to_json(*args)
|
979
|
+
# @return [Hash<Symbol, #to_json>]
|
980
|
+
def to_h
|
981
|
+
{:match_none => nil}
|
1064
982
|
end
|
1065
983
|
end
|
1066
984
|
end
|
@@ -1307,6 +1225,11 @@ module Couchbase
|
|
1307
1225
|
|
1308
1226
|
# @return [Array<Integer>] the positions of the term within any elements.
|
1309
1227
|
attr_accessor :array_positions
|
1228
|
+
|
1229
|
+
# @yieldparam [SearchRowLocation] self
|
1230
|
+
def initialize
|
1231
|
+
yield self if block_given?
|
1232
|
+
end
|
1310
1233
|
end
|
1311
1234
|
|
1312
1235
|
class SearchRowLocations
|