Sha256: 10a416e66b0c6366319c5657402697366e2f6a985384c2336f8f87c78a537657

Contents?: true

Size: 731 Bytes

Versions: 32

Compression:

Stored size: 731 Bytes

Contents

# frozen_string_literal: true

module Mutant
  class Mutator
    class Node
      class Literal < self
        # Mutator for float literals
        class Float < self

          handle(:float)

        private

          def dispatch
            emit_singletons
            emit_values
            emit_special_cases
          end

          SPECIAL = [
            N_NAN,
            N_NEGATIVE_INFINITY,
            N_INFINITY
          ].freeze

          def emit_special_cases
            SPECIAL.each(&method(:emit))
          end

          def values
            original = children.first

            [0.0, 1.0, -original]
          end

        end # Float
      end # Literal
    end # Node
  end # Mutator
end # Mutant

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
mutant-0.10.27 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.26 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.25 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.24 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.23 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.22 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.21 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.20 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.19 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.18 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.17 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.16 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.15 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.14 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.13 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.12 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.11 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.10 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.9 lib/mutant/mutator/node/literal/float.rb
mutant-0.10.8 lib/mutant/mutator/node/literal/float.rb