Sha256: efb39c3dae3724583805ed98e9adc420354d2f6aaa2dad68632aa020370565f8
Contents?: true
Size: 641 Bytes
Versions: 1
Compression:
Stored size: 641 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] && query && !query.empty? ? context[:fuzziness].parse(query) : nil end def sloppiness context[:sloppiness] && query && 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
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
CloudSesame-0.2.2 | lib/cloud_sesame/query/node/query.rb |