Sha256: 33c919b52542bff45ebc44b811a93dee0df1232dc40ddb07cab63090069ae990

Contents?: true

Size: 938 Bytes

Versions: 26

Compression:

Stored size: 938 Bytes

Contents

# encoding: utf-8

module Mutant
  class Mutator
    class Node
      class Literal < self
        # Mutator for fixnum literals
        class Fixnum < self

          handle(:int)

        private

          # Emit mutants
          #
          # @return [undefined]
          #
          # @api private
          #
          def dispatch
            emit_nil
            emit_values(values)
            emit_new { new_self(Random.fixnum) }
          end

          # Return values to mutate against
          #
          # @return [Array]
          #
          # @api private
          #
          def values
            [0, 1, -value, value + 1, value - 1]
          end

          # Return value
          #
          # @return [Object]
          #
          # @api private
          #
          def value
            children.first
          end

        end # Fixnuma
      end # Literal
    end # Node
  end # Mutator
end # Mutant

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
mutant-0.5.12 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.11 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.10 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.9 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.8 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.7 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.6 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.5 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.4 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.3 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.2 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.1 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.5.0 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.3.6 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.3.5 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.3.4 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.3.3 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.3.2 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.3.1 lib/mutant/mutator/node/literal/fixnum.rb
mutant-0.3.0 lib/mutant/mutator/node/literal/fixnum.rb