public class CheckModuleAdapter extends ModuleVisitor
ModuleVisitor
that checks that its methods are properly used.api, mv
Modifier | Constructor | Description |
---|---|---|
protected |
CheckModuleAdapter(int api,
ModuleVisitor moduleVisitor,
boolean isOpen) |
Constructs a new
CheckModuleAdapter . |
|
CheckModuleAdapter(ModuleVisitor moduleVisitor,
boolean isOpen) |
Constructs a new
CheckModuleAdapter . |
Modifier and Type | Method | Description |
---|---|---|
void |
visitEnd() |
Visits the end of the module.
|
void |
visitExport(java.lang.String packaze,
int access,
java.lang.String... modules) |
Visit an exported package of the current module.
|
void |
visitMainClass(java.lang.String mainClass) |
Visit the main class of the current module.
|
void |
visitOpen(java.lang.String packaze,
int access,
java.lang.String... modules) |
Visit an open package of the current module.
|
void |
visitPackage(java.lang.String packaze) |
Visit a package of the current module.
|
void |
visitProvide(java.lang.String service,
java.lang.String... providers) |
Visit an implementation of a service.
|
void |
visitRequire(java.lang.String module,
int access,
java.lang.String version) |
Visits a dependence of the current module.
|
void |
visitUse(java.lang.String service) |
Visit a service used by the current module.
|
public CheckModuleAdapter(ModuleVisitor moduleVisitor, boolean isOpen)
CheckModuleAdapter
. Subclasses must not use this constructor.
Instead, they must use the CheckModuleAdapter(int, ModuleVisitor, boolean)
version.moduleVisitor
- the module visitor to which this adapter must delegate calls.isOpen
- whether the visited module is open. Open modules have their Opcodes.ACC_OPEN
access flag set in ClassVisitor.visitModule(java.lang.String, int, java.lang.String)
.java.lang.IllegalStateException
- If a subclass calls this constructor.protected CheckModuleAdapter(int api, ModuleVisitor moduleVisitor, boolean isOpen)
CheckModuleAdapter
.api
- the ASM API version implemented by this visitor. Must be one of Opcodes.ASM4
, Opcodes.ASM5
, Opcodes.ASM6
or Opcodes.ASM7_EXPERIMENTAL
.moduleVisitor
- the module visitor to which this adapter must delegate calls.isOpen
- whether the visited module is open. Open modules have their Opcodes.ACC_OPEN
access flag set in ClassVisitor.visitModule(java.lang.String, int, java.lang.String)
.public void visitMainClass(java.lang.String mainClass)
ModuleVisitor
visitMainClass
in class ModuleVisitor
mainClass
- the internal name of the main class of the current module.public void visitPackage(java.lang.String packaze)
ModuleVisitor
visitPackage
in class ModuleVisitor
packaze
- the internal name of a package.public void visitRequire(java.lang.String module, int access, java.lang.String version)
ModuleVisitor
visitRequire
in class ModuleVisitor
module
- the fully qualified name (using dots) of the dependence.access
- the access flag of the dependence among ACC_TRANSITIVE
,
ACC_STATIC_PHASE
, ACC_SYNTHETIC
and ACC_MANDATED
.version
- the module version at compile time, or null.public void visitExport(java.lang.String packaze, int access, java.lang.String... modules)
ModuleVisitor
visitExport
in class ModuleVisitor
packaze
- the internal name of the exported package.access
- the access flag of the exported package, valid values are among
ACC_SYNTHETIC
and ACC_MANDATED
.modules
- the fully qualified names (using dots) of the modules that can access the public
classes of the exported package, or null.public void visitOpen(java.lang.String packaze, int access, java.lang.String... modules)
ModuleVisitor
visitOpen
in class ModuleVisitor
packaze
- the internal name of the opened package.access
- the access flag of the opened package, valid values are among
ACC_SYNTHETIC
and ACC_MANDATED
.modules
- the fully qualified names (using dots) of the modules that can use deep
reflection to the classes of the open package, or null.public void visitUse(java.lang.String service)
ModuleVisitor
visitUse
in class ModuleVisitor
service
- the internal name of the service.public void visitProvide(java.lang.String service, java.lang.String... providers)
ModuleVisitor
visitProvide
in class ModuleVisitor
service
- the internal name of the service.providers
- the internal names of the implementations of the service (there is at least
one provider).public void visitEnd()
ModuleVisitor
visitEnd
in class ModuleVisitor