Module: SerializationScopes::Resolver
Instance Method Summary collapse
Instance Method Details
#scope(key, defaults, settings) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/serialization_scopes/resolver.rb', line 5 def scope(key, defaults, settings) defaults = Array.wrap(defaults).map(&:to_s) settings = Array.wrap(settings).map(&:to_s) case key when :except (settings + defaults).uniq when :only result = settings & defaults result.empty? ? defaults : result when :methods, :include settings & defaults else settings end end |