mechanize:Mechanize::File.new
grep しても File.new や FileSaver.new がないと思ったが、色々見てみたら分かった
lib/mechanize/file.rb
class File ... def initialize(uri=nil, response=nil, body=nil, code=nil) ...
lib/mechanize/file_saver.rb
class FileSaver < File ... def initialize(uri=nil, response=nil, body=nil, code=nil) ...
lib/mechanize/pluggable_parsers.rb
class PluggableParser ... def parser(content_type) content_type.nil? ? default : @parsers[content_type] || default end def register_parser(content_type, klass) @parsers[content_type] = klass end ... def pdf=(klass) register_parser(CONTENT_TYPES[:pdf], klass) end
lib/mechanize/chain/response_body_parser.rb
class Mechanize class Chain class ResponseBodyParser ... params[:page] = @pluggable_parser.parser(content_type).new( uri, response, response_body, response.code ) { |parser|