public class FormatterTreeUtil extends Object
| Modifier and Type | Class and Description | 
|---|---|
class  | 
FormatterTreeUtil.FormatCall
Represents a format method invocation in the syntax tree. 
 | 
static class  | 
FormatterTreeUtil.InvocationType
Describes the ways a format method may be invoked. 
 | 
static class  | 
FormatterTreeUtil.Result<E>
A wrapper around a value of type E, plus an ExpressionTree location. 
 | 
| Modifier and Type | Field and Description | 
|---|---|
BaseTypeChecker | 
checker  | 
ProcessingEnvironment | 
processingEnv  | 
| Constructor and Description | 
|---|
FormatterTreeUtil(BaseTypeChecker checker)  | 
| Modifier and Type | Method and Description | 
|---|---|
FormatterTreeUtil.Result<ConversionCategory[]> | 
asFormatCallCategories(MethodInvocationNode node)  | 
AnnotationMirror | 
categoriesToFormatAnnotation(ConversionCategory[] args)
Takes a list of ConversionCategory elements, and returns a syntax tree element that
 represents a  
Format annotation with the list as value. | 
AnnotationMirror | 
exceptionToInvalidFormatAnnotation(IllegalFormatException ex)
Takes an exception that describes an invalid formatter string and, returns a syntax trees
 element that represents a  
InvalidFormat annotation with the exception's error message
 as value. | 
<E> void | 
failure(FormatterTreeUtil.Result<E> res,
       @CompilerMessageKey String msg,
       Object... args)
Reports an error. 
 | 
ConversionCategory[] | 
formatAnnotationToCategories(AnnotationMirror anno)
Takes a syntax tree element that represents a  
Format annotation, and returns its
 value. | 
String | 
invalidFormatAnnotationToErrorMessage(AnnotationMirror anno)
Takes a syntax tree element that represents a  
InvalidFormat annotation, and returns
 its value. | 
boolean | 
isAsFormatCall(MethodInvocationNode node,
              AnnotatedTypeFactory atypeFactory)
Returns true if the call is to a method with the @ReturnsFormat annotation. 
 | 
boolean | 
isFormatCall(MethodInvocationTree node,
            AnnotatedTypeFactory atypeFactory)
Returns true if  
node is a call to a method annotated with @FormatMethod. | 
static boolean | 
isLocale(ExpressionTree e,
        AnnotatedTypeFactory atypeFactory)
Returns true if the given ExpressionTree has type java.util.Locale. 
 | 
<E> void | 
warning(FormatterTreeUtil.Result<E> res,
       @CompilerMessageKey String msg,
       Object... args)
Reports an warning. 
 | 
public final BaseTypeChecker checker
public final ProcessingEnvironment processingEnv
public FormatterTreeUtil(BaseTypeChecker checker)
public boolean isAsFormatCall(MethodInvocationNode node, AnnotatedTypeFactory atypeFactory)
public FormatterTreeUtil.Result<ConversionCategory[]> asFormatCallCategories(MethodInvocationNode node)
public boolean isFormatCall(MethodInvocationTree node, AnnotatedTypeFactory atypeFactory)
node is a call to a method annotated with @FormatMethod.public static boolean isLocale(ExpressionTree e, AnnotatedTypeFactory atypeFactory)
public final <E> void failure(FormatterTreeUtil.Result<E> res, @CompilerMessageKey String msg, Object... args)
FormatterTreeUtil.Result to report the location.public final <E> void warning(FormatterTreeUtil.Result<E> res, @CompilerMessageKey String msg, Object... args)
FormatterTreeUtil.Result to report the location.public AnnotationMirror exceptionToInvalidFormatAnnotation(IllegalFormatException ex)
InvalidFormat annotation with the exception's error message
 as value.public String invalidFormatAnnotationToErrorMessage(AnnotationMirror anno)
InvalidFormat annotation, and returns
 its value.public AnnotationMirror categoriesToFormatAnnotation(ConversionCategory[] args)
Format annotation with the list as value.public ConversionCategory[] formatAnnotationToCategories(AnnotationMirror anno)
Format annotation, and returns its
 value.