Method: Grit::Merge#initialize
- Defined in:
- lib/grit/merge.rb
#initialize(str) ⇒ Merge
Returns a new instance of Merge.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/grit/merge.rb', line 11 def initialize(str) status = STATUS_BOTH section = 1 @conflicts = 0 @text = {} lines = str.split("\n") lines.each do |line| if /^<<<<<<< (.*?)/.match(line) status = STATUS_OURS @conflicts += 1 section += 1 elsif line == '=======' status = STATUS_THEIRS elsif /^>>>>>>> (.*?)/.match(line) status = STATUS_BOTH section += 1 else @text[section] ||= {} @text[section][status] ||= [] @text[section][status] << line end end @text = @text.values @sections = @text.size end |