Invoking method without using the name of the method
<p>I recently saw some code like this (which is calling a delegate):</p>

<pre><code>public IMethodReturn Invoke(IMethodInvocation input, GetNextHandlerDelegate getNext)
{
    Debug.WriteLine(string.Format("Second watch: Method '{0}' on object '{1}' was invoked  and caught in order {2}.", input.MethodBase.Name, input.Target.GetType(),Order));
    return getNext()(input, getNext);

}
</code></pre>

<p>Can someone explain and \ or post a link explaining what is happening here. I understand Invoke() is being called but why is the name optional in this case?</p>
