Package org.openrewrite.java.tree
Interface Expression
- All Superinterfaces:
org.openrewrite.java.tree.J
,org.openrewrite.Tree
- All Known Subinterfaces:
MethodCall
public interface Expression
extends org.openrewrite.java.tree.J
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.openrewrite.java.tree.J
org.openrewrite.java.tree.J.AnnotatedType, org.openrewrite.java.tree.J.Annotation, org.openrewrite.java.tree.J.ArrayAccess, org.openrewrite.java.tree.J.ArrayDimension, org.openrewrite.java.tree.J.ArrayType, org.openrewrite.java.tree.J.Assert, org.openrewrite.java.tree.J.Assignment, org.openrewrite.java.tree.J.AssignmentOperation, org.openrewrite.java.tree.J.Binary, org.openrewrite.java.tree.J.Block, org.openrewrite.java.tree.J.Break, org.openrewrite.java.tree.J.Case, org.openrewrite.java.tree.J.ClassDeclaration, org.openrewrite.java.tree.J.CompilationUnit, org.openrewrite.java.tree.J.Continue, org.openrewrite.java.tree.J.ControlParentheses<J2 extends org.openrewrite.java.tree.J>, org.openrewrite.java.tree.J.DoWhileLoop, org.openrewrite.java.tree.J.Empty, org.openrewrite.java.tree.J.EnumValue, org.openrewrite.java.tree.J.EnumValueSet, org.openrewrite.java.tree.J.FieldAccess, org.openrewrite.java.tree.J.ForEachLoop, org.openrewrite.java.tree.J.ForLoop, org.openrewrite.java.tree.J.Identifier, org.openrewrite.java.tree.J.If, org.openrewrite.java.tree.J.Import, org.openrewrite.java.tree.J.InstanceOf, org.openrewrite.java.tree.J.Label, org.openrewrite.java.tree.J.Lambda, org.openrewrite.java.tree.J.Literal, org.openrewrite.java.tree.J.MemberReference, org.openrewrite.java.tree.J.MethodDeclaration, org.openrewrite.java.tree.J.MethodInvocation, org.openrewrite.java.tree.J.Modifier, org.openrewrite.java.tree.J.MultiCatch, org.openrewrite.java.tree.J.NewArray, org.openrewrite.java.tree.J.NewClass, org.openrewrite.java.tree.J.Package, org.openrewrite.java.tree.J.ParameterizedType, org.openrewrite.java.tree.J.Parentheses<J2 extends org.openrewrite.java.tree.J>, org.openrewrite.java.tree.J.Primitive, org.openrewrite.java.tree.J.Return, org.openrewrite.java.tree.J.Switch, org.openrewrite.java.tree.J.SwitchExpression, org.openrewrite.java.tree.J.Synchronized, org.openrewrite.java.tree.J.Ternary, org.openrewrite.java.tree.J.Throw, org.openrewrite.java.tree.J.Try, org.openrewrite.java.tree.J.TypeCast, org.openrewrite.java.tree.J.TypeParameter, org.openrewrite.java.tree.J.TypeParameters, org.openrewrite.java.tree.J.Unary, org.openrewrite.java.tree.J.Unknown, org.openrewrite.java.tree.J.VariableDeclarations, org.openrewrite.java.tree.J.WhileLoop, org.openrewrite.java.tree.J.Wildcard, org.openrewrite.java.tree.J.Yield
-
Method Summary
Modifier and TypeMethodDescriptiondefault List<org.openrewrite.java.tree.J>
@Nullable JavaType
getType()
default Expression
unwrap()
If this expression is aJ.Parentheses
return the expression inside the parenthesesthis
.static @Nullable Expression
unwrap
(@Nullable Expression expr) <T extends org.openrewrite.java.tree.J>
TMethods inherited from interface org.openrewrite.java.tree.J
accept, acceptJava, getComments, getPrefix, isAcceptable, print, printTrimmed, withComments, withPrefix
Methods inherited from interface org.openrewrite.Tree
cast, getId, getJacksonPolymorphicTypeTag, getMarkers, isScope, print, print, print, printer, printTrimmed, printTrimmed, printTrimmed, safeCast, withId, withMarkers
-
Method Details
-
getType
-
withType
-
getSideEffects
- Returns:
- A list of the side effects emitted by the statement, if the statement was decomposed. So for a binary operation, there are up to two potential side effects (the left and right side) and as few as zero if both sides of the expression are something like constants or variable references.
-
unwrap
If this expression is aJ.Parentheses
return the expression inside the parenthesesthis
. Otherwise, return this. This operation is performed recursively to return the first non-parenthetical expression.- Returns:
- The expression as if all surround parentheses were removed. Never a
J.Parentheses
instance.
-
unwrap
-
getCoordinates
CoordinateBuilder.Expression getCoordinates()
-