class RDoc::Parser
def self.for(top_level, file_name, body, options, stats)
def self.for(top_level, file_name, body, options, stats) return if binary? file_name # If no extension, look for shebang if file_name !~ /\.\w+$/ && body =~ %r{\A#!(.+)} then shebang = $1 case shebang when %r{env\s+ruby}, %r{/ruby} file_name = "dummy.rb" end end parser = can_parse file_name return unless parser parser.new top_level, file_name, body, options, stats end