Top Description Inners Fields Constructors Methods
com.sun.tools.javac.comp

public Class AttrRecover

extends Object
Class Inheritance
Imports
com.sun.tools.javac.code.Flags, .Symbol, .Symbol.TypeSymbol, .Symtab, .Type, .Type.ArrayType, .Type.ErrorType, .TypeTag, .Types, com.sun.tools.javac.comp.Attr.ResultInfo, .DeferredAttr.AttrMode, com.sun.tools.javac.tree.JCTree, .JCTree.JCBlock, .JCTree.JCClassDecl, .JCTree.JCErroneous, .JCTree.JCExpression, .JCTree.JCLambda, .JCTree.JCMethodInvocation, .JCTree.JCReturn, .JCTree.JCVariableDecl, .JCTree.Tag, .TreeInfo, .TreeMaker, .TreeTranslator, com.sun.tools.javac.util.Context, .JCDiagnostic, .List, .ListBuffer, .Names

This is an error recovery addon for Attr. Currently, it recovers method invocations with lambdas, that require type inference.

This is NOT part of any supported API. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
private static class

Field Summary

Modifier and TypeField and Description
pack-priv final Attr
protected static final Context.Key<AttrRecover>
pack-priv final DeferredAttr
pack-priv final TreeMaker
pack-priv final Names
private final ListBuffer<AttrRecover.RecoverTodo>
pack-priv final Symtab
pack-priv final Types

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
private Type
public void
public static AttrRecover
instance(Context context)

pack-priv Type
pack-priv void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

attrback to summary
pack-priv final Attr attr
attrRepairKeyback to summary
protected static final Context.Key<AttrRecover> attrRepairKey
deferredAttrback to summary
pack-priv final DeferredAttr deferredAttr
makeback to summary
pack-priv final TreeMaker make
namesback to summary
pack-priv final Names names
recoveryTodoback to summary
private final ListBuffer<AttrRecover.RecoverTodo> recoveryTodo
symsback to summary
pack-priv final Symtab syms
typesback to summary
pack-priv final Types types

Constructor Detail

AttrRecoverback to summary
protected AttrRecover(Context context)
Annotations
@SuppressWarnings:this-escape

Method Detail

basicMethodInvocationRecoveryback to summary
private Type basicMethodInvocationRecovery(JCTree tree, Type site, Symbol sym, Env<AttrContext> env, Attr.ResultInfo resultInfo)
doRecoveryback to summary
public void doRecovery()
instanceback to summary
public static AttrRecover instance(Context context)
recoverMethodInvocationback to summary
pack-priv Type recoverMethodInvocation(JCTree tree, Type site, Symbol sym, Env<AttrContext> env, Attr.ResultInfo resultInfo)
wrongMethodSymbolCandidateback to summary
pack-priv void wrongMethodSymbolCandidate(Symbol.TypeSymbol errSymbol, Symbol candSym, JCDiagnostic diag)
com.sun.tools.javac.comp back to summary

private Class AttrRecover.RecoverTodo

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
public final Symbol
public final Env<AttrContext>
public final Symbol
public final Attr.ResultInfo
public final Type
public final JCTree

Constructor Summary

AccessConstructor and Description
public
RecoverTodo(JCTree tree, Type site, Symbol errSym, Symbol candSym, Env<AttrContext> env, Attr.ResultInfo resultInfo)

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

candSymback to summary
public final Symbol candSym
envback to summary
public final Env<AttrContext> env
errSymback to summary
public final Symbol errSym
resultInfoback to summary
public final Attr.ResultInfo resultInfo
siteback to summary
public final Type site
treeback to summary
public final JCTree tree

Constructor Detail

RecoverTodoback to summary
public RecoverTodo(JCTree tree, Type site, Symbol errSym, Symbol candSym, Env<AttrContext> env, Attr.ResultInfo resultInfo)
com.sun.tools.javac.comp back to summary

private Class AttrRecover.RecoveryErrorType

extends ErrorType
Class Inheritance

Field Summary

Modifier and TypeField and Description
public final Symbol

Constructor Summary

AccessConstructor and Description
public
RecoveryErrorType(Type.ErrorType original, Symbol candidateSymbol)

Method Summary

Inherited from com.sun.tools.javac.code.Type.ErrorType:
acceptacceptallparamsasSubcloneWithMetadataconstTypegetEnclosingTypegetKindgetOriginalTypegetReturnTypegetTaggetTypeArgumentsisCompoundisErroneousisGenTypeisInterfaceisNullOrReferenceisPartialisReference

Field Detail

candidateSymbolback to summary
public final Symbol candidateSymbol

Constructor Detail

RecoveryErrorTypeback to summary
public RecoveryErrorType(Type.ErrorType original, Symbol candidateSymbol)