Package org.springframework.asm
Class ModuleVisitor
java.lang.Object
org.springframework.asm.ModuleVisitor
A visitor to visit a Java module. The methods of this class must be called in the following
order: (
visitMainClass | ( visitPackage | visitRequire |
visitExport | visitOpen | visitUse | visitProvide )* ) visitEnd.- Author:
- Remi Forax, Eric Bruneton
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final intThe ASM API version implemented by this visitor.protected ModuleVisitorThe module visitor to which this visitor must delegate method calls. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedModuleVisitor(int api) Constructs a newModuleVisitor.protectedModuleVisitor(int api, ModuleVisitor moduleVisitor) Constructs a newModuleVisitor. -
Method Summary
Modifier and TypeMethodDescriptionvoidvisitEnd()Visits the end of the module.voidvisitExport(String packaze, int access, String... modules) Visit an exported package of the current module.voidvisitMainClass(String mainClass) Visit the main class of the current module.voidVisit an open package of the current module.voidvisitPackage(String packaze) Visit a package of the current module.voidvisitProvide(String service, String... providers) Visit an implementation of a service.voidvisitRequire(String module, int access, String version) Visits a dependence of the current module.voidVisit a service used by the current module.
-
Field Details
-
api
protected final int apiThe ASM API version implemented by this visitor. The value of this field must be one ofOpcodes.ASM6orOpcodes.ASM7. -
mv
The module visitor to which this visitor must delegate method calls. May be null.
-
-
Constructor Details
-
ModuleVisitor
protected ModuleVisitor(int api) Constructs a newModuleVisitor.- Parameters:
api- the ASM API version implemented by this visitor. Must be one ofOpcodes.ASM6orOpcodes.ASM7.
-
ModuleVisitor
Constructs a newModuleVisitor.- Parameters:
api- the ASM API version implemented by this visitor. Must be one ofOpcodes.ASM6orOpcodes.ASM7.moduleVisitor- the module visitor to which this visitor must delegate method calls. May be null.
-
-
Method Details
-
visitMainClass
Visit the main class of the current module.- Parameters:
mainClass- the internal name of the main class of the current module.
-
visitPackage
Visit a package of the current module.- Parameters:
packaze- the internal name of a package.
-
visitRequire
Visits a dependence of the current module.- Parameters:
module- the fully qualified name (using dots) of the dependence.access- the access flag of the dependence amongACC_TRANSITIVE,ACC_STATIC_PHASE,ACC_SYNTHETICandACC_MANDATED.version- the module version at compile time, or null.
-
visitExport
Visit an exported package of the current module.- Parameters:
packaze- the internal name of the exported package.access- the access flag of the exported package, valid values are amongACC_SYNTHETICandACC_MANDATED.modules- the fully qualified names (using dots) of the modules that can access the public classes of the exported package, or null.
-
visitOpen
Visit an open package of the current module.- Parameters:
packaze- the internal name of the opened package.access- the access flag of the opened package, valid values are amongACC_SYNTHETICandACC_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.
-
visitUse
Visit a service used by the current module. The name must be the internal name of an interface or a class.- Parameters:
service- the internal name of the service.
-
visitProvide
Visit an implementation of a service.- Parameters:
service- the internal name of the service.providers- the internal names of the implementations of the service (there is at least one provider).
-
visitEnd
public void visitEnd()Visits the end of the module. This method, which is the last one to be called, is used to inform the visitor that everything have been visited.
-