Package org.apache.bcel.verifier.statics
Class Pass2Verifier.CPESSC_Visitor
- java.lang.Object
-
- org.apache.bcel.classfile.EmptyVisitor
-
- org.apache.bcel.verifier.statics.Pass2Verifier.CPESSC_Visitor
-
- All Implemented Interfaces:
Visitor
- Enclosing class:
- Pass2Verifier
private final class Pass2Verifier.CPESSC_Visitor extends EmptyVisitor
A Visitor class that ensures the constant pool satisfies the static constraints. The visitXXX() methods throw ClassConstraintException instances otherwise.
-
-
Field Summary
Fields Modifier and Type Field Description private DescendingVisitorcarrierprivate java.lang.Class<?>CONST_Classprivate java.lang.Class<?>CONST_Doubleprivate java.lang.Class<?>CONST_Floatprivate java.lang.Class<?>CONST_Integerprivate java.lang.Class<?>CONST_Longprivate java.lang.Class<?>CONST_NameAndTypeprivate java.lang.Class<?>CONST_Stringprivate java.lang.Class<?>CONST_Utf8private ConstantPoolcpprivate intcplenprivate java.util.Set<java.lang.String>fieldNamesprivate java.util.Set<java.lang.String>fieldNamesAndDescprivate JavaClassjcprivate java.util.Set<java.lang.String>methodNamesAndDesc
-
Constructor Summary
Constructors Modifier Constructor Description privateCPESSC_Visitor(JavaClass jc)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidcheckIndex(Node referrer, int index, java.lang.Class<?> shouldbe)voidvisitCode(Code obj)Visits a Code attribute.voidvisitCodeException(CodeException obj)Visits a CodeException.voidvisitConstantClass(ConstantClass obj)Visits a ConstantClass.voidvisitConstantDouble(ConstantDouble obj)Visits a ConstantDouble.voidvisitConstantFieldref(ConstantFieldref obj)Visits a ConstantFieldref.voidvisitConstantFloat(ConstantFloat obj)Visits a ConstantFloat.voidvisitConstantInteger(ConstantInteger obj)Visits a ConstantInteger.voidvisitConstantInterfaceMethodref(ConstantInterfaceMethodref obj)Visits a ConstantInterfaceMethodref.voidvisitConstantLong(ConstantLong obj)Visits a ConstantLong.voidvisitConstantMethodref(ConstantMethodref obj)Visits a ConstantMethodref.voidvisitConstantNameAndType(ConstantNameAndType obj)Visits a ConstantNameAndType.voidvisitConstantPool(ConstantPool obj)Visits a ConstantPool.voidvisitConstantString(ConstantString obj)Visits a ConstantString.voidvisitConstantUtf8(ConstantUtf8 obj)Visits a ConstantUtf8.voidvisitConstantValue(ConstantValue obj)Visits a ConstantValue attribute.voidvisitDeprecated(Deprecated obj)Visits a Deprecated attribute.voidvisitExceptionTable(ExceptionTable obj)Visits an ExceptionTable attribute.voidvisitField(Field obj)Visits a Field.voidvisitInnerClass(InnerClass obj)Visits an InnerClass.voidvisitInnerClasses(InnerClasses innerClasses)Visits an InnerClasses attribute.voidvisitJavaClass(JavaClass obj)Visits a JavaClass.voidvisitLineNumber(LineNumber obj)Visits a LineNumber.voidvisitLineNumberTable(LineNumberTable obj)Visits a LineNumberTable attribute.voidvisitLocalVariable(LocalVariable obj)Visits a LocalVariable.voidvisitLocalVariableTable(LocalVariableTable obj)Visits a LocalVariableTable attribute.voidvisitMethod(Method obj)Visits a Method.voidvisitSourceFile(SourceFile obj)Visits a SourceFile attribute.voidvisitSynthetic(Synthetic obj)Visits a Synthetic attribute.voidvisitUnknown(Unknown obj)Visits an Unknown attribute.-
Methods inherited from class org.apache.bcel.classfile.EmptyVisitor
visitAnnotation, visitAnnotationDefault, visitAnnotationEntry, visitBootstrapMethods, visitConstantDynamic, visitConstantInvokeDynamic, visitConstantMethodHandle, visitConstantMethodType, visitConstantModule, visitConstantPackage, visitEnclosingMethod, visitLocalVariableTypeTable, visitMethodParameter, visitMethodParameters, visitModule, visitModuleExports, visitModuleMainClass, visitModuleOpens, visitModulePackages, visitModuleProvides, visitModuleRequires, visitNestHost, visitNestMembers, visitParameterAnnotation, visitParameterAnnotationEntry, visitSignature, visitStackMap, visitStackMapEntry, visitStackMapType
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.bcel.classfile.Visitor
visitRecord, visitRecordComponent
-
-
-
-
Field Detail
-
CONST_Class
private final java.lang.Class<?> CONST_Class
-
CONST_String
private final java.lang.Class<?> CONST_String
-
CONST_Integer
private final java.lang.Class<?> CONST_Integer
-
CONST_Float
private final java.lang.Class<?> CONST_Float
-
CONST_Long
private final java.lang.Class<?> CONST_Long
-
CONST_Double
private final java.lang.Class<?> CONST_Double
-
CONST_NameAndType
private final java.lang.Class<?> CONST_NameAndType
-
CONST_Utf8
private final java.lang.Class<?> CONST_Utf8
-
jc
private final JavaClass jc
-
cp
private final ConstantPool cp
-
cplen
private final int cplen
-
carrier
private final DescendingVisitor carrier
-
fieldNames
private final java.util.Set<java.lang.String> fieldNames
-
fieldNamesAndDesc
private final java.util.Set<java.lang.String> fieldNamesAndDesc
-
methodNamesAndDesc
private final java.util.Set<java.lang.String> methodNamesAndDesc
-
-
Constructor Detail
-
CPESSC_Visitor
private CPESSC_Visitor(JavaClass jc)
-
-
Method Detail
-
checkIndex
private void checkIndex(Node referrer, int index, java.lang.Class<?> shouldbe)
-
visitCode
public void visitCode(Code obj)
Description copied from interface:VisitorVisits a Code attribute.- Specified by:
visitCodein interfaceVisitor- Overrides:
visitCodein classEmptyVisitor- Parameters:
obj- the attribute.
-
visitCodeException
public void visitCodeException(CodeException obj)
Description copied from interface:VisitorVisits a CodeException.- Specified by:
visitCodeExceptionin interfaceVisitor- Overrides:
visitCodeExceptionin classEmptyVisitor- Parameters:
obj- the exception.
-
visitConstantClass
public void visitConstantClass(ConstantClass obj)
Description copied from interface:VisitorVisits a ConstantClass.- Specified by:
visitConstantClassin interfaceVisitor- Overrides:
visitConstantClassin classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantDouble
public void visitConstantDouble(ConstantDouble obj)
Description copied from interface:VisitorVisits a ConstantDouble.- Specified by:
visitConstantDoublein interfaceVisitor- Overrides:
visitConstantDoublein classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantFieldref
public void visitConstantFieldref(ConstantFieldref obj)
Description copied from interface:VisitorVisits a ConstantFieldref.- Specified by:
visitConstantFieldrefin interfaceVisitor- Overrides:
visitConstantFieldrefin classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantFloat
public void visitConstantFloat(ConstantFloat obj)
Description copied from interface:VisitorVisits a ConstantFloat.- Specified by:
visitConstantFloatin interfaceVisitor- Overrides:
visitConstantFloatin classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantInteger
public void visitConstantInteger(ConstantInteger obj)
Description copied from interface:VisitorVisits a ConstantInteger.- Specified by:
visitConstantIntegerin interfaceVisitor- Overrides:
visitConstantIntegerin classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantInterfaceMethodref
public void visitConstantInterfaceMethodref(ConstantInterfaceMethodref obj)
Description copied from interface:VisitorVisits a ConstantInterfaceMethodref.- Specified by:
visitConstantInterfaceMethodrefin interfaceVisitor- Overrides:
visitConstantInterfaceMethodrefin classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantLong
public void visitConstantLong(ConstantLong obj)
Description copied from interface:VisitorVisits a ConstantLong.- Specified by:
visitConstantLongin interfaceVisitor- Overrides:
visitConstantLongin classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantMethodref
public void visitConstantMethodref(ConstantMethodref obj)
Description copied from interface:VisitorVisits a ConstantMethodref.- Specified by:
visitConstantMethodrefin interfaceVisitor- Overrides:
visitConstantMethodrefin classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantNameAndType
public void visitConstantNameAndType(ConstantNameAndType obj)
Description copied from interface:VisitorVisits a ConstantNameAndType.- Specified by:
visitConstantNameAndTypein interfaceVisitor- Overrides:
visitConstantNameAndTypein classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantPool
public void visitConstantPool(ConstantPool obj)
Description copied from interface:VisitorVisits a ConstantPool.- Specified by:
visitConstantPoolin interfaceVisitor- Overrides:
visitConstantPoolin classEmptyVisitor- Parameters:
obj- the constant pool.
-
visitConstantString
public void visitConstantString(ConstantString obj)
Description copied from interface:VisitorVisits a ConstantString.- Specified by:
visitConstantStringin interfaceVisitor- Overrides:
visitConstantStringin classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantUtf8
public void visitConstantUtf8(ConstantUtf8 obj)
Description copied from interface:VisitorVisits a ConstantUtf8.- Specified by:
visitConstantUtf8in interfaceVisitor- Overrides:
visitConstantUtf8in classEmptyVisitor- Parameters:
obj- the constant.
-
visitConstantValue
public void visitConstantValue(ConstantValue obj)
Description copied from interface:VisitorVisits a ConstantValue attribute.- Specified by:
visitConstantValuein interfaceVisitor- Overrides:
visitConstantValuein classEmptyVisitor- Parameters:
obj- the attribute.
-
visitDeprecated
public void visitDeprecated(Deprecated obj)
Description copied from interface:VisitorVisits a Deprecated attribute.- Specified by:
visitDeprecatedin interfaceVisitor- Overrides:
visitDeprecatedin classEmptyVisitor- Parameters:
obj- the attribute.
-
visitExceptionTable
public void visitExceptionTable(ExceptionTable obj)
Description copied from interface:VisitorVisits an ExceptionTable attribute.- Specified by:
visitExceptionTablein interfaceVisitor- Overrides:
visitExceptionTablein classEmptyVisitor- Parameters:
obj- the attribute.
-
visitField
public void visitField(Field obj)
Description copied from interface:VisitorVisits a Field.- Specified by:
visitFieldin interfaceVisitor- Overrides:
visitFieldin classEmptyVisitor- Parameters:
obj- the field.
-
visitInnerClass
public void visitInnerClass(InnerClass obj)
Description copied from interface:VisitorVisits an InnerClass.- Specified by:
visitInnerClassin interfaceVisitor- Overrides:
visitInnerClassin classEmptyVisitor- Parameters:
obj- the inner class.
-
visitInnerClasses
public void visitInnerClasses(InnerClasses innerClasses)
Description copied from interface:VisitorVisits an InnerClasses attribute.- Specified by:
visitInnerClassesin interfaceVisitor- Overrides:
visitInnerClassesin classEmptyVisitor- Parameters:
innerClasses- the attribute.
-
visitJavaClass
public void visitJavaClass(JavaClass obj)
Description copied from interface:VisitorVisits a JavaClass.- Specified by:
visitJavaClassin interfaceVisitor- Overrides:
visitJavaClassin classEmptyVisitor- Parameters:
obj- the class.
-
visitLineNumber
public void visitLineNumber(LineNumber obj)
Description copied from interface:VisitorVisits a LineNumber.- Specified by:
visitLineNumberin interfaceVisitor- Overrides:
visitLineNumberin classEmptyVisitor- Parameters:
obj- the line number.
-
visitLineNumberTable
public void visitLineNumberTable(LineNumberTable obj)
Description copied from interface:VisitorVisits a LineNumberTable attribute.- Specified by:
visitLineNumberTablein interfaceVisitor- Overrides:
visitLineNumberTablein classEmptyVisitor- Parameters:
obj- the attribute.
-
visitLocalVariable
public void visitLocalVariable(LocalVariable obj)
Description copied from interface:VisitorVisits a LocalVariable.- Specified by:
visitLocalVariablein interfaceVisitor- Overrides:
visitLocalVariablein classEmptyVisitor- Parameters:
obj- the local variable.
-
visitLocalVariableTable
public void visitLocalVariableTable(LocalVariableTable obj)
Description copied from interface:VisitorVisits a LocalVariableTable attribute.- Specified by:
visitLocalVariableTablein interfaceVisitor- Overrides:
visitLocalVariableTablein classEmptyVisitor- Parameters:
obj- the attribute.
-
visitMethod
public void visitMethod(Method obj)
Description copied from interface:VisitorVisits a Method.- Specified by:
visitMethodin interfaceVisitor- Overrides:
visitMethodin classEmptyVisitor- Parameters:
obj- the method.
-
visitSourceFile
public void visitSourceFile(SourceFile obj)
Description copied from interface:VisitorVisits a SourceFile attribute.- Specified by:
visitSourceFilein interfaceVisitor- Overrides:
visitSourceFilein classEmptyVisitor- Parameters:
obj- the attribute.
-
visitSynthetic
public void visitSynthetic(Synthetic obj)
Description copied from interface:VisitorVisits a Synthetic attribute.- Specified by:
visitSyntheticin interfaceVisitor- Overrides:
visitSyntheticin classEmptyVisitor- Parameters:
obj- the attribute.
-
visitUnknown
public void visitUnknown(Unknown obj)
Description copied from interface:VisitorVisits an Unknown attribute.- Specified by:
visitUnknownin interfaceVisitor- Overrides:
visitUnknownin classEmptyVisitor- Parameters:
obj- the attribute.
-
-