ziv@2277: functor PairKeyFn (structure I : ORD_KEY ziv@2277: structure J : ORD_KEY) ziv@2277: : ORD_KEY where type ord_key = I.ord_key * J.ord_key = struct ziv@2277: ziv@2277: type ord_key = I.ord_key * J.ord_key ziv@2277: ziv@2277: fun compare ((i1, j1), (i2, j2)) = ziv@2277: case I.compare (i1, i2) of ziv@2277: EQUAL => J.compare (j1, j2) ziv@2277: | ord => ord ziv@2277: ziv@2277: end