org.apache.bcel.verifier.statics
Class Pass3aVerifier
java.lang.Object
org.apache.bcel.verifier.PassVerifier
org.apache.bcel.verifier.statics.Pass3aVerifier
public final class Pass3aVerifier
- extends PassVerifier
This PassVerifier verifies a class file according to
pass 3, static part as described in The Java Virtual
Machine Specification, 2nd edition.
More detailed information is to be found at the do_verify()
method's documentation.
- Version:
- $Id: Pass3aVerifier.java 386056 2006-03-15 11:31:56Z tcurdt $
- See Also:
do_verify()
Method Summary |
VerificationResult |
do_verify()
Pass 3a is the verification of static constraints of
JVM code (such as legal targets of branch instructions). |
int |
getMethodNo()
Returns the method number as supplied when instantiating. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Pass3aVerifier
public Pass3aVerifier(Verifier owner,
int method_no)
- Should only be instantiated by a Verifier.
do_verify
public VerificationResult do_verify()
- Pass 3a is the verification of static constraints of
JVM code (such as legal targets of branch instructions).
This is the part of pass 3 where you do not need data
flow analysis.
JustIce also delays the checks for a correct exception
table of a Code attribute and correct line number entries
in a LineNumberTable attribute of a Code attribute (which
conceptually belong to pass 2) to this pass. Also, most
of the check for valid local variable entries in a
LocalVariableTable attribute of a Code attribute is
delayed until this pass.
All these checks need access to the code array of the
Code attribute.
- Specified by:
do_verify
in class PassVerifier
- Throws:
InvalidMethodException
- if the method to verify does not exist.
getMethodNo
public int getMethodNo()
- Returns the method number as supplied when instantiating.
Copyright © 2002-2006 Apache Software Foundation. All Rights Reserved.