public Edge next() { Edge ret = position; position = position.nextByTgt(); return ret; }
public Edge next() { Edge ret = position; position = position.nextByTgt(); return ret; } public void remove() {
public Edge next() { Edge ret = position; position = position.nextByTgt(); return ret; } public void remove() {
/** Removes the edge e from the call graph. Returns true iff the edge * was originally present in the call graph. */ public boolean removeEdge( Edge e ) { if( !edges.remove( e ) ) return false; e.remove(); if( srcUnitToEdge.get(e.srcUnit()) == e ) { if( e.nextByUnit().srcUnit() == e.srcUnit() ) { srcUnitToEdge.put(e.srcUnit(), e.nextByUnit() ); } else { srcUnitToEdge.put(e.srcUnit(), null); } } if( srcMethodToEdge.get(e.getSrc()) == e ) { if( e.nextBySrc().getSrc() == e.getSrc() ) { srcMethodToEdge.put(e.getSrc(), e.nextBySrc() ); } else { srcMethodToEdge.put(e.getSrc(), null); } } if( tgtToEdge.get(e.getTgt()) == e ) { if( e.nextByTgt().getTgt() == e.getTgt() ) { tgtToEdge.put(e.getTgt(), e.nextByTgt() ); } else { tgtToEdge.put(e.getTgt(), null); } } return true; }
/** Removes the edge e from the call graph. Returns true iff the edge * was originally present in the call graph. */ public boolean removeEdge( Edge e ) { if( !edges.remove( e ) ) return false; e.remove(); if( srcUnitToEdge.get(e.srcUnit()) == e ) { if( e.nextByUnit().srcUnit() == e.srcUnit() ) { srcUnitToEdge.put(e.srcUnit(), e.nextByUnit() ); } else { srcUnitToEdge.put(e.srcUnit(), null); } } if( srcMethodToEdge.get(e.getSrc()) == e ) { if( e.nextBySrc().getSrc() == e.getSrc() ) { srcMethodToEdge.put(e.getSrc(), e.nextBySrc() ); } else { srcMethodToEdge.put(e.getSrc(), null); } } if( tgtToEdge.get(e.getTgt()) == e ) { if( e.nextByTgt().getTgt() == e.getTgt() ) { tgtToEdge.put(e.getTgt(), e.nextByTgt() ); } else { tgtToEdge.put(e.getTgt(), null); } } return true; }