Class: Contracts::Maybe

Inherits:
Or show all
Defined in:
lib/builtin_contracts.rb

Overview

Takes a Contract. The contract passes if the contract passes or the given value is nil. Maybe(foo) is equivalent to Or[foo, nil].

Instance Method Summary collapse

Methods inherited from Or

#test_data, #testable?, #to_s, #valid?

Methods inherited from CallableClass

[]

Constructor Details

#initialize(*vals) ⇒ Maybe

Returns a new instance of Maybe.



320
321
322
# File 'lib/builtin_contracts.rb', line 320

def initialize(*vals)
  super(*(vals + [nil]))
end