Class: Ast::Merge::Text::MergeResult
- Inherits:
-
MergeResultBase
- Object
- MergeResultBase
- Ast::Merge::Text::MergeResult
- Defined in:
- lib/ast/merge/text/merge_result.rb
Overview
Merge result for text-based AST merging. Tracks merged lines and decisions made during the merge process.
Constant Summary
Constants inherited from MergeResultBase
MergeResultBase::DECISION_ADDED, MergeResultBase::DECISION_APPENDED, MergeResultBase::DECISION_FREEZE_BLOCK, MergeResultBase::DECISION_KEPT_DEST, MergeResultBase::DECISION_KEPT_TEMPLATE, MergeResultBase::DECISION_MERGED, MergeResultBase::DECISION_REPLACED
Instance Attribute Summary
Attributes inherited from MergeResultBase
#conflicts, #decisions, #dest_analysis, #frozen_blocks, #lines, #stats, #template_analysis
Instance Method Summary collapse
-
#add_line(line) ⇒ void
Add a line to the result.
-
#add_lines(lines) ⇒ void
Add multiple lines to the result.
-
#record_decision(decision, template_node, dest_node) ⇒ void
Record a merge decision.
Methods inherited from MergeResultBase
#content, #content=, #content?, #decision_summary, #empty?, #initialize, #inspect, #line_count, #to_s
Constructor Details
This class inherits a constructor from Ast::Merge::MergeResultBase
Instance Method Details
#add_line(line) ⇒ void
This method returns an undefined value.
Add a line to the result
13 14 15 |
# File 'lib/ast/merge/text/merge_result.rb', line 13 def add_line(line) @lines << line end |
#add_lines(lines) ⇒ void
This method returns an undefined value.
Add multiple lines to the result
21 22 23 |
# File 'lib/ast/merge/text/merge_result.rb', line 21 def add_lines(lines) @lines.concat(lines) end |
#record_decision(decision, template_node, dest_node) ⇒ void
This method returns an undefined value.
Record a merge decision
31 32 33 34 35 36 37 38 |
# File 'lib/ast/merge/text/merge_result.rb', line 31 def record_decision(decision, template_node, dest_node) @decisions << { decision: decision, template_node: template_node, dest_node: dest_node, line: @lines.length, } end |