ribbon 0.4.1 → 0.4.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/ribbon.rb +6 -2
- data/lib/ribbon/core_ext/array.rb +20 -0
- data/lib/ribbon/version.rb +1 -1
- metadata +6 -5
data/lib/ribbon.rb
CHANGED
@@ -176,8 +176,12 @@ class Ribbon < BasicObject
|
|
176
176
|
# Unwraps the +ribbon+ if it is wrapped and returns its hash. Returns +nil+ in
|
177
177
|
# any other case.
|
178
178
|
def self.extract_hash_from(ribbon)
|
179
|
-
|
180
|
-
|
179
|
+
case ribbon
|
180
|
+
when ::Ribbon::Wrapper then ribbon.hash
|
181
|
+
when ::Ribbon then ribbon.__hash__
|
182
|
+
when ::Hash then ribbon
|
183
|
+
else nil
|
184
|
+
end
|
181
185
|
end
|
182
186
|
|
183
187
|
class << self
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'ribbon'
|
2
|
+
|
3
|
+
class Ribbon < BasicObject
|
4
|
+
module CoreExt
|
5
|
+
|
6
|
+
# Methods to work with ribbons in arrays.
|
7
|
+
module Array
|
8
|
+
|
9
|
+
# If the last argument is a hash, removes and converts it to a ribbon,
|
10
|
+
# otherwise returns an empty ribbon.
|
11
|
+
def extract_options_as_ribbon!
|
12
|
+
::Ribbon.new last.is_a?(Hash) ? pop : {}
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
16
|
+
|
17
|
+
::Array.send :include, ::Ribbon::CoreExt::Array
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
data/lib/ribbon/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ribbon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-01-03 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rookie
|
16
|
-
requirement: &
|
16
|
+
requirement: &8135320 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,7 +21,7 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *8135320
|
25
25
|
description: Ruby Object Notation. Inspired by JSON and OpenStruct.
|
26
26
|
email: matheus.a.m.moreira@gmail.com
|
27
27
|
executables: []
|
@@ -36,6 +36,7 @@ files:
|
|
36
36
|
- Rakefile
|
37
37
|
- lib/ribbon.rb
|
38
38
|
- lib/ribbon/core_ext.rb
|
39
|
+
- lib/ribbon/core_ext/array.rb
|
39
40
|
- lib/ribbon/core_ext/hash.rb
|
40
41
|
- lib/ribbon/version.rb
|
41
42
|
- lib/ribbon/wrapper.rb
|
@@ -54,7 +55,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
54
55
|
version: '0'
|
55
56
|
segments:
|
56
57
|
- 0
|
57
|
-
hash:
|
58
|
+
hash: 1590172254316391884
|
58
59
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
60
|
none: false
|
60
61
|
requirements:
|
@@ -63,7 +64,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
63
64
|
version: '0'
|
64
65
|
segments:
|
65
66
|
- 0
|
66
|
-
hash:
|
67
|
+
hash: 1590172254316391884
|
67
68
|
requirements: []
|
68
69
|
rubyforge_project:
|
69
70
|
rubygems_version: 1.8.10
|