Class SpecializationData
- java.lang.Object
-
- com.oracle.truffle.dsl.processor.model.MessageContainer
-
- com.oracle.truffle.dsl.processor.model.TemplateMethod
-
- com.oracle.truffle.dsl.processor.model.SpecializationData
-
- All Implemented Interfaces:
java.lang.Comparable<TemplateMethod>
,java.lang.Iterable<MessageContainer>
public final class SpecializationData extends TemplateMethod
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SpecializationData.SpecializationKind
-
Nested classes/interfaces inherited from class com.oracle.truffle.dsl.processor.model.TemplateMethod
TemplateMethod.TypeSignature
-
Nested classes/interfaces inherited from class com.oracle.truffle.dsl.processor.model.MessageContainer
MessageContainer.Message
-
-
Field Summary
-
Fields inherited from class com.oracle.truffle.dsl.processor.model.TemplateMethod
NO_NATURAL_ORDER
-
-
Constructor Summary
Constructors Constructor Description SpecializationData(NodeData node, TemplateMethod template, SpecializationData.SpecializationKind kind)
SpecializationData(NodeData node, TemplateMethod template, SpecializationData.SpecializationKind kind, java.util.List<SpecializationThrowsData> exceptions)
-
Method Summary
-
Methods inherited from class com.oracle.truffle.dsl.processor.model.TemplateMethod
canBeAccessedByInstanceOf, compareBySignature, compareParameter, findByExecutionData, findParameter, findParameters, getId, getMarkerAnnotation, getMessageAnnotation, getMessageElement, getMethod, getMethodName, getNaturalOrder, getParameters, getParametersAfter, getPreviousParam, getRequiredParameters, getReturnType, getReturnTypeAndParameters, getSignatureParameter, getSignatureParameters, getSignatureSize, getSignatureTypes, getSpecification, getTemplate, getTypeSignature, replaceParameter, setId, updateSignature
-
Methods inherited from class com.oracle.truffle.dsl.processor.model.MessageContainer
addError, addError, addError, addWarning, addWarning, collectMessages, emitMessages, getBaseContainer, getMessageAnnotationValue, getMessages, hasErrors, iterator
-
-
-
-
Constructor Detail
-
SpecializationData
public SpecializationData(NodeData node, TemplateMethod template, SpecializationData.SpecializationKind kind, java.util.List<SpecializationThrowsData> exceptions)
-
SpecializationData
public SpecializationData(NodeData node, TemplateMethod template, SpecializationData.SpecializationKind kind)
-
-
Method Detail
-
setInsertBefore
public void setInsertBefore(SpecializationData insertBefore)
-
setInsertBeforeName
public void setInsertBeforeName(java.lang.String insertBeforeName)
-
getInsertBefore
public SpecializationData getInsertBefore()
-
getInsertBeforeName
public java.lang.String getInsertBeforeName()
-
getContainsNames
public java.util.Set<java.lang.String> getContainsNames()
-
getContains
public java.util.Set<SpecializationData> getContains()
-
getExcludedBy
public java.util.Set<SpecializationData> getExcludedBy()
-
setReachable
public void setReachable(boolean reachable)
-
isReachable
public boolean isReachable()
-
isPolymorphic
public boolean isPolymorphic()
-
findChildContainers
protected java.util.List<MessageContainer> findChildContainers()
- Overrides:
findChildContainers
in classTemplateMethod
-
hasRewrite
public boolean hasRewrite(ProcessorContext context)
-
compareTo
public int compareTo(TemplateMethod other)
- Specified by:
compareTo
in interfacejava.lang.Comparable<TemplateMethod>
- Overrides:
compareTo
in classTemplateMethod
-
setIndex
public void setIndex(int order)
-
getIndex
public int getIndex()
-
isContainedBy
public boolean isContainedBy(SpecializationData next)
-
createReferenceName
public java.lang.String createReferenceName()
-
getNode
public NodeData getNode()
-
setGuards
public void setGuards(java.util.List<GuardExpression> guards)
-
isSpecialized
public boolean isSpecialized()
-
isGeneric
public boolean isGeneric()
-
isUninitialized
public boolean isUninitialized()
-
getExceptions
public java.util.List<SpecializationThrowsData> getExceptions()
-
getGuards
public java.util.List<GuardExpression> getGuards()
-
setShortCircuits
public void setShortCircuits(java.util.List<ShortCircuitData> shortCircuits)
-
getShortCircuits
public java.util.List<ShortCircuitData> getShortCircuits()
-
getAssumptions
public java.util.List<java.lang.String> getAssumptions()
-
setAssumptions
public void setAssumptions(java.util.List<java.lang.String> assumptions)
-
findNextSpecialization
public SpecializationData findNextSpecialization()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classTemplateMethod
-
isFrameUsedByGuard
public boolean isFrameUsedByGuard(ProcessorContext context)
-
isReachableAfter
public boolean isReachableAfter(SpecializationData prev)
-
-