ruby2ruby 2.0.2 → 2.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data.tar.gz.sig +0 -0
- data/History.txt +11 -0
- data/lib/ruby2ruby.rb +3 -1
- data/test/test_ruby2ruby.rb +17 -1
- metadata +11 -11
- metadata.gz.sig +2 -2
data.tar.gz.sig
CHANGED
Binary file
|
data/History.txt
CHANGED
@@ -1,3 +1,14 @@
|
|
1
|
+
=== 2.0.3 / 2013-02-07
|
2
|
+
|
3
|
+
* 2 minor enhancements:
|
4
|
+
|
5
|
+
* 1.9: Added support for ! call to go back to (not ...).
|
6
|
+
* 2nd and 3rd order testing now uses RubyPraser.for_current_ruby for maximal carnage.
|
7
|
+
|
8
|
+
* 1 bug fix:
|
9
|
+
|
10
|
+
* On failure (eg ruby 2.0), fall back to compound RubyParser instance for 2nd & 3rd order testing
|
11
|
+
|
1
12
|
=== 2.0.2 / 2013-01-16
|
2
13
|
|
3
14
|
* 1 minor enhancement:
|
data/lib/ruby2ruby.rb
CHANGED
@@ -24,7 +24,7 @@ class Regexp
|
|
24
24
|
end
|
25
25
|
|
26
26
|
class Ruby2Ruby < SexpProcessor
|
27
|
-
VERSION = '2.0.
|
27
|
+
VERSION = '2.0.3'
|
28
28
|
LINE_LENGTH = 78
|
29
29
|
|
30
30
|
BINARY = [:<=>, :==, :<, :>, :<=, :>=, :-, :+, :*, :/, :%, :<<, :>>, :**]
|
@@ -229,6 +229,8 @@ class Ruby2Ruby < SexpProcessor
|
|
229
229
|
receiver ||= "self"
|
230
230
|
rhs = args.pop
|
231
231
|
"#{receiver}[#{args.join(', ')}] = #{rhs}"
|
232
|
+
when :"!" then
|
233
|
+
"(not #{receiver})"
|
232
234
|
when :"-@" then
|
233
235
|
"-#{receiver}"
|
234
236
|
when :"+@" then
|
data/test/test_ruby2ruby.rb
CHANGED
@@ -350,6 +350,21 @@ class TestRuby2Ruby < R2RTestCase
|
|
350
350
|
util_compare inn, out
|
351
351
|
end
|
352
352
|
|
353
|
+
def test_unless_vs_if_not
|
354
|
+
rb1 = "a unless b"
|
355
|
+
rb2 = "a if (not b)"
|
356
|
+
rb3 = "a if ! b"
|
357
|
+
|
358
|
+
util_compare Ruby18Parser.new.parse(rb1), rb1
|
359
|
+
util_compare Ruby19Parser.new.parse(rb1), rb1
|
360
|
+
|
361
|
+
util_compare Ruby18Parser.new.parse(rb2), rb1
|
362
|
+
util_compare Ruby19Parser.new.parse(rb2), rb2
|
363
|
+
|
364
|
+
util_compare Ruby18Parser.new.parse(rb3), rb1
|
365
|
+
util_compare Ruby19Parser.new.parse(rb3), rb2
|
366
|
+
end
|
367
|
+
|
353
368
|
def util_compare sexp, expected_ruby, expected_eval = nil
|
354
369
|
assert_equal expected_ruby, @processor.process(sexp)
|
355
370
|
assert_equal expected_eval, eval(expected_ruby) if expected_eval
|
@@ -384,7 +399,8 @@ def silent_eval ruby
|
|
384
399
|
end
|
385
400
|
|
386
401
|
def morph_and_eval src, from, to, processor
|
387
|
-
|
402
|
+
parser = RubyParser.for_current_ruby rescue RubyParser.new
|
403
|
+
new_src = processor.new.process(parser.process(src.sub(from, to)))
|
388
404
|
|
389
405
|
silent_eval new_src
|
390
406
|
new_src
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby2ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 9
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 2
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 2.0.
|
9
|
+
- 3
|
10
|
+
version: 2.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Ryan Davis
|
@@ -36,7 +36,7 @@ cert_chain:
|
|
36
36
|
FBHgymkyj/AOSqKRIpXPhjC6
|
37
37
|
-----END CERTIFICATE-----
|
38
38
|
|
39
|
-
date: 2013-
|
39
|
+
date: 2013-02-07 00:00:00 Z
|
40
40
|
dependencies:
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: sexp_processor
|
@@ -76,11 +76,11 @@ dependencies:
|
|
76
76
|
requirements:
|
77
77
|
- - ~>
|
78
78
|
- !ruby/object:Gem::Version
|
79
|
-
hash:
|
79
|
+
hash: 17
|
80
80
|
segments:
|
81
81
|
- 4
|
82
|
-
-
|
83
|
-
version: "4.
|
82
|
+
- 5
|
83
|
+
version: "4.5"
|
84
84
|
type: :development
|
85
85
|
version_requirements: *id003
|
86
86
|
- !ruby/object:Gem::Dependency
|
@@ -106,11 +106,11 @@ dependencies:
|
|
106
106
|
requirements:
|
107
107
|
- - ~>
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
hash:
|
109
|
+
hash: 13
|
110
110
|
segments:
|
111
111
|
- 3
|
112
|
-
-
|
113
|
-
version: "3.
|
112
|
+
- 5
|
113
|
+
version: "3.5"
|
114
114
|
type: :development
|
115
115
|
version_requirements: *id005
|
116
116
|
description: |-
|
@@ -167,7 +167,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
167
167
|
requirements: []
|
168
168
|
|
169
169
|
rubyforge_project: seattlerb
|
170
|
-
rubygems_version: 1.8.
|
170
|
+
rubygems_version: 1.8.25
|
171
171
|
signing_key:
|
172
172
|
specification_version: 3
|
173
173
|
summary: ruby2ruby provides a means of generating pure ruby code easily from RubyParser compatible Sexps
|
metadata.gz.sig
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
|
2
|
-
�
|
1
|
+
�ҟAd�����I����L��L9���Q�*��o�qu��Β�p�S���f%�SGCt�L�:�
|
2
|
+
�Zu�t�+yh5e�PQ���R�����&)��4'���;Rѵ�KL��{���$�W���k�A�0�x���C?Wܔ�EK��鴳��8��<k��|��}~4Ƌ�R����ܽo$��A`d$&�ǡ�����W�e�עz<N"�
|