upoj-rb 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile +1 -0
- data/Gemfile.lock +4 -0
- data/VERSION +1 -1
- data/lib/upoj-rb.rb +6 -1
- data/upoj-rb.gemspec +4 -2
- metadata +27 -17
- data/lib/upoj-rb/ext.rb +0 -75
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
GEM
|
2
2
|
remote: http://rubygems.org/
|
3
3
|
specs:
|
4
|
+
active_support (3.0.0)
|
5
|
+
activesupport (= 3.0.0)
|
6
|
+
activesupport (3.0.0)
|
4
7
|
diff-lcs (1.1.3)
|
5
8
|
gemcutter (0.7.0)
|
6
9
|
git (1.2.5)
|
@@ -25,6 +28,7 @@ PLATFORMS
|
|
25
28
|
ruby
|
26
29
|
|
27
30
|
DEPENDENCIES
|
31
|
+
active_support (>= 2)
|
28
32
|
bundler (~> 1.0.0)
|
29
33
|
gemcutter
|
30
34
|
jeweler (~> 1.6.4)
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.2
|
data/lib/upoj-rb.rb
CHANGED
@@ -1,5 +1,10 @@
|
|
1
|
+
require 'active_support/core_ext/array/extract_options'
|
2
|
+
require 'active_support/core_ext/hash/indifferent_access'
|
3
|
+
require 'active_support/core_ext/object/blank'
|
4
|
+
require 'active_support/core_ext/object/try'
|
5
|
+
|
1
6
|
module Upoj
|
2
7
|
|
3
8
|
end
|
4
9
|
|
5
|
-
%w(
|
10
|
+
%w( opts signals ).each{ |dep| require File.join(File.dirname(__FILE__), 'upoj-rb', dep) }
|
data/upoj-rb.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "upoj-rb"
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["AlphaHydrae"]
|
@@ -27,7 +27,6 @@ Gem::Specification.new do |s|
|
|
27
27
|
"Rakefile",
|
28
28
|
"VERSION",
|
29
29
|
"lib/upoj-rb.rb",
|
30
|
-
"lib/upoj-rb/ext.rb",
|
31
30
|
"lib/upoj-rb/opts.rb",
|
32
31
|
"lib/upoj-rb/signals.rb",
|
33
32
|
"spec/blank_spec.rb",
|
@@ -47,6 +46,7 @@ Gem::Specification.new do |s|
|
|
47
46
|
|
48
47
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
49
48
|
s.add_runtime_dependency(%q<paint>, [">= 0"])
|
49
|
+
s.add_runtime_dependency(%q<active_support>, [">= 2"])
|
50
50
|
s.add_development_dependency(%q<rspec>, [">= 0"])
|
51
51
|
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
52
52
|
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
@@ -55,6 +55,7 @@ Gem::Specification.new do |s|
|
|
55
55
|
s.add_development_dependency(%q<rdoc>, [">= 0"])
|
56
56
|
else
|
57
57
|
s.add_dependency(%q<paint>, [">= 0"])
|
58
|
+
s.add_dependency(%q<active_support>, [">= 2"])
|
58
59
|
s.add_dependency(%q<rspec>, [">= 0"])
|
59
60
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
60
61
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
@@ -64,6 +65,7 @@ Gem::Specification.new do |s|
|
|
64
65
|
end
|
65
66
|
else
|
66
67
|
s.add_dependency(%q<paint>, [">= 0"])
|
68
|
+
s.add_dependency(%q<active_support>, [">= 2"])
|
67
69
|
s.add_dependency(%q<rspec>, [">= 0"])
|
68
70
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
69
71
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: upoj-rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2011-10-01 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: paint
|
16
|
-
requirement: &
|
16
|
+
requirement: &2158184980 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,21 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2158184980
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: active_support
|
27
|
+
requirement: &2158184440 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '2'
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *2158184440
|
25
36
|
- !ruby/object:Gem::Dependency
|
26
37
|
name: rspec
|
27
|
-
requirement: &
|
38
|
+
requirement: &2158183940 !ruby/object:Gem::Requirement
|
28
39
|
none: false
|
29
40
|
requirements:
|
30
41
|
- - ! '>='
|
@@ -32,10 +43,10 @@ dependencies:
|
|
32
43
|
version: '0'
|
33
44
|
type: :development
|
34
45
|
prerelease: false
|
35
|
-
version_requirements: *
|
46
|
+
version_requirements: *2158183940
|
36
47
|
- !ruby/object:Gem::Dependency
|
37
48
|
name: shoulda
|
38
|
-
requirement: &
|
49
|
+
requirement: &2158183440 !ruby/object:Gem::Requirement
|
39
50
|
none: false
|
40
51
|
requirements:
|
41
52
|
- - ! '>='
|
@@ -43,10 +54,10 @@ dependencies:
|
|
43
54
|
version: '0'
|
44
55
|
type: :development
|
45
56
|
prerelease: false
|
46
|
-
version_requirements: *
|
57
|
+
version_requirements: *2158183440
|
47
58
|
- !ruby/object:Gem::Dependency
|
48
59
|
name: bundler
|
49
|
-
requirement: &
|
60
|
+
requirement: &2158182900 !ruby/object:Gem::Requirement
|
50
61
|
none: false
|
51
62
|
requirements:
|
52
63
|
- - ~>
|
@@ -54,10 +65,10 @@ dependencies:
|
|
54
65
|
version: 1.0.0
|
55
66
|
type: :development
|
56
67
|
prerelease: false
|
57
|
-
version_requirements: *
|
68
|
+
version_requirements: *2158182900
|
58
69
|
- !ruby/object:Gem::Dependency
|
59
70
|
name: jeweler
|
60
|
-
requirement: &
|
71
|
+
requirement: &2158182420 !ruby/object:Gem::Requirement
|
61
72
|
none: false
|
62
73
|
requirements:
|
63
74
|
- - ~>
|
@@ -65,10 +76,10 @@ dependencies:
|
|
65
76
|
version: 1.6.4
|
66
77
|
type: :development
|
67
78
|
prerelease: false
|
68
|
-
version_requirements: *
|
79
|
+
version_requirements: *2158182420
|
69
80
|
- !ruby/object:Gem::Dependency
|
70
81
|
name: gemcutter
|
71
|
-
requirement: &
|
82
|
+
requirement: &2158181920 !ruby/object:Gem::Requirement
|
72
83
|
none: false
|
73
84
|
requirements:
|
74
85
|
- - ! '>='
|
@@ -76,10 +87,10 @@ dependencies:
|
|
76
87
|
version: '0'
|
77
88
|
type: :development
|
78
89
|
prerelease: false
|
79
|
-
version_requirements: *
|
90
|
+
version_requirements: *2158181920
|
80
91
|
- !ruby/object:Gem::Dependency
|
81
92
|
name: rdoc
|
82
|
-
requirement: &
|
93
|
+
requirement: &2158181440 !ruby/object:Gem::Requirement
|
83
94
|
none: false
|
84
95
|
requirements:
|
85
96
|
- - ! '>='
|
@@ -87,7 +98,7 @@ dependencies:
|
|
87
98
|
version: '0'
|
88
99
|
type: :development
|
89
100
|
prerelease: false
|
90
|
-
version_requirements: *
|
101
|
+
version_requirements: *2158181440
|
91
102
|
description: This contains common ruby extensions mostly taken from Rails, as well
|
92
103
|
as various command-line utilities.
|
93
104
|
email: hydrae.alpha@gmail.com
|
@@ -107,7 +118,6 @@ files:
|
|
107
118
|
- Rakefile
|
108
119
|
- VERSION
|
109
120
|
- lib/upoj-rb.rb
|
110
|
-
- lib/upoj-rb/ext.rb
|
111
121
|
- lib/upoj-rb/opts.rb
|
112
122
|
- lib/upoj-rb/signals.rb
|
113
123
|
- spec/blank_spec.rb
|
@@ -130,7 +140,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
130
140
|
version: '0'
|
131
141
|
segments:
|
132
142
|
- 0
|
133
|
-
hash:
|
143
|
+
hash: 725755434624582504
|
134
144
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
135
145
|
none: false
|
136
146
|
requirements:
|
data/lib/upoj-rb/ext.rb
DELETED
@@ -1,75 +0,0 @@
|
|
1
|
-
class Object
|
2
|
-
|
3
|
-
# An object is blank if it's false, empty, or a whitespace string. For
|
4
|
-
# example, "", " ", nil, [], and {} are blank.
|
5
|
-
#
|
6
|
-
# This simplifies:
|
7
|
-
#
|
8
|
-
# if !address.nil? && !address.empty?
|
9
|
-
# ... to:
|
10
|
-
#
|
11
|
-
# if !address.blank?
|
12
|
-
def blank?
|
13
|
-
!self or (respond_to?(:empty?) and empty?)
|
14
|
-
end
|
15
|
-
|
16
|
-
# An object is present if it's not blank.
|
17
|
-
def present?
|
18
|
-
!blank?
|
19
|
-
end
|
20
|
-
|
21
|
-
# Invokes the method identified by the symbol method, passing it any
|
22
|
-
# arguments and/or the block specified, just like the regular Ruby Object#send does.
|
23
|
-
#
|
24
|
-
# Unlike that method however, a NoMethodError exception will not be
|
25
|
-
# raised and nil will be returned instead, if the receiving object is
|
26
|
-
# a nil object or NilClass.
|
27
|
-
#
|
28
|
-
# ==== Examples
|
29
|
-
# Without try
|
30
|
-
# @person && @person.name
|
31
|
-
# or
|
32
|
-
# @person ? @person.name : nil
|
33
|
-
# With try
|
34
|
-
# @person.try(:name)
|
35
|
-
#
|
36
|
-
# try also accepts arguments and/or a block, for the method it is trying
|
37
|
-
# hash.try :[], key
|
38
|
-
# array.try(:collect){ |e| e.reverse }
|
39
|
-
def try method, *args, &block
|
40
|
-
nil? ? nil : send(method, *args, &block)
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
class String
|
45
|
-
|
46
|
-
# Astring is blank if it's empty or a whitespace string.
|
47
|
-
# For example, "" and " " are blank.
|
48
|
-
def blank?
|
49
|
-
self !~ /\S/
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
class Array
|
54
|
-
|
55
|
-
# Extracts options from a set of arguments. Removes and returns the
|
56
|
-
# last element in the array if it's a hash, otherwise returns a blank hash.
|
57
|
-
def extract_options!
|
58
|
-
if last.kind_of?(Hash) and last.extractable_options?
|
59
|
-
pop
|
60
|
-
else
|
61
|
-
{}
|
62
|
-
end
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
class Hash
|
67
|
-
|
68
|
-
# By default, only instances of Hash itself are extractable. Subclasses
|
69
|
-
# of Hash may implement this method and return true to declare themselves
|
70
|
-
# as extractable. If a Hash is extractable, Array#extract_options! pops it
|
71
|
-
# from the Array when it is the last element of the Array.
|
72
|
-
def extractable_options?
|
73
|
-
instance_of?(Hash)
|
74
|
-
end
|
75
|
-
end
|