Package spoon.reflect.code
Interface CtCodeSnippetExpression<T>
- All Superinterfaces:
Cloneable,CtCodeElement,CtCodeSnippet,CtElement,CtExpression<T>,CtQueryable,CtTypedElement<T>,CtVisitable,FactoryAccessor,Serializable,SourcePositionHolder,TemplateParameter<T>
- All Known Implementing Classes:
CtCodeSnippetExpressionImpl
This element is a code snippet that must represent an expression and can thus
be inserted in the program's model as is. Code snippets should be avoided
since no controls can be performed on them.
-
Method Summary
Modifier and TypeMethodDescriptionclone()Clone the element which calls this method in a new object.<E extends CtExpression<T>>
Ecompile()Compiles this expression snippet to produce the corresponding AST expression.Methods inherited from interface spoon.reflect.code.CtCodeElement
partiallyEvaluateMethods inherited from interface spoon.reflect.declaration.CtCodeSnippet
getValue, setValueMethods inherited from interface spoon.reflect.declaration.CtElement
addAnnotation, addComment, asIterable, delete, descendantIterator, getAllMetadata, getAnnotatedChildren, getAnnotation, getAnnotation, getAnnotations, getComments, getDirectChildren, getDocComment, getElements, getMetadata, getMetadataKeys, getOriginalSourceFragment, getParent, getParent, getParent, getPath, getPosition, getReferencedTypes, getRoleInParent, getShortRepresentation, getValueByRole, hasAnnotation, hasParent, isImplicit, isParentInitialized, prettyprint, putMetadata, removeAnnotation, removeComment, replace, replace, setAllMetadata, setAnnotations, setComments, setDocComment, setImplicit, setParent, setPosition, setPositions, setValueByRole, toString, toStringDebug, updateAllParentsBelowMethods inherited from interface spoon.reflect.code.CtExpression
addTypeCast, getTypeCasts, setTypeCastsMethods inherited from interface spoon.reflect.visitor.chain.CtQueryable
filterChildren, map, mapMethods inherited from interface spoon.reflect.declaration.CtTypedElement
getType, setTypeMethods inherited from interface spoon.reflect.visitor.CtVisitable
acceptMethods inherited from interface spoon.processing.FactoryAccessor
getFactory, setFactoryMethods inherited from interface spoon.template.TemplateParameter
S
-
Method Details
-
compile
Compiles this expression snippet to produce the corresponding AST expression.- Throws:
SnippetCompilationError- when the current snippet is not valid Java code expression
-
clone
CtCodeSnippetExpression<T> clone()Description copied from interface:CtElementClone the element which calls this method in a new object. Note that that references are kept as is, and thus, so if you clone whole classes or methods, some parts of the cloned element (eg executable references) may still point to the initial element. In this case, consider using methodsRefactoring.copyType(CtType)andRefactoring.copyMethod(CtMethod)instead which does additional work beyond cloning.- Specified by:
clonein interfaceCtCodeElement- Specified by:
clonein interfaceCtElement- Specified by:
clonein interfaceCtExpression<T>
-