Class: Diffing::Diff
- Inherits:
-
Object
- Object
- Diffing::Diff
- Defined in:
- lib/diffing/diff.rb
Instance Attribute Summary collapse
-
#parts ⇒ Object
readonly
Returns the value of attribute parts.
Instance Method Summary collapse
- #as_ascii ⇒ Object (also: #to_s, #inspect)
- #as_html ⇒ Object
- #format(format) ⇒ Object
-
#initialize(from, to, pattern = nil) ⇒ Diff
constructor
A new instance of Diff.
Constructor Details
#initialize(from, to, pattern = nil) ⇒ Diff
Returns a new instance of Diff.
8 9 10 11 |
# File 'lib/diffing/diff.rb', line 8 def initialize( from, to, pattern = nil ) @pattern = pattern @parts = calcucate( split( from.to_s ), split( to.to_s ) ).flatten end |
Instance Attribute Details
#parts ⇒ Object (readonly)
Returns the value of attribute parts.
6 7 8 |
# File 'lib/diffing/diff.rb', line 6 def parts @parts end |
Instance Method Details
#as_ascii ⇒ Object Also known as: to_s, inspect
24 25 26 |
# File 'lib/diffing/diff.rb', line 24 def as_ascii format Format::Ascii end |
#as_html ⇒ Object
28 29 30 |
# File 'lib/diffing/diff.rb', line 28 def as_html format Format::Html end |
#format(format) ⇒ Object
13 14 15 16 17 18 19 20 21 22 |
# File 'lib/diffing/diff.rb', line 13 def format( format ) result = [] @parts.each do |part| result << format.source( part.source ) if part.source? result << format.insert( part.insert ) if part.insert? && !part.delete? result << format.delete( part.delete ) if part.delete? && !part.insert? result << format.replace( part.delete, part.insert ) if part.insert? && part.delete? end result.join end |