# File lib/mime/types.rb, line 318 318: def from_hash(hash) #:yields MIME::Type.new: 319: type = {} 320: hash.each_pair do |k, v| 321: type[k.to_s.tr('-A-Z', '_a-z').to_sym] = v 322: end 323: 324: m = MIME::Type.new(type[:content_type]) do |t| 325: t.extensions = type[:extensions] 326: t.encoding = type[:content_transfer_encoding] 327: t.system = type[:system] 328: t.obsolete = type[:obsolete] 329: t.docs = type[:docs] 330: t.url = type[:url] 331: t.registered = type[:registered] 332: end 333: 334: yield m if block_given? 335: m 336: end