Sha256: 2954d23205d789722b91fd8388a5b96db44346095a98475af3e7d64653b9564f
Contents?: true
Size: 1.09 KB
Versions: 6
Compression:
Stored size: 1.09 KB
Contents
module Mutant class Mutator class Node class Literal # Mutator for hash literals class Hash < self handle(:hash) private # Emit mutations # # @return [undefined] def dispatch emit_singletons emit_type mutate_body end # Mutate body # # @return [undefined] def mutate_body children.each_index do |index| mutate_child(index) dup_children = children.dup dup_children.delete_at(index) emit_type(*dup_children) end end # Mutator for hash pairs class Pair < Node handle(:pair) children :key, :value private # Emit mutations # # @return [undefined] def dispatch emit_key_mutations emit_value_mutations end end # Pair end # Hash end # Literal end # Node end # Mutator end # Mutant
Version data entries
6 entries across 6 versions & 1 rubygems