Sha256: 0b9aa7184be8dbb6834468d61b518fc26684e1d8abb4fb52535f447d80b53147

Contents?: true

Size: 663 Bytes

Versions: 3

Compression:

Stored size: 663 Bytes

Contents

# frozen-string-literal: true

module Leftovers
  module MatcherBuilders
    module NodeHasReceiver
      class << self
        def build(pattern) # rubocop:disable Metrics/MethodLength
          case pattern
          when true
            ::Leftovers::Matchers::NodeHasAnyReceiver
          when false, :_leftovers_nil_value
            ::Leftovers::Matchers::Not.new(
              ::Leftovers::Matchers::NodeHasAnyReceiver
            )
          else
            matcher = ::Leftovers::MatcherBuilders::NodeValue.build(pattern)

            ::Leftovers::Matchers::NodeHasReceiver.new(matcher) if matcher
          end
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
leftovers-0.11.1 lib/leftovers/matcher_builders/node_has_receiver.rb
leftovers-0.11.0 lib/leftovers/matcher_builders/node_has_receiver.rb
leftovers-0.10.0 lib/leftovers/matcher_builders/node_has_receiver.rb