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"
}
| Type Params | Return Type | Name and description |
|---|---|---|
|
public boolean |
isHandlesNodeChildren()Indicates that inline customizer nodes accept nested closure content. |
|
public Object |
newInstance(FactoryBuilderSupport builder, Object name, Object value, Map attributes)Creates the backing map used to build a proxy customizer. |
|
public boolean |
onNodeChildren(FactoryBuilderSupport builder, Object node, Closure childContent)Stores the inline customization closure on the backing node. |
|
public Object |
postCompleteNode(FactoryBuilderSupport factory, Object parent, Object node)Builds the proxy-backed compilation customizer once the node is complete. |
| Methods inherited from class | Name |
|---|---|
class AbstractFactory |
isHandlesNodeChildren, isLeaf, onFactoryRegistration, onHandleNodeAttributes, onNodeChildren, onNodeCompleted, setChild, setParent |
Indicates that inline customizer nodes accept nested closure content.
trueCreates the backing map used to build a proxy customizer.
builder - the active buildername - the node namevalue - the supplied node valueattributes - the node attributesStores the inline customization closure on the backing node.
builder - the active buildernode - the current nodechildContent - the nested closure contentfalse to continue normal processingBuilds the proxy-backed compilation customizer once the node is complete.
factory - the active builderparent - the parent nodenode - the completed node