org.apache.bcel.verifier.statics
Class Pass3aVerifier
public final class Pass3aVerifier
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.
$Id: Pass3aVerifier.java,v 1.3 2002/06/13 09:32:50 enver Exp $
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.
|
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.
- do_verify in interface PassVerifier
getMethodNo
public int getMethodNo()
Returns the method number as supplied when instantiating.