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