Sha256: 70324a37445fb1db3c424a2a87476eda8c8f90404ea679283fd12ceb0839ac0d
Contents?: true
Size: 1.36 KB
Versions: 1
Compression:
Stored size: 1.36 KB
Contents
module Hanami module Utils # Checks for blank # @since 0.8.0 class Blank # Matcher for blank strings # # @since 0.8.0 # @api private STRING_MATCHER = /\A[[:space:]]*\z/ # Checks object is blank # # @example Basic Usage # require 'hanami/utils/blank' # # Hanami::Utils::Blank.blank?(Hanami::Utils::String.new('')) # => true # Hanami::Utils::Blank.blank?(' ') # => true # Hanami::Utils::Blank.blank?(nil) # => true # Hanami::Utils::Blank.blank?(Hanami::Utils::Hash.new({})) # => true # Hanami::Utils::Blank.blank?(true) # => false # Hanami::Utils::Blank.blank?(1) # => false # # @param object the argument # # @return [TrueClass,FalseClass] # # @since 0.8.0 def self.blank?(object) # rubocop:disable Metrics/MethodLength case object when String, ::String STRING_MATCHER === object # rubocop:disable Style/CaseEquality when Hash, ::Hash, ::Array object.empty? when TrueClass, Numeric false when FalseClass, NilClass true else object.respond_to?(:empty?) ? !!object.empty? : !self end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
hanami-utils-0.8.0 | lib/hanami/utils/blank.rb |