Method: Set#subset?

Defined in:
lib/set.rb

#subset?(set) ⇒ Boolean Also known as: <=

Returns true if the set is a subset of the given set.

Returns:

  • (Boolean)

428
429
430
431
432
433
434
435
436
437
# File 'lib/set.rb', line 428

def subset?(set)
  case
  when set.instance_of?(self.class) && @hash.respond_to?(:<=)
    @hash <= set.instance_variable_get(:@hash)
  when set.is_a?(Set)
    size <= set.size && all?(set)
  else
    raise ArgumentError, "value must be a set"
  end
end