Package proguard.classfile.visitor
Class ClassConstantClassFilter
- java.lang.Object
-
- proguard.classfile.visitor.ClassConstantClassFilter
-
- All Implemented Interfaces:
ConstantVisitor,ClassVisitor
public class ClassConstantClassFilter extends java.lang.Object implements ClassVisitor, ConstantVisitor
This ClassVisitor delegates all visits to another given visitor, but only if the visited class contains the specified class constant. This can be useful to avoid applying expensive visitors when they aren't necessary.
-
-
Constructor Summary
Constructors Constructor Description ClassConstantClassFilter(java.lang.String regularExpression, ClassVisitor classVisitor)Creates a new ClassConstantClassFilter.ClassConstantClassFilter(StringMatcher regularExpressionMatcher, ClassVisitor classVisitor)Creates a new ClassConstantClassFilter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidvisitAnyClass(Clazz clazz)Visits any Clazz instance.voidvisitAnyConstant(Clazz clazz, Constant constant)Visits any Constant instance.voidvisitClassConstant(Clazz clazz, ClassConstant classConstant)voidvisitProgramClass(ProgramClass programClass)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface proguard.classfile.visitor.ClassVisitor
visitLibraryClass
-
Methods inherited from interface proguard.classfile.constant.visitor.ConstantVisitor
visitAnyMethodrefConstant, visitAnyRefConstant, visitDoubleConstant, visitDynamicConstant, visitFieldrefConstant, visitFloatConstant, visitIntegerConstant, visitInterfaceMethodrefConstant, visitInvokeDynamicConstant, visitLongConstant, visitMethodHandleConstant, visitMethodrefConstant, visitMethodTypeConstant, visitModuleConstant, visitNameAndTypeConstant, visitPackageConstant, visitPrimitiveArrayConstant, visitStringConstant, visitUtf8Constant
-
-
-
-
Constructor Detail
-
ClassConstantClassFilter
public ClassConstantClassFilter(java.lang.String regularExpression, ClassVisitor classVisitor)Creates a new ClassConstantClassFilter.- Parameters:
regularExpression- the regular expression against which class names of class constants will be matched.classVisitor- the class visitor for classes that contain the specified class constant.
-
ClassConstantClassFilter
public ClassConstantClassFilter(StringMatcher regularExpressionMatcher, ClassVisitor classVisitor)
Creates a new ClassConstantClassFilter.- Parameters:
regularExpressionMatcher- the string matcher against which class names will be matched.classVisitor- the class visitor for classes that contain the specified class constant.
-
-
Method Detail
-
visitAnyClass
public void visitAnyClass(Clazz clazz)
Description copied from interface:ClassVisitorVisits any Clazz instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyClassin interfaceClassVisitor
-
visitProgramClass
public void visitProgramClass(ProgramClass programClass)
- Specified by:
visitProgramClassin interfaceClassVisitor
-
visitAnyConstant
public void visitAnyConstant(Clazz clazz, Constant constant)
Description copied from interface:ConstantVisitorVisits any Constant instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyConstantin interfaceConstantVisitor
-
visitClassConstant
public void visitClassConstant(Clazz clazz, ClassConstant classConstant)
- Specified by:
visitClassConstantin interfaceConstantVisitor
-
-