47 import com.sun.source.util.Trees; |
47 import com.sun.source.util.Trees; |
48 import com.sun.tools.javac.code.Flags; |
48 import com.sun.tools.javac.code.Flags; |
49 import com.sun.tools.javac.code.Symbol.ClassSymbol; |
49 import com.sun.tools.javac.code.Symbol.ClassSymbol; |
50 import com.sun.tools.javac.code.Symbol.TypeSymbol; |
50 import com.sun.tools.javac.code.Symbol.TypeSymbol; |
51 import com.sun.tools.javac.code.Symbol; |
51 import com.sun.tools.javac.code.Symbol; |
|
52 import com.sun.tools.javac.code.Type; |
52 import com.sun.tools.javac.comp.Attr; |
53 import com.sun.tools.javac.comp.Attr; |
53 import com.sun.tools.javac.comp.AttrContext; |
54 import com.sun.tools.javac.comp.AttrContext; |
54 import com.sun.tools.javac.comp.Enter; |
55 import com.sun.tools.javac.comp.Enter; |
55 import com.sun.tools.javac.comp.Env; |
56 import com.sun.tools.javac.comp.Env; |
56 import com.sun.tools.javac.comp.MemberEnter; |
57 import com.sun.tools.javac.comp.MemberEnter; |
228 } |
229 } |
229 |
230 |
230 public boolean isAccessible(Scope scope, TypeElement type) { |
231 public boolean isAccessible(Scope scope, TypeElement type) { |
231 if (scope instanceof JavacScope && type instanceof ClassSymbol) { |
232 if (scope instanceof JavacScope && type instanceof ClassSymbol) { |
232 Env<AttrContext> env = ((JavacScope) scope).env; |
233 Env<AttrContext> env = ((JavacScope) scope).env; |
233 return resolve.isAccessible(env, (ClassSymbol)type); |
234 return resolve.isAccessible(env, (ClassSymbol)type, true); |
234 } else |
235 } else |
235 return false; |
236 return false; |
236 } |
237 } |
237 |
238 |
238 public boolean isAccessible(Scope scope, Element member, DeclaredType type) { |
239 public boolean isAccessible(Scope scope, Element member, DeclaredType type) { |
239 if (scope instanceof JavacScope |
240 if (scope instanceof JavacScope |
240 && member instanceof Symbol |
241 && member instanceof Symbol |
241 && type instanceof com.sun.tools.javac.code.Type) { |
242 && type instanceof com.sun.tools.javac.code.Type) { |
242 Env<AttrContext> env = ((JavacScope) scope).env; |
243 Env<AttrContext> env = ((JavacScope) scope).env; |
243 return resolve.isAccessible(env, (com.sun.tools.javac.code.Type)type, (Symbol)member); |
244 return resolve.isAccessible(env, (com.sun.tools.javac.code.Type)type, (Symbol)member, true); |
244 } else |
245 } else |
245 return false; |
246 return false; |
246 } |
247 } |
247 |
248 |
248 private Env<AttrContext> getAttrContext(TreePath path) { |
249 private Env<AttrContext> getAttrContext(TreePath path) { |