From df95567598677a9c109146df8531674e70c2eb80 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Sat, 24 Sep 2005 05:14:04 +0000 Subject: [PATCH] Added native, faster implementations of .blank? for the core types #2286 [skae] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2319 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- activesupport/CHANGELOG | 2 ++ .../lib/active_support/core_ext/blank.rb | 36 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 activesupport/lib/active_support/core_ext/blank.rb diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG index 7411beddef..3786ee22be 100644 --- a/activesupport/CHANGELOG +++ b/activesupport/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Added native, faster implementations of .blank? for the core types #2286 [skae] + * Fixed clean logger to work with Ruby 1.8.3 Logger class #2245 * Fixed memory leak with Active Record classes when Dependencies.mechanism = :load #1704 [c.r.mcgrath@gmail.com] diff --git a/activesupport/lib/active_support/core_ext/blank.rb b/activesupport/lib/active_support/core_ext/blank.rb new file mode 100644 index 0000000000..f56799bc0d --- /dev/null +++ b/activesupport/lib/active_support/core_ext/blank.rb @@ -0,0 +1,36 @@ +# The methods here are provided to speed up function blank? in class Object +class NilClass + def blank? + true + end +end + +class FalseClass + def blank? + true + end +end + +class TrueClass + def blank? + false + end +end + +class Array + alias_method :blank?, :empty? +end + +class Hash + alias_method :blank?, :empty? +end + +class String + def blank? + empty? || strip.empty? + end +end + +class Numeric + alias_method :blank?, :zero? +end \ No newline at end of file -- GitLab