class SubDiff::Sub
Processes matches for {String#gsub} replacements by pushing diffs into a {Builder} instance.
Used internally by {Adapter}.
@api private
Public Instance Methods
diff(search, *args, &block)
click to toggle source
# File lib/sub_diff/sub.rb 11 def diff(search, *args, &block) 12 differ.match(search, *args, block) do |diff| 13 append_diff_to_builder(diff, search) 14 end 15 end
Private Instance Methods
append_diff_to_builder(diff, search)
click to toggle source
# File lib/sub_diff/sub.rb 19 def append_diff_to_builder(diff, search) 20 builder << prefix(diff) 21 builder.push(diff[:replacement], diff[:match]) 22 builder << suffix(diff, search) 23 end
prefix(diff)
click to toggle source
# File lib/sub_diff/sub.rb 25 def prefix(diff) 26 diff[:prefix] 27 end
suffix(diff, _search)
click to toggle source
# File lib/sub_diff/sub.rb 29 def suffix(diff, _search) 30 diff[:suffix] 31 end