Sha256: 933a8e7f9e25ddfc9a1279bfba5649a3d457dc3aaaf8935f28ef974e558045a5

Contents?: true

Size: 514 Bytes

Versions: 4

Compression:

Stored size: 514 Bytes

Contents

# frozen_string_literal: true

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

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

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
leftovers-0.12.2 lib/leftovers/matcher_builders/node_has_receiver.rb
leftovers-0.12.1 lib/leftovers/matcher_builders/node_has_receiver.rb
leftovers-0.12.0 lib/leftovers/matcher_builders/node_has_receiver.rb
leftovers-0.11.2 lib/leftovers/matcher_builders/node_has_receiver.rb