Interface NodeGeneratorPlugs
- All Known Implementing Classes:
BytecodeDSLNodeGeneratorPlugs
public interface NodeGeneratorPlugs
Interface that allows node generators to customize the way
) can pass its own implementation
of this interface to the
FlatNodeGenFactory generates
nodes. A node generator (e.g.,
invalid reference
BytecodeRootNodeElement
FlatNodeGenFactory during construction, and the factory will
delegate to it.-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptiondefault List<? extends VariableElement> default CodeTreebindExpressionValue(FlatNodeGenFactory.FrameState frameState, DSLExpression.Variable variable) default booleancanBoxingEliminateType(NodeExecutionData currentExecution, TypeMirror type) createExecuteChild(FlatNodeGenFactory factory, CodeTreeBuilder builder, FlatNodeGenFactory.FrameState originalFrameState, FlatNodeGenFactory.FrameState frameState, NodeExecutionData execution, FlatNodeGenFactory.LocalVariable targetValue) default StringcreateNodeChildReferenceForException(FlatNodeGenFactory flatNodeGenFactory, FlatNodeGenFactory.FrameState frameState, NodeExecutionData execution, NodeChildData child) default CodeTreedefault voidnotifySpecialize(FlatNodeGenFactory nodeFactory, CodeTreeBuilder builder, FlatNodeGenFactory.FrameState frameState, SpecializationData specialization)
-
Field Details
-
DEFAULT
-
-
Method Details
-
additionalArguments
-
createExecuteChild
default FlatNodeGenFactory.ChildExecutionResult createExecuteChild(FlatNodeGenFactory factory, CodeTreeBuilder builder, FlatNodeGenFactory.FrameState originalFrameState, FlatNodeGenFactory.FrameState frameState, NodeExecutionData execution, FlatNodeGenFactory.LocalVariable targetValue) -
createNodeChildReferenceForException
default String createNodeChildReferenceForException(FlatNodeGenFactory flatNodeGenFactory, FlatNodeGenFactory.FrameState frameState, NodeExecutionData execution, NodeChildData child) -
canBoxingEliminateType
-
createTransferToInterpreterAndInvalidate
-
notifySpecialize
default void notifySpecialize(FlatNodeGenFactory nodeFactory, CodeTreeBuilder builder, FlatNodeGenFactory.FrameState frameState, SpecializationData specialization) -
bindExpressionValue
default CodeTree bindExpressionValue(FlatNodeGenFactory.FrameState frameState, DSLExpression.Variable variable)
-