class SourceMap::Map

def |(other)

def |(other)
  return other.dup if self.mappings.empty?
  mappings = []
  other.each do |m|
    om = bsearch(m.original)
    next unless om
    mappings << Mapping.new(
      om.source, m.generated,
      om.original, om.name
    )
  end
  self.class.new(mappings, other.filename)
end