src/share/classes/com/sun/tools/javac/comp/Enter.java

changeset 483
8e638442522a
parent 117
24a47c3062fe
child 511
7b69c7083a97
equal deleted inserted replaced
482:699ecefbdd4e 483:8e638442522a
98 ClassReader reader; 98 ClassReader reader;
99 Annotate annotate; 99 Annotate annotate;
100 MemberEnter memberEnter; 100 MemberEnter memberEnter;
101 Types types; 101 Types types;
102 Lint lint; 102 Lint lint;
103 Names names;
103 JavaFileManager fileManager; 104 JavaFileManager fileManager;
104 105
105 private final Todo todo; 106 private final Todo todo;
106 107
107 public static Enter instance(Context context) { 108 public static Enter instance(Context context) {
121 chk = Check.instance(context); 122 chk = Check.instance(context);
122 memberEnter = MemberEnter.instance(context); 123 memberEnter = MemberEnter.instance(context);
123 types = Types.instance(context); 124 types = Types.instance(context);
124 annotate = Annotate.instance(context); 125 annotate = Annotate.instance(context);
125 lint = Lint.instance(context); 126 lint = Lint.instance(context);
127 names = Names.instance(context);
126 128
127 predefClassDef = make.ClassDef( 129 predefClassDef = make.ClassDef(
128 make.Modifiers(PUBLIC), 130 make.Modifiers(PUBLIC),
129 syms.predefClass.name, null, null, null, null); 131 syms.predefClass.name, null, null, null, null);
130 predefClassDef.sym = syms.predefClass; 132 predefClassDef.sym = syms.predefClass;
306 tree.docComments.get(tree) != null)) { 308 tree.docComments.get(tree) != null)) {
307 typeEnvs.put(tree.packge, env); 309 typeEnvs.put(tree.packge, env);
308 } 310 }
309 } 311 }
310 } 312 }
313
314 for (Symbol q = tree.packge; q != null && q.kind == PCK; q = q.owner)
315 q.flags_field |= EXISTS;
316
317 Name name = names.package_info;
318 ClassSymbol c = reader.enterClass(name, tree.packge);
319 c.flatname = names.fromString(tree.packge + "." + name);
320 c.sourcefile = tree.sourcefile;
321 c.completer = null;
322 c.members_field = new Scope(c);
323 tree.packge.package_info = c;
311 } 324 }
312 classEnter(tree.defs, env); 325 classEnter(tree.defs, env);
313 if (addEnv) { 326 if (addEnv) {
314 todo.append(env); 327 todo.append(env);
315 } 328 }

mercurial