165 syms = Symtab.instance(context); 166 attr = Attr.instance(context); 167 typeEnvs = TypeEnvs.instance(context); 168 moduleFinder = ModuleFinder.instance(context); 169 types = Types.instance(context); 170 fileManager = context.get(JavaFileManager.class); 171 allowModules = Source.instance(context).allowModules(); 172 Options options = Options.instance(context); 173 174 moduleOverride = options.get(Option.XMODULE); 175 176 multiModuleMode = fileManager.hasLocation(StandardLocation.MODULE_SOURCE_PATH); 177 ClassWriter classWriter = ClassWriter.instance(context); 178 classWriter.multiModuleMode = multiModuleMode; 179 JNIWriter jniWriter = JNIWriter.instance(context); 180 jniWriter.multiModuleMode = multiModuleMode; 181 182 java_se = names.fromString("java.se"); 183 java_ = names.fromString("java."); 184 185 addExportsOpt = options.get(Option.XADDEXPORTS); 186 addReadsOpt = options.get(Option.XADDREADS); 187 addModsOpt = options.get(Option.ADDMODS); 188 limitModsOpt = options.get(Option.LIMITMODS); 189 } 190 191 int depth = -1; 192 private void dprintln(String msg) { 193 for (int i = 0; i < depth; i++) 194 System.err.print(" "); 195 System.err.println(msg); 196 } 197 198 boolean inInitModules; 199 public void initModules(List<JCCompilationUnit> trees, Collection<String> extraAddMods, Collection<String> extraLimitMods) { 200 Assert.check(!inInitModules); 201 try { 202 inInitModules = true; 203 Assert.checkNull(rootModules); 204 enter(trees, modules -> { 205 Assert.checkNull(rootModules); 206 Assert.checkNull(allModules); 207 this.rootModules = modules; 208 setupAllModules(extraAddMods, extraLimitMods); //initialize the module graph | 165 syms = Symtab.instance(context); 166 attr = Attr.instance(context); 167 typeEnvs = TypeEnvs.instance(context); 168 moduleFinder = ModuleFinder.instance(context); 169 types = Types.instance(context); 170 fileManager = context.get(JavaFileManager.class); 171 allowModules = Source.instance(context).allowModules(); 172 Options options = Options.instance(context); 173 174 moduleOverride = options.get(Option.XMODULE); 175 176 multiModuleMode = fileManager.hasLocation(StandardLocation.MODULE_SOURCE_PATH); 177 ClassWriter classWriter = ClassWriter.instance(context); 178 classWriter.multiModuleMode = multiModuleMode; 179 JNIWriter jniWriter = JNIWriter.instance(context); 180 jniWriter.multiModuleMode = multiModuleMode; 181 182 java_se = names.fromString("java.se"); 183 java_ = names.fromString("java."); 184 185 addExportsOpt = options.get(Option.ADD_EXPORTS); 186 addReadsOpt = options.get(Option.ADD_READS); 187 addModsOpt = options.get(Option.ADD_MODULES); 188 limitModsOpt = options.get(Option.LIMIT_MODULES); 189 } 190 191 int depth = -1; 192 private void dprintln(String msg) { 193 for (int i = 0; i < depth; i++) 194 System.err.print(" "); 195 System.err.println(msg); 196 } 197 198 boolean inInitModules; 199 public void initModules(List<JCCompilationUnit> trees, Collection<String> extraAddMods, Collection<String> extraLimitMods) { 200 Assert.check(!inInitModules); 201 try { 202 inInitModules = true; 203 Assert.checkNull(rootModules); 204 enter(trees, modules -> { 205 Assert.checkNull(rootModules); 206 Assert.checkNull(allModules); 207 this.rootModules = modules; 208 setupAllModules(extraAddMods, extraLimitMods); //initialize the module graph |