31 lines
445 B
C#
Raw Permalink Normal View History

using System;
using System.Collections;
class X {
public event EventHandler Hook;
public IEnumerator Pipeline ()
{
if (Hook == null)
throw new Exception ("error");
Hook (this, EventArgs.Empty);
yield return 0;
}
static void M (object sender, EventArgs args)
{
Console.WriteLine ("Hook invoked");
}
public static void Main ()
{
X x = new X ();
x.Hook += M;
IEnumerator y = x.Pipeline ();
y.MoveNext ();
}
}