Sha256: 03f469a7c1e88a646072461cdb978ed6b46e5917d07dacb6e067699b375ece4a
Contents?: true
Size: 606 Bytes
Versions: 2
Compression:
Stored size: 606 Bytes
Contents
module CloudSesame module Query module Node class Query < Abstract attr_writer :query def query @query ||= context[:query] end def compile { query: join_by_or(query, fuzziness, sloppiness) } end private def fuzziness context[:fuzziness] ? context[:fuzziness].parse(query) : nil end def sloppiness context[:sloppiness] && query.include?(' ') ? "\"#{ query }\"~#{ context[:sloppiness] }" : nil end def join_by_or(*args) (args = args.flatten.compact).size > 1 ? "(#{ args.join('|') })" : args[0] end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
CloudSesame-0.2.1 | lib/cloud_sesame/query/node/query.rb |
CloudSesame-0.2.0 | lib/cloud_sesame/query/node/query.rb |