ignore_nil 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/.gitignore +12 -0
  2. data/VERSION +1 -0
  3. metadata +66 -0
@@ -0,0 +1,12 @@
1
+ pkg
2
+ doc
3
+ LICENSE
4
+ README.rdoc
5
+ Rakefile
6
+ ignore_nil.gemspec
7
+ init.rb
8
+ lib/ignore_nil.rb
9
+ spec/ignore_nil_spec.rb
10
+ spec/spec_helper.rb
11
+ test/ignore_nil_test.rb
12
+ Manifest
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.0.3
metadata ADDED
@@ -0,0 +1,66 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ignore_nil
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.3
5
+ platform: ruby
6
+ authors:
7
+ - Steven Soroka
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-10-16 00:00:00 -05:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: "\n The plugin is really rather simple; here's the ignore_nil method:\n\n def ignore_nil(&block)\n begin\n yield\n rescue NoMethodError, RuntimeError => e\n if (e.message =~ /You have a nil object when you didn't expect it/) ||\n (e.message =~ /undefined method `.*?' for nil:NilClass/) || (e.message =~ /^Called id for nil/)\n return nil\n else\n raise e\n end\n end\n end\n\n What's interesting about this is it catches both NoMethodError and RuntimeError, both of which\n can occur if a method unexpectedly returned nil and you called a method on it, but *ONLY* if\n the error message matches! This means legitimate NoMethodError and RuntimeError messages will\n not be bothered by ignore_nil, and will still raise in your application as you expect.\n\n I've used this in a production application since about mid/late 2008, I'd consider it very stable.\n Feedback welcome!\n "
17
+ email: ssoroka78@gmail.com
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - LICENSE
24
+ - README.rdoc
25
+ files:
26
+ - .gitignore
27
+ - LICENSE
28
+ - README.rdoc
29
+ - Rakefile
30
+ - VERSION
31
+ - ignore_nil.gemspec
32
+ - init.rb
33
+ - lib/ignore_nil.rb
34
+ - spec/ignore_nil_spec.rb
35
+ - spec/spec_helper.rb
36
+ has_rdoc: true
37
+ homepage: http://github.com/ssoroka/ignore_nil
38
+ licenses: []
39
+
40
+ post_install_message:
41
+ rdoc_options:
42
+ - --charset=UTF-8
43
+ require_paths:
44
+ - lib
45
+ required_ruby_version: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: "0"
50
+ version:
51
+ required_rubygems_version: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: "0"
56
+ version:
57
+ requirements: []
58
+
59
+ rubyforge_project:
60
+ rubygems_version: 1.3.5
61
+ signing_key:
62
+ specification_version: 3
63
+ summary: ignore_nil lets you happily ignore nil methods on long method chains. Keeps code pretty and much safer than "rescue nil", since it only catches NoMethodError on nil objects
64
+ test_files:
65
+ - spec/ignore_nil_spec.rb
66
+ - spec/spec_helper.rb