Class: Contracts::Constraints::Union

Inherits:
Base
  • Object
show all
Defined in:
lib/contracts.rb

Direct Known Subclasses

Nilable

Instance Method Summary collapse

Methods inherited from Base

#to_h

Constructor Details

#initialize(*items) ⇒ Union

Returns a new instance of Union.



214
# File 'lib/contracts.rb', line 214

def initialize(*items) = @items = items.map { |item| Constraints.coerce(item) }

Instance Method Details

#descriptionObject



216
# File 'lib/contracts.rb', line 216

def description = @items.map(&:description).join(" or ")

#matches?(value) ⇒ Boolean

Returns:

  • (Boolean)


215
# File 'lib/contracts.rb', line 215

def matches?(value) = @items.any? { |item| item.matches?(value) }