Sha256: 389f019d7ab5f9d41ebd0df81a1e43bb8386e6452adca493d05c8386ee8b7978

Contents?: true

Size: 480 Bytes

Versions: 5

Compression:

Stored size: 480 Bytes

Contents

module CloudSesame
  module Query
    module DSL
      module AnyTermMethods
        DELIMITER = ' '.freeze

        def any_term(field, phrase, options = {})
          words = phrase&.split(DELIMITER)

          if words && words.length > 0
            or!(options) do
              words.map do |word|
                literal field, term(word)
              end
            end
          end

          _return != _scope ? _return : self
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
CloudSesame-1.0.1 lib/cloud_sesame/query/dsl/any_term_methods.rb
CloudSesame-1.0.0 lib/cloud_sesame/query/dsl/any_term_methods.rb
CloudSesame-0.9.4 lib/cloud_sesame/query/dsl/any_term_methods.rb
CloudSesame-0.9.3 lib/cloud_sesame/query/dsl/any_term_methods.rb
CloudSesame-0.9.2 lib/cloud_sesame/query/dsl/any_term_methods.rb