Module: AdequateJson::Resolver

Included in:
Base, Hash, Serializer
Defined in:
lib/adequate_json/resolver.rb

Defined Under Namespace

Classes: Cache

Instance Method Summary collapse

Instance Method Details

#choose_serializer(model, **args) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/adequate_json/resolver.rb', line 7

def choose_serializer(model, **args)
  if model.respond_to?(:to_hash)
    AdequateJson::Hash.new(model.to_hash, @json, **args)
  elsif model.respond_to?(:each)
    AdequateJson::Collection.new(model, @json, **args)
  else
    model_serializer(model, **args)
  end
end