Method: Kronk::Diff::Output::Section#add

Defined in:
lib/kronk/diff/output.rb

#add(obj, meta = nil) ⇒ Object

Append a line or diff section to the section. If obj is a String, common section is assumed, if obj is an Array, a diff section is assumed.

Metadata is optional but must be an Array of 2 items if given.



41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/kronk/diff/output.rb', line 41

def add obj, meta=nil
  @lmeta, @rmeta = meta if meta && !@lmeta && !@rmeta
  @lmeta = ary_to_path @lmeta if Array === @rmeta
  @rmeta = ary_to_path @rmeta if Array === @rmeta

  if String === obj
    add_common obj

  elsif Array === obj
    left, right = obj
    left.each{|o| add_left o }
    right.each{|o| add_right o }
  end
end