JetBrains / JetBrains/java-annotations
Annotation for linking (generated) code
- Dominant language
- Kotlin
- Stars
- 463
- Forks
- 72
- PR merge metrics
- No merged PRs in 30d
Description
Example Usecase: when defining a HTTP API and generating client code which maps to it it would be good to have the IDE be able to recognize this, in e.g. Dataflow Analysis.
```java
public class Controller {
@Get("/foo")
public String getFoo(String param) { return "foo " + param; }
}
```
```java
public class GeneratedControllerClient {
@Calls("org.example.Controller.getFoo(String)")
public String getFoo(String param) { /* do http call and return server result */ }
}
```
Optionally the generated client could have additional parameters, e.g. for a callback style invocation, and it would be possible to map e.g. return value of original method to some `Consumer` parameter of the call site.
Contributor guide
Assessment
This issue has not been assessed yet.