# File lib/faster_csv.rb, line 874
    def self.build_csv_interface
      Object.const_set(:CSV, Class.new).class_eval do
        def self.foreach(path, rs = :auto, &block)  # :nodoc:
          FasterCSV.foreach(path, :row_sep => rs, &block)
        end

        def self.generate_line(row, fs = ",", rs = "")  # :nodoc:
          FasterCSV.generate_line(row, :col_sep => fs, :row_sep => rs)
        end

        def self.open(path, mode, fs = ",", rs = :auto, &block)  # :nodoc:
          if block and mode.include? "r"
            FasterCSV.open(path, mode, :col_sep => fs, :row_sep => rs) do |csv|
              csv.each(&block)
            end
          else
            FasterCSV.open(path, mode, :col_sep => fs, :row_sep => rs, &block)
          end
        end

        def self.parse(str_or_readable, fs = ",", rs = :auto, &block)  # :nodoc:
          FasterCSV.parse(str_or_readable, :col_sep => fs, :row_sep => rs, &block)
        end

        def self.parse_line(src, fs = ",", rs = :auto)  # :nodoc:
          FasterCSV.parse_line(src, :col_sep => fs, :row_sep => rs)
        end

        def self.readlines(path, rs = :auto)  # :nodoc:
          FasterCSV.readlines(path, :row_sep => rs)
        end
      end
    end