Class 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:
    do_verify()
    • Constructor Summary

      Constructors 
      Constructor Description
      Pass3bVerifier​(Verifier owner, int method_no)
      This class should only be instantiated by a Verifier.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      VerificationResult do_verify()
      Pass 3b implements the data flow analysis as described in the Java Virtual Machine Specification, Second Edition.
      int getMethodNo()
      Returns the method number as supplied when instantiating.
      void invalidReturnTypeError​(Type returnedType, MethodGen m)
      Throws an exception indicating the returned type is not compatible with the return type of the given method.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Pass3bVerifier

        public Pass3bVerifier​(Verifier owner,
                              int method_no)
        This class should only be instantiated by a Verifier.
        See Also:
        Verifier
    • Method Detail

      • invalidReturnTypeError

        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
      • getMethodNo

        public int getMethodNo()
        Returns the method number as supplied when instantiating.