Now using AST for parameters and return type generation