public class ModuleNode extends ModuleVisitor
Modifier and Type | Field | Description |
---|---|---|
int |
access |
The module's access flags, among
ACC_OPEN , ACC_SYNTHETIC and
ACC_MANDATED . |
java.util.List<ModuleExportNode> |
exports |
The packages exported by this module.
|
java.lang.String |
mainClass |
The internal name of the main class of this module.
|
java.lang.String |
name |
The fully qualified name (using dots) of this module.
|
java.util.List<ModuleOpenNode> |
opens |
The packages opened by this module.
|
java.util.List<java.lang.String> |
packages |
The internal name of the packages declared by this module.
|
java.util.List<ModuleProvideNode> |
provides |
The services provided by this module.
|
java.util.List<ModuleRequireNode> |
requires |
The dependencies of this module.
|
java.util.List<java.lang.String> |
uses |
The internal names of the services used by this module.
|
java.lang.String |
version |
The version of this module.
|
api, mv
Constructor | Description |
---|---|
ModuleNode(int api,
java.lang.String name,
int access,
java.lang.String version,
java.util.List<ModuleRequireNode> requires,
java.util.List<ModuleExportNode> exports,
java.util.List<ModuleOpenNode> opens,
java.util.List<java.lang.String> uses,
java.util.List<ModuleProvideNode> provides) |
Constructs a
ModuleNode . |
ModuleNode(java.lang.String name,
int access,
java.lang.String version) |
Constructs a
ModuleNode . |
Modifier and Type | Method | Description |
---|---|---|
void |
accept(ClassVisitor classVisitor) |
|
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 java.lang.String name
public int access
ACC_OPEN
, ACC_SYNTHETIC
and
ACC_MANDATED
.public java.lang.String version
public java.lang.String mainClass
public java.util.List<java.lang.String> packages
public java.util.List<ModuleRequireNode> requires
public java.util.List<ModuleExportNode> exports
public java.util.List<ModuleOpenNode> opens
public java.util.List<java.lang.String> uses
public java.util.List<ModuleProvideNode> provides
public ModuleNode(java.lang.String name, int access, java.lang.String version)
ModuleNode
. Subclasses must not use this constructor. Instead, they
must use the ModuleNode(int,String,int,String,List,List,List,List,List)
version.name
- the fully qualified name (using dots) of the module.access
- the module access flags, among ACC_OPEN
, ACC_SYNTHETIC
and
ACC_MANDATED
.version
- the module version, or null.java.lang.IllegalStateException
- If a subclass calls this constructor.public ModuleNode(int api, java.lang.String name, int access, java.lang.String version, java.util.List<ModuleRequireNode> requires, java.util.List<ModuleExportNode> exports, java.util.List<ModuleOpenNode> opens, java.util.List<java.lang.String> uses, java.util.List<ModuleProvideNode> provides)
ModuleNode
.api
- the ASM API version implemented by this visitor. Must be one of Opcodes.ASM6
or Opcodes.ASM7_EXPERIMENTAL
.name
- the fully qualified name (using dots) of the module.access
- the module access flags, among ACC_OPEN
, ACC_SYNTHETIC
and
ACC_MANDATED
.version
- the module version, or null.requires
- The dependencies of this module. May be null.exports
- The packages exported by this module. May be null.opens
- The packages opened by this module. May be null.uses
- The internal names of the services used by this module. May be null.provides
- The services provided by this module. May be null.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
public void accept(ClassVisitor classVisitor)