langtools/src/share/classes/com/sun/tools/javac/code/Symbol.java
changeset 8242 3873b4aaf4a8
parent 8225 e9e5670e6a71
child 8427 703181b01773
equal deleted inserted replaced
8241:4161b56e0d20 8242:3873b4aaf4a8
   727 
   727 
   728         /** the constant pool of the class
   728         /** the constant pool of the class
   729          */
   729          */
   730         public Pool pool;
   730         public Pool pool;
   731 
   731 
       
   732         /** members closure cache (set by Types.membersClosure)
       
   733          */
       
   734         Scope membersClosure;
       
   735 
   732         public ClassSymbol(long flags, Name name, Type type, Symbol owner) {
   736         public ClassSymbol(long flags, Name name, Type type, Symbol owner) {
   733             super(flags, name, type, owner);
   737             super(flags, name, type, owner);
   734             this.members_field = null;
   738             this.members_field = null;
   735             this.fullname = formFullName(name, owner);
   739             this.fullname = formFullName(name, owner);
   736             this.flatname = formFlatName(name, owner);
   740             this.flatname = formFlatName(name, owner);
  1220                             (s.flags() & SYNTHETIC) == 0;
  1224                             (s.flags() & SYNTHETIC) == 0;
  1221                 }
  1225                 }
  1222             };
  1226             };
  1223 
  1227 
  1224         public MethodSymbol implementation(TypeSymbol origin, Types types, boolean checkResult, Filter<Symbol> implFilter) {
  1228         public MethodSymbol implementation(TypeSymbol origin, Types types, boolean checkResult, Filter<Symbol> implFilter) {
  1225             MethodSymbol res = types.implementation(this, origin, types, checkResult, implFilter);
  1229             MethodSymbol res = types.implementation(this, origin, checkResult, implFilter);
  1226             if (res != null)
  1230             if (res != null)
  1227                 return res;
  1231                 return res;
  1228             // if origin is derived from a raw type, we might have missed
  1232             // if origin is derived from a raw type, we might have missed
  1229             // an implementation because we do not know enough about instantiations.
  1233             // an implementation because we do not know enough about instantiations.
  1230             // in this case continue with the supertype as origin.
  1234             // in this case continue with the supertype as origin.