ruby-ext 0.2.0 → 0.2.1
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/.git/COMMIT_EDITMSG +1 -1
- data/.git/index +0 -0
- data/.git/logs/HEAD +3 -0
- data/.git/logs/refs/heads/master +3 -0
- data/.git/logs/refs/remotes/origin/master +3 -0
- data/.git/objects/00/6a9c4671a6d1386f7d7dc800525e98697625ee +3 -0
- data/.git/objects/0a/c8dd6e52864a0384859a517d546546d61e3c0c +0 -0
- data/.git/objects/18/fa4a1fd6a6e5293c34c6eebefaff644c553a97 +0 -0
- data/.git/objects/19/342d43c2e91b7bca75f329bf758d69818c827e +2 -0
- data/.git/objects/2d/2f0676ef5509c4e7a65dcc3d0fceaa1368ffaa +0 -0
- data/.git/objects/57/64ef3e607d3570146219cd858a1dd4afb24ea5 +0 -0
- data/.git/objects/6a/0946485381787f48e60893549eac156d1f057c +0 -0
- data/.git/objects/6b/e43d64c6aeffd7ac08701e1ee93865248683cf +0 -0
- data/.git/objects/97/260e66124380267a414850b1d648da79324455 +0 -0
- data/.git/objects/9c/d9497bad03afd65531dda2695719b3593e02b6 +0 -0
- data/.git/objects/a4/ab487fcb12cfb831b09c525544f52d60a98598 +0 -0
- data/.git/objects/ad/09237b6008fc0ebfb9b8c920490dda8503bfd1 +0 -0
- data/.git/objects/ad/7462077a480cb995d1ad397c3c737644e59887 +0 -0
- data/.git/objects/b4/cbb05893636d6b7314fbc4df7e3a8dcaeb0de1 +0 -0
- data/.git/objects/be/a9ade8ddb19a7ff5b18bc77fac5cb27d6cf284 +0 -0
- data/.git/objects/ca/9716fd518aac44d4acaa94a86838cde6030f6a +3 -0
- data/.git/objects/d0/b6eae8243889753a5a3e9a801b4dd5bcd09d91 +0 -0
- data/.git/objects/d2/366fe2df53e14c3069d23cad37fe21a8f1c129 +0 -0
- data/.git/objects/e9/03ba4c283cd16c7291500d4f80da24c8f5f4df +0 -0
- data/.git/objects/f0/f0c35fd385e1ac016e6d3f7d72ea188c578b77 +0 -0
- data/.git/objects/f1/bf0dc44ec7b29845cdecd0b295aa8075a84940 +0 -0
- data/.git/objects/fd/305b4d657d487e6f5f69c760b8d433d16f6a47 +0 -0
- data/.git/refs/heads/master +1 -1
- data/.git/refs/remotes/origin/master +1 -1
- data/Rakefile +1 -1
- data/lib/ruby_ext/declarative_cache.rb +4 -4
- data/lib/ruby_ext/prepare_arguments.rb +4 -4
- data/lib/ruby_ext/string.rb +7 -7
- data/lib/ruby_ext.rb +21 -0
- data/spec/{assert_spec.rb → should_spec.rb} +0 -0
- metadata +25 -3
data/.git/COMMIT_EDITMSG
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
small upd
|
data/.git/index
CHANGED
|
Binary file
|
data/.git/logs/HEAD
CHANGED
|
@@ -4,3 +4,6 @@
|
|
|
4
4
|
2bedc3eb69408a817194c28d14fb2dbfed5a21c0 9ea37d9fc7e1ad1504b50da2a1ec639c523fb8b7 Alex <alex@alex.local> 1260463398 +0300 commit: tmp
|
|
5
5
|
9ea37d9fc7e1ad1504b50da2a1ec639c523fb8b7 e9d385c1913656b7ce15a1ac1424361d2e065a6c Alex <alex@alex.local> 1260465015 +0300 commit: minor refactoring
|
|
6
6
|
e9d385c1913656b7ce15a1ac1424361d2e065a6c 06864a068d188ab7ae17e39d58d6c25dc49a8ff3 Alex <alex@alex.local> 1260470076 +0300 commit: add files from rails-ext
|
|
7
|
+
06864a068d188ab7ae17e39d58d6c25dc49a8ff3 006a9c4671a6d1386f7d7dc800525e98697625ee Alex <alex@alex.local> 1260535122 +0300 commit: add facets
|
|
8
|
+
006a9c4671a6d1386f7d7dc800525e98697625ee e903ba4c283cd16c7291500d4f80da24c8f5f4df Alex <alex@alex.local> 1260655428 +0300 commit: add facets & small fix
|
|
9
|
+
e903ba4c283cd16c7291500d4f80da24c8f5f4df 97260e66124380267a414850b1d648da79324455 Alex <alex@alex.local> 1261874167 +0300 commit: small upd
|
data/.git/logs/refs/heads/master
CHANGED
|
@@ -4,3 +4,6 @@
|
|
|
4
4
|
2bedc3eb69408a817194c28d14fb2dbfed5a21c0 9ea37d9fc7e1ad1504b50da2a1ec639c523fb8b7 Alex <alex@alex.local> 1260463398 +0300 commit: tmp
|
|
5
5
|
9ea37d9fc7e1ad1504b50da2a1ec639c523fb8b7 e9d385c1913656b7ce15a1ac1424361d2e065a6c Alex <alex@alex.local> 1260465015 +0300 commit: minor refactoring
|
|
6
6
|
e9d385c1913656b7ce15a1ac1424361d2e065a6c 06864a068d188ab7ae17e39d58d6c25dc49a8ff3 Alex <alex@alex.local> 1260470076 +0300 commit: add files from rails-ext
|
|
7
|
+
06864a068d188ab7ae17e39d58d6c25dc49a8ff3 006a9c4671a6d1386f7d7dc800525e98697625ee Alex <alex@alex.local> 1260535122 +0300 commit: add facets
|
|
8
|
+
006a9c4671a6d1386f7d7dc800525e98697625ee e903ba4c283cd16c7291500d4f80da24c8f5f4df Alex <alex@alex.local> 1260655428 +0300 commit: add facets & small fix
|
|
9
|
+
e903ba4c283cd16c7291500d4f80da24c8f5f4df 97260e66124380267a414850b1d648da79324455 Alex <alex@alex.local> 1261874167 +0300 commit: small upd
|
|
@@ -3,3 +3,6 @@
|
|
|
3
3
|
2bedc3eb69408a817194c28d14fb2dbfed5a21c0 9ea37d9fc7e1ad1504b50da2a1ec639c523fb8b7 Alex <alex@alex.local> 1260463407 +0300 update by push
|
|
4
4
|
9ea37d9fc7e1ad1504b50da2a1ec639c523fb8b7 e9d385c1913656b7ce15a1ac1424361d2e065a6c Alex <alex@alex.local> 1260465045 +0300 update by push
|
|
5
5
|
e9d385c1913656b7ce15a1ac1424361d2e065a6c 06864a068d188ab7ae17e39d58d6c25dc49a8ff3 Alex <alex@alex.local> 1260470082 +0300 update by push
|
|
6
|
+
06864a068d188ab7ae17e39d58d6c25dc49a8ff3 006a9c4671a6d1386f7d7dc800525e98697625ee Alex <alex@alex.local> 1260535716 +0300 update by push
|
|
7
|
+
006a9c4671a6d1386f7d7dc800525e98697625ee e903ba4c283cd16c7291500d4f80da24c8f5f4df Alex <alex@alex.local> 1260655434 +0300 update by push
|
|
8
|
+
e903ba4c283cd16c7291500d4f80da24c8f5f4df 97260e66124380267a414850b1d648da79324455 Alex <alex@alex.local> 1261874172 +0300 update by push
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
data/.git/refs/heads/master
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
97260e66124380267a414850b1d648da79324455
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
97260e66124380267a414850b1d648da79324455
|
data/Rakefile
CHANGED
|
@@ -18,7 +18,7 @@ require 'fileutils'
|
|
|
18
18
|
|
|
19
19
|
spec = Gem::Specification.new do |s|
|
|
20
20
|
s.name = "ruby-ext"
|
|
21
|
-
s.version = "0.2.
|
|
21
|
+
s.version = "0.2.1"
|
|
22
22
|
s.summary = "Set of common Ruby language extensions"
|
|
23
23
|
s.description = "Set of common Ruby language extensions"
|
|
24
24
|
s.author = "Alexey Petrushin"
|
|
@@ -32,11 +32,11 @@ module DeclarativeCache
|
|
|
32
32
|
|
|
33
33
|
klass.class_eval{alias_method :"cached_#{als}", :"#{m}"}
|
|
34
34
|
unless vnames.is_a? Array
|
|
35
|
-
script = single_version_without_args.
|
|
35
|
+
script = single_version_without_args.interpolate binding
|
|
36
36
|
@versions[vnames] = 0 unless @versions.include? vnames
|
|
37
37
|
else
|
|
38
38
|
vnames_str = vnames.collect{|vname| "'#{vname}' => nil"}.join(', ')
|
|
39
|
-
script = multiple_version_without_args.
|
|
39
|
+
script = multiple_version_without_args.interpolate binding
|
|
40
40
|
vnames.each{|vname| @versions[vname] = 0 unless @versions.include? vname}
|
|
41
41
|
end
|
|
42
42
|
klass.class_eval script, __FILE__, __LINE__
|
|
@@ -52,11 +52,11 @@ module DeclarativeCache
|
|
|
52
52
|
|
|
53
53
|
klass.class_eval{alias_method :"cached_#{als}", :"#{m}"}
|
|
54
54
|
unless vnames.is_a? Array
|
|
55
|
-
script = single_version_with_args.
|
|
55
|
+
script = single_version_with_args.interpolate binding
|
|
56
56
|
@versions[vnames] = 0 unless @versions.include? vnames
|
|
57
57
|
else
|
|
58
58
|
vnames_str = vnames.collect{|vname| "'#{vname}' => nil"}.join(', ')
|
|
59
|
-
script = multiple_version_with_args.
|
|
59
|
+
script = multiple_version_with_args.interpolate binding
|
|
60
60
|
vnames.each{|vname| @versions[vname] = 0 unless @versions.include? vname}
|
|
61
61
|
end
|
|
62
62
|
klass.class_eval script, __FILE__, __LINE__
|
|
@@ -87,17 +87,17 @@ class ArgumentsParser
|
|
|
87
87
|
end
|
|
88
88
|
end
|
|
89
89
|
|
|
90
|
-
|
|
91
|
-
def
|
|
90
|
+
Module.class_eval do
|
|
91
|
+
def prepare_arguments_for method, *args
|
|
92
92
|
# Register parsers
|
|
93
93
|
ArgumentsParser.register method, args
|
|
94
|
-
|
|
94
|
+
|
|
95
95
|
# Wrap method
|
|
96
96
|
old_method = :"#{method}_wparg"
|
|
97
97
|
alias_method old_method, method
|
|
98
98
|
code = <<END
|
|
99
99
|
def #{method} *args, &block
|
|
100
|
-
|
|
100
|
+
#{old_method} *ArgumentsParser.parse_arguments_for(:#{method}, *args), &block
|
|
101
101
|
end
|
|
102
102
|
END
|
|
103
103
|
class_eval code, __FILE__, __LINE__
|
data/lib/ruby_ext/string.rb
CHANGED
|
@@ -11,11 +11,11 @@ class String
|
|
|
11
11
|
"@#{self}"
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
# def interpolate binding
|
|
15
|
+
# binding.should! :be_a, Binding
|
|
16
|
+
# return gsub(/\#\{.+?\}/) do |term|
|
|
17
|
+
# identifier = term.slice(2 .. term.size-2)
|
|
18
|
+
# binding.eval identifier
|
|
19
|
+
# end
|
|
20
|
+
# end
|
|
21
21
|
end
|
data/lib/ruby_ext.rb
CHANGED
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
core = [
|
|
2
|
+
'facets/array/indexable', # Array first!, last!
|
|
3
|
+
'facets/enumerable/every',
|
|
4
|
+
'facets/enumerable/group_by',
|
|
5
|
+
'facets/exception/detail', # pretty print
|
|
6
|
+
'facets/duplicable', # false.dup(), false.clone() and so on.
|
|
7
|
+
'facets/blank',
|
|
8
|
+
'facets/numeric/round.rb', # round_at, round_to
|
|
9
|
+
'facets/hash',
|
|
10
|
+
'facets/string/interpolate',
|
|
11
|
+
'facets/ostruct',
|
|
12
|
+
'facets/openobject'
|
|
13
|
+
]
|
|
14
|
+
|
|
15
|
+
more = [
|
|
16
|
+
# 'facets/basicobject', causes problem with rspec
|
|
17
|
+
'facets/opencascade',
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
(core + more).each{|f| require f}
|
|
21
|
+
|
|
1
22
|
%w{
|
|
2
23
|
kernel
|
|
3
24
|
module
|
|
File without changes
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ruby-ext
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Alexey Petrushin
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
|
|
12
|
-
date: 2009-12-
|
|
12
|
+
date: 2009-12-27 00:00:00 +03:00
|
|
13
13
|
default_executable:
|
|
14
14
|
dependencies: []
|
|
15
15
|
|
|
@@ -38,12 +38,12 @@ files:
|
|
|
38
38
|
- lib/ruby_ext/symbol.rb
|
|
39
39
|
- lib/ruby_ext/synchronizer.rb
|
|
40
40
|
- lib/ruby_ext.rb
|
|
41
|
-
- spec/assert_spec.rb
|
|
42
41
|
- spec/declarative_cache_spec.rb
|
|
43
42
|
- spec/kernel_spec.rb
|
|
44
43
|
- spec/module_spec.rb
|
|
45
44
|
- spec/open_constructor_spec.rb
|
|
46
45
|
- spec/prepare_arguments_spec.rb
|
|
46
|
+
- spec/should_spec.rb
|
|
47
47
|
- spec/spec.opts
|
|
48
48
|
- spec/spec_require.rb
|
|
49
49
|
- spec/synchronizer_spec.rb
|
|
@@ -66,20 +66,25 @@ files:
|
|
|
66
66
|
- .git/logs/HEAD
|
|
67
67
|
- .git/logs/refs/heads/master
|
|
68
68
|
- .git/logs/refs/remotes/origin/master
|
|
69
|
+
- .git/objects/00/6a9c4671a6d1386f7d7dc800525e98697625ee
|
|
69
70
|
- .git/objects/01/a6ccb4f4fb0c6cfdf9ec1bb23779721cf503e9
|
|
70
71
|
- .git/objects/05/18bc8be5c58a5bd9d7fc82c75c87478aa361e9
|
|
71
72
|
- .git/objects/05/b76a8d022e0e0fbca5b69b9f7b4d2a132fcc89
|
|
72
73
|
- .git/objects/06/864a068d188ab7ae17e39d58d6c25dc49a8ff3
|
|
74
|
+
- .git/objects/0a/c8dd6e52864a0384859a517d546546d61e3c0c
|
|
73
75
|
- .git/objects/0e/13cf36bc744c90f576c0a31c3f76dcf1fd2485
|
|
74
76
|
- .git/objects/0f/add343d54917efbd138ee2d7c092a52b12ebd5
|
|
75
77
|
- .git/objects/10/53306d48d434b477991f5fb64a6d8d3aca84a0
|
|
76
78
|
- .git/objects/17/70296a7ba0a9aaadd3e857ae34d92d2e13e935
|
|
79
|
+
- .git/objects/18/fa4a1fd6a6e5293c34c6eebefaff644c553a97
|
|
80
|
+
- .git/objects/19/342d43c2e91b7bca75f329bf758d69818c827e
|
|
77
81
|
- .git/objects/20/c2ee1bb9f6749181e464a4ce444092fc1a1ecb
|
|
78
82
|
- .git/objects/26/4d70a16bbad0c5b3b16fb7a92bcc6178f2cca2
|
|
79
83
|
- .git/objects/27/eb5694d78540b1a489a1aff5415d4713d5fca9
|
|
80
84
|
- .git/objects/29/88f150ee1623b97d234b2742b30caad382775b
|
|
81
85
|
- .git/objects/29/8cb590f97362cc7a326815dac3289a88b69153
|
|
82
86
|
- .git/objects/2b/edc3eb69408a817194c28d14fb2dbfed5a21c0
|
|
87
|
+
- .git/objects/2d/2f0676ef5509c4e7a65dcc3d0fceaa1368ffaa
|
|
83
88
|
- .git/objects/2e/3e3fc8e46949a9b944da3c36207c444aa2c9b7
|
|
84
89
|
- .git/objects/2f/74073c8d1580f5a8fc59389b4c1b6d89e4d85f
|
|
85
90
|
- .git/objects/34/a418e8c4b43510124491ff3be262edd8008043
|
|
@@ -91,6 +96,7 @@ files:
|
|
|
91
96
|
- .git/objects/54/4fb213faf0c1b4cc459ada84120823d204ae3a
|
|
92
97
|
- .git/objects/55/a433dd00ba298006a2fc028964eb0cde7c2e5b
|
|
93
98
|
- .git/objects/55/f338afb8c82f8cad38b28d0e8cf887f9bda1ce
|
|
99
|
+
- .git/objects/57/64ef3e607d3570146219cd858a1dd4afb24ea5
|
|
94
100
|
- .git/objects/57/cf2479bb9c6e31118c42c5cceaffada1862c72
|
|
95
101
|
- .git/objects/59/60bdbdc3be504b89371c2b4b09d22754251260
|
|
96
102
|
- .git/objects/59/653cefe5b174e4a7002100f024448cdb337373
|
|
@@ -99,7 +105,9 @@ files:
|
|
|
99
105
|
- .git/objects/5d/37379f1b929c7b82f96382fc256895a50e97fd
|
|
100
106
|
- .git/objects/60/a681e873ca0ae0b7da3f37dbc5701f6e42b970
|
|
101
107
|
- .git/objects/61/d4509b8fc63e53b8e5d417ace33919e8a7a8f2
|
|
108
|
+
- .git/objects/6a/0946485381787f48e60893549eac156d1f057c
|
|
102
109
|
- .git/objects/6b/dcac704e4f8abe1928e8f3f5d9b7e17e4992de
|
|
110
|
+
- .git/objects/6b/e43d64c6aeffd7ac08701e1ee93865248683cf
|
|
103
111
|
- .git/objects/6c/18afba63861887fb7ac53fee1b24c181b2a8e4
|
|
104
112
|
- .git/objects/70/222d828221b1884b6b8ce124b7f22eea5d420d
|
|
105
113
|
- .git/objects/74/bf8f37d70d9818474e1fb5081f04c496741a28
|
|
@@ -110,23 +118,37 @@ files:
|
|
|
110
118
|
- .git/objects/84/2a9747ce87d8b90ee360f7252b557ff8e19352
|
|
111
119
|
- .git/objects/90/eea923ef08bb39013e7cd5be777b7539733638
|
|
112
120
|
- .git/objects/93/276f74ef0e157c5f81eeec7844f30d4eceda7a
|
|
121
|
+
- .git/objects/97/260e66124380267a414850b1d648da79324455
|
|
122
|
+
- .git/objects/9c/d9497bad03afd65531dda2695719b3593e02b6
|
|
113
123
|
- .git/objects/9e/a37d9fc7e1ad1504b50da2a1ec639c523fb8b7
|
|
124
|
+
- .git/objects/a4/ab487fcb12cfb831b09c525544f52d60a98598
|
|
114
125
|
- .git/objects/ab/daaab37771475482389bdfcb2021b1651ba399
|
|
126
|
+
- .git/objects/ad/09237b6008fc0ebfb9b8c920490dda8503bfd1
|
|
127
|
+
- .git/objects/ad/7462077a480cb995d1ad397c3c737644e59887
|
|
115
128
|
- .git/objects/ad/e1a70e7cf984a2f518d19ef625362d78a5fbd0
|
|
129
|
+
- .git/objects/b4/cbb05893636d6b7314fbc4df7e3a8dcaeb0de1
|
|
116
130
|
- .git/objects/b6/17a8cc2ae7f6ea496051db493aa56edc178073
|
|
117
131
|
- .git/objects/b6/863b5d4c0a4d87b81a9bbc29e786fcf7ef0df2
|
|
118
132
|
- .git/objects/bc/ee5c51061bdb9ab5a5aea4f00245a8ab3689b2
|
|
133
|
+
- .git/objects/be/a9ade8ddb19a7ff5b18bc77fac5cb27d6cf284
|
|
119
134
|
- .git/objects/c3/faad9ba42388a50a57acf9df88f6d2a64a4122
|
|
135
|
+
- .git/objects/ca/9716fd518aac44d4acaa94a86838cde6030f6a
|
|
136
|
+
- .git/objects/d0/b6eae8243889753a5a3e9a801b4dd5bcd09d91
|
|
137
|
+
- .git/objects/d2/366fe2df53e14c3069d23cad37fe21a8f1c129
|
|
120
138
|
- .git/objects/d4/8b935ca7e38d2434ceb1711544293f4baf8203
|
|
121
139
|
- .git/objects/dd/e851a435431f0c03b12f7a9ca6e5dd5ce80617
|
|
122
140
|
- .git/objects/e0/c54997bfab8a0bf135d0de79ddee431b9112ad
|
|
141
|
+
- .git/objects/e9/03ba4c283cd16c7291500d4f80da24c8f5f4df
|
|
123
142
|
- .git/objects/e9/d385c1913656b7ce15a1ac1424361d2e065a6c
|
|
124
143
|
- .git/objects/f0/c37cf78e53e6f859111f35d9dbf52cbfbc633d
|
|
144
|
+
- .git/objects/f0/f0c35fd385e1ac016e6d3f7d72ea188c578b77
|
|
125
145
|
- .git/objects/f1/2346269ed5287267f0271f57546291c013b318
|
|
146
|
+
- .git/objects/f1/bf0dc44ec7b29845cdecd0b295aa8075a84940
|
|
126
147
|
- .git/objects/f3/655e33b96e5b8b25990a2ae88fcdfed415074b
|
|
127
148
|
- .git/objects/f7/c0fa5621b81aca548c738c08907055696e1956
|
|
128
149
|
- .git/objects/f8/c960b12cbddb90f18123673e6778efdc822058
|
|
129
150
|
- .git/objects/fb/85b5793dcebae826b04cd8c37406504540d8a4
|
|
151
|
+
- .git/objects/fd/305b4d657d487e6f5f69c760b8d433d16f6a47
|
|
130
152
|
- .git/objects/fd/d3ef7ec06e804f3688491e21caaa4d89796b16
|
|
131
153
|
- .git/objects/pack/pack-304aec40b1be62a8e3c105c6423354d9e62bd089.idx
|
|
132
154
|
- .git/objects/pack/pack-304aec40b1be62a8e3c105c6423354d9e62bd089.pack
|