saker.build Documentation TaskDoc JavaDoc Packages
public abstract class 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.
Fields
protected final int
The ASM API version implemented by this visitor.
protected ModuleVisitor
The module visitor to which this visitor must delegate method calls.
Constructors
public
ModuleVisitor(int api)
Constructs a new ModuleVisitor.
public
ModuleVisitor(int api, ModuleVisitor moduleVisitor)
Constructs a new ModuleVisitor.
Methods
public void
Visits the end of the module.
public void
visitExport(String packaze, int access, String... modules)
Visit an exported package of the current module.
public void
Visit the main class of the current module.
public void
visitOpen(String packaze, int access, String... modules)
Visit an open package of the current module.
public void
Visit a package of the current module.
public void
visitProvide(String service, String... providers)
Visit an implementation of a service.
public void
visitRequire(String module, int access, String version)
Visits a dependence of the current module.
public void
visitUse(String service)
Visit a service used by the current module.
protected final int api
The ASM API version implemented by this visitor. The value of this field must be one of Opcodes.ASM6 or Opcodes.ASM7.
protected ModuleVisitor mv
The module visitor to which this visitor must delegate method calls. May be null.
public ModuleVisitor(int api)
Constructs a new ModuleVisitor.
apithe ASM API version implemented by this visitor. Must be one of Opcodes.ASM6 or Opcodes.ASM7.
public ModuleVisitor(int api, ModuleVisitor moduleVisitor)
Constructs a new ModuleVisitor.
apithe ASM API version implemented by this visitor. Must be one of Opcodes.ASM6 or Opcodes.ASM7.
moduleVisitorthe module visitor to which this visitor must delegate method calls. May be null.
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.
public void visitExport(String packaze, int access, String... modules)
Visit an exported package of the current module.
packazethe internal name of the exported package.
accessthe access flag of the exported package, valid values are among ACC_SYNTHETIC and ACC_MANDATED.
modulesthe fully qualified names (using dots) of the modules that can access the public classes of the exported package, or null.
public void visitMainClass(String mainClass)
Visit the main class of the current module.
mainClassthe internal name of the main class of the current module.
public void visitOpen(String packaze, int access, String... modules)
Visit an open package of the current module.
packazethe internal name of the opened package.
accessthe access flag of the opened package, valid values are among ACC_SYNTHETIC and ACC_MANDATED.
modulesthe fully qualified names (using dots) of the modules that can use deep reflection to the classes of the open package, or null.
public void visitPackage(String packaze)
Visit a package of the current module.
packazethe internal name of a package.
public void visitProvide(String service, String... providers)
Visit an implementation of a service.
servicethe internal name of the service.
providersthe internal names of the implementations of the service (there is at least one provider).
public void visitRequire(String module, int access, String version)
Visits a dependence of the current module.
modulethe fully qualified name (using dots) of the dependence.
accessthe access flag of the dependence among ACC_TRANSITIVE, ACC_STATIC_PHASE, ACC_SYNTHETIC and ACC_MANDATED.
versionthe module version at compile time, or null.
public void visitUse(String service)
Visit a service used by the current module. The name must be the internal name of an interface or a class.
servicethe internal name of the service.