diff --git a/lib/dry/types/predicate_registry.rb b/lib/dry/types/predicate_registry.rb index 21917ff..51e6375 100644 --- a/lib/dry/types/predicate_registry.rb +++ b/lib/dry/types/predicate_registry.rb @@ -15,27 +15,14 @@ module Dry KERNEL_RESPOND_TO = ::Kernel.instance_method(:respond_to?) private_constant(:KERNEL_RESPOND_TO) - if ::UnboundMethod.method_defined?(:bind_call) - # @api private - def initialize(predicates = Logic::Predicates) - @predicates = predicates - end + # @api private + def initialize(predicates = Logic::Predicates) + @predicates = predicates + end - # @api private - def key?(name) - KERNEL_RESPOND_TO.bind_call(@predicates, name) - end - else - # @api private - def initialize(predicates = Logic::Predicates) - @predicates = predicates - @has_predicate = KERNEL_RESPOND_TO.bind(@predicates) - end - - # @api private - def key?(name) - has_predicate.(name) - end + # @api private + def key?(name) + KERNEL_RESPOND_TO.bind_call(@predicates, name) end # @api private