FindBugs™ 1.3.9

edu.umd.cs.findbugs.ba
Class BetterCFGBuilder2

java.lang.Object
  extended by edu.umd.cs.findbugs.ba.BetterCFGBuilder2
All Implemented Interfaces:
CFGBuilder, Debug, EdgeTypes

public class BetterCFGBuilder2
extends java.lang.Object
implements CFGBuilder, EdgeTypes, Debug

A CFGBuilder that really tries to construct accurate control flow graphs. The CFGs it creates have accurate exception edges, and have accurately inlined JSR subroutines.

Author:
David Hovemeyer
See Also:
CFG

Field Summary
 
Fields inherited from interface edu.umd.cs.findbugs.ba.EdgeTypes
BACKEDGE_SOURCE_EDGE, BACKEDGE_TARGET_EDGE, CHECKED_EXCEPTIONS_FLAG, EXIT_EDGE, EXPLICIT_EXCEPTIONS_FLAG, FALL_THROUGH_EDGE, GOTO_EDGE, HANDLED_EXCEPTION_EDGE, IFCMP_EDGE, JSR_EDGE, RET_EDGE, RETURN_EDGE, START_EDGE, SWITCH_DEFAULT_EDGE, SWITCH_EDGE, UNHANDLED_EXCEPTION_EDGE, UNKNOWN_EDGE
 
Fields inherited from interface edu.umd.cs.findbugs.ba.Debug
VERIFY_INTEGRITY
 
Constructor Summary
BetterCFGBuilder2(org.apache.bcel.generic.MethodGen methodGen)
          Constructor.
 
Method Summary
 void build()
          Build the CFG.
 CFG getCFG()
          Get the CFG built by this object.
 void inline(edu.umd.cs.findbugs.ba.BetterCFGBuilder2.Context context)
          Inline a subroutine into a calling context.
static void main(java.lang.String[] argv)
          Test driver.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BetterCFGBuilder2

public BetterCFGBuilder2(@NonNull
                         org.apache.bcel.generic.MethodGen methodGen)
Constructor.

Parameters:
methodGen - the method to build a CFG for
Method Detail

build

public void build()
           throws CFGBuilderException
Description copied from interface: CFGBuilder
Build the CFG.

Specified by:
build in interface CFGBuilder
Throws:
CFGBuilderException

getCFG

public CFG getCFG()
Description copied from interface: CFGBuilder
Get the CFG built by this object. Assumes that the build() method has already been called.

Specified by:
getCFG in interface CFGBuilder
Returns:
the CFG

inline

public void inline(edu.umd.cs.findbugs.ba.BetterCFGBuilder2.Context context)
            throws CFGBuilderException
Inline a subroutine into a calling context.

Parameters:
context - the Context
Throws:
CFGBuilderException

main

public static void main(java.lang.String[] argv)
                 throws java.lang.Exception
Test driver.

Throws:
java.lang.Exception

FindBugs™ 1.3.9

FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.