require 'ruby2ruby'
require 'parsetree'
code = "puts(var)"
sexp = SexpProcessor.new.process(ParseTree.translate(code))
# => s(:fcall, :puts, s(:array, s(:vcall, :var)))
code = Ruby2Ruby.new.process(sexp)
# => UnknownNodeError: Bug! Unknown node-type :fcall to Ruby2Ruby
SexpsをParseTreeからRubyコードに変換する方法はありますか?Ruby2RubyはParseTreeと互換性がありますか?
私はこの翻訳を行うコードを書いていましたが、それがすでに存在するかどうかを知りたいと思います。もう1つの問題は、Ruby2Rubyが算術演算に不要な括弧をたくさん置くことです(4+3-2+-2**4
〜(((4 + 3) - 2) + -(2 ** 4))
など)。それらを削除する方法はありますか?
コードの明確な表現に必要な最小限の括弧を設定するのは難しいです。 – delnan
多分あなたはSexpsをまったく使用する必要はありません。実行しているコードのソースを取得しようとしていますか? –