468 exports(e.source(), e.targets());
469 } else {
470 exports(e.source());
471 }
472 }
473
474 // uses
475 uses(md.uses());
476
477 // provides
478 for (ModuleDescriptor.Provides p : md.provides().values()) {
479 provides(p.service(), p.providers());
480 }
481
482 // concealed packages
483 for (String pn : conceals()) {
484 conceals(pn);
485 }
486
487 if (md.version().isPresent()) {
488 version(md.version().get());
489 }
490
491 if (md.mainClass().isPresent()) {
492 mainClass(md.mainClass().get());
493 }
494
495 putModuleDescriptor();
496 }
497
498 /*
499 * Put ModuleDescriptor into the modules array
500 */
501 void putModuleDescriptor() {
502 mv.visitVarInsn(ALOAD, MD_VAR);
503 pushInt(nextModulesIndex++);
504 mv.visitVarInsn(ALOAD, BUILDER_VAR);
505 mv.visitMethodInsn(INVOKEVIRTUAL, MODULE_DESCRIPTOR_BUILDER,
506 "build", "()Ljava/lang/module/ModuleDescriptor;", false);
507 mv.visitInsn(AASTORE);
508 }
509
510 /*
511 * Invoke Builder.requires(String mn)
512 */
|
468 exports(e.source(), e.targets());
469 } else {
470 exports(e.source());
471 }
472 }
473
474 // uses
475 uses(md.uses());
476
477 // provides
478 for (ModuleDescriptor.Provides p : md.provides().values()) {
479 provides(p.service(), p.providers());
480 }
481
482 // concealed packages
483 for (String pn : conceals()) {
484 conceals(pn);
485 }
486
487 if (md.version().isPresent()) {
488 version(md.version().getWhenPresent());
489 }
490
491 if (md.mainClass().isPresent()) {
492 mainClass(md.mainClass().getWhenPresent());
493 }
494
495 putModuleDescriptor();
496 }
497
498 /*
499 * Put ModuleDescriptor into the modules array
500 */
501 void putModuleDescriptor() {
502 mv.visitVarInsn(ALOAD, MD_VAR);
503 pushInt(nextModulesIndex++);
504 mv.visitVarInsn(ALOAD, BUILDER_VAR);
505 mv.visitMethodInsn(INVOKEVIRTUAL, MODULE_DESCRIPTOR_BUILDER,
506 "build", "()Ljava/lang/module/ModuleDescriptor;", false);
507 mv.visitInsn(AASTORE);
508 }
509
510 /*
511 * Invoke Builder.requires(String mn)
512 */
|