Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /* Soot - a J*va Optimization Framework
  * Copyright (C) 1999 Patrice Pominville, Raja Vallee-Rai
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
  * version 2.1 of the License, or (at your option) any later version.
  * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * Lesser General Public License for more details.
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 02111-1307, USA.
 * Modified by the Sable Research Group and others 1997-2003.  
 * See the 'credits' file distributed with Soot for the complete list of
 * contributors.  (Soot is distributed at
package soot.toolkits.graph;
import soot.Body;

Represents a CFG for a soot.Body instance where the nodes are Block instances, and where control flow associated with exceptions is taken into account. When dividing the soot.Body into basic blocks, CompleteBlockGraph assumes that every Unit covered by a Trap has the potential to throw an exception caught by the Trap. This generally has the effect of separating every covered Unit into a separate block.

This implementation of CompleteBlockGraph is included for backwards compatibility, but the graphs it produces are not necessarily identical to the graphs produced by the implementation of CompleteBlockGraph See the documentation for CompleteUnitGraph for details of the incompatibilities.

public class CompleteBlockGraph extends ExceptionalBlockGraph 
    public CompleteBlockGraph(Body b) {
	super(new CompleteUnitGraph(b));
New to GrepCode? Check out our FAQ X