mvz-live_ast 1.1.1 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.rdoc +14 -0
  3. data/Rakefile +48 -9
  4. data/devel/levitate.rb +5 -674
  5. data/lib/live_ast/common.rb +22 -21
  6. data/lib/live_ast/error.rb +2 -2
  7. data/lib/live_ast/irb_spy.rb +4 -6
  8. data/lib/live_ast/linker.rb +7 -7
  9. data/lib/live_ast/loader.rb +6 -6
  10. data/lib/live_ast/reader.rb +2 -2
  11. data/lib/live_ast/replace_eval.rb +27 -31
  12. data/lib/live_ast/replace_load.rb +1 -1
  13. data/lib/live_ast/ruby_parser.rb +24 -22
  14. data/lib/live_ast/ruby_parser/test.rb +183 -179
  15. data/lib/live_ast/ruby_parser/unparser.rb +10 -6
  16. data/lib/live_ast/to_ast.rb +1 -1
  17. data/lib/live_ast/version.rb +1 -1
  18. data/test/ast_eval/ast_eval_test.rb +11 -0
  19. data/test/ast_load/ast_load_test.rb +45 -0
  20. data/test/backtrace_test.rb +29 -28
  21. data/test/{noninvasive_test.rb → base/noninvasive_test.rb} +7 -5
  22. data/test/base/reload_test.rb +41 -0
  23. data/test/covert_define_method_test.rb +1 -1
  24. data/test/define_method_test.rb +5 -5
  25. data/test/encoding_test.rb +5 -5
  26. data/test/error_test.rb +6 -6
  27. data/test/eval_test.rb +7 -7
  28. data/test/flush_cache_test.rb +6 -6
  29. data/test/full/ast_reload_test.rb +39 -0
  30. data/test/{replace_eval_test.rb → full/replace_eval_test.rb} +31 -12
  31. data/test/irb_test.rb +1 -1
  32. data/test/lambda_test.rb +7 -0
  33. data/test/load_path_test.rb +12 -12
  34. data/test/load_test.rb +35 -35
  35. data/test/main.rb +19 -27
  36. data/test/nested_test.rb +1 -1
  37. data/test/readme_test.rb +1 -3
  38. data/test/recursive_eval_test.rb +2 -3
  39. data/test/redefine_method_test.rb +2 -2
  40. data/test/rubygems_test.rb +1 -1
  41. data/test/rubyspec_test.rb +3 -3
  42. data/test/stdlib_test.rb +1 -1
  43. data/test/thread_test.rb +1 -2
  44. data/test/to_ast/to_ast_feature_test.rb +11 -0
  45. data/test/to_ruby/to_ruby_feature_test.rb +11 -0
  46. data/test/{to_ruby_test.rb → to_ruby/to_ruby_test.rb} +2 -2
  47. metadata +93 -91
  48. data/test/ast_eval_feature_test.rb +0 -11
  49. data/test/ast_load_feature_test.rb +0 -11
  50. data/test/reload_test.rb +0 -105
  51. data/test/to_ast_feature_test.rb +0 -15
  52. data/test/to_ruby_feature_test.rb +0 -15
data/test/nested_test.rb CHANGED
@@ -7,7 +7,7 @@ class NestedTest < RegularTest
7
7
  "33"
8
8
  }
9
9
  }
10
-
10
+
11
11
  assert_equal nested_lambdas("33"), a.to_ast
12
12
  assert_equal no_arg_block(:lambda, "33"), a.call.to_ast
13
13
  end
data/test/readme_test.rb CHANGED
@@ -1,9 +1,7 @@
1
1
  require_relative 'main'
2
2
  require_relative '../devel/levitate'
3
3
 
4
- if LiveAST.parser::Test.respond_to?(:unified_sexp?) and
5
- LiveAST.parser::Test.unified_sexp? and
6
- RUBY_ENGINE != "jruby" then # jruby takes about a minute
4
+ if RUBY_ENGINE != "jruby" # jruby takes about a minute
7
5
  sections = [
8
6
  "Synopsis",
9
7
  "+to_ruby+",
@@ -9,7 +9,7 @@ class RecursiveEvalTest < RegularTest
9
9
  "A#f"
10
10
  end
11
11
  }, binding
12
-
12
+
13
13
  ast_eval %{
14
14
  ast_eval %{
15
15
  remove_method :f
@@ -21,7 +21,7 @@ class RecursiveEvalTest < RegularTest
21
21
  "A#g"
22
22
  end
23
23
  }, binding
24
-
24
+
25
25
  LAMBDA = ast_eval %{
26
26
  lambda { |x, y| x * y }
27
27
  }, binding
@@ -49,4 +49,3 @@ class RecursiveEvalTest < RegularTest
49
49
  A::LAMBDA.to_ast
50
50
  end
51
51
  end
52
-
@@ -6,10 +6,10 @@ class RedefineMethodTest < RegularTest
6
6
  def f
7
7
  "old A#f"
8
8
  end
9
-
9
+
10
10
  PREVIOUS_Af = instance_method(:f)
11
11
  remove_method :f
12
-
12
+
13
13
  def f(x, y)
14
14
  x * y
15
15
  end
@@ -5,7 +5,7 @@ class RubygemsTest < RegularTest
5
5
  def test_rubygems
6
6
  lib = File.expand_path(File.dirname(__FILE__) + "/../lib")
7
7
  extra_req =
8
- if defined?(LiveASTRipper) and LiveAST.parser == LiveASTRipper
8
+ if defined?(LiveASTRipper) && LiveAST.parser == LiveASTRipper
9
9
  %{require 'live_ast_ripper'}
10
10
  else
11
11
  ""
@@ -4,7 +4,7 @@ require_relative '../devel/levitate'
4
4
  #
5
5
  # Tests against rubyspec branch which discards '|ast@' tokens
6
6
  #
7
- class ZZZ_RubySpecTest < RegularTest
7
+ class RubySpecTest < RegularTest
8
8
  FILES = [
9
9
  'core/basicobject/instance_eval_spec.rb',
10
10
  'core/binding/eval_spec.rb',
@@ -13,7 +13,7 @@ class ZZZ_RubySpecTest < RegularTest
13
13
  'core/module/class_eval_spec.rb',
14
14
  'core/module/module_eval_spec.rb',
15
15
  ]
16
-
16
+
17
17
  def setup
18
18
  super
19
19
  puts "\n==== rubyspec"
@@ -26,7 +26,7 @@ class ZZZ_RubySpecTest < RegularTest
26
26
  cmd =
27
27
  ["mspec", "-t", Levitate.ruby_bin] +
28
28
 
29
- (["-T"]*Levitate.ruby_opts.size).
29
+ (["-T"] * Levitate.ruby_opts.size).
30
30
  zip(Levitate.ruby_opts).
31
31
  flatten +
32
32
 
data/test/stdlib_test.rb CHANGED
@@ -5,7 +5,7 @@ class StdlibTest < RegularTest
5
5
  def test_pp
6
6
  assert_not_nil method(:pp).to_ast
7
7
  end
8
-
8
+
9
9
  def test_find
10
10
  assert_not_nil Find.method(:find).to_ast
11
11
  end
data/test/thread_test.rb CHANGED
@@ -3,7 +3,6 @@ require_relative 'main'
3
3
  require 'thread'
4
4
 
5
5
  class ThreadTest < RegularTest
6
-
7
6
  def test_threads
8
7
  klass = nil
9
8
  mutex = Mutex.new
@@ -35,7 +34,7 @@ class ThreadTest < RegularTest
35
34
  stop = true
36
35
 
37
36
  workers.each { |t| t.join }
38
-
37
+
39
38
  assert_equal num_threads, results.size
40
39
  results.each { |result|
41
40
  assert_equal no_arg_def(:f, "anon#f"), result
@@ -0,0 +1,11 @@
1
+ require 'main'
2
+
3
+ require 'live_ast/to_ast'
4
+
5
+ class ToASTFeatureTest < BaseTest
6
+ def test_require
7
+ [Method, UnboundMethod, Proc].each { |obj|
8
+ assert obj.instance_methods.include?(:to_ast)
9
+ }
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'main'
2
+
3
+ require 'live_ast/to_ruby'
4
+
5
+ class ToRubyFeatureTest < BaseTest
6
+ def test_defines_to_ruby
7
+ [Method, UnboundMethod, Proc].each { |obj|
8
+ assert obj.instance_methods.include?(:to_ruby)
9
+ }
10
+ end
11
+ end
@@ -1,6 +1,6 @@
1
- require_relative 'main'
1
+ require 'main'
2
2
 
3
- class AAC_ToRubyTest < RegularTest
3
+ class ToRubyTest < RegularTest
4
4
  def setup
5
5
  super
6
6
  require 'live_ast/to_ruby'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mvz-live_ast
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - James M. Lawrence
@@ -9,104 +9,104 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-02-11 00:00:00.000000000 Z
12
+ date: 2014-10-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: ruby_parser
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ~>
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: 3.3.0
20
+ version: '3.3'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ~>
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: 3.3.0
27
+ version: '3.3'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: ruby2ruby
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - '>='
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - '>='
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: binding_of_caller
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - '>='
46
+ - - ">="
47
47
  - !ruby/object:Gem::Version
48
48
  version: '0'
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - '>='
53
+ - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: '0'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: bundler
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ~>
60
+ - - "~>"
61
61
  - !ruby/object:Gem::Version
62
62
  version: '1.3'
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ~>
67
+ - - "~>"
68
68
  - !ruby/object:Gem::Version
69
69
  version: '1.3'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: minitest
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ~>
74
+ - - "~>"
75
75
  - !ruby/object:Gem::Version
76
- version: '4.0'
76
+ version: '5.0'
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ~>
81
+ - - "~>"
82
82
  - !ruby/object:Gem::Version
83
- version: '4.0'
83
+ version: '5.0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: rake
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - '>='
88
+ - - ">="
89
89
  - !ruby/object:Gem::Version
90
90
  version: '0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - '>='
95
+ - - ">="
96
96
  - !ruby/object:Gem::Version
97
97
  version: '0'
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: rdoc
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - '>='
102
+ - - ">="
103
103
  - !ruby/object:Gem::Version
104
104
  version: '0'
105
105
  type: :development
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - '>='
109
+ - - ">="
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
112
  description: |2
@@ -119,134 +119,134 @@ extra_rdoc_files:
119
119
  - README.rdoc
120
120
  - CHANGES.rdoc
121
121
  files:
122
- - devel/levitate_config.rb
122
+ - CHANGES.rdoc
123
+ - README.rdoc
124
+ - Rakefile
123
125
  - devel/levitate.rb
124
- - lib/live_ast/full.rb
125
- - lib/live_ast/common.rb
126
- - lib/live_ast/loader.rb
126
+ - devel/levitate_config.rb
127
+ - lib/live_ast.rb
127
128
  - lib/live_ast/ast_eval.rb
128
- - lib/live_ast/to_ruby.rb
129
- - lib/live_ast/base.rb
130
- - lib/live_ast/evaler.rb
131
129
  - lib/live_ast/ast_load.rb
132
- - lib/live_ast/replace_eval.rb
130
+ - lib/live_ast/base.rb
131
+ - lib/live_ast/common.rb
133
132
  - lib/live_ast/error.rb
134
- - lib/live_ast/ruby_parser.rb
135
- - lib/live_ast/to_ast.rb
136
- - lib/live_ast/ruby_parser/unparser.rb
137
- - lib/live_ast/ruby_parser/test.rb
138
- - lib/live_ast/replace_raise.rb
133
+ - lib/live_ast/evaler.rb
134
+ - lib/live_ast/full.rb
139
135
  - lib/live_ast/irb_spy.rb
140
- - lib/live_ast/version.rb
141
136
  - lib/live_ast/linker.rb
137
+ - lib/live_ast/loader.rb
142
138
  - lib/live_ast/reader.rb
139
+ - lib/live_ast/replace_eval.rb
143
140
  - lib/live_ast/replace_load.rb
144
- - lib/live_ast.rb
141
+ - lib/live_ast/replace_raise.rb
142
+ - lib/live_ast/ruby_parser.rb
143
+ - lib/live_ast/ruby_parser/test.rb
144
+ - lib/live_ast/ruby_parser/unparser.rb
145
+ - lib/live_ast/to_ast.rb
146
+ - lib/live_ast/to_ruby.rb
147
+ - lib/live_ast/version.rb
148
+ - test/ast_eval/ast_eval_test.rb
149
+ - test/ast_load/ast_load_test.rb
150
+ - test/attr_test.rb
151
+ - test/backtrace_test.rb
152
+ - test/base/noninvasive_test.rb
153
+ - test/base/reload_test.rb
145
154
  - test/covert_define_method_test.rb
146
- - test/noninvasive_test.rb
147
- - test/singleton_test.rb
148
- - test/irb_test.rb
149
- - test/stdlib_test.rb
150
- - test/rubygems_test.rb
151
- - test/to_ruby_test.rb
152
- - test/to_ast_feature_test.rb
153
- - test/flush_cache_test.rb
154
- - test/to_ruby_feature_test.rb
155
- - test/eval_test.rb
156
- - test/readme_test.rb
157
155
  - test/def_test.rb
158
- - test/replace_eval_test.rb
159
- - test/attr_test.rb
160
- - test/thread_test.rb
161
- - test/reload_test.rb
162
- - test/load_path_test.rb
163
- - test/rubyspec_test.rb
164
- - test/redefine_method_test.rb
165
- - test/ast_load_feature_test.rb
166
- - test/lambda_test.rb
167
- - test/ast_eval_feature_test.rb
168
- - test/error_test.rb
169
- - test/recursive_eval_test.rb
156
+ - test/define_method_test.rb
170
157
  - test/define_singleton_method_test.rb
171
- - test/encoding_test/utf8bom_only.rb
172
- - test/encoding_test/utf8unix.rb
173
- - test/encoding_test/eucjp.rb
174
- - test/encoding_test/usascii_with_utf8bom.rb
175
- - test/encoding_test/utf8bom.rb
176
- - test/encoding_test/utf8mac_alt.rb
177
- - test/encoding_test/default.rb
178
- - test/encoding_test/usascii.rb
158
+ - test/encoding_test.rb
159
+ - test/encoding_test/bad.rb
179
160
  - test/encoding_test/cp932.rb
161
+ - test/encoding_test/default.rb
162
+ - test/encoding_test/eucjp.rb
163
+ - test/encoding_test/koi8.rb
180
164
  - test/encoding_test/koi8_shebang.rb
181
- - test/encoding_test/utf8.rb
182
- - test/encoding_test/bad.rb
183
- - test/encoding_test/utf8mac.rb
184
165
  - test/encoding_test/koi8_with_utf8bom.rb
166
+ - test/encoding_test/usascii.rb
167
+ - test/encoding_test/usascii_with_utf8bom.rb
168
+ - test/encoding_test/utf8.rb
169
+ - test/encoding_test/utf8bom.rb
170
+ - test/encoding_test/utf8bom_only.rb
185
171
  - test/encoding_test/utf8dos.rb
186
- - test/encoding_test/koi8.rb
172
+ - test/encoding_test/utf8mac.rb
173
+ - test/encoding_test/utf8mac_alt.rb
174
+ - test/encoding_test/utf8unix.rb
175
+ - test/error_test.rb
176
+ - test/eval_test.rb
177
+ - test/flush_cache_test.rb
178
+ - test/full/ast_reload_test.rb
179
+ - test/full/replace_eval_test.rb
180
+ - test/irb_test.rb
181
+ - test/lambda_test.rb
182
+ - test/load_path_test.rb
187
183
  - test/load_test.rb
188
- - test/nested_test.rb
189
184
  - test/main.rb
190
- - test/define_method_test.rb
191
- - test/backtrace_test.rb
192
- - test/encoding_test.rb
193
- - README.rdoc
194
- - CHANGES.rdoc
195
- - Rakefile
185
+ - test/nested_test.rb
186
+ - test/readme_test.rb
187
+ - test/recursive_eval_test.rb
188
+ - test/redefine_method_test.rb
189
+ - test/rubygems_test.rb
190
+ - test/rubyspec_test.rb
191
+ - test/singleton_test.rb
192
+ - test/stdlib_test.rb
193
+ - test/thread_test.rb
194
+ - test/to_ast/to_ast_feature_test.rb
195
+ - test/to_ruby/to_ruby_feature_test.rb
196
+ - test/to_ruby/to_ruby_test.rb
196
197
  homepage: https://github.com/mvz/live_ast
197
198
  licenses:
198
199
  - MIT
199
200
  metadata: {}
200
201
  post_install_message:
201
202
  rdoc_options:
202
- - --main
203
+ - "--main"
203
204
  - README.rdoc
204
- - --title
205
+ - "--title"
205
206
  - 'LiveAST: Live Abstract Syntax Trees'
206
- - --visibility
207
+ - "--visibility"
207
208
  - private
208
209
  require_paths:
209
210
  - lib
210
211
  required_ruby_version: !ruby/object:Gem::Requirement
211
212
  requirements:
212
- - - '>='
213
+ - - ">="
213
214
  - !ruby/object:Gem::Version
214
215
  version: 1.9.2
215
216
  required_rubygems_version: !ruby/object:Gem::Requirement
216
217
  requirements:
217
- - - '>='
218
+ - - ">="
218
219
  - !ruby/object:Gem::Version
219
220
  version: '0'
220
221
  requirements: []
221
222
  rubyforge_project:
222
- rubygems_version: 2.0.14
223
+ rubygems_version: 2.4.1
223
224
  signing_key:
224
225
  specification_version: 4
225
226
  summary: Live abstract syntax trees of methods and procs.
226
227
  test_files:
227
228
  - test/covert_define_method_test.rb
228
- - test/noninvasive_test.rb
229
229
  - test/singleton_test.rb
230
+ - test/to_ast/to_ast_feature_test.rb
230
231
  - test/irb_test.rb
231
232
  - test/stdlib_test.rb
232
233
  - test/rubygems_test.rb
233
- - test/to_ruby_test.rb
234
- - test/to_ast_feature_test.rb
234
+ - test/full/replace_eval_test.rb
235
+ - test/full/ast_reload_test.rb
236
+ - test/to_ruby/to_ruby_test.rb
237
+ - test/to_ruby/to_ruby_feature_test.rb
235
238
  - test/flush_cache_test.rb
236
- - test/to_ruby_feature_test.rb
237
239
  - test/eval_test.rb
240
+ - test/ast_eval/ast_eval_test.rb
238
241
  - test/readme_test.rb
239
242
  - test/def_test.rb
240
- - test/replace_eval_test.rb
241
243
  - test/attr_test.rb
242
244
  - test/thread_test.rb
243
- - test/reload_test.rb
244
245
  - test/load_path_test.rb
246
+ - test/ast_load/ast_load_test.rb
245
247
  - test/rubyspec_test.rb
246
248
  - test/redefine_method_test.rb
247
- - test/ast_load_feature_test.rb
248
249
  - test/lambda_test.rb
249
- - test/ast_eval_feature_test.rb
250
250
  - test/error_test.rb
251
251
  - test/recursive_eval_test.rb
252
252
  - test/define_singleton_method_test.rb
@@ -271,4 +271,6 @@ test_files:
271
271
  - test/main.rb
272
272
  - test/define_method_test.rb
273
273
  - test/backtrace_test.rb
274
+ - test/base/noninvasive_test.rb
275
+ - test/base/reload_test.rb
274
276
  - test/encoding_test.rb