ParseTree is a C extension (using RubyInline) that extracts the parse tree for an entire class or a specific method and returns it as a s-expression (aka sexp) using ruby's arrays, strings, symbols, and integers. As an example: def conditional1(arg1) if arg1 == 0 then return 1 end return 0 end becomes: [:defn, :conditional1, [:scope, [:block, [:args, :arg1], [:if, [:call, [:lvar, :arg1], :==, [:array, [:lit, 0]]], [:return, [:lit, 1]], nil], [:return, [:lit, 0]]]]]

Required Ruby Version

None

Authors

Ryan Davis

Versions

  1. 3.0.9
    1. source

      1. 3.0.9 source May 01, 2012 (40.5 KB)
  2. 3.0.8
    1. source

      1. 3.0.8 source September 27, 2011 (31.5 KB)
  3. 3.0.7
    1. source

      1. 3.0.7 source February 18, 2011 (52 KB)
  4. 3.0.6
    1. source

      1. 3.0.6 source September 01, 2010 (49 KB)
  5. 3.0.5
    1. source

      1. 3.0.5 source March 28, 2010 (49 KB)
Show all versions (42 total)

SHA 256 checksum