You can buy this project and download/modify it how often you want.
package encrywm.ast trait AstNodeScanner { def scan(node: Ast.AST_NODE): Any }