Class InternalApiBridge
- java.lang.Object
-
- net.sourceforge.pmd.lang.java.ast.InternalApiBridge
-
@InternalApi public final class InternalApiBridge extends Object
Internal API.Acts as a bridge between outer parts of PMD and the restricted access internal API of this package.
None of this is published API, and compatibility can be broken anytime! Use this only at your own risk.
- Author:
- Clément Fournier
- API Note:
- Internal API
- Since:
- 7.0.0
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
assignComments(ASTCompilationUnit root)
static JTypeMirror
buildTypeFromAstInternal(TypeSystem ts, Substitution lexicalSubst, ASTType node)
static void
disambigWithCtx(NodeStream<? extends JavaNode> nodes, net.sourceforge.pmd.lang.java.symbols.table.internal.ReferenceCtx ctx)
static void
forceTypeResolutionPhase(net.sourceforge.pmd.lang.java.internal.JavaAstProcessor processor, ASTCompilationUnit root)
Forcing type resolution allows us to report errors more cleanly than if it was done completely lazy.static net.sourceforge.pmd.lang.java.types.internal.infer.Infer
getInferenceEntryPoint(JavaNode n)
static @NonNull net.sourceforge.pmd.lang.java.types.ast.internal.LazyTypeResolver
getLazyTypeResolver(JavaNode n)
static net.sourceforge.pmd.lang.java.internal.JavaAstProcessor
getProcessor(JavaNode n)
static JTypeDeclSymbol
getReferencedSym(ASTClassType type)
static @NonNull ExprContext
getTopLevelExprContext(TypeNode n)
static @Nullable JTypeMirror
getTypeMirrorInternal(TypeNode node)
static void
initTypeResolver(ASTCompilationUnit acu, net.sourceforge.pmd.lang.java.internal.JavaAstProcessor processor, net.sourceforge.pmd.lang.java.types.internal.infer.TypeInferenceLogger logger)
static boolean
isStandaloneInternal(ASTConditionalExpression node)
static JavaccTokenDocument.TokenDocumentBehavior
javaTokenDoc()
static void
overrideResolution(net.sourceforge.pmd.lang.java.internal.JavaAstProcessor processor, ASTCompilationUnit root)
static void
setCompileTimeDecl(ASTMethodReference methodReference, JMethodSig methodType)
static void
setFunctionalMethod(FunctionalExpression node, JMethodSig methodType)
static void
setOverload(InvocationNode expression, OverloadSelectionResult result)
static void
setQname(ASTTypeDeclaration declaration, String binaryName, @Nullable String canon)
static void
setSignature(ASTFieldAccess node, JVariableSig.FieldSig sig)
static void
setSignature(ASTVariableAccess node, JVariableSig sig)
static void
setStandaloneTernary(ASTConditionalExpression node)
static void
setSymbol(SymbolDeclaratorNode node, JElementSymbol symbol)
static void
setSymbolTable(JavaNode node, JSymbolTable table)
static void
setTypedSym(ASTFieldAccess expr, JVariableSig.FieldSig sym)
static void
setTypedSym(ASTVariableAccess expr, JVariableSig sym)
static void
setTypeMirrorInternal(TypeNode node, JTypeMirror inferred)
static void
usageResolution(net.sourceforge.pmd.lang.java.internal.JavaAstProcessor processor, ASTCompilationUnit root)
-
-
-
Method Detail
-
setSymbol
public static void setSymbol(SymbolDeclaratorNode node, JElementSymbol symbol)
-
disambigWithCtx
public static void disambigWithCtx(NodeStream<? extends JavaNode> nodes, net.sourceforge.pmd.lang.java.symbols.table.internal.ReferenceCtx ctx)
-
forceTypeResolutionPhase
public static void forceTypeResolutionPhase(net.sourceforge.pmd.lang.java.internal.JavaAstProcessor processor, ASTCompilationUnit root)
Forcing type resolution allows us to report errors more cleanly than if it was done completely lazy. Failures (other than semantic exceptions) are thrown, because they are bugs in the typeres framework. Semantic exceptions cause execution to abort too, but only right before rules are applied, so several semantic exceptions may be collected.
-
usageResolution
public static void usageResolution(net.sourceforge.pmd.lang.java.internal.JavaAstProcessor processor, ASTCompilationUnit root)
-
overrideResolution
public static void overrideResolution(net.sourceforge.pmd.lang.java.internal.JavaAstProcessor processor, ASTCompilationUnit root)
-
getTypeMirrorInternal
public static @Nullable JTypeMirror getTypeMirrorInternal(TypeNode node)
-
setTypeMirrorInternal
public static void setTypeMirrorInternal(TypeNode node, JTypeMirror inferred)
-
setSignature
public static void setSignature(ASTFieldAccess node, JVariableSig.FieldSig sig)
-
setSignature
public static void setSignature(ASTVariableAccess node, JVariableSig sig)
-
setFunctionalMethod
public static void setFunctionalMethod(FunctionalExpression node, JMethodSig methodType)
-
setCompileTimeDecl
public static void setCompileTimeDecl(ASTMethodReference methodReference, JMethodSig methodType)
-
initTypeResolver
public static void initTypeResolver(ASTCompilationUnit acu, net.sourceforge.pmd.lang.java.internal.JavaAstProcessor processor, net.sourceforge.pmd.lang.java.types.internal.infer.TypeInferenceLogger logger)
-
setOverload
public static void setOverload(InvocationNode expression, OverloadSelectionResult result)
-
getProcessor
public static net.sourceforge.pmd.lang.java.internal.JavaAstProcessor getProcessor(JavaNode n)
-
getInferenceEntryPoint
public static net.sourceforge.pmd.lang.java.types.internal.infer.Infer getInferenceEntryPoint(JavaNode n)
-
getLazyTypeResolver
public static @NonNull net.sourceforge.pmd.lang.java.types.ast.internal.LazyTypeResolver getLazyTypeResolver(JavaNode n)
-
getTopLevelExprContext
public static @NonNull ExprContext getTopLevelExprContext(TypeNode n)
-
setSymbolTable
public static void setSymbolTable(JavaNode node, JSymbolTable table)
-
setQname
public static void setQname(ASTTypeDeclaration declaration, String binaryName, @Nullable String canon)
-
assignComments
public static void assignComments(ASTCompilationUnit root)
-
javaTokenDoc
public static JavaccTokenDocument.TokenDocumentBehavior javaTokenDoc()
-
setStandaloneTernary
public static void setStandaloneTernary(ASTConditionalExpression node)
-
isStandaloneInternal
public static boolean isStandaloneInternal(ASTConditionalExpression node)
-
buildTypeFromAstInternal
public static JTypeMirror buildTypeFromAstInternal(TypeSystem ts, Substitution lexicalSubst, ASTType node)
-
getReferencedSym
public static JTypeDeclSymbol getReferencedSym(ASTClassType type)
-
setTypedSym
public static void setTypedSym(ASTFieldAccess expr, JVariableSig.FieldSig sym)
-
setTypedSym
public static void setTypedSym(ASTVariableAccess expr, JVariableSig sym)
-
-