view src/list_key_fn.sml @ 2286:0bdfec16a01d

Fix issue with one-element caches. Locking still WIP.
author Ziv Scully <ziv@mit.edu>
date Fri, 13 Nov 2015 01:04:32 -0500
parents 6bce459ca581
children
line wrap: on
line source
functor ListKeyFn(K : ORD_KEY)
        : ORD_KEY where type ord_key = K.ord_key list = struct

type ord_key = K.ord_key list

val rec compare =
 fn ([], []) => EQUAL
  | ([], _) => LESS
  | (_, []) => GREATER
  | (x::xs, y::ys) => case K.compare (x, y) of
                              EQUAL => compare (xs, ys)
                            | ord => ord

end