ruby_parser 3.0.0 → 3.19.1

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 (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']