Sha256: 9d472de88bd56bf93ab0e3f2b92b6884a95e487cf40f3a0bc2eb5c1d15ddd488
Contents?: true
Size: 958 Bytes
Versions: 192
Compression:
Stored size: 958 Bytes
Contents
# frozen_string_literal: true class Object # Returns true if this object is included in the argument. Argument must be # any object which responds to +#include?+. Usage: # # characters = ["Konata", "Kagami", "Tsukasa"] # "Konata".in?(characters) # => true # # This will throw an +ArgumentError+ if the argument doesn't respond # to +#include?+. def in?(another_object) another_object.include?(self) rescue NoMethodError raise ArgumentError.new("The parameter passed to #in? must respond to #include?") end # Returns the receiver if it's included in the argument otherwise returns +nil+. # Argument must be any object which responds to +#include?+. Usage: # # params[:bucket_type].presence_in %w( project calendar ) # # This will throw an +ArgumentError+ if the argument doesn't respond to +#include?+. # # @return [Object] def presence_in(another_object) in?(another_object) ? self : nil end end
Version data entries
192 entries across 178 versions & 24 rubygems