Sha256: 2dc85809f192ed4dfcb498e5907d039a11d7efb127c7b5e9afcc14e5341bb19b

Contents?: true

Size: 482 Bytes

Versions: 8

Compression:

Stored size: 482 Bytes

Contents

# frozen_string_literal: true

module Leftovers
  module Matchers
    class NodeHasPositionalArgumentWithValue
      include ComparableInstance

      def initialize(position, matcher)
        @position = position
        @matcher = matcher

        freeze
      end

      def ===(node)
        args = node.positional_arguments
        return unless args

        value_node = args[@position]
        @matcher === value_node if value_node
      end

      freeze
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
leftovers-0.12.2 lib/leftovers/matchers/node_has_positional_argument_with_value.rb
leftovers-0.12.1 lib/leftovers/matchers/node_has_positional_argument_with_value.rb
leftovers-0.12.0 lib/leftovers/matchers/node_has_positional_argument_with_value.rb
leftovers-0.11.2 lib/leftovers/matchers/node_has_positional_argument_with_value.rb
leftovers-0.11.1 lib/leftovers/matchers/node_has_positional_argument_with_value.rb
leftovers-0.11.0 lib/leftovers/matchers/node_has_positional_argument_with_value.rb
leftovers-0.10.0 lib/leftovers/matchers/node_has_positional_argument_with_value.rb
leftovers-0.9.0 lib/leftovers/matchers/node_has_positional_argument_with_value.rb