Sha256: 694b941439a4e729d0c4e5abeaa68740fd196c6da8bbc1fa977787e46bea9bc8

Contents?: true

Size: 304 Bytes

Versions: 4

Compression:

Stored size: 304 Bytes

Contents

# frozen_string_literal: true

module Kind
  module Callable
    extend self, TypeChecker

    def kind; raise NotImplementedError; end

    def name; 'Callable'; end

    def ===(value)
      value.respond_to?(:call)
    end
  end

  def self.Callable?(*values)
    KIND.of?(Callable, values)
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
kind-5.1.0 lib/kind/core/type_checkers/custom/callable.rb
kind-5.0.0 lib/kind/type_checkers/custom/callable.rb
kind-4.1.0 lib/kind/type_checkers/custom/callable.rb
kind-4.0.0 lib/kind/type_checkers/custom/callable.rb