Class SourceAwareCustomizerFactory
- java.lang.Object
- 
- groovy.util.AbstractFactory
- 
- org.codehaus.groovy.control.customizers.builder.SourceAwareCustomizerFactory
 
 
- 
- All Implemented Interfaces:
- Factory,- PostCompletionFactory
 
 public class SourceAwareCustomizerFactory extends AbstractFactory implements PostCompletionFactory Factory for use withCompilerCustomizationBuilder. Allows the construction ofsource aware customizers. Syntax:// apply CompileStatic AST annotation on .sgroovy files builder.source(extension: 'sgroovy') { ast(CompileStatic) } // apply CompileStatic AST annotation on .sgroovy or .sg files builder.source(extensions: ['sgroovy','sg']) { ast(CompileStatic) } // apply CompileStatic AST annotation on .sgroovy or .sg files builder.source(extensionValidator: { it.name in ['sgroovy','sg']}) { ast(CompileStatic) } // apply CompileStatic AST annotation on files whose name is 'foo' builder.source(basename: 'foo') { ast(CompileStatic) } // apply CompileStatic AST annotation on files whose name is 'foo' or 'bar' builder.source(basenames: ['foo', 'bar']) { ast(CompileStatic) } // apply CompileStatic AST annotation on files whose name is 'foo' or 'bar' builder.source(basenameValidator: { it in ['foo', 'bar'] }) { ast(CompileStatic) } // apply CompileStatic AST annotation on files that do not contain a class named 'Baz' builder.source(unitValidator: { unit->!unit.AST.classes.any { it.name == 'Baz' } }) { ast(CompileStatic) } // apply CompileStatic AST annotation on class nodes that end with 'CS' builder.source(classValidator: { cn->cn.name.endsWith('CS') }) { ast(CompileStatic) }
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classSourceAwareCustomizerFactory.SourceOptions
 - 
Constructor SummaryConstructors Constructor Description SourceAwareCustomizerFactory()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.ObjectnewInstance(FactoryBuilderSupport builder, java.lang.Object name, java.lang.Object value, java.util.Map attributes)java.lang.ObjectpostCompleteNode(FactoryBuilderSupport factory, java.lang.Object parent, java.lang.Object node)voidsetChild(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object child)- 
Methods inherited from class groovy.util.AbstractFactoryisHandlesNodeChildren, isLeaf, onFactoryRegistration, onHandleNodeAttributes, onNodeChildren, onNodeCompleted, setParent
 
- 
 
- 
- 
- 
Method Detail- 
newInstancepublic java.lang.Object newInstance(FactoryBuilderSupport builder, java.lang.Object name, java.lang.Object value, java.util.Map attributes) throws java.lang.InstantiationException, java.lang.IllegalAccessException - Specified by:
- newInstancein interface- Factory
- Parameters:
- builder- the FactoryBuilder
- name- the name of the node being built
- value- the 'value' argument in the build node
- attributes- the attributes of the build arg
- Returns:
- the object created for the builder
- Throws:
- java.lang.InstantiationException- if attempting to instantiate an interface or abstract class
- java.lang.IllegalAccessException- if the instance can't be created due to a security violation
 
 - 
setChildpublic void setChild(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object child) - Specified by:
- setChildin interface- Factory
- Overrides:
- setChildin class- AbstractFactory
 
 - 
postCompleteNodepublic java.lang.Object postCompleteNode(FactoryBuilderSupport factory, java.lang.Object parent, java.lang.Object node) - Specified by:
- postCompleteNodein interface- PostCompletionFactory
 
 
- 
 
-