Sha256: cb6113de995d800d1d792fc3c64667b984a8f80086d4849fb6c6aa1ea9e6df40
Contents?: true
Size: 676 Bytes
Versions: 1
Compression:
Stored size: 676 Bytes
Contents
module Plucky module Normalizers class FieldsValue # Public: Given a value returns it normalized for Mongo's fields option def call(value) return nil if value.respond_to?(:empty?) && value.empty? case value when Array if value.size == 1 && value.first.is_a?(Hash) value.first else value.flatten.inject({}) {|acc, field| acc.merge(field => 1)} end when Symbol {value => 1} when String value.split(',').inject({}) { |acc, v| acc.merge(v.strip => 1) } else value end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
plucky-0.8.0 | lib/plucky/normalizers/fields_value.rb |