Sha256: 1f720986bc4ab70896572318ae68b3f9ae05f8ab1c25f7daa3308fdfb055f4dc

Contents?: true

Size: 794 Bytes

Versions: 15

Compression:

Stored size: 794 Bytes

Contents

#!/usr/bin/env ruby
# -*- encoding: utf-8 -*-
# Copyright Steffi Dorn <mail@muflax.com>, 2017
# License: GNU APGLv3 (or later) <http://www.gnu.org/copyleft/gpl.html>

class Object
  def blank?
    respond_to?(:empty?) ? !!empty? : !self
  end

  def present?
    !blank?
  end

  def nil_if_blank
    self.blank? ? nil : self
  end
end

class NilClass  	; def blank?	; true 	; end	; end
class FalseClass	; def blank?	; true 	; end	; end
class TrueClass 	; def blank?	; false	; end	; end
class Numeric   	; def blank?	; false	; end	; end
class Time      	; def blank?	; false	; end	; end

class Array	; alias_method :blank?, :empty?	; end
class Hash 	; alias_method :blank?, :empty?	; end

class String
  BLANK_RE = /\A[[:space:]]*\z/

  def blank?
    empty? || BLANK_RE.match?(self)
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
muflax-0.3.14 lib/muflax/blank.rb
muflax-0.3.13 lib/muflax/blank.rb
muflax-0.3.12 lib/muflax/blank.rb
muflax-0.3.11 lib/muflax/blank.rb
muflax-0.3.10 lib/muflax/blank.rb
muflax-0.3.9 lib/muflax/blank.rb
muflax-0.3.8 lib/muflax/blank.rb
muflax-0.3.7 lib/muflax/blank.rb
muflax-0.3.6 lib/muflax/blank.rb
muflax-0.3.5 lib/muflax/blank.rb
muflax-0.3.4 lib/muflax/blank.rb
muflax-0.3.3 lib/muflax/blank.rb
muflax-0.3.2 lib/muflax/blank.rb
muflax-0.3.1 lib/muflax/blank.rb
muflax-0.3.0 lib/muflax/blank.rb