Class: Ast::Merge::Runtime::ChildResult
- Inherits:
-
Object
- Object
- Ast::Merge::Runtime::ChildResult
- Defined in:
- lib/ast/merge/runtime/child_result.rb
Overview
Return contract from a delegated child merge.
Instance Attribute Summary collapse
-
#capabilities_missing ⇒ Object
readonly
Returns the value of attribute capabilities_missing.
-
#capabilities_used ⇒ Object
readonly
Returns the value of attribute capabilities_used.
-
#diagnostics ⇒ Object
readonly
Returns the value of attribute diagnostics.
-
#metadata ⇒ Object
readonly
Returns the value of attribute metadata.
-
#preserved_boundaries ⇒ Object
readonly
Returns the value of attribute preserved_boundaries.
-
#replacement_text ⇒ Object
readonly
Returns the value of attribute replacement_text.
-
#unresolved_cases ⇒ Object
readonly
Returns the value of attribute unresolved_cases.
Instance Method Summary collapse
-
#initialize(replacement_text:, preserved_boundaries: {}, diagnostics: [], capabilities_used: [], capabilities_missing: [], unresolved_cases: [], metadata: {}) ⇒ ChildResult
constructor
A new instance of ChildResult.
- #to_h ⇒ Object
- #unresolved? ⇒ Boolean
Constructor Details
#initialize(replacement_text:, preserved_boundaries: {}, diagnostics: [], capabilities_used: [], capabilities_missing: [], unresolved_cases: [], metadata: {}) ⇒ ChildResult
Returns a new instance of ChildResult.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/ast/merge/runtime/child_result.rb', line 16 def initialize( replacement_text:, preserved_boundaries: {}, diagnostics: [], capabilities_used: [], capabilities_missing: [], unresolved_cases: [], metadata: {} ) @replacement_text = replacement_text.to_s @preserved_boundaries = normalize_hash(preserved_boundaries) @diagnostics = Array(diagnostics).dup.freeze @capabilities_used = Array(capabilities_used).map(&:to_sym).freeze @capabilities_missing = Array(capabilities_missing).map(&:to_sym).freeze @unresolved_cases = Array(unresolved_cases).dup.freeze @metadata = .dup.freeze end |
Instance Attribute Details
#capabilities_missing ⇒ Object (readonly)
Returns the value of attribute capabilities_missing.
8 9 10 |
# File 'lib/ast/merge/runtime/child_result.rb', line 8 def capabilities_missing @capabilities_missing end |
#capabilities_used ⇒ Object (readonly)
Returns the value of attribute capabilities_used.
8 9 10 |
# File 'lib/ast/merge/runtime/child_result.rb', line 8 def capabilities_used @capabilities_used end |
#diagnostics ⇒ Object (readonly)
Returns the value of attribute diagnostics.
8 9 10 |
# File 'lib/ast/merge/runtime/child_result.rb', line 8 def diagnostics @diagnostics end |
#metadata ⇒ Object (readonly)
Returns the value of attribute metadata.
8 9 10 |
# File 'lib/ast/merge/runtime/child_result.rb', line 8 def @metadata end |
#preserved_boundaries ⇒ Object (readonly)
Returns the value of attribute preserved_boundaries.
8 9 10 |
# File 'lib/ast/merge/runtime/child_result.rb', line 8 def preserved_boundaries @preserved_boundaries end |
#replacement_text ⇒ Object (readonly)
Returns the value of attribute replacement_text.
8 9 10 |
# File 'lib/ast/merge/runtime/child_result.rb', line 8 def replacement_text @replacement_text end |
#unresolved_cases ⇒ Object (readonly)
Returns the value of attribute unresolved_cases.
8 9 10 |
# File 'lib/ast/merge/runtime/child_result.rb', line 8 def unresolved_cases @unresolved_cases end |
Instance Method Details
#to_h ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/ast/merge/runtime/child_result.rb', line 38 def to_h { replacement_text: replacement_text, preserved_boundaries: preserved_boundaries, diagnostics: diagnostics.map { |diagnostic| diagnostic.respond_to?(:to_h) ? diagnostic.to_h : diagnostic }, capabilities_used: capabilities_used, capabilities_missing: capabilities_missing, unresolved_cases: unresolved_cases.map do |resolution_case| resolution_case.respond_to?(:to_h) ? resolution_case.to_h : resolution_case end, metadata: } end |
#unresolved? ⇒ Boolean
34 35 36 |
# File 'lib/ast/merge/runtime/child_result.rb', line 34 def unresolved? unresolved_cases.any? end |