Class Processor
- java.lang.Object
-
- javax.annotation.processing.AbstractProcessor
-
- org.immutables.generator.processor.Processor
-
- All Implemented Interfaces:
javax.annotation.processing.Processor
@SupportedSourceVersion(RELEASE_8) @Service(javax.annotation.processing.Processor.class) public final class Processor extends javax.annotation.processing.AbstractProcessor
-
-
Constructor Summary
Constructors Constructor Description Processor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidgenerateTemplateType(javax.lang.model.element.TypeElement templateType)java.util.Set<java.lang.String>getSupportedAnnotationTypes()private java.lang.StringgetTemplateText(javax.annotation.processing.Filer filer, javax.lang.model.element.TypeElement templateType, javax.lang.model.element.PackageElement packageElement)private ImmutableTrees.UnitparseUnit(java.lang.String templateText)booleanprocess(java.util.Set<? extends javax.lang.model.element.TypeElement> annotations, javax.annotation.processing.RoundEnvironment round)private voidprocessTemplates(java.util.Set<? extends javax.lang.model.element.Element> templates)private java.lang.StringreadCharContent(javax.tools.FileObject resource)private java.lang.StringreadTemplateResource(javax.lang.model.element.TypeElement templateType, SwissArmyKnife knife)private ImmutableTrees.UnittransformUnit(SwissArmyKnife knife, ImmutableTrees.Unit unit)
-
-
-
Field Detail
-
parser
private final Parser parser
-
-
Method Detail
-
getSupportedAnnotationTypes
public java.util.Set<java.lang.String> getSupportedAnnotationTypes()
- Specified by:
getSupportedAnnotationTypesin interfacejavax.annotation.processing.Processor- Overrides:
getSupportedAnnotationTypesin classjavax.annotation.processing.AbstractProcessor
-
process
public boolean process(java.util.Set<? extends javax.lang.model.element.TypeElement> annotations, javax.annotation.processing.RoundEnvironment round)- Specified by:
processin interfacejavax.annotation.processing.Processor- Specified by:
processin classjavax.annotation.processing.AbstractProcessor
-
processTemplates
private void processTemplates(java.util.Set<? extends javax.lang.model.element.Element> templates)
-
generateTemplateType
private void generateTemplateType(javax.lang.model.element.TypeElement templateType) throws java.io.IOException, java.lang.Exception- Throws:
java.io.IOExceptionjava.lang.Exception
-
readTemplateResource
private java.lang.String readTemplateResource(javax.lang.model.element.TypeElement templateType, SwissArmyKnife knife) throws java.io.IOException- Throws:
java.io.IOException
-
readCharContent
private java.lang.String readCharContent(javax.tools.FileObject resource) throws java.io.IOException- Throws:
java.io.IOException
-
getTemplateText
private java.lang.String getTemplateText(javax.annotation.processing.Filer filer, javax.lang.model.element.TypeElement templateType, javax.lang.model.element.PackageElement packageElement) throws java.io.IOException- Throws:
java.io.IOException
-
parseUnit
private ImmutableTrees.Unit parseUnit(java.lang.String templateText) throws java.lang.Exception
- Throws:
java.lang.Exception
-
transformUnit
private ImmutableTrees.Unit transformUnit(SwissArmyKnife knife, ImmutableTrees.Unit unit)
-
-