Project

General

Profile

Revision a703ed0c src/causality.ml

View differences:

src/causality.ml
85 85
let new_graph () =
86 86
  IdentDepGraph.create ()
87 87

  
88
(* keep subgraph of [gr] consisting of nodes accessible from node [v] *)
89
let slice_graph gr v =
90
  begin
91
    let gr' = new_graph () in
92
    IdentDepGraph.add_vertex gr' v;
93
    Bfs.iter_component (fun v -> IdentDepGraph.iter_succ (fun s -> IdentDepGraph.add_vertex gr' s; IdentDepGraph.add_edge gr' v s) gr v) gr v;
94
    gr'
95
  end
96

  
88 97
    
89 98
module ExprDep = struct
90 99
  let get_node_eqs nd =
......
374 383
	   
375 384
      ) prog g in
376 385
    g   
377

  
378
  (* keep subgraph of [gr] consisting of nodes accessible from node [v] *)
379
  let slice_graph gr v =
380
    begin
381
      let gr' = new_graph () in
382
      IdentDepGraph.add_vertex gr' v;
383
      Bfs.iter_component (fun v -> IdentDepGraph.iter_succ (fun s -> IdentDepGraph.add_vertex gr' s; IdentDepGraph.add_edge gr' v s) gr v) gr v;
384
      gr'
385
    end
386 386
      
387 387
  let rec filter_static_inputs inputs args =
388 388
    match inputs, args with

Also available in: Unified diff