Sha256: 59649c75432a79410e0f38fb1a66eaca858c1a11c2478e84a3c6d672bdfde75d

Contents?: true

Size: 968 Bytes

Versions: 14

Compression:

Stored size: 968 Bytes

Contents

# encoding: UTF-8

module Mutant
  class Mutator
    class Node
      # Mutator for resbody nodes
      class Resbody < self

        handle(:resbody)

        children :captures, :assignment, :block

      private

        # Emit mutations
        #
        # @return [undefined]
        #
        # @api private
        #
        def dispatch
          emit_assignment(nil)
          emit_block_mutations if block
          mutate_captures
        end

        # Mutate captures
        #
        # @return [undefined]
        #
        # @api private
        #
        def mutate_captures
          return unless captures
          emit_captures(nil)
          Util::Array.each(captures.children, self) do |matchers|
            next if matchers.empty?
            emit_captures(s(:array, *matchers))
            # p capture
            # emit_captures(s(:array, *capture))
          end
        end

      end # Resbody
    end # Node
  end # Mutator
end # Mutant

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
mutant-0.5.6 lib/mutant/mutator/node/resbody.rb
mutant-0.5.5 lib/mutant/mutator/node/resbody.rb
mutant-0.5.4 lib/mutant/mutator/node/resbody.rb
mutant-0.5.3 lib/mutant/mutator/node/resbody.rb
mutant-0.5.2 lib/mutant/mutator/node/resbody.rb
mutant-0.5.1 lib/mutant/mutator/node/resbody.rb
mutant-0.5.0 lib/mutant/mutator/node/resbody.rb
mutant-0.3.6 lib/mutant/mutator/node/resbody.rb
mutant-0.3.5 lib/mutant/mutator/node/resbody.rb
mutant-0.3.4 lib/mutant/mutator/node/resbody.rb
mutant-0.3.3 lib/mutant/mutator/node/resbody.rb
mutant-0.3.2 lib/mutant/mutator/node/resbody.rb
mutant-0.3.1 lib/mutant/mutator/node/resbody.rb
mutant-0.3.0 lib/mutant/mutator/node/resbody.rb