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 void
visitAnyClass(Clazz clazz)
Visits any Clazz instance.void
visitAnyConstant(Clazz clazz, Constant constant)
Visits any Constant instance.void
visitClassConstant(Clazz clazz, ClassConstant classConstant)
void
visitProgramClass(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:ClassVisitor
Visits any Clazz instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyClass
in interfaceClassVisitor
-
visitProgramClass
public void visitProgramClass(ProgramClass programClass)
- Specified by:
visitProgramClass
in interfaceClassVisitor
-
visitAnyConstant
public void visitAnyConstant(Clazz clazz, Constant constant)
Description copied from interface:ConstantVisitor
Visits any Constant instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyConstant
in interfaceConstantVisitor
-
visitClassConstant
public void visitClassConstant(Clazz clazz, ClassConstant classConstant)
- Specified by:
visitClassConstant
in interfaceConstantVisitor
-
-