Class InlinedASTCustomizerFactory
- java.lang.Object
 - 
- groovy.util.AbstractFactory
 - 
- org.codehaus.groovy.control.customizers.builder.InlinedASTCustomizerFactory
 
 
 
- 
- All Implemented Interfaces:
 Factory,PostCompletionFactory
public class InlinedASTCustomizerFactory extends AbstractFactory implements PostCompletionFactory
This factory lets a user define a compilation customizer without having to define an anonymous inner class.Here is an example, which only logs the class name during compilation:
inline(phase:'CONVERSION') { source, context, classNode->println "visiting $classNode" }- Since:
 - 2.1.0
 
 
- 
- 
Constructor Summary
Constructors Constructor Description InlinedASTCustomizerFactory() 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisHandlesNodeChildren()Does this factory "Own" it's child closure.java.lang.ObjectnewInstance(FactoryBuilderSupport builder, java.lang.Object name, java.lang.Object value, java.util.Map attributes)booleanonNodeChildren(FactoryBuilderSupport builder, java.lang.Object node, Closure childContent)Only called if it isLeaf is false and isHandlesNodeChildren is truejava.lang.ObjectpostCompleteNode(FactoryBuilderSupport factory, java.lang.Object parent, java.lang.Object node)- 
Methods inherited from class groovy.util.AbstractFactory
isLeaf, onFactoryRegistration, onHandleNodeAttributes, onNodeCompleted, setChild, setParent 
 - 
 
 - 
 
- 
- 
Method Detail
- 
isHandlesNodeChildren
public boolean isHandlesNodeChildren()
Description copied from interface:FactoryDoes this factory "Own" it's child closure.- Specified by:
 isHandlesNodeChildrenin interfaceFactory- Overrides:
 isHandlesNodeChildrenin classAbstractFactory- Returns:
 - true if the factory should have onContentClosure() called, false if the builder should handle it
 
 
- 
newInstance
public 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 interfaceFactory- Parameters:
 builder- the FactoryBuildername- the name of the node being builtvalue- the 'value' argument in the build nodeattributes- 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 classjava.lang.IllegalAccessException- if the instance can't be created due to a security violation
 
- 
onNodeChildren
public boolean onNodeChildren(FactoryBuilderSupport builder, java.lang.Object node, Closure childContent)
Description copied from interface:FactoryOnly called if it isLeaf is false and isHandlesNodeChildren is true- Specified by:
 onNodeChildrenin interfaceFactory- Overrides:
 onNodeChildrenin classAbstractFactory- Parameters:
 builder- the FactoryBuildernode- the node (returned from newINstance) to consider the attributes forchildContent- the child content closure of the builder- Returns:
 - true if the factory builder should apply default node processing to the content child
 
 
- 
postCompleteNode
public java.lang.Object postCompleteNode(FactoryBuilderSupport factory, java.lang.Object parent, java.lang.Object node)
- Specified by:
 postCompleteNodein interfacePostCompletionFactory
 
 - 
 
 -