Mercurial > urweb
view tests/sig_impl.ur @ 1655:b694f9153faa
Adapt Monoize serialization to handle freshly created variant types
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Mon, 02 Jan 2012 16:54:18 -0500 |
parents | 71bafe66dbe1 |
children |
line wrap: on
line source
signature S = sig type t val x : t end structure M : S = struct val x = 0 end signature S = sig con r :: {Type} val x : $r end structure M : S = struct val x = {A = 0, B = "Hi"} end signature S = sig type t con r :: {Type} val x : t -> $r end structure M : S = struct val x = fn v : int => {A = 0, B = "Hi"} end signature S = sig con nm :: Name con t :: Type con r :: {Type} val x : $([nm = t] ++ r) end structure M : S = struct val x = {A = 0, B = "Hi"} end signature S = sig con nm :: Name con r :: {Type} val x : $([nm = int] ++ r) end structure M : S = struct val x = {A = 0, B = "Hi"} end signature S = sig con nm :: Name con r :: {Type} val x : $([nm = string] ++ r) end structure M : S = struct val x = {A = 0, B = "Hi"} end