< prev index next > src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeInfo.java
Print this page
import com.sun.source.tree.Tree;
import com.sun.source.util.TreePath;
import com.sun.tools.javac.code.*;
import com.sun.tools.javac.code.Symbol.RecordComponent;
- import com.sun.tools.javac.comp.AttrContext;
import com.sun.tools.javac.comp.Env;
import com.sun.tools.javac.tree.JCTree.*;
import com.sun.tools.javac.tree.JCTree.JCPolyExpression.*;
import com.sun.tools.javac.util.*;
import com.sun.tools.javac.util.JCDiagnostic.DiagnosticPosition;
case PARENS:
return isExplicitThisReference(types, currentClass, skipParens(tree));
case IDENT: {
JCIdent ident = (JCIdent)tree;
Names names = ident.name.table.names;
! return ident.name == names._this || ident.name == names._super;
}
case SELECT: {
JCFieldAccess select = (JCFieldAccess)tree;
Type selectedType = types.erasure(select.selected.type);
if (!selectedType.hasTag(TypeTag.CLASS))
case PARENS:
return isExplicitThisReference(types, currentClass, skipParens(tree));
case IDENT: {
JCIdent ident = (JCIdent)tree;
Names names = ident.name.table.names;
! return ident.name == names._this && tree.type.tsym == currentClass.tsym ||
+ ident.name == names._super;
}
case SELECT: {
JCFieldAccess select = (JCFieldAccess)tree;
Type selectedType = types.erasure(select.selected.type);
if (!selectedType.hasTag(TypeTag.CLASS))
< prev index next >