1 // Compiler options: -langversion:linq
5 public class Pair<T1, T2>
9 public delegate Pair<T1, T2> Group<T1, T2>(T1 input);
14 public static void Foo<TInput, TValue, TIntermediate> (Group<TInput, TValue> Pair,
15 Func<TValue, Group<TInput, TIntermediate>> selector)
22 public void Rep1<TV>(Group<TI, TV> parser)
24 C.Foo (parser, (x) => parser);
30 public static void Main ()