Sha256: 308c952756f6ef77054ae5f0e4c3911d7997137b128369166490ee3f71f9e9e2
Contents?: true
Size: 469 Bytes
Versions: 7
Compression:
Stored size: 469 Bytes
Contents
require "attributable" module Metamorpher module Transformer 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
7 entries across 7 versions & 1 rubygems