# File lib/innate/node.rb, line 213
    def provide(format, param = {}, &block)
      if param.respond_to?(:to_hash)
        param = param.to_hash
        handler = block || View.get(param[:engine])
        content_type = param[:type]
      else
        handler = View.get(param)
      end

      raise(ArgumentError, "Need an engine or block") unless handler

      trait("#{format}_handler"      => handler, :provide_set => true)
      trait("#{format}_content_type" => content_type) if content_type
    end