summaryrefslogtreecommitdiffstats
path: root/ri/src/main/java/javax/annotation/Nonnegative.java
diff options
context:
space:
mode:
Diffstat (limited to 'ri/src/main/java/javax/annotation/Nonnegative.java')
-rw-r--r--ri/src/main/java/javax/annotation/Nonnegative.java41
1 files changed, 0 insertions, 41 deletions
diff --git a/ri/src/main/java/javax/annotation/Nonnegative.java b/ri/src/main/java/javax/annotation/Nonnegative.java
deleted file mode 100644
index 21d1793..0000000
--- a/ri/src/main/java/javax/annotation/Nonnegative.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package javax.annotation;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import javax.annotation.meta.TypeQualifier;
-import javax.annotation.meta.TypeQualifierValidator;
-import javax.annotation.meta.When;
-
-/** Used to annotate a value that should only contain nonnegative values */
-@Documented
-@TypeQualifier(applicableTo = Number.class)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface Nonnegative {
- When when() default When.ALWAYS;
-
- class Checker implements TypeQualifierValidator<Nonnegative> {
-
- public When forConstantValue(Nonnegative annotation, Object v) {
- if (!(v instanceof Number))
- return When.NEVER;
- boolean isNegative;
- Number value = (Number) v;
- if (value instanceof Long)
- isNegative = value.longValue() < 0;
- else if (value instanceof Double)
- isNegative = value.doubleValue() < 0;
- else if (value instanceof Float)
- isNegative = value.floatValue() < 0;
- else
- isNegative = value.intValue() < 0;
-
- if (isNegative)
- return When.NEVER;
- else
- return When.ALWAYS;
-
- }
- }
-}