global
def diff_traversal(method, seq1, seq2, callbacks, &block)
def diff_traversal(method, seq1, seq2, callbacks, &block) callbacks = callbacks_for(callbacks) case method when :diff traverse_sequences(seq1, seq2, callbacks) when :sdiff traverse_balanced(seq1, seq2, callbacks) end callbacks.finish if callbacks.respond_to? :finish if block callbacks.diffs.map do |hunk| if hunk.kind_of? Array hunk.map { |hunk_block| block[hunk_block] } else block[hunk] end end else callbacks.diffs end end