Class CustomOperationModel
java.lang.Object
com.oracle.truffle.dsl.processor.model.MessageContainer
com.oracle.truffle.dsl.processor.model.Template
com.oracle.truffle.dsl.processor.bytecode.model.CustomOperationModel
- All Implemented Interfaces:
Iterable<MessageContainer>
Model for a user-defined operation.
We define this class using composition rather than inheritance because a custom operation is
generated based on some template type (an
or
), and it
needs to accept warning/error messages when the operation is validated.
invalid reference
Operation
invalid reference
OperationProxy
-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.dsl.processor.model.MessageContainer
MessageContainer.Message -
Field Summary
FieldsModifier and TypeFieldDescriptionfinal BytecodeDSLModelfinal List<TypeMirror> final OperationModelFields inherited from class com.oracle.truffle.dsl.processor.model.MessageContainer
types -
Constructor Summary
ConstructorsConstructorDescriptionCustomOperationModel(ProcessorContext context, BytecodeDSLModel bytecode, TypeElement templateType, AnnotationMirror mirror, OperationModel operation) -
Method Summary
Methods inherited from class com.oracle.truffle.dsl.processor.model.Template
dump, getContext, getMessageElement, getTemplateType, getTemplateTypeAnnotation, toStringMethods inherited from class com.oracle.truffle.dsl.processor.model.MessageContainer
addError, addError, addError, addError, addSuppressableWarning, addSuppressableWarning, addWarning, addWarning, addWarning, addWarning, collectMessages, emitMessages, getMessageAnnotation, getMessageAnnotationValue, getMessages, getMessagesForModification, hasErrors, hasErrorsOrWarnings, iterator, redirectMessages, redirectMessagesOnGeneratedElementsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
bytecode
-
operation
-
implicitTags
-
-
Constructor Details
-
CustomOperationModel
public CustomOperationModel(ProcessorContext context, BytecodeDSLModel bytecode, TypeElement templateType, AnnotationMirror mirror, OperationModel operation)
-
-
Method Details
-
getImplicitTags
-
isEpilogExceptional
public boolean isEpilogExceptional() -
findChildContainers
- Overrides:
findChildContainersin classTemplate
-