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 SummaryConstructors Constructor Description InlinedASTCustomizerFactory()
- 
Method SummaryModifier and Type Method Description booleanisHandlesNodeChildren()Does this factory "Own" its 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.AbstractFactoryisLeaf, onFactoryRegistration, onHandleNodeAttributes, onNodeCompleted, setChild, setParentMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
- 
Constructor Details- 
InlinedASTCustomizerFactorypublic InlinedASTCustomizerFactory()
 
- 
- 
Method Details- 
isHandlesNodeChildrenpublic boolean isHandlesNodeChildren()Description copied from interface:FactoryDoes this factory "Own" its child closure.- Specified by:
- isHandlesNodeChildrenin interface- Factory
- Overrides:
- isHandlesNodeChildrenin class- AbstractFactory
- Returns:
- true if the factory should have onContentClosure() called, false if the builder should handle it
 
- 
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
 
- 
onNodeChildrenpublic 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 interface- Factory
- Overrides:
- onNodeChildrenin class- AbstractFactory
- Parameters:
- builder- the FactoryBuilder
- node- the node (returned from newINstance) to consider the attributes for
- childContent- the child content closure of the builder
- Returns:
- true if the factory builder should apply default node processing to the content child
 
- 
postCompleteNodepublic java.lang.Object postCompleteNode(FactoryBuilderSupport factory, java.lang.Object parent, java.lang.Object node)- Specified by:
- postCompleteNodein interface- PostCompletionFactory
 
 
-