annotations

This commit is contained in:
FalsePattern committed 2022-05-06 23:53:11 +02:00
1 parent 016f1ad839
commit 01127b4512
13 files changed
+55 -4

No files matched your search

@@ -0,0 +1,24 @@
package com.falsepattern.lib;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
/**
* Anything annotated with this annotation will be considered stable, and the class/method/field will not get breaking
* changes without a full deprecation cycle.
*
* If a class or method is NOT annotated with this annotation, it will be considered unstable, and the package/method arguments/etc.
* can freely change between patch releases without notice.
*
* If a class is annotated with this annotation, all currently existing public and protected members in the class will
* be considered stable.
*
* Private members will never be considered stable, and can be removed without notice.
*/
@Documented
@Retention(RetentionPolicy.CLASS)
@StableAPI(since = "0.6.0")
public @interface StableAPI {
String since();
}