Class: Diff::Combined
- Inherits:
-
Object
- Object
- Diff::Combined
- Includes:
- Enumerable
- Defined in:
- lib/diff/combined.rb
Defined Under Namespace
Classes: Row
Instance Method Summary collapse
- #each ⇒ Object
-
#initialize(diffs) ⇒ Combined
constructor
A new instance of Combined.
Constructor Details
#initialize(diffs) ⇒ Combined
Returns a new instance of Combined.
30 31 32 |
# File 'lib/diff/combined.rb', line 30 def initialize(diffs) @diffs = diffs end |
Instance Method Details
#each ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/diff/combined.rb', line 34 def each @offsets = @diffs.map { 0 } loop do @diffs.each_with_index do |diff, i| consume_deletions(diff, i) { |row| yield row } end return if complete? edits = offset_diffs.map { |offset, diff| diff[offset] } @offsets.map! { |offset| offset + 1 } yield Row.new(edits) end end |