Class JavaExprMirrors
- java.lang.Object
-
- net.sourceforge.pmd.lang.java.types.internal.infer.ast.JavaExprMirrors
-
public final class JavaExprMirrors extends Object
Façade that createsExprMirrorinstances.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceJavaExprMirrors.MirrorMaker
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description JavaExprMirrors.MirrorMakerdefaultMirrorMaker()static JavaExprMirrorsforObservation(Infer infer)The mirrors produced by this factory will not be able to mutate the AST.static JavaExprMirrorsforTypeResolution(Infer infer)This will mutate the AST, only one must be used per compilation unit.ExprMirror.InvocationMirrorgetInvocationMirror(InvocationNode e, JavaExprMirrors.MirrorMaker subexprMaker)ExprMirror.BranchingMirrorgetPolyBranchingMirror(ASTExpression e)ExprMirror.BranchingMirrorgetStandaloneBranchingMirror(ASTExpression e)A mirror that implements the rules for standalone conditional expressions correctly.ExprMirror.FunctionalExprMirrorgetTopLevelFunctionalMirror(ASTExpression e)ExprMirror.InvocationMirrorgetTopLevelInvocationMirror(InvocationNode e)
-
-
-
Method Detail
-
defaultMirrorMaker
public JavaExprMirrors.MirrorMaker defaultMirrorMaker()
-
forTypeResolution
public static JavaExprMirrors forTypeResolution(Infer infer)
This will mutate the AST, only one must be used per compilation unit.
-
forObservation
public static JavaExprMirrors forObservation(Infer infer)
The mirrors produced by this factory will not be able to mutate the AST. This lets the mirror be decorated to "pretend" the expression is something slightly different, without corrupting the data in the AST.
-
getTopLevelInvocationMirror
public ExprMirror.InvocationMirror getTopLevelInvocationMirror(InvocationNode e)
-
getInvocationMirror
public ExprMirror.InvocationMirror getInvocationMirror(InvocationNode e, JavaExprMirrors.MirrorMaker subexprMaker)
-
getStandaloneBranchingMirror
public ExprMirror.BranchingMirror getStandaloneBranchingMirror(ASTExpression e)
A mirror that implements the rules for standalone conditional expressions correctly. getStandaloneType will work differently than the one yielded bygetPolyBranchingMirror(ASTExpression)
-
getPolyBranchingMirror
public ExprMirror.BranchingMirror getPolyBranchingMirror(ASTExpression e)
-
getTopLevelFunctionalMirror
public ExprMirror.FunctionalExprMirror getTopLevelFunctionalMirror(ASTExpression e)
-
-