sexp2ruby 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.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +3 -0
  3. data/.travis.yml +1 -2
  4. data/README.md +9 -0
  5. data/lib/{sexp2ruby/core_extensions → core_extensions}/regexp.rb +0 -0
  6. data/lib/sexp2ruby/node/alias.rb +9 -0
  7. data/lib/sexp2ruby/node/and.rb +9 -0
  8. data/lib/sexp2ruby/node/arglist.rb +16 -0
  9. data/lib/sexp2ruby/node/args.rb +33 -0
  10. data/lib/sexp2ruby/node/array.rb +9 -0
  11. data/lib/sexp2ruby/node/attrasgn.rb +27 -0
  12. data/lib/sexp2ruby/node/back_ref.rb +9 -0
  13. data/lib/sexp2ruby/node/base.rb +36 -0
  14. data/lib/sexp2ruby/node/begin.rb +19 -0
  15. data/lib/sexp2ruby/node/block.rb +24 -0
  16. data/lib/sexp2ruby/node/block_pass.rb +10 -0
  17. data/lib/sexp2ruby/node/break.rb +14 -0
  18. data/lib/sexp2ruby/node/call.rb +70 -0
  19. data/lib/sexp2ruby/node/case.rb +27 -0
  20. data/lib/sexp2ruby/node/cdecl.rb +17 -0
  21. data/lib/sexp2ruby/node/class.rb +9 -0
  22. data/lib/sexp2ruby/node/colon2.rb +9 -0
  23. data/lib/sexp2ruby/node/colon3.rb +9 -0
  24. data/lib/sexp2ruby/node/const.rb +9 -0
  25. data/lib/sexp2ruby/node/cvar.rb +9 -0
  26. data/lib/sexp2ruby/node/cvasgn.rb +9 -0
  27. data/lib/sexp2ruby/node/cvdecl.rb +9 -0
  28. data/lib/sexp2ruby/node/defined.rb +9 -0
  29. data/lib/sexp2ruby/node/defn.rb +66 -0
  30. data/lib/sexp2ruby/node/defs.rb +17 -0
  31. data/lib/sexp2ruby/node/dot2.rb +9 -0
  32. data/lib/sexp2ruby/node/dot3.rb +9 -0
  33. data/lib/sexp2ruby/node/dregx.rb +19 -0
  34. data/lib/sexp2ruby/node/dregx_once.rb +9 -0
  35. data/lib/sexp2ruby/node/dstr.rb +9 -0
  36. data/lib/sexp2ruby/node/dsym.rb +9 -0
  37. data/lib/sexp2ruby/node/dxstr.rb +9 -0
  38. data/lib/sexp2ruby/node/ensure.rb +18 -0
  39. data/lib/sexp2ruby/node/evstr.rb +9 -0
  40. data/lib/sexp2ruby/node/false.rb +9 -0
  41. data/lib/sexp2ruby/node/flip2.rb +9 -0
  42. data/lib/sexp2ruby/node/flip3.rb +9 -0
  43. data/lib/sexp2ruby/node/for.rb +17 -0
  44. data/lib/sexp2ruby/node/gasgn.rb +9 -0
  45. data/lib/sexp2ruby/node/gvar.rb +9 -0
  46. data/lib/sexp2ruby/node/hash.rb +53 -0
  47. data/lib/sexp2ruby/node/iasgn.rb +14 -0
  48. data/lib/sexp2ruby/node/if.rb +41 -0
  49. data/lib/sexp2ruby/node/iter.rb +50 -0
  50. data/lib/sexp2ruby/node/ivar.rb +9 -0
  51. data/lib/sexp2ruby/node/kwsplat.rb +9 -0
  52. data/lib/sexp2ruby/node/lasgn.rb +11 -0
  53. data/lib/sexp2ruby/node/lit.rb +15 -0
  54. data/lib/sexp2ruby/node/lvar.rb +9 -0
  55. data/lib/sexp2ruby/node/masgn.rb +46 -0
  56. data/lib/sexp2ruby/node/match.rb +9 -0
  57. data/lib/sexp2ruby/node/match2.rb +11 -0
  58. data/lib/sexp2ruby/node/match3.rb +17 -0
  59. data/lib/sexp2ruby/node/module.rb +9 -0
  60. data/lib/sexp2ruby/node/next.rb +14 -0
  61. data/lib/sexp2ruby/node/nil.rb +9 -0
  62. data/lib/sexp2ruby/node/not.rb +9 -0
  63. data/lib/sexp2ruby/node/nth_ref.rb +9 -0
  64. data/lib/sexp2ruby/node/op_asgn1.rb +16 -0
  65. data/lib/sexp2ruby/node/op_asgn2.rb +17 -0
  66. data/lib/sexp2ruby/node/op_asgn_and.rb +13 -0
  67. data/lib/sexp2ruby/node/op_asgn_or.rb +13 -0
  68. data/lib/sexp2ruby/node/or.rb +9 -0
  69. data/lib/sexp2ruby/node/postexe.rb +9 -0
  70. data/lib/sexp2ruby/node/redo.rb +9 -0
  71. data/lib/sexp2ruby/node/resbody.rb +19 -0
  72. data/lib/sexp2ruby/node/rescue.rb +32 -0
  73. data/lib/sexp2ruby/node/retry.rb +9 -0
  74. data/lib/sexp2ruby/node/return.rb +13 -0
  75. data/lib/sexp2ruby/node/sclass.rb +9 -0
  76. data/lib/sexp2ruby/node/self.rb +9 -0
  77. data/lib/sexp2ruby/node/splat.rb +13 -0
  78. data/lib/sexp2ruby/node/str.rb +9 -0
  79. data/lib/sexp2ruby/node/super.rb +10 -0
  80. data/lib/sexp2ruby/node/svalue.rb +13 -0
  81. data/lib/sexp2ruby/node/to_ary.rb +9 -0
  82. data/lib/sexp2ruby/node/true.rb +9 -0
  83. data/lib/sexp2ruby/node/undef.rb +9 -0
  84. data/lib/sexp2ruby/node/until.rb +9 -0
  85. data/lib/sexp2ruby/node/valias.rb +9 -0
  86. data/lib/sexp2ruby/node/when.rb +24 -0
  87. data/lib/sexp2ruby/node/while.rb +9 -0
  88. data/lib/sexp2ruby/node/xstr.rb +9 -0
  89. data/lib/sexp2ruby/node/yield.rb +18 -0
  90. data/lib/sexp2ruby/node/zsuper.rb +9 -0
  91. data/lib/sexp2ruby/processor.rb +121 -912
  92. data/lib/sexp2ruby/version.rb +1 -1
  93. data/lib/sexp2ruby.rb +88 -1
  94. data/sexp2ruby.gemspec +1 -0
  95. data/spec/lib/processor_spec.rb +478 -1
  96. metadata +104 -8
  97. data/Rakefile +0 -92
  98. data/test/test_ruby2ruby.rb +0 -496
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sexp2ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
@@ -9,8 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-05-31 00:00:00.000000000 Z
12
+ date: 2015-06-08 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: activesupport
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: '4.2'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: '4.2'
14
28
  - !ruby/object:Gem::Dependency
15
29
  name: sexp_processor
16
30
  requirement: !ruby/object:Gem::Requirement
@@ -91,21 +105,105 @@ extensions: []
91
105
  extra_rdoc_files: []
92
106
  files:
93
107
  - ".gitignore"
108
+ - ".rspec"
94
109
  - ".travis.yml"
95
110
  - CHANGELOG.md
96
111
  - Gemfile
97
112
  - LICENSE.txt
98
113
  - README.md
99
- - Rakefile
114
+ - lib/core_extensions/regexp.rb
100
115
  - lib/sexp2ruby.rb
101
- - lib/sexp2ruby/core_extensions/regexp.rb
102
116
  - lib/sexp2ruby/errors.rb
117
+ - lib/sexp2ruby/node/alias.rb
118
+ - lib/sexp2ruby/node/and.rb
119
+ - lib/sexp2ruby/node/arglist.rb
120
+ - lib/sexp2ruby/node/args.rb
121
+ - lib/sexp2ruby/node/array.rb
122
+ - lib/sexp2ruby/node/attrasgn.rb
123
+ - lib/sexp2ruby/node/back_ref.rb
124
+ - lib/sexp2ruby/node/base.rb
125
+ - lib/sexp2ruby/node/begin.rb
126
+ - lib/sexp2ruby/node/block.rb
127
+ - lib/sexp2ruby/node/block_pass.rb
128
+ - lib/sexp2ruby/node/break.rb
129
+ - lib/sexp2ruby/node/call.rb
130
+ - lib/sexp2ruby/node/case.rb
131
+ - lib/sexp2ruby/node/cdecl.rb
132
+ - lib/sexp2ruby/node/class.rb
133
+ - lib/sexp2ruby/node/colon2.rb
134
+ - lib/sexp2ruby/node/colon3.rb
135
+ - lib/sexp2ruby/node/const.rb
136
+ - lib/sexp2ruby/node/cvar.rb
137
+ - lib/sexp2ruby/node/cvasgn.rb
138
+ - lib/sexp2ruby/node/cvdecl.rb
139
+ - lib/sexp2ruby/node/defined.rb
140
+ - lib/sexp2ruby/node/defn.rb
141
+ - lib/sexp2ruby/node/defs.rb
142
+ - lib/sexp2ruby/node/dot2.rb
143
+ - lib/sexp2ruby/node/dot3.rb
144
+ - lib/sexp2ruby/node/dregx.rb
145
+ - lib/sexp2ruby/node/dregx_once.rb
146
+ - lib/sexp2ruby/node/dstr.rb
147
+ - lib/sexp2ruby/node/dsym.rb
148
+ - lib/sexp2ruby/node/dxstr.rb
149
+ - lib/sexp2ruby/node/ensure.rb
150
+ - lib/sexp2ruby/node/evstr.rb
151
+ - lib/sexp2ruby/node/false.rb
152
+ - lib/sexp2ruby/node/flip2.rb
153
+ - lib/sexp2ruby/node/flip3.rb
154
+ - lib/sexp2ruby/node/for.rb
155
+ - lib/sexp2ruby/node/gasgn.rb
156
+ - lib/sexp2ruby/node/gvar.rb
157
+ - lib/sexp2ruby/node/hash.rb
158
+ - lib/sexp2ruby/node/iasgn.rb
159
+ - lib/sexp2ruby/node/if.rb
160
+ - lib/sexp2ruby/node/iter.rb
161
+ - lib/sexp2ruby/node/ivar.rb
162
+ - lib/sexp2ruby/node/kwsplat.rb
163
+ - lib/sexp2ruby/node/lasgn.rb
164
+ - lib/sexp2ruby/node/lit.rb
165
+ - lib/sexp2ruby/node/lvar.rb
166
+ - lib/sexp2ruby/node/masgn.rb
167
+ - lib/sexp2ruby/node/match.rb
168
+ - lib/sexp2ruby/node/match2.rb
169
+ - lib/sexp2ruby/node/match3.rb
170
+ - lib/sexp2ruby/node/module.rb
171
+ - lib/sexp2ruby/node/next.rb
172
+ - lib/sexp2ruby/node/nil.rb
173
+ - lib/sexp2ruby/node/not.rb
174
+ - lib/sexp2ruby/node/nth_ref.rb
175
+ - lib/sexp2ruby/node/op_asgn1.rb
176
+ - lib/sexp2ruby/node/op_asgn2.rb
177
+ - lib/sexp2ruby/node/op_asgn_and.rb
178
+ - lib/sexp2ruby/node/op_asgn_or.rb
179
+ - lib/sexp2ruby/node/or.rb
180
+ - lib/sexp2ruby/node/postexe.rb
181
+ - lib/sexp2ruby/node/redo.rb
182
+ - lib/sexp2ruby/node/resbody.rb
183
+ - lib/sexp2ruby/node/rescue.rb
184
+ - lib/sexp2ruby/node/retry.rb
185
+ - lib/sexp2ruby/node/return.rb
186
+ - lib/sexp2ruby/node/sclass.rb
187
+ - lib/sexp2ruby/node/self.rb
188
+ - lib/sexp2ruby/node/splat.rb
189
+ - lib/sexp2ruby/node/str.rb
190
+ - lib/sexp2ruby/node/super.rb
191
+ - lib/sexp2ruby/node/svalue.rb
192
+ - lib/sexp2ruby/node/to_ary.rb
193
+ - lib/sexp2ruby/node/true.rb
194
+ - lib/sexp2ruby/node/undef.rb
195
+ - lib/sexp2ruby/node/until.rb
196
+ - lib/sexp2ruby/node/valias.rb
197
+ - lib/sexp2ruby/node/when.rb
198
+ - lib/sexp2ruby/node/while.rb
199
+ - lib/sexp2ruby/node/xstr.rb
200
+ - lib/sexp2ruby/node/yield.rb
201
+ - lib/sexp2ruby/node/zsuper.rb
103
202
  - lib/sexp2ruby/processor.rb
104
203
  - lib/sexp2ruby/version.rb
105
204
  - sexp2ruby.gemspec
106
205
  - spec/lib/processor_spec.rb
107
206
  - spec/spec_helper.rb
108
- - test/test_ruby2ruby.rb
109
207
  homepage: https://github.com/jaredbeck/sexp2ruby
110
208
  licenses:
111
209
  - MIT
@@ -126,12 +224,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
126
224
  version: '0'
127
225
  requirements: []
128
226
  rubyforge_project:
129
- rubygems_version: 2.2.2
227
+ rubygems_version: 2.4.5
130
228
  signing_key:
131
229
  specification_version: 4
132
230
  summary: Generates ruby from RubyParser S-expressions
133
231
  test_files:
134
232
  - spec/lib/processor_spec.rb
135
233
  - spec/spec_helper.rb
136
- - test/test_ruby2ruby.rb
137
- has_rdoc:
data/Rakefile DELETED
@@ -1,92 +0,0 @@
1
- # -*- ruby -*-
2
-
3
- require 'rubygems'
4
- require 'hoe'
5
-
6
- Hoe.add_include_dirs("lib",
7
- "../../ruby_parser/dev/lib",
8
- "../../sexp_processor/dev/lib")
9
-
10
- Hoe.plugin :seattlerb
11
- Hoe.plugin :isolate
12
-
13
- Hoe.spec 'ruby2ruby' do
14
- developer 'Ryan Davis', 'ryand-ruby@zenspider.com'
15
-
16
- license "MIT"
17
-
18
- dependency "sexp_processor", "~> 4.0"
19
- dependency "ruby_parser", "~> 3.1"
20
- end
21
-
22
- def process ruby, file="stdin"
23
- require "ruby_parser"
24
- require "ruby2ruby"
25
-
26
- parser = RubyParser.new
27
- ruby2ruby = Ruby2Ruby.new
28
-
29
- begin
30
- sexp = parser.process(ruby, file)
31
-
32
- ruby2ruby.process(sexp)
33
- rescue Interrupt => e
34
- raise e
35
- end
36
- end
37
-
38
- task :stress do
39
- $: << "lib"
40
- $: << "../../ruby_parser/dev/lib"
41
- require "pp"
42
-
43
- files = Dir["../../*/dev/**/*.rb"]
44
-
45
- warn "Stress testing against #{files.size} files"
46
-
47
- bad = {}
48
-
49
- files.each do |file|
50
- warn file
51
-
52
- begin
53
- process File.read(file), file
54
- rescue Interrupt => e
55
- raise e
56
- rescue Exception => e
57
- bad[file] = e
58
- end
59
- end
60
-
61
- pp bad
62
- end
63
-
64
- task :debug => :isolate do
65
- ENV["V"] ||= "18"
66
-
67
- $: << "lib"
68
- require 'ruby_parser'
69
-
70
- parser = if ENV["V"] == "18" then
71
- Ruby18Parser.new
72
- else
73
- Ruby19Parser.new
74
- end
75
-
76
- file = ENV["F"] || ENV["FILE"]
77
-
78
- ruby = if file then
79
- File.read(file)
80
- else
81
- file = "env"
82
- ENV["R"] || ENV["RUBY"]
83
- end
84
-
85
- puts process(ruby, file)
86
- end
87
-
88
- task :bugs do
89
- sh "for f in bug*.rb ; do #{Gem.ruby} -S rake debug F=$f && rm $f ; done"
90
- end
91
-
92
- # vim: syntax=ruby