free_mutant/lib/mutant/mutator/node/send/binary.rb

34 lines
619 B
Ruby
Raw Normal View History

# encoding: utf-8
module Mutant
class Mutator
class Node
class Send
# Mutator for sends that correspond to a binary operator
class Binary < self
children :left, :operator, :right
private
# Emit mutations
#
# @return [undefined]
#
# @api private
#
def dispatch
emit(left)
emit_left_mutations
emit(right) unless right.type == :splat
emit_right_mutations
end
end # Binary
end # Send
end # Node
end # Mutator
end # Mutant