class Kleisli::Contracts::MaybeOf

Public Instance Methods

valid?(val) click to toggle source
# File lib/kleisli/contracts.rb, line 21
def valid?(val)
  return false unless val.kind_of?(Kleisli::Maybe) &&
    @inner_types.size == 1
  inner_valid, _ = Contract.valid?(val.value, @inner_types.first)
  inner_valid || val.value.nil?
end