# File lib/grape_entity/delegator.rb, line 10
      def self.new(object)
        if object.is_a?(Hash)
          HashObject.new object
        elsif defined?(OpenStruct) && object.is_a?(OpenStruct)
          OpenStructObject.new object
        elsif object.respond_to? :fetch, true
          FetchableObject.new object
        else
          PlainObject.new object
        end
      end