Class TypeInferenceLogger.VerboseLogger
- java.lang.Object
-
- net.sourceforge.pmd.lang.java.types.internal.infer.TypeInferenceLogger.SimpleLogger
-
- net.sourceforge.pmd.lang.java.types.internal.infer.TypeInferenceLogger.VerboseLogger
-
- All Implemented Interfaces:
TypeInferenceLogger
- Enclosing interface:
- TypeInferenceLogger
public static class TypeInferenceLogger.VerboseLogger extends TypeInferenceLogger.SimpleLogger
This is mega verbose, should only be used for unit tests.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface net.sourceforge.pmd.lang.java.types.internal.infer.TypeInferenceLogger
TypeInferenceLogger.SimpleLogger, TypeInferenceLogger.VerboseLogger
-
-
Field Summary
-
Fields inherited from class net.sourceforge.pmd.lang.java.types.internal.infer.TypeInferenceLogger.SimpleLogger
ANSI_BLUE, ANSI_GRAY, ANSI_PURPLE, ANSI_RED, ANSI_RESET, ANSI_YELLOW, LEVEL_INCREMENT, out
-
-
Constructor Summary
Constructors Constructor Description VerboseLogger(PrintStream out)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
boundAdded(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext ctx, InferenceVar ivar, InferenceVar.BoundKind kind, JTypeMirror bound, boolean isSubstitution)
void
ctxInitialization(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext ctx, JMethodSig sig)
void
endArg()
void
endArgsChecks()
void
endInference(@Nullable JMethodSig result)
void
endReturnChecks()
void
functionalExprNeedsInvocationCtx(JTypeMirror targetT, ExprMirror expr)
void
ivarInstantiated(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext ctx, InferenceVar var, JTypeMirror inst)
void
ivarMerged(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext ctx, InferenceVar var, InferenceVar delegate)
void
logResolutionFail(ResolutionFailure exception)
Log that the instantiation of the method type m for the given call site failed.TypeInferenceLogger
newInstance()
Return an instance for concurrent use in another thread.void
propagateAndAbort(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext context, net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext parent)
void
skipArgAsNonPertinent(int i, ExprMirror expr)
void
skipInstantiation(JMethodSig partiallyInferred, MethodCallSite site)
void
startArg(int i, ExprMirror expr, JTypeMirror formalType)
void
startArgsChecks()
void
startInference(JMethodSig sig, MethodCallSite site, net.sourceforge.pmd.lang.java.types.internal.infer.MethodResolutionPhase phase)
void
startReturnChecks()
-
Methods inherited from class net.sourceforge.pmd.lang.java.types.internal.infer.TypeInferenceLogger.SimpleLogger
ambiguityError, color, colorIvars, colorPunct, doColor, endSection, fallbackInvocation, getLevel, noApplicableCandidates, noCompileTimeDeclaration, ppBound, ppHighlight, ppMethod, printExpr, println, startSection, updateLevel
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sourceforge.pmd.lang.java.types.internal.infer.TypeInferenceLogger
isNoop, polyResolutionFailure
-
-
-
-
Constructor Detail
-
VerboseLogger
public VerboseLogger(PrintStream out)
-
-
Method Detail
-
startInference
public void startInference(JMethodSig sig, MethodCallSite site, net.sourceforge.pmd.lang.java.types.internal.infer.MethodResolutionPhase phase)
-
ctxInitialization
public void ctxInitialization(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext ctx, JMethodSig sig)
-
endInference
public void endInference(@Nullable JMethodSig result)
-
skipInstantiation
public void skipInstantiation(JMethodSig partiallyInferred, MethodCallSite site)
-
startArgsChecks
public void startArgsChecks()
-
startReturnChecks
public void startReturnChecks()
-
propagateAndAbort
public void propagateAndAbort(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext context, net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext parent)
-
startArg
public void startArg(int i, ExprMirror expr, JTypeMirror formalType)
-
skipArgAsNonPertinent
public void skipArgAsNonPertinent(int i, ExprMirror expr)
-
functionalExprNeedsInvocationCtx
public void functionalExprNeedsInvocationCtx(JTypeMirror targetT, ExprMirror expr)
-
endArgsChecks
public void endArgsChecks()
-
endArg
public void endArg()
-
endReturnChecks
public void endReturnChecks()
-
boundAdded
public void boundAdded(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext ctx, InferenceVar ivar, InferenceVar.BoundKind kind, JTypeMirror bound, boolean isSubstitution)
-
ivarMerged
public void ivarMerged(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext ctx, InferenceVar var, InferenceVar delegate)
-
ivarInstantiated
public void ivarInstantiated(net.sourceforge.pmd.lang.java.types.internal.infer.InferenceContext ctx, InferenceVar var, JTypeMirror inst)
-
logResolutionFail
public void logResolutionFail(ResolutionFailure exception)
Description copied from interface:TypeInferenceLogger
Log that the instantiation of the method type m for the given call site failed. The exception provides a detail message. Such an event is perfectly normal and may happen repeatedly when performing overload resolution.Exceptions occuring in an
invocation phase
are compile-time errors though.- Specified by:
logResolutionFail
in interfaceTypeInferenceLogger
- Overrides:
logResolutionFail
in classTypeInferenceLogger.SimpleLogger
- Parameters:
exception
- Failure record
-
newInstance
public TypeInferenceLogger newInstance()
Description copied from interface:TypeInferenceLogger
Return an instance for concurrent use in another thread. If this is Noop, then return the same instance because it's thread-safe.- Specified by:
newInstance
in interfaceTypeInferenceLogger
- Overrides:
newInstance
in classTypeInferenceLogger.SimpleLogger
-
-