diff options
author | Adam Chlipala <adam@chlipala.net> | 2012-05-02 08:34:50 -0400 |
---|---|---|
committer | Adam Chlipala <adam@chlipala.net> | 2012-05-02 08:34:50 -0400 |
commit | b314c01095c5cd4617f71f706e43530a57ffb65b (patch) | |
tree | 88076906dd1130c5cfd2657d40e8641aac59c0e7 /tests | |
parent | a612a0c55bed76b4192fb66ffeba43933bcfb6bf (diff) |
Better discovery of type class instances from recursive definitions
Diffstat (limited to 'tests')
-rw-r--r-- | tests/newMessage.ur | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/newMessage.ur b/tests/newMessage.ur new file mode 100644 index 00000000..e6ae3b4e --- /dev/null +++ b/tests/newMessage.ur @@ -0,0 +1,15 @@ +datatype message = NewQuestion of { Id : string} + | Something of {Blah : int} + +fun showMessage (message : message) = + case message of + NewQuestion {Id = a} => a + | Something {Blah = x} => "blah" + +val show_mes = mkShow showMessage + +fun showTwoTuple [a] [b] (_ : show a) (_: show b) = mkShow (fn (two_tuple : {1:a, 2:b}) => + "(" ^ show two_tuple.1 ^ ", " ^ show two_tuple.2 ^ ")" + + ) +val om = show (Something {Blah = 1}, Something {Blah = 2}) |