module Grape::Entity::Delegator

Public Class Methods

new(object) click to toggle source
# File lib/grape_entity/delegator.rb, line 11
def self.new(object)
  delegator_klass =
    if object.is_a?(Hash) then HashObject
    elsif defined?(OpenStruct) && object.is_a?(OpenStruct) then OpenStructObject
    elsif object.respond_to?(:fetch, true) then FetchableObject
    else PlainObject
    end

  delegator_klass.new(object)
end