public abstract class ModuleVisitor extends Object
visitMainClass
| ( visitPackage
| visitRequire
| visitExport
| visitOpen
| visitUse
| visitProvide
)* ) visitEnd
.Modifier and Type | Field and Description |
---|---|
protected int |
api
The ASM API version implemented by this visitor.
|
protected ModuleVisitor |
mv
The module visitor to which this visitor must delegate method calls.
|
Constructor and Description |
---|
ModuleVisitor(int api)
Constructs a new
ModuleVisitor . |
ModuleVisitor(int api,
ModuleVisitor moduleVisitor)
Constructs a new
ModuleVisitor . |
Modifier and Type | Method and Description |
---|---|
void |
visitEnd()
Visits the end of the module.
|
void |
visitExport(String packaze,
int access,
String... modules)
Visit an exported package of the current module.
|
void |
visitMainClass(String mainClass)
Visit the main class of the current module.
|
void |
visitOpen(String packaze,
int access,
String... modules)
Visit an open package of the current module.
|
void |
visitPackage(String packaze)
Visit a package of the current module.
|
void |
visitProvide(String service,
String... providers)
Visit an implementation of a service.
|
void |
visitRequire(String module,
int access,
String version)
Visits a dependence of the current module.
|
void |
visitUse(String service)
Visit a service used by the current module.
|
protected final int api
Opcodes.ASM6
or Opcodes.ASM7
.protected ModuleVisitor mv
public ModuleVisitor(int api)
ModuleVisitor
.api
- the ASM API version implemented by this visitor. Must be one of Opcodes.ASM6
or Opcodes.ASM7
.public ModuleVisitor(int api, ModuleVisitor moduleVisitor)
ModuleVisitor
.api
- the ASM API version implemented by this visitor. Must be one of Opcodes.ASM6
or Opcodes.ASM7
.moduleVisitor
- the module visitor to which this visitor must delegate method calls. May
be null.public void visitMainClass(String mainClass)
mainClass
- the internal name of the main class of the current module.public void visitPackage(String packaze)
packaze
- the internal name of a package.public void visitRequire(String module, int access, String version)
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(String packaze, int access, String... modules)
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(String packaze, int access, String... modules)
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(String service)
service
- the internal name of the service.public void visitProvide(String service, String... providers)
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()