// REFERENCE: extensible-matching.exe #pragma indent def t = Tree.Nil ().Insert (1).Insert (2).Insert (3) match (t) | Node (_, e, _) => System.Console.WriteLine (e) | Nil => assert (false) match (t) | Tree.Node (_, e, _) => System.Console.WriteLine (e) | Nil => assert (false) match (t) | Tree.Node (el = e) => System.Console.WriteLine (e) | Nil => assert (false) /* BEGIN-OUTPUT 3 3 3 END-OUTPUT */