Posted By: Ryan Davis
Date: 2009-06-26 19:08
Summary: ParseTree 3.0.4 Released
Project: ParseTree - ruby parse tree tools
ParseTree version 3.0.4 has been released!
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]]]]]
Changes:
### 3.0.4 / 2009-06-23
* 4 minor enhancements:
* Pulled unique.rb from ParseTree to sexp_processor. * Switched to minitest * UnifiedRuby strips flip2 back down to expected values * Updated Rakefile for new hoe
* 2 bug fixes:
* 1.8.6p287 & 1.8.7 changed flip2 with fixnum start. fixed * 1.8.6p287 & 1.8.7 removed the begin node. fixed. |
|