visit visitSource? visitOuterClass? ( visitAnnotation | visitAttribute )*
( visitInnerClass | visitField | visitMethod )*
visitEnd
The methods of the ClassVisitor class must be called in the following order,
specified in the Javadoc of this class:
visit visitSource? visitOuterClass? ( visitAnnotation | visitAttribute )*
( visitInnerClass | visitField | visitMethod )*
visitEnd
This means that visit must be called first, followed by at most one call to
visitSource, followed by at most one call to visitOuterClass, followed by
any number of calls in any order to visitAnnotation and visitAttribute,
followed by any number of calls in any order to visitInnerClass, visitField
and visitMethod, and terminated by a single call to visitEnd.