src/share/classes/com/sun/tools/javadoc/MethodDocImpl.java

changeset 1374
c002fdee76fd
parent 1359
25e14ad23cef
child 1443
cfde9737131e
equal deleted inserted replaced
1373:4a1c57a1c410 1374:c002fdee76fd
29 29
30 import com.sun.javadoc.*; 30 import com.sun.javadoc.*;
31 import com.sun.tools.javac.code.*; 31 import com.sun.tools.javac.code.*;
32 import com.sun.tools.javac.code.Symbol.*; 32 import com.sun.tools.javac.code.Symbol.*;
33 import com.sun.tools.javac.code.Type; 33 import com.sun.tools.javac.code.Type;
34 import com.sun.tools.javac.code.TypeTags;
35 import com.sun.tools.javac.tree.JCTree.JCMethodDecl; 34 import com.sun.tools.javac.tree.JCTree.JCMethodDecl;
36 import com.sun.tools.javac.util.Position; 35 import com.sun.tools.javac.util.Position;
36
37 import static com.sun.tools.javac.code.TypeTag.CLASS;
37 38
38 /** 39 /**
39 * Represents a method of a java class. 40 * Represents a method of a java class.
40 * 41 *
41 * <p><b>This is NOT part of any supported API. 42 * <p><b>This is NOT part of any supported API.
127 return null; 128 return null;
128 } 129 }
129 130
130 ClassSymbol origin = (ClassSymbol)sym.owner; 131 ClassSymbol origin = (ClassSymbol)sym.owner;
131 for (Type t = env.types.supertype(origin.type); 132 for (Type t = env.types.supertype(origin.type);
132 t.tag == TypeTags.CLASS; 133 t.hasTag(CLASS);
133 t = env.types.supertype(t)) { 134 t = env.types.supertype(t)) {
134 ClassSymbol c = (ClassSymbol)t.tsym; 135 ClassSymbol c = (ClassSymbol)t.tsym;
135 for (Scope.Entry e = c.members().lookup(sym.name); e.scope != null; e = e.next()) { 136 for (Scope.Entry e = c.members().lookup(sym.name); e.scope != null; e = e.next()) {
136 if (sym.overrides(e.sym, origin, env.types, true)) { 137 if (sym.overrides(e.sym, origin, env.types, true)) {
137 return TypeMaker.getType(env, t); 138 return TypeMaker.getType(env, t);
159 160
160 // Derived from com.sun.tools.javac.comp.Check.checkOverride . 161 // Derived from com.sun.tools.javac.comp.Check.checkOverride .
161 162
162 ClassSymbol origin = (ClassSymbol)sym.owner; 163 ClassSymbol origin = (ClassSymbol)sym.owner;
163 for (Type t = env.types.supertype(origin.type); 164 for (Type t = env.types.supertype(origin.type);
164 t.tag == TypeTags.CLASS; 165 t.hasTag(CLASS);
165 t = env.types.supertype(t)) { 166 t = env.types.supertype(t)) {
166 ClassSymbol c = (ClassSymbol)t.tsym; 167 ClassSymbol c = (ClassSymbol)t.tsym;
167 for (Scope.Entry e = c.members().lookup(sym.name); e.scope != null; e = e.next()) { 168 for (Scope.Entry e = c.members().lookup(sym.name); e.scope != null; e = e.next()) {
168 if (sym.overrides(e.sym, origin, env.types, true)) { 169 if (sym.overrides(e.sym, origin, env.types, true)) {
169 return env.getMethodDoc((MethodSymbol)e.sym); 170 return env.getMethodDoc((MethodSymbol)e.sym);

mercurial