Class Pass3bVerifier

java.lang.Object
org.apache.bcel.verifier.PassVerifier
org.apache.bcel.verifier.structurals.Pass3bVerifier

public final class Pass3bVerifier extends PassVerifier
This PassVerifier verifies a method of class file according to pass 3, so-called structural verification as described in The Java Virtual Machine Specification, 2nd edition. More detailed information is to be found at the do_verify() method's documentation.
See Also:
  • Constructor Details Link icon

  • Method Details Link icon

    • do_verify Link icon

      Pass 3b implements the data flow analysis as described in the Java Virtual Machine Specification, Second Edition. Later versions will use LocalVariablesInfo objects to verify if the verifier-inferred types and the class file's debug information (LocalVariables attributes) match [TODO].
      Specified by:
      do_verify in class PassVerifier
      Returns:
      The VerificationResult
      See Also:
    • getMethodNo Link icon

      public int getMethodNo()
      Returns the method number as supplied when instantiating.
    • invalidReturnTypeError Link icon

      public void invalidReturnTypeError(Type returnedType, MethodGen m)
      Throws an exception indicating the returned type is not compatible with the return type of the given method.
      Parameters:
      returnedType - the type of the returned expression
      m - the method we are processing
      Throws:
      StructuralCodeConstraintException - always
      Since:
      6.0