def data(filename)
      raw_data = raw_data_relative
      update_script_lines__
      unless @script_lines__.has_key?(filename) && 
             raw_data.has_key?(filename)
        return nil 
      end
      refine_coverage_info(@script_lines__[filename], raw_data[filename])
    end
def data(filename)
      raw_data = raw_data_relative
      update_script_lines__
      unless @script_lines__.has_key?(filename) && 
             raw_data.has_key?(filename)
        return nil 
      end
      refine_coverage_info(@script_lines__[filename], raw_data[filename])
    end
Return the available data about the requested file, or nil if none of its
 code was executed or it cannot be found.
 The return value is an array with three elements:
  lines, marked_info, count_info = analyzer.data("foo.rb")
 +lines+ is an array of strings representing the
 source code of <tt>foo.rb</tt>. +marked_info+ is an array holding false,
 true values indicating whether the corresponding lines of code were reported
 as executed by Ruby. +count_info+ is an array of integers representing how
 many times each line of code has been executed (more precisely, how many
 events where reported by Ruby --- a single line might correspond to several
 events, e.g. many method calls).

 The returned data corresponds to the aggregation of all the statistics
 collected in each #run_hooked or #install_hook/#remove_hook runs. You can
 reset the data at any time with #reset to start from scratch.