Sha256: 4a4ca73c40f20bfabfb0116174992711078578486d855f1c3876c9a601e65da4
Contents?: true
Size: 468 Bytes
Versions: 2
Compression:
Stored size: 468 Bytes
Contents
require "attributable" module Metamorpher module Refactorer Merger = Struct.new(:original) do def merge(*replacements, &block) original.dup.tap do |merged| replacements.sort.reduce(0) do |offset, replacement| yield replacement if block replacement = replacement.slide(offset) replacement.merge_into(merged) offset + replacement.offset end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
metamorpher-0.1.1 | lib/metamorpher/refactorer/merger.rb |
metamorpher-0.1.0 | lib/metamorpher/refactorer/merger.rb |