public class ModuleNode extends ModuleVisitor
Modifier and Type | Field and Description |
---|---|
int |
access
Module access flags, among
ACC_OPEN , ACC_SYNTHETIC
and ACC_MANDATED . |
List<ModuleExportNode> |
exports
A list of packages that are exported by the current module.
|
String |
mainClass
Name of the main class in internal form
May be null.
|
String |
name
Module name
|
List<ModuleOpenNode> |
opens
A list of packages that are opened by the current module.
|
List<String> |
packages
A list of packages that are declared by the current module.
|
List<ModuleProvideNode> |
provides
A list of services along with their implementations provided
by the current module.
|
List<ModuleRequireNode> |
requires
A list of modules can are required by the current module.
|
List<String> |
uses
A list of classes in their internal forms that are used
as a service by the current module.
|
String |
version
Version of the module.
|
api, mv
Constructor and Description |
---|
ModuleNode(int api,
String name,
int access,
String version,
List<ModuleRequireNode> requires,
List<ModuleExportNode> exports,
List<ModuleOpenNode> opens,
List<String> uses,
List<ModuleProvideNode> provides) |
ModuleNode(String name,
int access,
String version) |
Modifier and Type | Method and Description |
---|---|
void |
accept(ClassVisitor cv) |
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.
|
public String name
public int access
ACC_OPEN
, ACC_SYNTHETIC
and ACC_MANDATED
.public String version
public String mainClass
public List<String> packages
public List<ModuleRequireNode> requires
public List<ModuleExportNode> exports
public List<ModuleOpenNode> opens
public List<String> uses
public List<ModuleProvideNode> provides
public ModuleNode(int api, String name, int access, String version, List<ModuleRequireNode> requires, List<ModuleExportNode> exports, List<ModuleOpenNode> opens, List<String> uses, List<ModuleProvideNode> provides)
public void visitMainClass(String mainClass)
ModuleVisitor
visitMainClass
in class ModuleVisitor
mainClass
- the internal name of the main class of the current module.public void visitPackage(String packaze)
ModuleVisitor
visitPackage
in class ModuleVisitor
packaze
- the qualified name of a package.public void visitRequire(String module, int access, String version)
ModuleVisitor
visitRequire
in class ModuleVisitor
module
- the qualified name 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)
ModuleVisitor
visitExport
in class ModuleVisitor
packaze
- the qualified name of the exported package.access
- the access flag of the exported package,
valid values are among ACC_SYNTHETIC
and
ACC_MANDATED
.modules
- the qualified names of the modules that can access to
the public classes of the exported package or
null.public void visitOpen(String packaze, int access, String... modules)
ModuleVisitor
visitOpen
in class ModuleVisitor
packaze
- the qualified name of the opened package.access
- the access flag of the opened package,
valid values are among ACC_SYNTHETIC
and
ACC_MANDATED
.modules
- the qualified names of the modules that can use deep
reflection to the classes of the open package or
null.public void visitUse(String service)
ModuleVisitor
visitUse
in class ModuleVisitor
service
- the internal name of the service.public void visitProvide(String service, String... providers)
ModuleVisitor
visitProvide
in class ModuleVisitor
service
- the internal name of the serviceproviders
- 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 cv)