spoon
https://github.com/inria/spoon
Java
Spoon is a metaprogramming library to analyze and transform Java source code. :spoon: is made with :heart:, :beers: and :sparkles:. It parses source files to build a well-designed AST with powerful analysis and transformation API.
Triage Issues!
When you volunteer to triage issues, you'll receive an email each day with a link to an open issue that needs help in this project. You'll also receive instructions on how to triage issues.
Triage Docs!
Receive a documented method or class from your favorite GitHub repos in your inbox every day. If you're really pro, receive undocumented methods or classes and supercharge your commit history.
Java not yet supported1 Subscribers
Add a CodeTriage badge to spoon
Help out
- Issues
- add support for lazy model construction
- Given code position (eg. line number), how to get the CtElement corresponding to that position?
- bug: sniper mode does not work when one removes a type
- NullPointerException when parameter type not declared in analyzed source files (MethodTypingContext.adaptTypeParameter)
- change: spoon-maven-plugin should use the fullclasspath by default
- Unify license Header
- Spoon throws StackOverflowError
- NPE in spoon.support.compiler.jdt.ReferenceBuilder.tryRecoverTypeArguments(ReferenceBuilder.java:611)
- Bug: prettyprint() adds static variables as imports after generating code
- m.getOriginalSourceFragment().getSourceCode() -> CtMethodImpl does not have CtRole.STATEMENT when add a clone statement to a new method body
- Docs
- Java not yet supported