Sha256: 2a12f42185621e368a498878ba97b68852a04b22aa4f46fb62fa695aa751f61a

Contents?: true

Size: 543 Bytes

Versions: 11

Compression:

Stored size: 543 Bytes

Contents

# frozen_string_literal: true

module Kind
  Undefined = Object.new.tap do |undefined|
    def undefined.inspect
      @inspect ||= 'Kind::Undefined'.freeze
    end
    undefined.inspect

    def undefined.empty?
      true
    end

    def undefined.to_s
      inspect
    end

    def undefined.clone
      self
    end

    def undefined.dup
      clone
    end

    def undefined.default(value, default)
      return value if self != value

      default.respond_to?(:call) ? default.call : default
    end

    undefined.freeze
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
kind-5.10.0 lib/kind/basic/undefined.rb
kind-5.9.0 lib/kind/basic/undefined.rb
kind-5.8.1 lib/kind/basic/undefined.rb
kind-5.8.0 lib/kind/basic/undefined.rb
kind-5.7.0 lib/kind/basic/undefined.rb
kind-5.6.0 lib/kind/basic/undefined.rb
kind-5.5.0 lib/kind/basic/undefined.rb
kind-5.4.1 lib/kind/basic/undefined.rb
kind-5.4.0 lib/kind/basic/undefined.rb
kind-5.3.0 lib/kind/basic/undefined.rb
kind-5.2.0 lib/kind/basic/undefined.rb