ruby_parser (RP) is a ruby parser written in pure ruby (utilizing racc--which does by default use a C extension). RP's output is the same as ParseTree's output: s-expressions using ruby's arrays and base types. As an example: def conditional1 arg1 return 1 if arg1 == 0 return 0 end becomes: s(:defn, :conditional1, s(:args, :arg1), s(:if, s(:call, s(:lvar, :arg1), :==, s(:lit, 0)), s(:return, s(:lit, 1)), nil), s(:return, s(:lit, 0))) Tested against 801,039 files from the latest of all rubygems (as of 2013-05): * 1.8 parser is at 99.9739% accuracy, 3.651 sigma * 1.9 parser is at 99.9940% accuracy, 4.013 sigma * 2.0 parser is at 99.9939% accuracy, 4.008 sigma

Required Ruby Version

None

Authors

Ryan Davis

Versions

  1. 3.22.0
    1. source

      1. 3.22.0 source December 21, 2025 (808 KB)
  2. 3.21.1
    1. source

      1. 3.21.1 source July 09, 2024 (749 KB)
  3. 3.21.0
    1. source

      1. 3.21.0 source January 16, 2024 (748 KB)
  4. 3.20.3
    1. source

      1. 3.20.3 source July 12, 2023 (835 KB)
  5. 3.20.2
    1. source

      1. 3.20.2 source June 06, 2023 (834 KB)
  6. 3.2.2
    1. source

      1. 3.2.2 source July 12, 2013 (194 KB)
Show all versions (80 total)

SHA 256 checksum