Sha256: ca7d8c8da30222382f9ecf86293a45c9106c4dc1afe2958b34aff1c6e51d30f0
Contents?: true
Size: 1.08 KB
Versions: 22
Compression:
Stored size: 1.08 KB
Contents
# encoding: utf-8 module Mutant class Mutator class Node module NamedValue # Mutation emitter to handle variable assignment nodes class VariableAssignment < Node children :name, :value MAP = IceNine.deep_freeze( gvasgn: '$', cvasgn: '@@', ivasgn: '@', lvasgn: '' ) handle(*MAP.keys) private # Perform dispatch # # @return [undefined] # # @api private # def dispatch mutate_name emit_value_mutations if value # mlhs! emit_nil end # Emit name mutations # # @return [undefined] # # @api private # def mutate_name prefix = MAP.fetch(node.type) Mutator::Util::Symbol.each(name, self) do |name| emit_name(prefix + name.to_s) end end end # VariableAssignment end # NamedValue end # Node end # Mutator end # Mutant
Version data entries
22 entries across 22 versions & 1 rubygems