Class: Replacement
- Defined in:
- lib/replacement.rb,
lib/replacement/score.rb
Defined Under Namespace
Classes: Score
Instance Attribute Summary collapse
-
#added_by_user ⇒ Object
readonly
Returns the value of attribute added_by_user.
-
#removed_by_user ⇒ Object
readonly
Returns the value of attribute removed_by_user.
Class Method Summary collapse
Instance Method Summary collapse
- #highlighted_suggest(requiring_suggestions) ⇒ Object
-
#initialize(removed_by_user, added_by_user, left_context, right_context) ⇒ Replacement
constructor
A new instance of Replacement.
- #suggest(requiring_suggestions) ⇒ Object
Constructor Details
#initialize(removed_by_user, added_by_user, left_context, right_context) ⇒ Replacement
Returns a new instance of Replacement.
9 10 11 12 13 14 |
# File 'lib/replacement.rb', line 9 def initialize(removed_by_user, added_by_user, left_context, right_context) @removed_by_user = removed_by_user @added_by_user = added_by_user @left_context = left_context @right_context = right_context end |
Instance Attribute Details
#added_by_user ⇒ Object (readonly)
Returns the value of attribute added_by_user.
7 8 9 |
# File 'lib/replacement.rb', line 7 def added_by_user @added_by_user end |
#removed_by_user ⇒ Object (readonly)
Returns the value of attribute removed_by_user.
7 8 9 |
# File 'lib/replacement.rb', line 7 def removed_by_user @removed_by_user end |
Class Method Details
.generate(before, after) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/replacement.rb', line 16 def self.generate(before, after) leading_same_characters_count = (0..before.length).to_a.find do |index| before[index] != after[index] end trailing_same_characters_count = (0..before.length).to_a.find do |index| before[before.length - index - 1] != after[after.length - index - 1] end removed_by_user = drop_characters(before, leading_same_characters_count, trailing_same_characters_count) added_by_user = drop_characters(after, leading_same_characters_count, trailing_same_characters_count) left_context = before[0...leading_same_characters_count] right_context = before[-trailing_same_characters_count..-1] Replacement.new(removed_by_user, added_by_user, left_context, right_context) end |
Instance Method Details
#highlighted_suggest(requiring_suggestions) ⇒ Object
39 40 41 |
# File 'lib/replacement.rb', line 39 def highlighted_suggest(requiring_suggestions) formattable_suggest(requiring_suggestions, &:red) end |
#suggest(requiring_suggestions) ⇒ Object
35 36 37 |
# File 'lib/replacement.rb', line 35 def suggest(requiring_suggestions) formattable_suggest(requiring_suggestions, &:identity) end |