ruby_parser 3.0.0 → 3.19.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +0 -0
  3. data/.autotest +36 -19
  4. data/History.rdoc +1297 -0
  5. data/Manifest.txt +35 -7
  6. data/{README.txt → README.rdoc} +44 -14
  7. data/Rakefile +308 -110
  8. data/bin/ruby_parse +3 -1
  9. data/bin/ruby_parse_extract_error +36 -16
  10. data/compare/normalize.rb +218 -0
  11. data/debugging.md +190 -0
  12. data/gauntlet.md +107 -0
  13. data/lib/.document +1 -0
  14. data/lib/rp_extensions.rb +53 -0
  15. data/lib/rp_stringscanner.rb +33 -0
  16. data/lib/ruby20_parser.rb +10973 -0
  17. data/lib/ruby20_parser.y +2683 -0
  18. data/lib/ruby21_parser.rb +10980 -0
  19. data/lib/ruby21_parser.y +2700 -0
  20. data/lib/ruby22_parser.rb +11123 -0
  21. data/lib/ruby22_parser.y +2711 -0
  22. data/lib/ruby23_parser.rb +11132 -0
  23. data/lib/ruby23_parser.y +2713 -0
  24. data/lib/ruby24_parser.rb +11231 -0
  25. data/lib/ruby24_parser.y +2721 -0
  26. data/lib/ruby25_parser.rb +11231 -0
  27. data/lib/ruby25_parser.y +2721 -0
  28. data/lib/ruby26_parser.rb +11253 -0
  29. data/lib/ruby26_parser.y +2736 -0
  30. data/lib/ruby27_parser.rb +12980 -0
  31. data/lib/ruby27_parser.y +3324 -0
  32. data/lib/ruby30_parser.rb +13242 -0
  33. data/lib/ruby30_parser.y +3447 -0
  34. data/lib/ruby31_parser.rb +13622 -0
  35. data/lib/ruby31_parser.y +3481 -0
  36. data/lib/ruby3_parser.yy +3536 -0
  37. data/lib/ruby_lexer.rb +933 -1232
  38. data/lib/ruby_lexer.rex +185 -0
  39. data/lib/ruby_lexer.rex.rb +399 -0
  40. data/lib/ruby_lexer_strings.rb +638 -0
  41. data/lib/ruby_parser.rb +97 -3
  42. data/lib/ruby_parser.yy +3465 -0
  43. data/lib/ruby_parser_extras.rb +1216 -687
  44. data/test/test_ruby_lexer.rb +2249 -1092
  45. data/test/test_ruby_parser.rb +5156 -975
  46. data/test/test_ruby_parser_extras.rb +47 -77
  47. data/tools/munge.rb +250 -0
  48. data/tools/ripper.rb +44 -0
  49. data.tar.gz.sig +1 -1
  50. metadata +200 -155
  51. metadata.gz.sig +0 -0
  52. data/.gemtest +0 -0
  53. data/History.txt +0 -482
  54. data/lib/gauntlet_rubyparser.rb +0 -120
  55. data/lib/ruby18_parser.rb +0 -5747
  56. data/lib/ruby18_parser.y +0 -1873
  57. data/lib/ruby19_parser.rb +0 -6110
  58. data/lib/ruby19_parser.y +0 -2078
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 2901404db3548ad6415060c14df20ae11431fff4a97420659187601a534eb256
4
+ data.tar.gz: 69705481ccbd6a8ffafbb81c25c40890a4683a19440196a19bbcc119f093612a
5
+ SHA512:
6
+ metadata.gz: 1a5d89ba1fed1a0a49b5eb71eeb8cc6f80a396d6eaf49bec5742d62cd503916b90136ae689de4fa3a5de180544ba3ef6e8fca03e52bd8349b32c65dfa7962a28
7
+ data.tar.gz: c68ae86de3cbd9a1b86b6c5acbd0ecc8d809a30c42f7b50217d5038f262a6f61a3baa739332285d59158af9d3c9c3c8d8742e2eca499cf41536f14332e9f7eb9
checksums.yaml.gz.sig ADDED
Binary file
data/.autotest CHANGED
@@ -1,21 +1,28 @@
1
1
  # -*- ruby -*-
2
2
 
3
3
  require 'autotest/restart'
4
- require 'autotest/isolate'
4
+ # require 'autotest/isolate'
5
5
  require 'autotest/rcov' if ENV['RCOV']
6
6
 
7
7
  Autotest.add_hook :initialize do |at|
8
8
  at.extra_files << "../../sexp_processor/dev/lib/pt_testcase.rb"
9
9
  at.libs << ":../../sexp_processor/dev/lib"
10
- at.add_exception 'unit'
11
- at.add_exception 'coverage'
12
- at.add_exception 'coverage.info'
13
- at.add_exception '.diff'
14
- at.add_exception 'rubycorpus'
10
+ at.add_exception ".diff"
11
+ at.add_exception ".rdoc"
12
+ at.add_exception ".yml"
13
+ at.add_exception ".txt"
14
+ at.add_exception ".output"
15
+ at.add_exception "bin"
16
+ at.add_exception "compare"
17
+ at.add_exception "coverage"
18
+ at.add_exception "coverage.info"
19
+ at.add_exception "misc"
15
20
 
16
- dirs = Dir["corpus*"] + Dir["gauntlet*"]
21
+ Dir["lib/ruby??_parser.{rb,y}"].each do |f|
22
+ at.add_exception f
23
+ end
17
24
 
18
- dirs.each do |f|
25
+ Dir["gauntlet*"].each do |f|
19
26
  at.add_exception f
20
27
  end
21
28
 
@@ -23,28 +30,38 @@ Autotest.add_hook :initialize do |at|
23
30
  at.testlib = "minitest/autorun"
24
31
 
25
32
  at.add_mapping(/^lib\/.*\.y$/) do |f, _|
26
- at.files_matching %r%^test/.*#{File.basename(f, '.y').gsub '_', '_?'}.rb$%
33
+ g = File.basename(f, ".y").gsub("_", "_?").gsub(/2\d/, '')
34
+ at.files_matching %r%^test/.*#{g}.rb$%
35
+ end
36
+
37
+ at.add_mapping(/^lib\/.*\.yy$/) do |f, _|
38
+ g = File.basename(f, ".yy").gsub("_", "_?")
39
+ at.files_matching %r%^test/.*#{g}.rb$%
40
+ end
41
+
42
+ at.add_mapping(/^lib\/ruby_lexer\.rex\.rb$/) do |f, _|
43
+ at.files_matching %r%^test/.*ruby_lexer\.rb$%
44
+ end
45
+
46
+ at.add_mapping(/^lib\/.*\.rex$/) do |f, _|
47
+ g = File.basename(f, ".rex").gsub("_", "_?")
48
+ at.files_matching %r%^test/.*#{g}.rb$%
27
49
  end
28
50
 
29
51
  at.add_mapping(/pt_testcase.rb/) do |f, _|
30
52
  at.files_matching(/test_.*rb$/)
31
53
  end
32
54
 
33
- %w(TestEnvironment TestStackState).each do |klass|
55
+ %w(TestEnvironment TestStackState TestValueExpr).each do |klass|
34
56
  at.extra_class_map[klass] = "test/test_ruby_parser_extras.rb"
35
57
  end
36
58
 
37
- %w(TestRuby18Parser TestRuby19Parser TestParseTree).each do |klass| # HACK
38
- at.extra_class_map[klass] = "test/test_ruby_parser.rb"
59
+ Dir["lib/ruby??_parser.rb"].each do |s|
60
+ n = s[/\d+/]
61
+ at.extra_class_map["TestRubyParserV#{n}"] = "test/test_ruby_parser.rb"
39
62
  end
40
63
  end
41
64
 
42
65
  Autotest.add_hook :run_command do |at, _|
43
- system "rake parser DEBUG=1"
66
+ system "rake parser lexer DEBUG=1"
44
67
  end
45
-
46
- class Autotest
47
- def ruby
48
- File.expand_path "~/.multiruby/install/1.9.0-0/bin/ruby"
49
- end
50
- end if ENV['ONENINE']