public class UnitsRelationsTools extends Object
| Constructor and Description | 
|---|
| UnitsRelationsTools() | 
| Modifier and Type | Method and Description | 
|---|---|
| static @Nullable AnnotationMirror | buildAnnoMirrorWithDefaultPrefix(ProcessingEnvironment env,
                                Class<? extends Annotation> annoClass)Creates an AnnotationMirror representing a unit defined by annoClass, with the default Prefix
 of Prefix.one | 
| static @Nullable AnnotationMirror | buildAnnoMirrorWithNoPrefix(ProcessingEnvironment env,
                           Class<? extends Annotation> annoClass)Creates an AnnotationMirror representing a unit defined by annoClass, with no prefix | 
| static @Nullable AnnotationMirror | buildAnnoMirrorWithSpecificPrefix(ProcessingEnvironment env,
                                 Class<? extends Annotation> annoClass,
                                 Prefix p)Creates an AnnotationMirror representing a unit defined by annoClass, with the specific
 Prefix p | 
| static @Nullable Prefix | getPrefix(AnnotatedTypeMirror annoType)Retrieves the SI Prefix of an Annotated Type | 
| static @Nullable Prefix | getPrefix(@Nullable AnnotationMirror unitsAnnotation)Retrieves the SI Prefix of an Annotation | 
| static boolean | hasNoPrefix(@Nullable AnnotatedTypeMirror annoType)Checks to see if an Annotated Type has no prefix | 
| static boolean | hasNoPrefix(@Nullable AnnotationMirror unitsAnnotation)Checks to see if an Annotation has no prefix | 
| static boolean | hasNoUnits(@Nullable AnnotatedTypeMirror annoType)Checks to see if a particular Annotated Type has no units, such as scalar constants in
 calculations. | 
| static boolean | hasSpecificUnit(@Nullable AnnotatedTypeMirror annoType,
               @Nullable AnnotationMirror unitsAnnotation)Checks to see if a particular Annotated Type has a specific unit (represented by its
 Annotation) | 
| static boolean | hasSpecificUnitIgnoringPrefix(@Nullable AnnotatedTypeMirror annoType,
                             @Nullable AnnotationMirror unitsAnnotation)Checks to see if a particular Annotated Type has a particular base unit (represented by its
 Annotation) | 
| static AnnotatedTypeMirror | removePrefix(@Nullable Elements elements,
            @Nullable AnnotatedTypeMirror annoType)Removes the Prefix value from an Annotated Type, by constructing and returning a copy of the
 Annotated Type without the prefix | 
| static @Nullable AnnotationMirror | removePrefix(@Nullable Elements elements,
            @Nullable AnnotationMirror unitsAnnotation)Removes the Prefix value from an Annotation, by constructing and returning a copy of its base
 SI unit's Annotation | 
public static @Nullable AnnotationMirror buildAnnoMirrorWithDefaultPrefix(ProcessingEnvironment env, Class<? extends Annotation> annoClass)
env - the Checker Processing Environment, provided as a parameter in init() of a
     UnitsRelations implementationannoClass - the Class of an Annotation representing a Unit (eg m.class for meters)public static @Nullable AnnotationMirror buildAnnoMirrorWithSpecificPrefix(ProcessingEnvironment env, Class<? extends Annotation> annoClass, Prefix p)
env - the Checker Processing Environment, provided as a parameter in init() of a
     UnitsRelations implementationannoClass - the Class of an Annotation representing a Unit (eg m.class for meters)p - a Prefix valuepublic static @Nullable AnnotationMirror buildAnnoMirrorWithNoPrefix(ProcessingEnvironment env, Class<? extends Annotation> annoClass)
env - checker Processing Environment, provided as a parameter in init() of a
     UnitsRelations implementationannoClass - the Class of an Annotation representing a Unit (eg m.class for meters)public static @Nullable Prefix getPrefix(AnnotatedTypeMirror annoType)
annoType - an AnnotatedTypeMirror representing a Units Annotated Typepublic static @Nullable Prefix getPrefix(@Nullable AnnotationMirror unitsAnnotation)
unitsAnnotation - an AnnotationMirror representing a Units Annotationpublic static boolean hasNoPrefix(@Nullable AnnotatedTypeMirror annoType)
annoType - an AnnotatedTypeMirror representing a Units Annotated Typepublic static boolean hasNoPrefix(@Nullable AnnotationMirror unitsAnnotation)
unitsAnnotation - an AnnotationMirror representing a Units Annotationpublic static @Nullable AnnotationMirror removePrefix(@Nullable Elements elements, @Nullable AnnotationMirror unitsAnnotation)
elements - the Element Utilities from a checker's processing environment, typically
     obtained by calling env.getElementUtils() in init() of a Units Relations implementationunitsAnnotation - an AnnotationMirror representing a Units Annotationpublic static AnnotatedTypeMirror removePrefix(@Nullable Elements elements, @Nullable AnnotatedTypeMirror annoType)
elements - the Element Utilities from a checker's processing environment, typically
     obtained by calling env.getElementUtils() in init() of a Units Relations implementationannoType - an AnnotatedTypeMirror representing a Units Annotated Typepublic static boolean hasNoUnits(@Nullable AnnotatedTypeMirror annoType)
Any number that isn't assigned a unit will automatically get the Annotation UnknownUnits. eg: int x = 5; // x has @UnknownUnits
annoType - an AnnotatedTypeMirror representing a Units Annotated Typepublic static boolean hasSpecificUnit(@Nullable AnnotatedTypeMirror annoType, @Nullable AnnotationMirror unitsAnnotation)
annoType - an AnnotatedTypeMirror representing a Units Annotated TypeunitsAnnotation - an AnnotationMirror representing a Units Annotation of a specific unitpublic static boolean hasSpecificUnitIgnoringPrefix(@Nullable AnnotatedTypeMirror annoType, @Nullable AnnotationMirror unitsAnnotation)
annoType - an AnnotatedTypeMirror representing a Units Annotated TypeunitsAnnotation - an AnnotationMirror representing a Units Annotation of the base unit