type int_unit
= Int
of int | Unit
of unit;; type everything = Int_Unit of int_unit | Str_Float of str_float;;
let f = function
| Int_Unit Int _ -> "int"
| Int_Unit Unit _ -> "unit"
| Str_Float Float _ -> "float"
| Str_Float
String _
-> "string"
dHlwZSBpbnRfdW5pdCA9IEludCBvZiBpbnQgfCBVbml0IG9mIHVuaXQ7Owp0eXBlIHN0cl9mbG9hdCA9IFN0cmluZyBvZiBzdHJpbmcgfCBGbG9hdCBvZiBmbG9hdDs7CnR5cGUgZXZlcnl0aGluZyA9IEludF9Vbml0IG9mIGludF91bml0IHwgU3RyX0Zsb2F0IG9mIHN0cl9mbG9hdDs7CgpsZXQgZiA9IGZ1bmN0aW9uCiAgICB8IEludF9Vbml0IEludCBfIC0+ICJpbnQiCiAgICB8IEludF9Vbml0IFVuaXQgXyAtPiAidW5pdCIKICAgIHwgU3RyX0Zsb2F0IEZsb2F0IF8gLT4gImZsb2F0IgogICAgfCBTdHJfRmxvYXQgU3RyaW5nIF8gLT4gInN0cmluZyI=