class Object

Public Instance Methods

blank?() click to toggle source

An object is blank if it's false, empty, or a whitespace string. For example, “”, “ ”, nil, [], and {} are all blank.

This simplifies:

if address.nil? || address.empty?

…to:

if address.blank?
# File lib/woolen_common/ruby_ext/blank.rb, line 13
def blank?
    respond_to?(:empty?) ? empty? : !self
end
presence() click to toggle source

Returns object if it's present? otherwise returns nil. object.presence is equivalent to object.present? ? object : nil.

This is handy for any representation of objects where blank is the same as not present at all. For example, this simplifies a common check for HTTP POST/query parameters:

state   = params[:state]   if params[:state].present?
country = params[:country] if params[:country].present?
region  = state || country || 'US'

…becomes:

region = params[:state].presence || params[:country].presence || 'US'
# File lib/woolen_common/ruby_ext/blank.rb, line 36
def presence
    self if present?
end
present?() click to toggle source

An object is present if it's not blank?.

# File lib/woolen_common/ruby_ext/blank.rb, line 18
def present?
    !blank?
end