# SCM Repository

# View of /sml/trunk/src/MLRISC/graphs/graph-comb.sml

Parent Directory | Revision Log

Revision

File size: 792 byte(s)

**651**- (**download**) (**annotate**)*Thu Jun 1 18:34:03 2000 UTC*(20 years, 1 month ago) by*monnier*File size: 792 byte(s)

bring revisions from the vendor branch to the trunk

(* * This module implements some combinators that joins two graphs * into a single view. * *) structure GraphCombinations : GRAPH_COMBINATIONS = struct structure G = Graph structure Union = UnionGraphView structure Rename = RenamedGraphView structure Rev = ReversedGraphView (* * Disjoint union *) fun my_union (a,b) = Union.union_view (fn (x,y) => x) (a, b) fun sum (A as G.GRAPH a, B as G.GRAPH b) = my_union(A, Rename.rename_view (#capacity a ()) B) fun union [] = raise G.Graph "union" | union [a] = a | union [a,b] = my_union(a,b) | union (a::b) = my_union(a,union b) fun sums [] = raise G.Graph "sums" | sums [a] = a | sums [a,b] = sum(a,b) | sums (a::b) = sum(a,sums b) end

root@smlnj-gforge.cs.uchicago.edu | ViewVC Help |

Powered by ViewVC 1.0.0 |