ruby-ext 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. data/.git/COMMIT_EDITMSG +1 -1
  2. data/.git/index +0 -0
  3. data/.git/logs/HEAD +3 -0
  4. data/.git/logs/refs/heads/master +3 -0
  5. data/.git/logs/refs/remotes/origin/master +3 -0
  6. data/.git/objects/00/6a9c4671a6d1386f7d7dc800525e98697625ee +3 -0
  7. data/.git/objects/0a/c8dd6e52864a0384859a517d546546d61e3c0c +0 -0
  8. data/.git/objects/18/fa4a1fd6a6e5293c34c6eebefaff644c553a97 +0 -0
  9. data/.git/objects/19/342d43c2e91b7bca75f329bf758d69818c827e +2 -0
  10. data/.git/objects/2d/2f0676ef5509c4e7a65dcc3d0fceaa1368ffaa +0 -0
  11. data/.git/objects/57/64ef3e607d3570146219cd858a1dd4afb24ea5 +0 -0
  12. data/.git/objects/6a/0946485381787f48e60893549eac156d1f057c +0 -0
  13. data/.git/objects/6b/e43d64c6aeffd7ac08701e1ee93865248683cf +0 -0
  14. data/.git/objects/97/260e66124380267a414850b1d648da79324455 +0 -0
  15. data/.git/objects/9c/d9497bad03afd65531dda2695719b3593e02b6 +0 -0
  16. data/.git/objects/a4/ab487fcb12cfb831b09c525544f52d60a98598 +0 -0
  17. data/.git/objects/ad/09237b6008fc0ebfb9b8c920490dda8503bfd1 +0 -0
  18. data/.git/objects/ad/7462077a480cb995d1ad397c3c737644e59887 +0 -0
  19. data/.git/objects/b4/cbb05893636d6b7314fbc4df7e3a8dcaeb0de1 +0 -0
  20. data/.git/objects/be/a9ade8ddb19a7ff5b18bc77fac5cb27d6cf284 +0 -0
  21. data/.git/objects/ca/9716fd518aac44d4acaa94a86838cde6030f6a +3 -0
  22. data/.git/objects/d0/b6eae8243889753a5a3e9a801b4dd5bcd09d91 +0 -0
  23. data/.git/objects/d2/366fe2df53e14c3069d23cad37fe21a8f1c129 +0 -0
  24. data/.git/objects/e9/03ba4c283cd16c7291500d4f80da24c8f5f4df +0 -0
  25. data/.git/objects/f0/f0c35fd385e1ac016e6d3f7d72ea188c578b77 +0 -0
  26. data/.git/objects/f1/bf0dc44ec7b29845cdecd0b295aa8075a84940 +0 -0
  27. data/.git/objects/fd/305b4d657d487e6f5f69c760b8d433d16f6a47 +0 -0
  28. data/.git/refs/heads/master +1 -1
  29. data/.git/refs/remotes/origin/master +1 -1
  30. data/Rakefile +1 -1
  31. data/lib/ruby_ext/declarative_cache.rb +4 -4
  32. data/lib/ruby_ext/prepare_arguments.rb +4 -4
  33. data/lib/ruby_ext/string.rb +7 -7
  34. data/lib/ruby_ext.rb +21 -0
  35. data/spec/{assert_spec.rb → should_spec.rb} +0 -0
  36. metadata +25 -3
data/.git/COMMIT_EDITMSG CHANGED
@@ -1 +1 @@
1
- add files from rails-ext
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
@@ -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
@@ -0,0 +1,3 @@
1
+ x��A
2
+ �0@Q�9E��L2�d
3
+ "z��d�Bk�F��VO���>|]���}�����h +%%��j.,�
@@ -0,0 +1,2 @@
1
+ xm����@ ����0[��"JN�VB�
2
+ ����TP �^�?$�y� >������������a�y���1�Vf�:�vs��w�� )aܴ
@@ -0,0 +1,3 @@
1
+ xu�AO1��v�c�K�� ���nBZ: ��ִ]��������}���z����nkU�xK�ݮ�$� � �F�Hv��!~A�4��|N?L۝
2
+ vY���|�N�K�ګС�c�}޽U��ٙ�h�N2��h�O�6j��?P�4�]�t�w�I�?��� �㜝���!�x`
3
+ X�H2Z��t )��_����6jIGe�W�|HIZz�o�KfD
@@ -1 +1 @@
1
- 06864a068d188ab7ae17e39d58d6c25dc49a8ff3
1
+ 97260e66124380267a414850b1d648da79324455
@@ -1 +1 @@
1
- 06864a068d188ab7ae17e39d58d6c25dc49a8ff3
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.0"
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.substitute binding
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.substitute binding
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.substitute binding
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.substitute binding
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
- class Object
91
- def self.prepare_arguments_for method, *args
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
- #{old_method} *ArgumentsParser.parse_arguments_for(:#{method}, *args), &block
100
+ #{old_method} *ArgumentsParser.parse_arguments_for(:#{method}, *args), &block
101
101
  end
102
102
  END
103
103
  class_eval code, __FILE__, __LINE__
@@ -11,11 +11,11 @@ class String
11
11
  "@#{self}"
12
12
  end
13
13
 
14
- def substitute 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
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.0
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-10 00:00:00 +03:00
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