Sha256: 467b5bb28222285ee54acdd2d4b1b826efd31efe362eceb9c21c0d3fc7551688

Contents?: true

Size: 998 Bytes

Versions: 57

Compression:

Stored size: 998 Bytes

Contents

module Tins
  module Blank
    module Object
      def blank?
        respond_to?(:empty?) ? empty? : !self
      end

      def present?
        !blank?
      end
    end

    module NilClass
      def blank?
        true
      end
    end

    module FalseClass
      def blank?
        true
      end
    end

    module TrueClass
      def blank?
        false
      end
    end

    module Array
      def self.included(modul)
        modul.module_eval do
          alias_method :blank?, :empty?
        end
      end
    end

    module Hash
      def self.included(modul)
        modul.module_eval do
          alias_method :blank?, :empty?
        end
      end
    end

    module String
      def blank?
        self !~ /\S/
      end
    end

    module Numeric
      def blank?
        false
      end
    end
  end

  unless Object.respond_to?(:blank?)
    for k in Blank.constants
      Object.const_get(k).class_eval do
        include Blank.const_get(k)
      end
    end
  end
end

Version data entries

57 entries across 56 versions & 3 rubygems

Version Path
tdiary-5.1.2 vendor/bundle/ruby/2.6.0/gems/tins-0.13.2/lib/tins/xt/blank.rb
tdiary-5.1.1 vendor/bundle/ruby/2.6.0/gems/tins-0.13.2/lib/tins/xt/blank.rb
tdiary-5.0.8 vendor/bundle/ruby/2.5.0/gems/tins-0.13.2/lib/tins/xt/blank.rb
tdiary-5.0.8 vendor/bundle/gems/tins-0.13.2/lib/tins/xt/blank.rb
tins-1.3.4 lib/tins/xt/blank.rb
tins-1.3.3 lib/tins/xt/blank.rb
tins-1.3.2 lib/tins/xt/blank.rb
tins-1.3.1 lib/tins/xt/blank.rb
tins-1.3.0 lib/tins/xt/blank.rb
tins-1.2.0 lib/tins/xt/blank.rb
tins-1.1.0 lib/tins/xt/blank.rb
tins-1.0.1 lib/tins/xt/blank.rb
tins-1.0.0 lib/tins/xt/blank.rb
tins-0.13.2 lib/tins/xt/blank.rb
social_url_stats-0.0.1 vendor/ruby/1.9.1/gems/tins-0.13.1/lib/tins/xt/blank.rb
tins-0.13.1 lib/tins/xt/blank.rb
tins-0.13.0 lib/tins/xt/blank.rb
tins-0.12.0 lib/tins/xt/blank.rb
tins-0.11.0 lib/tins/xt/blank.rb
tins-0.10.0 lib/tins/xt/blank.rb