utilrb 1.6.6 → 2.0
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/Manifest.txt +10 -9
- data/README.rd +23 -0
- data/Rakefile +40 -37
- data/ext/utilrb/extconf.rb +36 -0
- data/ext/{proc.cc → utilrb/proc.c} +7 -6
- data/ext/utilrb/ruby_allocator.hh +76 -0
- data/ext/{ruby_internals-1.8.h → utilrb/ruby_internals-1.8.h} +0 -0
- data/ext/{ruby_internals-1.9.h → utilrb/ruby_internals-1.9.h} +0 -0
- data/ext/{swap.cc → utilrb/swap.cc} +0 -0
- data/ext/utilrb/utilrb.cc +79 -0
- data/ext/{value_set.cc → utilrb/value_set.cc} +5 -5
- data/ext/{weakref.cc → utilrb/weakref.cc} +0 -0
- data/lib/utilrb/common.rb +7 -2
- data/lib/utilrb/doc/rake.rb +46 -15
- data/lib/utilrb/kernel/load_dsl_file.rb +2 -2
- data/lib/utilrb/kernel/options.rb +6 -0
- data/lib/utilrb/logger/forward.rb +7 -0
- data/lib/utilrb/logger/hierarchy.rb +100 -42
- data/lib/utilrb/logger/indent.rb +38 -3
- data/lib/utilrb/logger/log_pp.rb +1 -1
- data/lib/utilrb/logger/root.rb +27 -12
- data/lib/utilrb/module/inherited_enumerable.rb +2 -196
- data/lib/utilrb/objectstats.rb +4 -1
- data/lib/utilrb/pkgconfig.rb +42 -6
- data/lib/utilrb/rake_common.rb +12 -0
- data/lib/utilrb/ruby_object_graph.rb +195 -46
- data/lib/utilrb/yard.rb +89 -89
- data/test/test_array.rb +1 -1
- data/test/test_dir.rb +1 -1
- data/test/test_enumerable.rb +7 -1
- data/test/test_event_loop.rb +407 -0
- data/test/test_exception.rb +1 -1
- data/test/test_gc.rb +1 -1
- data/test/test_hash.rb +57 -1
- data/test/test_kernel.rb +52 -21
- data/test/test_logger.rb +150 -1
- data/test/test_misc.rb +1 -1
- data/test/test_models.rb +212 -0
- data/test/test_module.rb +41 -71
- data/test/test_object.rb +1 -1
- data/test/test_objectstats.rb +1 -1
- data/test/test_pkgconfig.rb +7 -5
- data/test/test_proc.rb +1 -1
- data/test/test_set.rb +1 -1
- data/test/test_thread_pool.rb +409 -0
- data/test/test_time.rb +6 -6
- data/test/test_unbound_method.rb +1 -1
- metadata +157 -131
- data/README.txt +0 -45
- data/ext/extconf.rb +0 -29
- data/ext/utilrb_ext.cc +0 -144
data/test/test_time.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'test_config'
|
1
|
+
require 'test/test_config'
|
2
2
|
require 'utilrb/time'
|
3
3
|
|
4
4
|
class TC_Time < Test::Unit::TestCase
|
@@ -6,8 +6,8 @@ class TC_Time < Test::Unit::TestCase
|
|
6
6
|
assert_equal("0:00:00.000", Time.at(0).to_hms)
|
7
7
|
assert_equal("0:00:00.100", Time.at(0.1).to_hms)
|
8
8
|
assert_equal("0:00:34.100", Time.at(34.1).to_hms)
|
9
|
-
|
10
|
-
|
9
|
+
assert("0:21:34.100" == Time.at(21 * 60 + 34, 100000).to_hms)
|
10
|
+
assert("236:21:34.100", Time.at(236 * 3600 + 21 * 60 + 34, 100000).to_hms)
|
11
11
|
end
|
12
12
|
def test_from_hms
|
13
13
|
assert_equal([0, 0, 0, 1], Time.hms_decomposition('0:00:00.001'))
|
@@ -18,9 +18,9 @@ class TC_Time < Test::Unit::TestCase
|
|
18
18
|
assert_equal([0, 0, 0, 100], Time.hms_decomposition('0:00:00.100'))
|
19
19
|
|
20
20
|
assert_equal([0, 0, 0, 0], Time.hms_decomposition("0:00:00.000"))
|
21
|
-
assert_equal(Time.at(34
|
22
|
-
assert_equal(Time.at(21 * 60 + 34
|
23
|
-
assert_equal(Time.at(236 * 3600 + 21 * 60 + 34
|
21
|
+
assert_equal(Time.at(34, 100000), Time.from_hms("0:00:34.100"))
|
22
|
+
assert_equal(Time.at(21 * 60 + 34, 100000), Time.from_hms("0:21:34.100"))
|
23
|
+
assert_equal(Time.at(236 * 3600 + 21 * 60 + 34, 100000), Time.from_hms("236:21:34.100"))
|
24
24
|
|
25
25
|
assert_equal([329991, 0, 10, 0], Time.hms_decomposition("329991:00:10"))
|
26
26
|
assert_equal([329991, 8, 8, 0], Time.hms_decomposition("329991:08:08"))
|
data/test/test_unbound_method.rb
CHANGED
metadata
CHANGED
@@ -1,133 +1,159 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: utilrb
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: '2.0'
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 1
|
8
|
-
- 6
|
9
|
-
- 6
|
10
|
-
version: 1.6.6
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Sylvain Joyeux
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2013-09-19 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
21
15
|
name: facets
|
22
|
-
|
23
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
24
17
|
none: false
|
25
|
-
requirements:
|
26
|
-
- -
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
hash: 31
|
29
|
-
segments:
|
30
|
-
- 2
|
31
|
-
- 4
|
32
|
-
- 0
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
33
21
|
version: 2.4.0
|
34
22
|
type: :runtime
|
35
|
-
|
36
|
-
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 2.4.0
|
30
|
+
- !ruby/object:Gem::Dependency
|
37
31
|
name: rake
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0.9'
|
38
|
+
type: :runtime
|
38
39
|
prerelease: false
|
39
|
-
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
41
|
none: false
|
41
|
-
requirements:
|
42
|
-
- -
|
43
|
-
- !ruby/object:Gem::Version
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0.9'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: rake-compiler
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ~>
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 0.8.0
|
48
54
|
type: :runtime
|
49
|
-
version_requirements: *id002
|
50
|
-
- !ruby/object:Gem::Dependency
|
51
|
-
name: rdoc
|
52
55
|
prerelease: false
|
53
|
-
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
54
57
|
none: false
|
55
|
-
requirements:
|
58
|
+
requirements:
|
56
59
|
- - ~>
|
57
|
-
- !ruby/object:Gem::Version
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
- !ruby/object:Gem::
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 0.8.0
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: hoe-yard
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 0.1.2
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 0.1.2
|
78
|
+
- !ruby/object:Gem::Dependency
|
66
79
|
name: flexmock
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 0.8.6
|
86
|
+
type: :development
|
67
87
|
prerelease: false
|
68
|
-
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
69
89
|
none: false
|
70
|
-
requirements:
|
71
|
-
- -
|
72
|
-
- !ruby/object:Gem::Version
|
73
|
-
hash: 51
|
74
|
-
segments:
|
75
|
-
- 0
|
76
|
-
- 8
|
77
|
-
- 6
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
78
93
|
version: 0.8.6
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: debugger-ruby_core_source
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
79
102
|
type: :development
|
80
|
-
version_requirements: *id004
|
81
|
-
- !ruby/object:Gem::Dependency
|
82
|
-
name: hoe
|
83
103
|
prerelease: false
|
84
|
-
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: hoe
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
85
113
|
none: false
|
86
|
-
requirements:
|
114
|
+
requirements:
|
87
115
|
- - ~>
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
|
90
|
-
segments:
|
91
|
-
- 3
|
92
|
-
- 0
|
93
|
-
version: "3.0"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '3.7'
|
94
118
|
type: :development
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ~>
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '3.7'
|
126
|
+
description: ! 'Utilrb is yet another Ruby toolkit, in the spirit of facets. It includes
|
127
|
+
all
|
128
|
+
|
129
|
+
the standard class extensions I use in other projects.'
|
130
|
+
email:
|
104
131
|
- sylvain.joyeux@m4x.org
|
105
132
|
executables: []
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
extra_rdoc_files:
|
133
|
+
extensions:
|
134
|
+
- ext/utilrb/extconf.rb
|
135
|
+
extra_rdoc_files:
|
110
136
|
- History.txt
|
111
137
|
- License.txt
|
112
138
|
- Manifest.txt
|
113
|
-
|
114
|
-
files:
|
139
|
+
files:
|
115
140
|
- .gemtest
|
116
141
|
- History.txt
|
117
142
|
- License.txt
|
118
143
|
- Manifest.txt
|
119
|
-
- README.
|
144
|
+
- README.rd
|
120
145
|
- Rakefile
|
121
146
|
- bm/allocation.rb
|
122
147
|
- bm/speed.rb
|
123
|
-
- ext/extconf.rb
|
124
|
-
- ext/proc.
|
125
|
-
- ext/ruby_internals-1.8.h
|
126
|
-
- ext/ruby_internals-1.9.h
|
127
|
-
- ext/
|
128
|
-
- ext/
|
129
|
-
- ext/
|
130
|
-
- ext/
|
148
|
+
- ext/utilrb/extconf.rb
|
149
|
+
- ext/utilrb/proc.c
|
150
|
+
- ext/utilrb/ruby_internals-1.8.h
|
151
|
+
- ext/utilrb/ruby_internals-1.9.h
|
152
|
+
- ext/utilrb/ruby_allocator.hh
|
153
|
+
- ext/utilrb/swap.cc
|
154
|
+
- ext/utilrb/utilrb.cc
|
155
|
+
- ext/utilrb/value_set.cc
|
156
|
+
- ext/utilrb/weakref.cc
|
131
157
|
- lib/utilrb.rb
|
132
158
|
- lib/utilrb/array.rb
|
133
159
|
- lib/utilrb/array/to_s.rb
|
@@ -227,57 +253,57 @@ files:
|
|
227
253
|
- test/test_time.rb
|
228
254
|
- test/test_unbound_method.rb
|
229
255
|
- test/test_weakref.rb
|
230
|
-
|
231
|
-
|
232
|
-
|
256
|
+
- test/test_models.rb
|
257
|
+
- test/test_thread_pool.rb
|
258
|
+
- test/test_event_loop.rb
|
259
|
+
homepage: http://rock-robotics.org
|
260
|
+
licenses:
|
261
|
+
- BSD
|
233
262
|
post_install_message:
|
234
|
-
rdoc_options:
|
235
|
-
- --
|
236
|
-
-
|
237
|
-
|
263
|
+
rdoc_options:
|
264
|
+
- --title
|
265
|
+
- TestUtilrb Documentation
|
266
|
+
- --quiet
|
267
|
+
require_paths:
|
238
268
|
- lib
|
239
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
269
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
240
270
|
none: false
|
241
|
-
requirements:
|
242
|
-
- -
|
243
|
-
- !ruby/object:Gem::Version
|
244
|
-
|
245
|
-
|
246
|
-
- 0
|
247
|
-
version: "0"
|
248
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
271
|
+
requirements:
|
272
|
+
- - ! '>='
|
273
|
+
- !ruby/object:Gem::Version
|
274
|
+
version: '0'
|
275
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
249
276
|
none: false
|
250
|
-
requirements:
|
251
|
-
- -
|
252
|
-
- !ruby/object:Gem::Version
|
253
|
-
|
254
|
-
segments:
|
255
|
-
- 0
|
256
|
-
version: "0"
|
277
|
+
requirements:
|
278
|
+
- - ! '>='
|
279
|
+
- !ruby/object:Gem::Version
|
280
|
+
version: '0'
|
257
281
|
requirements: []
|
258
|
-
|
259
282
|
rubyforge_project: utilrb
|
260
|
-
rubygems_version: 1.8.
|
283
|
+
rubygems_version: 1.8.23
|
261
284
|
signing_key:
|
262
285
|
specification_version: 3
|
263
|
-
summary:
|
264
|
-
test_files:
|
265
|
-
- test/
|
286
|
+
summary: Utilrb is yet another Ruby toolkit, in the spirit of facets
|
287
|
+
test_files:
|
288
|
+
- test/test_models.rb
|
289
|
+
- test/test_kernel.rb
|
266
290
|
- test/test_unbound_method.rb
|
267
|
-
- test/
|
291
|
+
- test/test_hash.rb
|
268
292
|
- test/test_exception.rb
|
269
|
-
- test/
|
270
|
-
- test/test_dir.rb
|
271
|
-
- test/test_time.rb
|
272
|
-
- test/test_misc.rb
|
273
|
-
- test/test_set.rb
|
293
|
+
- test/test_thread_pool.rb
|
274
294
|
- test/test_config.rb
|
295
|
+
- test/test_time.rb
|
296
|
+
- test/test_event_loop.rb
|
275
297
|
- test/test_logger.rb
|
276
|
-
- test/test_proc.rb
|
277
|
-
- test/test_hash.rb
|
278
|
-
- test/test_array.rb
|
279
|
-
- test/test_object.rb
|
280
298
|
- test/test_module.rb
|
281
|
-
- test/
|
282
|
-
- test/
|
299
|
+
- test/test_objectstats.rb
|
300
|
+
- test/test_enumerable.rb
|
283
301
|
- test/test_gc.rb
|
302
|
+
- test/test_misc.rb
|
303
|
+
- test/test_object.rb
|
304
|
+
- test/test_array.rb
|
305
|
+
- test/test_dir.rb
|
306
|
+
- test/test_weakref.rb
|
307
|
+
- test/test_proc.rb
|
308
|
+
- test/test_set.rb
|
309
|
+
- test/test_pkgconfig.rb
|
data/README.txt
DELETED
@@ -1,45 +0,0 @@
|
|
1
|
-
= Utilrb
|
2
|
-
http://utilrb.rubyforge.org
|
3
|
-
http://www.rubyforge.org/projects/utilrb
|
4
|
-
http://github.com/doudou/util-rb (git repository)
|
5
|
-
|
6
|
-
== License
|
7
|
-
|
8
|
-
Copyright (c) 2006-2008
|
9
|
-
Sylvain Joyeux <sylvain.joyeux@m4x.org>
|
10
|
-
LAAS/CNRS <openrobots@laas.fr>
|
11
|
-
|
12
|
-
This work is licensed under the BSD license. See License.txt for details
|
13
|
-
|
14
|
-
== What is Utilrb ?
|
15
|
-
|
16
|
-
Utilrb is yet another Ruby toolkit, in the spirit of facets. It includes all
|
17
|
-
the standard class extensions I use in other projects.
|
18
|
-
|
19
|
-
== Installation
|
20
|
-
|
21
|
-
The only dependency Utilrb has is flexmock if you want to run tests. It is
|
22
|
-
available as a gem, so you can run
|
23
|
-
|
24
|
-
gem install flexmock
|
25
|
-
|
26
|
-
== Utilrb's C extension
|
27
|
-
Utilrb includes a C extension in ext/. It is optional, but some of the
|
28
|
-
functionalities will be disabled if it is not present. Trying to require
|
29
|
-
a file in which there is a C-only feature will yield a warning on STDOUT.
|
30
|
-
|
31
|
-
* some features have a Ruby version, but a C version is provided for
|
32
|
-
performance:
|
33
|
-
- Enumerable#each_uniq
|
34
|
-
|
35
|
-
* some features are C-only
|
36
|
-
- ValueSet class
|
37
|
-
- Kernel#swap!
|
38
|
-
|
39
|
-
The environment variable <tt>UTILRB_FASTER_MODE</tt> controls the extension
|
40
|
-
loading. Set it to +no+ to disable the extension, to +yes+ to force it
|
41
|
-
(an error is generated if the extension is not available). If the variable
|
42
|
-
is not set, the extension is loaded if available.
|
43
|
-
|
44
|
-
== CHANGES
|
45
|
-
:include: History.txt
|
data/ext/extconf.rb
DELETED
@@ -1,29 +0,0 @@
|
|
1
|
-
require 'mkmf'
|
2
|
-
|
3
|
-
CONFIG['CC'] = "g++"
|
4
|
-
if RUBY_VERSION >= "1.9"
|
5
|
-
$CFLAGS += " -DRUBY_IS_19"
|
6
|
-
end
|
7
|
-
|
8
|
-
if ENV['RUBY_SOURCE_DIR']
|
9
|
-
$CFLAGS += " -DHAS_RUBY_SOURCE -I#{ENV['RUBY_SOURCE_DIR']}"
|
10
|
-
end
|
11
|
-
|
12
|
-
if try_link("int main() { }", "-module")
|
13
|
-
$LDFLAGS += " -module"
|
14
|
-
end
|
15
|
-
create_makefile("utilrb_ext")
|
16
|
-
|
17
|
-
## WORKAROUND a problem with mkmf.rb
|
18
|
-
# It seems that the newest version do define an 'install' target. However, that
|
19
|
-
# install target tries to install in the system directories
|
20
|
-
#
|
21
|
-
# The issue is that RubyGems *does* call make install. Ergo, gem install utilrb
|
22
|
-
# is broken right now
|
23
|
-
lines = File.readlines("Makefile")
|
24
|
-
lines.delete_if { |l| l =~ /^install:/ }
|
25
|
-
lines << "install:"
|
26
|
-
File.open("Makefile", 'w') do |io|
|
27
|
-
io.write lines.join("\n")
|
28
|
-
end
|
29
|
-
|