vidibus-core_extensions 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.1
1
+ 0.3.2
@@ -1,5 +1,7 @@
1
+ require "core_extensions/object"
1
2
  require "core_extensions/hash"
2
3
  require "core_extensions/array"
3
4
 
5
+ Object.send :include, Vidibus::CoreExtensions::Object
4
6
  Hash.send :include, Vidibus::CoreExtensions::Hash
5
7
  Array.send :include, Vidibus::CoreExtensions::Array
@@ -0,0 +1,18 @@
1
+ module Vidibus
2
+ module CoreExtensions
3
+ module Object
4
+
5
+ # Tries to use a method on object.
6
+ #
7
+ # Example:
8
+ # something.try!(:else) # => nil
9
+ #
10
+ def try!(method)
11
+ begin
12
+ send(method)
13
+ rescue
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
data/spec/spec.opts CHANGED
@@ -1 +1,2 @@
1
1
  --color
2
+ --format nested
@@ -0,0 +1,18 @@
1
+ require "spec_helper"
2
+
3
+ describe "Vidibus::CoreExtensions::Object" do
4
+ describe "#try!" do
5
+ let(:dog) do
6
+ Struct.new("Dog", :out)
7
+ Struct::Dog.new(true)
8
+ end
9
+
10
+ it "should return defined method" do
11
+ dog.try!(:out).should be_true
12
+ end
13
+
14
+ it "should return nil when calling undefined method" do
15
+ dog.try!(:food).should be_nil
16
+ end
17
+ end
18
+ end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{vidibus-core_extensions}
8
- s.version = "0.3.1"
8
+ s.version = "0.3.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Andre Pankratz"]
12
- s.date = %q{2010-08-09}
12
+ s.date = %q{2010-08-12}
13
13
  s.description = %q{Provides some extensions to the ruby core.}
14
14
  s.email = %q{andre@vidibus.com}
15
15
  s.extra_rdoc_files = [
@@ -27,10 +27,12 @@ Gem::Specification.new do |s|
27
27
  "lib/vidibus/core_extensions.rb",
28
28
  "lib/vidibus/core_extensions/array.rb",
29
29
  "lib/vidibus/core_extensions/hash.rb",
30
+ "lib/vidibus/core_extensions/object.rb",
30
31
  "spec/spec.opts",
31
32
  "spec/spec_helper.rb",
32
33
  "spec/vidibus/core_extensions/array_spec.rb",
33
34
  "spec/vidibus/core_extensions/hash_spec.rb",
35
+ "spec/vidibus/core_extensions/object_spec.rb",
34
36
  "vidibus-core_extensions.gemspec"
35
37
  ]
36
38
  s.homepage = %q{http://github.com/vidibus/vidibus-core_extensions}
@@ -41,7 +43,8 @@ Gem::Specification.new do |s|
41
43
  s.test_files = [
42
44
  "spec/spec_helper.rb",
43
45
  "spec/vidibus/core_extensions/array_spec.rb",
44
- "spec/vidibus/core_extensions/hash_spec.rb"
46
+ "spec/vidibus/core_extensions/hash_spec.rb",
47
+ "spec/vidibus/core_extensions/object_spec.rb"
45
48
  ]
46
49
 
47
50
  if s.respond_to? :specification_version then
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vidibus-core_extensions
3
3
  version: !ruby/object:Gem::Version
4
- hash: 17
4
+ hash: 23
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 3
9
- - 1
10
- version: 0.3.1
9
+ - 2
10
+ version: 0.3.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Andre Pankratz
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-08-09 00:00:00 +02:00
18
+ date: 2010-08-12 00:00:00 +02:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -54,10 +54,12 @@ files:
54
54
  - lib/vidibus/core_extensions.rb
55
55
  - lib/vidibus/core_extensions/array.rb
56
56
  - lib/vidibus/core_extensions/hash.rb
57
+ - lib/vidibus/core_extensions/object.rb
57
58
  - spec/spec.opts
58
59
  - spec/spec_helper.rb
59
60
  - spec/vidibus/core_extensions/array_spec.rb
60
61
  - spec/vidibus/core_extensions/hash_spec.rb
62
+ - spec/vidibus/core_extensions/object_spec.rb
61
63
  - vidibus-core_extensions.gemspec
62
64
  has_rdoc: true
63
65
  homepage: http://github.com/vidibus/vidibus-core_extensions
@@ -97,3 +99,4 @@ test_files:
97
99
  - spec/spec_helper.rb
98
100
  - spec/vidibus/core_extensions/array_spec.rb
99
101
  - spec/vidibus/core_extensions/hash_spec.rb
102
+ - spec/vidibus/core_extensions/object_spec.rb