Sha256: 69a1bc9090f15f9537895c94454fe624f3ac644cb92669892486cd11e2e5f040

Contents?: true

Size: 866 Bytes

Versions: 10

Compression:

Stored size: 866 Bytes

Contents

module RSCM
  # Represents the full history of a single file
  class HistoricFile
    def initialize(relative_path, scm)
      @relative_path, @scm = relative_path, scm
    end
    
    # Returns an Array of RevisionFile - from Time.epoch until Time.infinity (now)
    def revision_files
      @scm.revisions(Time.epoch, Time.infinity, @relative_path).collect do |revision|
        if revision.files.length != 1
          files_s = revision.files.collect{|f| f.to_s}.join("\n")
          raise "The file-specific revision didn't have exactly one file, but #{revision.files.length}:\n#{files_s}"
        end
        if(revision.files[0].path != @relative_path)
          raise "The file-specific revision didn't have expected path #{@relative_path}, but #{revision.files[0].path}"
        end
        revision.files[0]
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
rscm-0.3.5 lib/rscm/historic_file.rb
rscm-0.3.14 lib/rscm/historic_file.rb
rscm-0.3.11 lib/rscm/historic_file.rb
rscm-0.3.13 lib/rscm/historic_file.rb
rscm-0.3.10 lib/rscm/historic_file.rb
rscm-0.3.12 lib/rscm/historic_file.rb
rscm-0.3.7 lib/rscm/historic_file.rb
rscm-0.3.6 lib/rscm/historic_file.rb
rscm-0.3.9 lib/rscm/historic_file.rb
rscm-0.3.8 lib/rscm/historic_file.rb