by
5. June 2009 11:33
C#
public static void qwe(dynamic arg)
{
Console.Write(arg.Last);
}
.NET Reflector
public static void qwe([Dynamic] object arg)
{
if (<qwe>o__SiteContainerd.<>p__Sitee == null)
{
<qwe>o__SiteContainerd.<>p__Sitee = CallSite<Action<CallSite, Type, object>>.Create(new CSharpInvokeMemberBinder(CSharpCallFlags.None, "Write", typeof(Program), null, new CSharpArgumentInfo[] { new CSharpArgumentInfo(CSharpArgumentInfoFlags.IsStaticType | CSharpArgumentInfoFlags.UseCompileTimeType, null), new CSharpArgumentInfo(CSharpArgumentInfoFlags.None, null) }));
}
if (<qwe>o__SiteContainerd.<>p__Sitef == null)
{
<qwe>o__SiteContainerd.<>p__Sitef = CallSite<Func<CallSite, object, object>>.Create(new CSharpGetMemberBinder("Last", typeof(Program), new CSharpArgumentInfo[] { new CSharpArgumentInfo(CSharpArgumentInfoFlags.None, null) }));
}
<qwe>o__SiteContainerd.<>p__Sitee.Target(<qwe>o__SiteContainerd.<>p__Sitee, typeof(Console), <qwe>o__SiteContainerd.<>p__Sitef.Target(<qwe>o__SiteContainerd.<>p__Sitef, arg));
}