// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 // Copyright (c) Microsoft Corporation. All rights reserved. // Metadata version: v4.0.30319 .assembly extern mscorlib { .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 4:0:0:0 } .assembly extern System.Core { .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 4:0:0:0 } .assembly extern System.Xml { .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 4:0:0:0 } .assembly ExpressionTrees { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilationRelaxationsAttribute::.ctor(int32) = ( 01 00 08 00 00 00 00 00 ) .custom instance void [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::.ctor() = ( 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78 // ....T..WrapNonEx 63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01 ) // ceptionThrows. // --- The following custom attribute is added automatically, do not uncomment ------- // .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 02 00 00 00 00 00 ) .permissionset reqmin = {[mscorlib]System.Security.Permissions.SecurityPermissionAttribute = {property bool 'SkipVerification' = bool(true)}} .hash algorithm 0x00008004 .ver 0:0:0:0 } .module ExpressionTrees.dll // MVID: {AA9C673A-BFCE-40E8-B33E-DB3A1434FD39} .custom instance void [mscorlib]System.Security.UnverifiableCodeAttribute::.ctor() = ( 01 00 00 00 ) .imagebase 0x10000000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY // Image base: 0x02C90000 // =============== CLASS MEMBERS DECLARATION =================== .class private auto ansi sealed beforefieldinit '<>f__AnonymousType0`2'<'j__TPar','j__TPar'> extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field private initonly !'j__TPar' 'i__Field' .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field private initonly !'j__TPar' 'i__Field' .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .method public hidebysig specialname instance !'j__TPar' get_X() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld !0 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_0006: ret } // end of method '<>f__AnonymousType0`2'::get_X .method public hidebysig specialname instance !'j__TPar' get_A() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld !1 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_0006: ret } // end of method '<>f__AnonymousType0`2'::get_A .method public hidebysig specialname rtspecialname instance void .ctor(!'j__TPar' X, !'j__TPar' A) cil managed { .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) // Code size 21 (0x15) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 IL_0008: stfld !0 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_000d: ldarg.0 IL_000e: ldarg.2 IL_000f: stfld !1 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_0014: ret } // end of method '<>f__AnonymousType0`2'::.ctor .method public hidebysig virtual instance bool Equals(object 'value') cil managed { .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) // Code size 59 (0x3b) .maxstack 3 .locals init (class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'> V_0) IL_0000: ldarg.1 IL_0001: isinst class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'> IL_0006: stloc.0 IL_0007: ldloc.0 IL_0008: brfalse.s IL_0039 IL_000a: call class [mscorlib]System.Collections.Generic.EqualityComparer`1 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::get_Default() IL_000f: ldarg.0 IL_0010: ldfld !0 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_0015: ldloc.0 IL_0016: ldfld !0 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_001b: callvirt instance bool class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::Equals(!0, !0) IL_0020: brfalse.s IL_0039 IL_0022: call class [mscorlib]System.Collections.Generic.EqualityComparer`1 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::get_Default() IL_0027: ldarg.0 IL_0028: ldfld !1 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_002d: ldloc.0 IL_002e: ldfld !1 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_0033: callvirt instance bool class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::Equals(!0, !0) IL_0038: ret IL_0039: ldc.i4.0 IL_003a: ret } // end of method '<>f__AnonymousType0`2'::Equals .method public hidebysig virtual instance int32 GetHashCode() cil managed { .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) // Code size 52 (0x34) .maxstack 8 IL_0000: ldc.i4 0x8fa3881e IL_0005: ldc.i4 0xa5555529 IL_000a: mul IL_000b: call class [mscorlib]System.Collections.Generic.EqualityComparer`1 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::get_Default() IL_0010: ldarg.0 IL_0011: ldfld !0 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_0016: callvirt instance int32 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::GetHashCode(!0) IL_001b: add IL_001c: ldc.i4 0xa5555529 IL_0021: mul IL_0022: call class [mscorlib]System.Collections.Generic.EqualityComparer`1 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::get_Default() IL_0027: ldarg.0 IL_0028: ldfld !1 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_002d: callvirt instance int32 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::GetHashCode(!0) IL_0032: add IL_0033: ret } // end of method '<>f__AnonymousType0`2'::GetHashCode .method public hidebysig virtual instance string ToString() cil managed { .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) // Code size 136 (0x88) .maxstack 7 .locals init (!'j__TPar' V_0, !'j__TPar' V_1, !'j__TPar' V_2, !'j__TPar' V_3) IL_0000: ldnull IL_0001: ldstr "{{ X = {0}, A = {1} }}" IL_0006: ldc.i4.2 IL_0007: newarr [mscorlib]System.Object IL_000c: dup IL_000d: ldc.i4.0 IL_000e: ldarg.0 IL_000f: ldfld !0 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_0014: stloc.0 IL_0015: ldloca.s V_0 IL_0017: ldloca.s V_1 IL_0019: initobj !'j__TPar' IL_001f: ldloc.1 IL_0020: box !'j__TPar' IL_0025: brtrue.s IL_003b IL_0027: ldobj !'j__TPar' IL_002c: stloc.1 IL_002d: ldloca.s V_1 IL_002f: ldloc.1 IL_0030: box !'j__TPar' IL_0035: brtrue.s IL_003b IL_0037: pop IL_0038: ldnull IL_0039: br.s IL_0046 IL_003b: constrained. !'j__TPar' IL_0041: callvirt instance string [mscorlib]System.Object::ToString() IL_0046: stelem.ref IL_0047: dup IL_0048: ldc.i4.1 IL_0049: ldarg.0 IL_004a: ldfld !1 class '<>f__AnonymousType0`2'j__TPar',!'j__TPar'>::'i__Field' IL_004f: stloc.2 IL_0050: ldloca.s V_2 IL_0052: ldloca.s V_3 IL_0054: initobj !'j__TPar' IL_005a: ldloc.3 IL_005b: box !'j__TPar' IL_0060: brtrue.s IL_0076 IL_0062: ldobj !'j__TPar' IL_0067: stloc.3 IL_0068: ldloca.s V_3 IL_006a: ldloc.3 IL_006b: box !'j__TPar' IL_0070: brtrue.s IL_0076 IL_0072: pop IL_0073: ldnull IL_0074: br.s IL_0081 IL_0076: constrained. !'j__TPar' IL_007c: callvirt instance string [mscorlib]System.Object::ToString() IL_0081: stelem.ref IL_0082: call string [mscorlib]System.String::Format(class [mscorlib]System.IFormatProvider, string, object[]) IL_0087: ret } // end of method '<>f__AnonymousType0`2'::ToString .property instance !'j__TPar' X() { .get instance !'j__TPar' '<>f__AnonymousType0`2'::get_X() } // end of property '<>f__AnonymousType0`2'::X .property instance !'j__TPar' A() { .get instance !'j__TPar' '<>f__AnonymousType0`2'::get_A() } // end of property '<>f__AnonymousType0`2'::A } // end of class '<>f__AnonymousType0`2' .class private auto ansi sealed beforefieldinit '<>f__AnonymousType1`2'<'j__TPar','j__TPar'> extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field private initonly !'j__TPar' 'i__Field' .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field private initonly !'j__TPar' 'i__Field' .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .method public hidebysig specialname instance !'j__TPar' get_X() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld !0 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_0006: ret } // end of method '<>f__AnonymousType1`2'::get_X .method public hidebysig specialname instance !'j__TPar' get_Y() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld !1 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_0006: ret } // end of method '<>f__AnonymousType1`2'::get_Y .method public hidebysig specialname rtspecialname instance void .ctor(!'j__TPar' X, !'j__TPar' Y) cil managed { .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) // Code size 21 (0x15) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 IL_0008: stfld !0 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_000d: ldarg.0 IL_000e: ldarg.2 IL_000f: stfld !1 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_0014: ret } // end of method '<>f__AnonymousType1`2'::.ctor .method public hidebysig virtual instance bool Equals(object 'value') cil managed { .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) // Code size 59 (0x3b) .maxstack 3 .locals init (class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'> V_0) IL_0000: ldarg.1 IL_0001: isinst class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'> IL_0006: stloc.0 IL_0007: ldloc.0 IL_0008: brfalse.s IL_0039 IL_000a: call class [mscorlib]System.Collections.Generic.EqualityComparer`1 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::get_Default() IL_000f: ldarg.0 IL_0010: ldfld !0 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_0015: ldloc.0 IL_0016: ldfld !0 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_001b: callvirt instance bool class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::Equals(!0, !0) IL_0020: brfalse.s IL_0039 IL_0022: call class [mscorlib]System.Collections.Generic.EqualityComparer`1 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::get_Default() IL_0027: ldarg.0 IL_0028: ldfld !1 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_002d: ldloc.0 IL_002e: ldfld !1 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_0033: callvirt instance bool class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::Equals(!0, !0) IL_0038: ret IL_0039: ldc.i4.0 IL_003a: ret } // end of method '<>f__AnonymousType1`2'::Equals .method public hidebysig virtual instance int32 GetHashCode() cil managed { .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) // Code size 52 (0x34) .maxstack 8 IL_0000: ldc.i4 0xe71b881e IL_0005: ldc.i4 0xa5555529 IL_000a: mul IL_000b: call class [mscorlib]System.Collections.Generic.EqualityComparer`1 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::get_Default() IL_0010: ldarg.0 IL_0011: ldfld !0 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_0016: callvirt instance int32 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::GetHashCode(!0) IL_001b: add IL_001c: ldc.i4 0xa5555529 IL_0021: mul IL_0022: call class [mscorlib]System.Collections.Generic.EqualityComparer`1 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::get_Default() IL_0027: ldarg.0 IL_0028: ldfld !1 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_002d: callvirt instance int32 class [mscorlib]System.Collections.Generic.EqualityComparer`1j__TPar'>::GetHashCode(!0) IL_0032: add IL_0033: ret } // end of method '<>f__AnonymousType1`2'::GetHashCode .method public hidebysig virtual instance string ToString() cil managed { .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) // Code size 136 (0x88) .maxstack 7 .locals init (!'j__TPar' V_0, !'j__TPar' V_1, !'j__TPar' V_2, !'j__TPar' V_3) IL_0000: ldnull IL_0001: ldstr "{{ X = {0}, Y = {1} }}" IL_0006: ldc.i4.2 IL_0007: newarr [mscorlib]System.Object IL_000c: dup IL_000d: ldc.i4.0 IL_000e: ldarg.0 IL_000f: ldfld !0 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_0014: stloc.0 IL_0015: ldloca.s V_0 IL_0017: ldloca.s V_1 IL_0019: initobj !'j__TPar' IL_001f: ldloc.1 IL_0020: box !'j__TPar' IL_0025: brtrue.s IL_003b IL_0027: ldobj !'j__TPar' IL_002c: stloc.1 IL_002d: ldloca.s V_1 IL_002f: ldloc.1 IL_0030: box !'j__TPar' IL_0035: brtrue.s IL_003b IL_0037: pop IL_0038: ldnull IL_0039: br.s IL_0046 IL_003b: constrained. !'j__TPar' IL_0041: callvirt instance string [mscorlib]System.Object::ToString() IL_0046: stelem.ref IL_0047: dup IL_0048: ldc.i4.1 IL_0049: ldarg.0 IL_004a: ldfld !1 class '<>f__AnonymousType1`2'j__TPar',!'j__TPar'>::'i__Field' IL_004f: stloc.2 IL_0050: ldloca.s V_2 IL_0052: ldloca.s V_3 IL_0054: initobj !'j__TPar' IL_005a: ldloc.3 IL_005b: box !'j__TPar' IL_0060: brtrue.s IL_0076 IL_0062: ldobj !'j__TPar' IL_0067: stloc.3 IL_0068: ldloca.s V_3 IL_006a: ldloc.3 IL_006b: box !'j__TPar' IL_0070: brtrue.s IL_0076 IL_0072: pop IL_0073: ldnull IL_0074: br.s IL_0081 IL_0076: constrained. !'j__TPar' IL_007c: callvirt instance string [mscorlib]System.Object::ToString() IL_0081: stelem.ref IL_0082: call string [mscorlib]System.String::Format(class [mscorlib]System.IFormatProvider, string, object[]) IL_0087: ret } // end of method '<>f__AnonymousType1`2'::ToString .property instance !'j__TPar' X() { .get instance !'j__TPar' '<>f__AnonymousType1`2'::get_X() } // end of property '<>f__AnonymousType1`2'::X .property instance !'j__TPar' Y() { .get instance !'j__TPar' '<>f__AnonymousType1`2'::get_Y() } // end of property '<>f__AnonymousType1`2'::Y } // end of class '<>f__AnonymousType1`2' .class public auto ansi beforefieldinit ExpressionTrees extends [mscorlib]System.Object { .class auto ansi nested private beforefieldinit GenericClass`1 extends [mscorlib]System.Object { .field public static !X StaticField .field public !X InstanceField .field private static !X 'k__BackingField' .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field private !X 'k__BackingField' .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .method public hidebysig specialname static !X get_StaticProperty() cil managed { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) // Code size 6 (0x6) .maxstack 8 IL_0000: ldsfld !0 class ExpressionTrees/GenericClass`1::'k__BackingField' IL_0005: ret } // end of method GenericClass`1::get_StaticProperty .method public hidebysig specialname static void set_StaticProperty(!X 'value') cil managed { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: stsfld !0 class ExpressionTrees/GenericClass`1::'k__BackingField' IL_0006: ret } // end of method GenericClass`1::set_StaticProperty .method public hidebysig specialname instance !X get_InstanceProperty() cil managed { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld !0 class ExpressionTrees/GenericClass`1::'k__BackingField' IL_0006: ret } // end of method GenericClass`1::get_InstanceProperty .method public hidebysig specialname instance void set_InstanceProperty(!X 'value') cil managed { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) // Code size 8 (0x8) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldarg.1 IL_0002: stfld !0 class ExpressionTrees/GenericClass`1::'k__BackingField' IL_0007: ret } // end of method GenericClass`1::set_InstanceProperty .method public hidebysig static bool GenericMethod() cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldc.i4.0 IL_0001: ret } // end of method GenericClass`1::GenericMethod .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method GenericClass`1::.ctor .property !X StaticProperty() { .get !X ExpressionTrees/GenericClass`1::get_StaticProperty() .set void ExpressionTrees/GenericClass`1::set_StaticProperty(!X) } // end of property GenericClass`1::StaticProperty .property instance !X InstanceProperty() { .get instance !X ExpressionTrees/GenericClass`1::get_InstanceProperty() .set instance void ExpressionTrees/GenericClass`1::set_InstanceProperty(!X) } // end of property GenericClass`1::InstanceProperty } // end of class GenericClass`1 .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass5_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public bool a .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass5_0'::.ctor } // end of class '<>c__DisplayClass5_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass6_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public bool a .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass6_0'::.ctor } // end of class '<>c__DisplayClass6_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass8_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public int32 x .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass8_0'::.ctor } // end of class '<>c__DisplayClass8_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass16_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public class [mscorlib]System.Collections.Generic.Dictionary`2 dict .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass16_0'::.ctor } // end of class '<>c__DisplayClass16_0' .class auto ansi serializable sealed nested private beforefieldinit '<>c' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public static initonly class ExpressionTrees/'<>c' '<>9' .field public static class [mscorlib]System.Func`2 '<>9__16_0' .field public static class [mscorlib]System.Func`2,bool> '<>9__31_0' .field public static class [mscorlib]System.Func`2,int32> '<>9__34_0' .method private hidebysig specialname rtspecialname static void .cctor() cil managed { // Code size 11 (0xb) .maxstack 8 IL_0000: newobj instance void ExpressionTrees/'<>c'::.ctor() IL_0005: stsfld class ExpressionTrees/'<>c' ExpressionTrees/'<>c'::'<>9' IL_000a: ret } // end of method '<>c'::.cctor .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c'::.ctor .method assembly hidebysig instance string 'b__16_0'(int32 n) cil managed { // Code size 8 (0x8) .maxstack 8 IL_0000: ldarga.s n IL_0002: call instance string [mscorlib]System.Int32::ToString() IL_0007: ret } // end of method '<>c'::'b__16_0' .method assembly hidebysig instance bool 'b__31_0'(class [mscorlib]System.Func`3 f) cil managed { // Code size 9 (0x9) .maxstack 8 IL_0000: ldarg.1 IL_0001: ldnull IL_0002: ldnull IL_0003: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0008: ret } // end of method '<>c'::'b__31_0' .method assembly hidebysig instance int32 'b__34_0'(class [mscorlib]System.Func`1 f) cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.1 IL_0001: callvirt instance !0 class [mscorlib]System.Func`1::Invoke() IL_0006: ret } // end of method '<>c'::'b__34_0' } // end of class '<>c' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass23_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public string x .field public int32 i .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass23_0'::.ctor } // end of class '<>c__DisplayClass23_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass24_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public uint8 z .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass24_0'::.ctor } // end of class '<>c__DisplayClass24_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass31_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public class [System.Core]System.Collections.Generic.HashSet`1 set .field public class [mscorlib]System.Func`2,bool> sink .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass31_0'::.ctor } // end of class '<>c__DisplayClass31_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass34_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public class [mscorlib]System.Func`2,int32> 'call' .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass34_0'::.ctor } // end of class '<>c__DisplayClass34_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass44_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public uint8 z .field public int32 y .field public bool x .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass44_0'::.ctor } // end of class '<>c__DisplayClass44_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass45_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public class [System.Xml]System.Xml.XmlReaderSettings s .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass45_0'::.ctor } // end of class '<>c__DisplayClass45_0' .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass55_0' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public string x .field public int32 i .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method '<>c__DisplayClass55_0'::.ctor } // end of class '<>c__DisplayClass55_0' .field private int32 'field' .method private hidebysig static object ToCode(object x, class [System.Core]System.Linq.Expressions.Expression`1> expr) cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldarg.1 IL_0001: ret } // end of method ExpressionTrees::ToCode .method private hidebysig static object ToCode(object x, class [System.Core]System.Linq.Expressions.Expression`1> expr) cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldarg.1 IL_0001: ret } // end of method ExpressionTrees::ToCode .method private hidebysig static object X() cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldnull IL_0001: ret } // end of method ExpressionTrees::X .method public hidebysig instance void Parameter(bool a) cil managed { // Code size 67 (0x43) .maxstack 3 .locals init (class ExpressionTrees/'<>c__DisplayClass5_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass5_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldarg.1 IL_0008: stfld bool ExpressionTrees/'<>c__DisplayClass5_0'::a IL_000d: call object ExpressionTrees::X() IL_0012: ldloc.0 IL_0013: ldtoken ExpressionTrees/'<>c__DisplayClass5_0' IL_0018: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0022: ldtoken field bool ExpressionTrees/'<>c__DisplayClass5_0'::a IL_0027: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_002c: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0031: ldc.i4.0 IL_0032: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0037: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_003c: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0041: pop IL_0042: ret } // end of method ExpressionTrees::Parameter .method public hidebysig instance void LocalVariable() cil managed { // Code size 67 (0x43) .maxstack 3 .locals init (class ExpressionTrees/'<>c__DisplayClass6_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass6_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldc.i4.1 IL_0008: stfld bool ExpressionTrees/'<>c__DisplayClass6_0'::a IL_000d: call object ExpressionTrees::X() IL_0012: ldloc.0 IL_0013: ldtoken ExpressionTrees/'<>c__DisplayClass6_0' IL_0018: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0022: ldtoken field bool ExpressionTrees/'<>c__DisplayClass6_0'::a IL_0027: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_002c: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0031: ldc.i4.0 IL_0032: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0037: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_003c: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0041: pop IL_0042: ret } // end of method ExpressionTrees::LocalVariable .method public hidebysig instance void LambdaParameter() cil managed { // Code size 49 (0x31) .maxstack 6 .locals init (class [System.Core]System.Linq.Expressions.ParameterExpression V_0) IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Boolean IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: ldstr "a" IL_0014: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0019: stloc.0 IL_001a: ldloc.0 IL_001b: ldc.i4.1 IL_001c: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0021: dup IL_0022: ldc.i4.0 IL_0023: ldloc.0 IL_0024: stelem.ref IL_0025: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_002a: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_002f: pop IL_0030: ret } // end of method ExpressionTrees::LambdaParameter .method public hidebysig instance void AddOperator(int32 x) cil managed { // Code size 119 (0x77) .maxstack 4 .locals init (class ExpressionTrees/'<>c__DisplayClass8_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass8_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldarg.1 IL_0008: stfld int32 ExpressionTrees/'<>c__DisplayClass8_0'::x IL_000d: call object ExpressionTrees::X() IL_0012: ldc.i4.1 IL_0013: box [mscorlib]System.Int32 IL_0018: ldtoken [mscorlib]System.Int32 IL_001d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0022: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0027: ldloc.0 IL_0028: ldtoken ExpressionTrees/'<>c__DisplayClass8_0' IL_002d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0032: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0037: ldtoken field int32 ExpressionTrees/'<>c__DisplayClass8_0'::x IL_003c: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_0041: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0046: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_004b: ldc.i4.2 IL_004c: box [mscorlib]System.Int32 IL_0051: ldtoken [mscorlib]System.Int32 IL_0056: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_005b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0060: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0065: ldc.i4.0 IL_0066: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_006b: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0070: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0075: pop IL_0076: ret } // end of method ExpressionTrees::AddOperator .method public hidebysig instance void AnonymousClasses() cil managed { // Code size 153 (0x99) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken method instance void class '<>f__AnonymousType0`2'::.ctor(!0, !1) IL_000a: ldtoken class '<>f__AnonymousType0`2' IL_000f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0014: castclass [mscorlib]System.Reflection.ConstructorInfo IL_0019: ldc.i4.2 IL_001a: newarr [System.Core]System.Linq.Expressions.Expression IL_001f: dup IL_0020: ldc.i4.0 IL_0021: ldc.i4.3 IL_0022: box [mscorlib]System.Int32 IL_0027: ldtoken [mscorlib]System.Int32 IL_002c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0031: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0036: stelem.ref IL_0037: dup IL_0038: ldc.i4.1 IL_0039: ldstr "a" IL_003e: ldtoken [mscorlib]System.String IL_0043: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0048: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004d: stelem.ref IL_004e: ldc.i4.2 IL_004f: newarr [mscorlib]System.Reflection.MemberInfo IL_0054: dup IL_0055: ldc.i4.0 IL_0056: ldtoken method instance !0 class '<>f__AnonymousType0`2'::get_X() IL_005b: ldtoken class '<>f__AnonymousType0`2' IL_0060: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0065: castclass [mscorlib]System.Reflection.MethodInfo IL_006a: stelem.ref IL_006b: dup IL_006c: ldc.i4.1 IL_006d: ldtoken method instance !1 class '<>f__AnonymousType0`2'::get_A() IL_0072: ldtoken class '<>f__AnonymousType0`2' IL_0077: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_007c: castclass [mscorlib]System.Reflection.MethodInfo IL_0081: stelem.ref IL_0082: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Reflection.ConstructorInfo, class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Reflection.MemberInfo[]) IL_0087: ldc.i4.0 IL_0088: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_008d: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambdaf__AnonymousType0`2'>>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0092: call object ExpressionTrees::ToCodef__AnonymousType0`2'>(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0097: pop IL_0098: ret } // end of method ExpressionTrees::AnonymousClasses .method public hidebysig instance void ArrayIndex() cil managed { // Code size 230 (0xe6) .maxstack 7 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Int32 IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: ldc.i4.3 IL_0010: newarr [System.Core]System.Linq.Expressions.Expression IL_0015: dup IL_0016: ldc.i4.0 IL_0017: ldc.i4.3 IL_0018: box [mscorlib]System.Int32 IL_001d: ldtoken [mscorlib]System.Int32 IL_0022: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0027: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_002c: stelem.ref IL_002d: dup IL_002e: ldc.i4.1 IL_002f: ldc.i4.4 IL_0030: box [mscorlib]System.Int32 IL_0035: ldtoken [mscorlib]System.Int32 IL_003a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0044: stelem.ref IL_0045: dup IL_0046: ldc.i4.2 IL_0047: ldc.i4.5 IL_0048: box [mscorlib]System.Int32 IL_004d: ldtoken [mscorlib]System.Int32 IL_0052: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0057: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_005c: stelem.ref IL_005d: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_0062: ldc.i4.0 IL_0063: box [mscorlib]System.Int32 IL_0068: ldtoken [mscorlib]System.Int32 IL_006d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0072: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0077: ldnull IL_0078: ldtoken method valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now() IL_007d: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0082: castclass [mscorlib]System.Reflection.MethodInfo IL_0087: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_008c: ldtoken method instance int64 [mscorlib]System.DateTime::get_Ticks() IL_0091: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0096: castclass [mscorlib]System.Reflection.MethodInfo IL_009b: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_00a0: ldc.i4.3 IL_00a1: conv.i8 IL_00a2: box [mscorlib]System.Int64 IL_00a7: ldtoken [mscorlib]System.Int64 IL_00ac: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00b1: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00b6: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Modulo(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00bb: ldtoken [mscorlib]System.Int32 IL_00c0: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00c5: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_00ca: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00cf: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::ArrayIndex(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00d4: ldc.i4.0 IL_00d5: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00da: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00df: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00e4: pop IL_00e5: ret } // end of method ExpressionTrees::ArrayIndex .method public hidebysig instance void ArrayLengthAndDoubles() cil managed { // Code size 293 (0x125) .maxstack 17 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method !!0[] [System.Core]System.Linq.Enumerable::ToArray(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_000b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0010: castclass [mscorlib]System.Reflection.MethodInfo IL_0015: ldc.i4.1 IL_0016: newarr [System.Core]System.Linq.Expressions.Expression IL_001b: dup IL_001c: ldc.i4.0 IL_001d: ldnull IL_001e: ldtoken method class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::Concat(class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0023: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0028: castclass [mscorlib]System.Reflection.MethodInfo IL_002d: ldc.i4.2 IL_002e: newarr [System.Core]System.Linq.Expressions.Expression IL_0033: dup IL_0034: ldc.i4.0 IL_0035: ldtoken [mscorlib]System.Double IL_003a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003f: ldc.i4.3 IL_0040: newarr [System.Core]System.Linq.Expressions.Expression IL_0045: dup IL_0046: ldc.i4.0 IL_0047: ldc.r8 1. IL_0050: box [mscorlib]System.Double IL_0055: ldtoken [mscorlib]System.Double IL_005a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_005f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0064: stelem.ref IL_0065: dup IL_0066: ldc.i4.1 IL_0067: ldc.r8 2.0099999999999998 IL_0070: box [mscorlib]System.Double IL_0075: ldtoken [mscorlib]System.Double IL_007a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_007f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0084: stelem.ref IL_0085: dup IL_0086: ldc.i4.2 IL_0087: ldc.r8 3.5 IL_0090: box [mscorlib]System.Double IL_0095: ldtoken [mscorlib]System.Double IL_009a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_009f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00a4: stelem.ref IL_00a5: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_00aa: stelem.ref IL_00ab: dup IL_00ac: ldc.i4.1 IL_00ad: ldtoken [mscorlib]System.Double IL_00b2: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00b7: ldc.i4.2 IL_00b8: newarr [System.Core]System.Linq.Expressions.Expression IL_00bd: dup IL_00be: ldc.i4.0 IL_00bf: ldc.r8 1. IL_00c8: box [mscorlib]System.Double IL_00cd: ldtoken [mscorlib]System.Double IL_00d2: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00d7: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00dc: stelem.ref IL_00dd: dup IL_00de: ldc.i4.1 IL_00df: ldc.r8 2. IL_00e8: box [mscorlib]System.Double IL_00ed: ldtoken [mscorlib]System.Double IL_00f2: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00f7: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00fc: stelem.ref IL_00fd: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_0102: stelem.ref IL_0103: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0108: stelem.ref IL_0109: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_010e: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::ArrayLength(class [System.Core]System.Linq.Expressions.Expression) IL_0113: ldc.i4.0 IL_0114: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0119: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_011e: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0123: pop IL_0124: ret } // end of method ExpressionTrees::ArrayLengthAndDoubles .method public hidebysig instance void AsOperator() cil managed { // Code size 53 (0x35) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Object IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0014: ldtoken [mscorlib]System.String IL_0019: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001e: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::TypeAs(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0023: ldc.i4.0 IL_0024: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0029: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_002e: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0033: pop IL_0034: ret } // end of method ExpressionTrees::AsOperator .method public hidebysig instance void ComplexGenericName() cil managed { // Code size 136 (0x88) .maxstack 7 .locals init (class [System.Core]System.Linq.Expressions.ParameterExpression V_0) IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Int32 IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: ldstr "x" IL_0014: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0019: stloc.0 IL_001a: ldloc.0 IL_001b: ldc.i4.0 IL_001c: box [mscorlib]System.Int32 IL_0021: ldtoken [mscorlib]System.Int32 IL_0026: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0030: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::GreaterThan(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0035: ldc.i4.1 IL_0036: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_003b: dup IL_003c: ldc.i4.0 IL_003d: ldloc.0 IL_003e: stelem.ref IL_003f: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0044: ldtoken class [mscorlib]System.Func`2 IL_0049: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_004e: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0053: ldc.i4.1 IL_0054: newarr [System.Core]System.Linq.Expressions.Expression IL_0059: dup IL_005a: ldc.i4.0 IL_005b: ldc.i4.0 IL_005c: box [mscorlib]System.Int32 IL_0061: ldtoken [mscorlib]System.Int32 IL_0066: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_006b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0070: stelem.ref IL_0071: call class [System.Core]System.Linq.Expressions.InvocationExpression [System.Core]System.Linq.Expressions.Expression::Invoke(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression[]) IL_0076: ldc.i4.0 IL_0077: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_007c: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0081: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0086: pop IL_0087: ret } // end of method ExpressionTrees::ComplexGenericName .method public hidebysig instance void DefaultValue() cil managed { // Code size 171 (0xab) .maxstack 7 .locals init (valuetype [mscorlib]System.TimeSpan V_0) IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken method instance void [mscorlib]System.TimeSpan::.ctor(int32, int32, int32) IL_000a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_000f: castclass [mscorlib]System.Reflection.ConstructorInfo IL_0014: ldc.i4.3 IL_0015: newarr [System.Core]System.Linq.Expressions.Expression IL_001a: dup IL_001b: ldc.i4.0 IL_001c: ldc.i4.1 IL_001d: box [mscorlib]System.Int32 IL_0022: ldtoken [mscorlib]System.Int32 IL_0027: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0031: stelem.ref IL_0032: dup IL_0033: ldc.i4.1 IL_0034: ldc.i4.2 IL_0035: box [mscorlib]System.Int32 IL_003a: ldtoken [mscorlib]System.Int32 IL_003f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0044: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0049: stelem.ref IL_004a: dup IL_004b: ldc.i4.2 IL_004c: ldc.i4.3 IL_004d: box [mscorlib]System.Int32 IL_0052: ldtoken [mscorlib]System.Int32 IL_0057: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_005c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0061: stelem.ref IL_0062: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Reflection.ConstructorInfo, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0067: ldloca.s V_0 IL_0069: initobj [mscorlib]System.TimeSpan IL_006f: ldloc.0 IL_0070: box [mscorlib]System.TimeSpan IL_0075: ldtoken [mscorlib]System.TimeSpan IL_007a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_007f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0084: ldc.i4.0 IL_0085: ldtoken method bool [mscorlib]System.TimeSpan::op_Equality(valuetype [mscorlib]System.TimeSpan, valuetype [mscorlib]System.TimeSpan) IL_008a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_008f: castclass [mscorlib]System.Reflection.MethodInfo IL_0094: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, bool, class [mscorlib]System.Reflection.MethodInfo) IL_0099: ldc.i4.0 IL_009a: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_009f: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00a4: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00a9: pop IL_00aa: ret } // end of method ExpressionTrees::DefaultValue .method public hidebysig instance void EnumConstant() cil managed { // Code size 103 (0x67) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Object IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0014: ldtoken method instance bool [mscorlib]System.Object::Equals(object) IL_0019: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_001e: castclass [mscorlib]System.Reflection.MethodInfo IL_0023: ldc.i4.1 IL_0024: newarr [System.Core]System.Linq.Expressions.Expression IL_0029: dup IL_002a: ldc.i4.0 IL_002b: ldc.i4.0 IL_002c: box [mscorlib]System.MidpointRounding IL_0031: ldtoken [mscorlib]System.MidpointRounding IL_0036: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0040: ldtoken [mscorlib]System.Object IL_0045: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_004a: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_004f: stelem.ref IL_0050: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0055: ldc.i4.0 IL_0056: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_005b: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0060: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0065: pop IL_0066: ret } // end of method ExpressionTrees::EnumConstant .method public hidebysig instance void IndexerAccess() cil managed { // Code size 190 (0xbe) .maxstack 8 .locals init (class ExpressionTrees/'<>c__DisplayClass16_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass16_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldc.i4.1 IL_0008: ldc.i4.s 20 IL_000a: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::Range(int32, int32) IL_000f: ldsfld class [mscorlib]System.Func`2 ExpressionTrees/'<>c'::'<>9__16_0' IL_0014: dup IL_0015: brtrue.s IL_002e IL_0017: pop IL_0018: ldsfld class ExpressionTrees/'<>c' ExpressionTrees/'<>c'::'<>9' IL_001d: ldftn instance string ExpressionTrees/'<>c'::'b__16_0'(int32) IL_0023: newobj instance void class [mscorlib]System.Func`2::.ctor(object, native int) IL_0028: dup IL_0029: stsfld class [mscorlib]System.Func`2 ExpressionTrees/'<>c'::'<>9__16_0' IL_002e: call class [mscorlib]System.Collections.Generic.Dictionary`2 [System.Core]System.Linq.Enumerable::ToDictionary(class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Func`2) IL_0033: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 ExpressionTrees/'<>c__DisplayClass16_0'::dict IL_0038: call object ExpressionTrees::X() IL_003d: ldloc.0 IL_003e: ldtoken ExpressionTrees/'<>c__DisplayClass16_0' IL_0043: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0048: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004d: ldtoken field class [mscorlib]System.Collections.Generic.Dictionary`2 ExpressionTrees/'<>c__DisplayClass16_0'::dict IL_0052: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_0057: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_005c: ldtoken method instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) IL_0061: ldtoken class [mscorlib]System.Collections.Generic.Dictionary`2 IL_0066: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_006b: castclass [mscorlib]System.Reflection.MethodInfo IL_0070: ldc.i4.1 IL_0071: newarr [System.Core]System.Linq.Expressions.Expression IL_0076: dup IL_0077: ldc.i4.0 IL_0078: ldstr "3" IL_007d: ldtoken [mscorlib]System.String IL_0082: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0087: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_008c: stelem.ref IL_008d: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0092: ldc.i4.3 IL_0093: box [mscorlib]System.Int32 IL_0098: ldtoken [mscorlib]System.Int32 IL_009d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00a2: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00a7: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00ac: ldc.i4.0 IL_00ad: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00b2: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00b7: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00bc: pop IL_00bd: ret } // end of method ExpressionTrees::IndexerAccess .method public hidebysig instance void IsOperator() cil managed { // Code size 53 (0x35) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Object IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0014: ldtoken [mscorlib]System.String IL_0019: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001e: call class [System.Core]System.Linq.Expressions.TypeBinaryExpression [System.Core]System.Linq.Expressions.Expression::TypeIs(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0023: ldc.i4.0 IL_0024: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0029: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_002e: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0033: pop IL_0034: ret } // end of method ExpressionTrees::IsOperator .method public hidebysig instance void ListInitializer() cil managed { // Code size 346 (0x15a) .maxstack 11 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken class [mscorlib]System.Collections.Generic.Dictionary`2 IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0014: ldc.i4.3 IL_0015: newarr [System.Core]System.Linq.Expressions.ElementInit IL_001a: dup IL_001b: ldc.i4.0 IL_001c: ldtoken method instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, !1) IL_0021: ldtoken class [mscorlib]System.Collections.Generic.Dictionary`2 IL_0026: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_002b: castclass [mscorlib]System.Reflection.MethodInfo IL_0030: ldc.i4.2 IL_0031: newarr [System.Core]System.Linq.Expressions.Expression IL_0036: dup IL_0037: ldc.i4.0 IL_0038: ldc.i4.1 IL_0039: box [mscorlib]System.Int32 IL_003e: ldtoken [mscorlib]System.Int32 IL_0043: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0048: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004d: stelem.ref IL_004e: dup IL_004f: ldc.i4.1 IL_0050: ldc.i4.1 IL_0051: box [mscorlib]System.Int32 IL_0056: ldtoken [mscorlib]System.Int32 IL_005b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0060: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0065: stelem.ref IL_0066: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_006b: stelem.ref IL_006c: dup IL_006d: ldc.i4.1 IL_006e: ldtoken method instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, !1) IL_0073: ldtoken class [mscorlib]System.Collections.Generic.Dictionary`2 IL_0078: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_007d: castclass [mscorlib]System.Reflection.MethodInfo IL_0082: ldc.i4.2 IL_0083: newarr [System.Core]System.Linq.Expressions.Expression IL_0088: dup IL_0089: ldc.i4.0 IL_008a: ldc.i4.2 IL_008b: box [mscorlib]System.Int32 IL_0090: ldtoken [mscorlib]System.Int32 IL_0095: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_009a: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_009f: stelem.ref IL_00a0: dup IL_00a1: ldc.i4.1 IL_00a2: ldc.i4.2 IL_00a3: box [mscorlib]System.Int32 IL_00a8: ldtoken [mscorlib]System.Int32 IL_00ad: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00b2: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00b7: stelem.ref IL_00b8: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00bd: stelem.ref IL_00be: dup IL_00bf: ldc.i4.2 IL_00c0: ldtoken method instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, !1) IL_00c5: ldtoken class [mscorlib]System.Collections.Generic.Dictionary`2 IL_00ca: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_00cf: castclass [mscorlib]System.Reflection.MethodInfo IL_00d4: ldc.i4.2 IL_00d5: newarr [System.Core]System.Linq.Expressions.Expression IL_00da: dup IL_00db: ldc.i4.0 IL_00dc: ldc.i4.3 IL_00dd: box [mscorlib]System.Int32 IL_00e2: ldtoken [mscorlib]System.Int32 IL_00e7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00ec: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00f1: stelem.ref IL_00f2: dup IL_00f3: ldc.i4.1 IL_00f4: ldc.i4.4 IL_00f5: box [mscorlib]System.Int32 IL_00fa: ldtoken [mscorlib]System.Int32 IL_00ff: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0104: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0109: stelem.ref IL_010a: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_010f: stelem.ref IL_0110: call class [System.Core]System.Linq.Expressions.ListInitExpression [System.Core]System.Linq.Expressions.Expression::ListInit(class [System.Core]System.Linq.Expressions.NewExpression, class [System.Core]System.Linq.Expressions.ElementInit[]) IL_0115: ldtoken method instance int32 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Count() IL_011a: ldtoken class [mscorlib]System.Collections.Generic.Dictionary`2 IL_011f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0124: castclass [mscorlib]System.Reflection.MethodInfo IL_0129: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_012e: ldc.i4.3 IL_012f: box [mscorlib]System.Int32 IL_0134: ldtoken [mscorlib]System.Int32 IL_0139: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_013e: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0143: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0148: ldc.i4.0 IL_0149: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_014e: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0153: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0158: pop IL_0159: ret } // end of method ExpressionTrees::ListInitializer .method public hidebysig instance void ListInitializer2() cil managed { // Code size 315 (0x13b) .maxstack 11 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken method instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) IL_000a: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_000f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0014: castclass [mscorlib]System.Reflection.ConstructorInfo IL_0019: ldc.i4.1 IL_001a: newarr [System.Core]System.Linq.Expressions.Expression IL_001f: dup IL_0020: ldc.i4.0 IL_0021: ldc.i4.s 50 IL_0023: box [mscorlib]System.Int32 IL_0028: ldtoken [mscorlib]System.Int32 IL_002d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0032: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0037: stelem.ref IL_0038: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Reflection.ConstructorInfo, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_003d: ldc.i4.3 IL_003e: newarr [System.Core]System.Linq.Expressions.ElementInit IL_0043: dup IL_0044: ldc.i4.0 IL_0045: ldtoken method instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) IL_004a: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_004f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0054: castclass [mscorlib]System.Reflection.MethodInfo IL_0059: ldc.i4.1 IL_005a: newarr [System.Core]System.Linq.Expressions.Expression IL_005f: dup IL_0060: ldc.i4.0 IL_0061: ldc.i4.1 IL_0062: box [mscorlib]System.Int32 IL_0067: ldtoken [mscorlib]System.Int32 IL_006c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0071: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0076: stelem.ref IL_0077: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_007c: stelem.ref IL_007d: dup IL_007e: ldc.i4.1 IL_007f: ldtoken method instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) IL_0084: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_0089: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_008e: castclass [mscorlib]System.Reflection.MethodInfo IL_0093: ldc.i4.1 IL_0094: newarr [System.Core]System.Linq.Expressions.Expression IL_0099: dup IL_009a: ldc.i4.0 IL_009b: ldc.i4.2 IL_009c: box [mscorlib]System.Int32 IL_00a1: ldtoken [mscorlib]System.Int32 IL_00a6: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00ab: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00b0: stelem.ref IL_00b1: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00b6: stelem.ref IL_00b7: dup IL_00b8: ldc.i4.2 IL_00b9: ldtoken method instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) IL_00be: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_00c3: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_00c8: castclass [mscorlib]System.Reflection.MethodInfo IL_00cd: ldc.i4.1 IL_00ce: newarr [System.Core]System.Linq.Expressions.Expression IL_00d3: dup IL_00d4: ldc.i4.0 IL_00d5: ldc.i4.3 IL_00d6: box [mscorlib]System.Int32 IL_00db: ldtoken [mscorlib]System.Int32 IL_00e0: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00e5: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00ea: stelem.ref IL_00eb: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00f0: stelem.ref IL_00f1: call class [System.Core]System.Linq.Expressions.ListInitExpression [System.Core]System.Linq.Expressions.Expression::ListInit(class [System.Core]System.Linq.Expressions.NewExpression, class [System.Core]System.Linq.Expressions.ElementInit[]) IL_00f6: ldtoken method instance int32 class [mscorlib]System.Collections.Generic.List`1::get_Count() IL_00fb: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_0100: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0105: castclass [mscorlib]System.Reflection.MethodInfo IL_010a: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_010f: ldc.i4.3 IL_0110: box [mscorlib]System.Int32 IL_0115: ldtoken [mscorlib]System.Int32 IL_011a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_011f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0124: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0129: ldc.i4.0 IL_012a: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_012f: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0134: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0139: pop IL_013a: ret } // end of method ExpressionTrees::ListInitializer2 .method public hidebysig instance void ListInitializer3() cil managed { // Code size 274 (0x112) .maxstack 11 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0014: ldc.i4.3 IL_0015: newarr [System.Core]System.Linq.Expressions.ElementInit IL_001a: dup IL_001b: ldc.i4.0 IL_001c: ldtoken method instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) IL_0021: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_0026: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_002b: castclass [mscorlib]System.Reflection.MethodInfo IL_0030: ldc.i4.1 IL_0031: newarr [System.Core]System.Linq.Expressions.Expression IL_0036: dup IL_0037: ldc.i4.0 IL_0038: ldc.i4.1 IL_0039: box [mscorlib]System.Int32 IL_003e: ldtoken [mscorlib]System.Int32 IL_0043: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0048: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004d: stelem.ref IL_004e: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0053: stelem.ref IL_0054: dup IL_0055: ldc.i4.1 IL_0056: ldtoken method instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) IL_005b: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_0060: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0065: castclass [mscorlib]System.Reflection.MethodInfo IL_006a: ldc.i4.1 IL_006b: newarr [System.Core]System.Linq.Expressions.Expression IL_0070: dup IL_0071: ldc.i4.0 IL_0072: ldc.i4.2 IL_0073: box [mscorlib]System.Int32 IL_0078: ldtoken [mscorlib]System.Int32 IL_007d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0082: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0087: stelem.ref IL_0088: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_008d: stelem.ref IL_008e: dup IL_008f: ldc.i4.2 IL_0090: ldtoken method instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) IL_0095: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_009a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_009f: castclass [mscorlib]System.Reflection.MethodInfo IL_00a4: ldc.i4.1 IL_00a5: newarr [System.Core]System.Linq.Expressions.Expression IL_00aa: dup IL_00ab: ldc.i4.0 IL_00ac: ldc.i4.3 IL_00ad: box [mscorlib]System.Int32 IL_00b2: ldtoken [mscorlib]System.Int32 IL_00b7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00bc: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00c1: stelem.ref IL_00c2: call class [System.Core]System.Linq.Expressions.ElementInit [System.Core]System.Linq.Expressions.Expression::ElementInit(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00c7: stelem.ref IL_00c8: call class [System.Core]System.Linq.Expressions.ListInitExpression [System.Core]System.Linq.Expressions.Expression::ListInit(class [System.Core]System.Linq.Expressions.NewExpression, class [System.Core]System.Linq.Expressions.ElementInit[]) IL_00cd: ldtoken method instance int32 class [mscorlib]System.Collections.Generic.List`1::get_Count() IL_00d2: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_00d7: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_00dc: castclass [mscorlib]System.Reflection.MethodInfo IL_00e1: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_00e6: ldc.i4.3 IL_00e7: box [mscorlib]System.Int32 IL_00ec: ldtoken [mscorlib]System.Int32 IL_00f1: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00f6: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00fb: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0100: ldc.i4.0 IL_0101: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0106: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_010b: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0110: pop IL_0111: ret } // end of method ExpressionTrees::ListInitializer3 .method public hidebysig instance void LiteralCharAndProperty() cil managed { // Code size 144 (0x90) .maxstack 7 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken method instance void [mscorlib]System.String::.ctor(char, int32) IL_000a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_000f: castclass [mscorlib]System.Reflection.ConstructorInfo IL_0014: ldc.i4.2 IL_0015: newarr [System.Core]System.Linq.Expressions.Expression IL_001a: dup IL_001b: ldc.i4.0 IL_001c: ldc.i4.s 32 IL_001e: box [mscorlib]System.Char IL_0023: ldtoken [mscorlib]System.Char IL_0028: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0032: stelem.ref IL_0033: dup IL_0034: ldc.i4.1 IL_0035: ldc.i4.3 IL_0036: box [mscorlib]System.Int32 IL_003b: ldtoken [mscorlib]System.Int32 IL_0040: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0045: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004a: stelem.ref IL_004b: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Reflection.ConstructorInfo, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0050: ldtoken method instance int32 [mscorlib]System.String::get_Length() IL_0055: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_005a: castclass [mscorlib]System.Reflection.MethodInfo IL_005f: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_0064: ldc.i4.1 IL_0065: box [mscorlib]System.Int32 IL_006a: ldtoken [mscorlib]System.Int32 IL_006f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0074: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0079: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_007e: ldc.i4.0 IL_007f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0084: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0089: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_008e: pop IL_008f: ret } // end of method ExpressionTrees::LiteralCharAndProperty .method public hidebysig instance void CharNoCast() cil managed { // Code size 135 (0x87) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldstr "abc" IL_000a: ldtoken [mscorlib]System.String IL_000f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0014: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0019: ldtoken method instance char [mscorlib]System.String::get_Chars(int32) IL_001e: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0023: castclass [mscorlib]System.Reflection.MethodInfo IL_0028: ldc.i4.1 IL_0029: newarr [System.Core]System.Linq.Expressions.Expression IL_002e: dup IL_002f: ldc.i4.0 IL_0030: ldc.i4.1 IL_0031: box [mscorlib]System.Int32 IL_0036: ldtoken [mscorlib]System.Int32 IL_003b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0040: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0045: stelem.ref IL_0046: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_004b: ldtoken [mscorlib]System.Int32 IL_0050: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0055: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_005a: ldc.i4.s 98 IL_005c: box [mscorlib]System.Int32 IL_0061: ldtoken [mscorlib]System.Int32 IL_0066: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_006b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0070: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0075: ldc.i4.0 IL_0076: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_007b: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0080: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0085: pop IL_0086: ret } // end of method ExpressionTrees::CharNoCast .method public hidebysig instance void StringsImplicitCast() cil managed { // Code size 406 (0x196) .maxstack 8 .locals init (class ExpressionTrees/'<>c__DisplayClass23_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass23_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldc.i4.1 IL_0008: stfld int32 ExpressionTrees/'<>c__DisplayClass23_0'::i IL_000d: ldloc.0 IL_000e: ldstr "X" IL_0013: stfld string ExpressionTrees/'<>c__DisplayClass23_0'::x IL_0018: call object ExpressionTrees::X() IL_001d: ldstr "a\n\\b" IL_0022: ldtoken [mscorlib]System.String IL_0027: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0031: ldloc.0 IL_0032: ldtoken ExpressionTrees/'<>c__DisplayClass23_0' IL_0037: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0041: ldtoken field string ExpressionTrees/'<>c__DisplayClass23_0'::x IL_0046: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_004b: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0050: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Coalesce(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0055: ldloc.0 IL_0056: ldtoken ExpressionTrees/'<>c__DisplayClass23_0' IL_005b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0060: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0065: ldtoken field string ExpressionTrees/'<>c__DisplayClass23_0'::x IL_006a: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_006f: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0074: ldtoken method string [mscorlib]System.String::Concat(string, string) IL_0079: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_007e: castclass [mscorlib]System.Reflection.MethodInfo IL_0083: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_0088: ldtoken method instance int32 [mscorlib]System.String::get_Length() IL_008d: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0092: castclass [mscorlib]System.Reflection.MethodInfo IL_0097: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_009c: ldc.i4.2 IL_009d: box [mscorlib]System.Int32 IL_00a2: ldtoken [mscorlib]System.Int32 IL_00a7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00ac: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00b1: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00b6: ldc.i4.0 IL_00b7: box [mscorlib]System.Boolean IL_00bc: ldtoken [mscorlib]System.Boolean IL_00c1: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00c6: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00cb: ldc.i4.1 IL_00cc: box [mscorlib]System.Boolean IL_00d1: ldtoken [mscorlib]System.Boolean IL_00d6: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00db: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00e0: ldc.i4.1 IL_00e1: newobj instance void [mscorlib]System.Decimal::.ctor(int32) IL_00e6: box [mscorlib]System.Decimal IL_00eb: ldtoken [mscorlib]System.Decimal IL_00f0: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00f5: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00fa: ldloc.0 IL_00fb: ldtoken ExpressionTrees/'<>c__DisplayClass23_0' IL_0100: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0105: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_010a: ldtoken field int32 ExpressionTrees/'<>c__DisplayClass23_0'::i IL_010f: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_0114: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0119: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Negate(class [System.Core]System.Linq.Expressions.Expression) IL_011e: ldtoken [mscorlib]System.Decimal IL_0123: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0128: ldtoken method valuetype [mscorlib]System.Decimal [mscorlib]System.Decimal::op_Implicit(int32) IL_012d: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0132: castclass [mscorlib]System.Reflection.MethodInfo IL_0137: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type, class [mscorlib]System.Reflection.MethodInfo) IL_013c: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0141: ldc.i4.0 IL_0142: newobj instance void [mscorlib]System.Decimal::.ctor(int32) IL_0147: box [mscorlib]System.Decimal IL_014c: ldtoken [mscorlib]System.Decimal IL_0151: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0156: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_015b: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::GreaterThan(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0160: ldc.i4.0 IL_0161: box [mscorlib]System.Boolean IL_0166: ldtoken [mscorlib]System.Boolean IL_016b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0170: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0175: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::OrElse(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_017a: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::AndAlso(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_017f: call class [System.Core]System.Linq.Expressions.ConditionalExpression [System.Core]System.Linq.Expressions.Expression::Condition(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0184: ldc.i4.0 IL_0185: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_018a: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_018f: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0194: pop IL_0195: ret } // end of method ExpressionTrees::StringsImplicitCast .method public hidebysig instance void NotImplicitCast() cil managed { // Code size 114 (0x72) .maxstack 4 .locals init (class ExpressionTrees/'<>c__DisplayClass24_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass24_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldc.i4.s 42 IL_0009: stfld uint8 ExpressionTrees/'<>c__DisplayClass24_0'::z IL_000e: call object ExpressionTrees::X() IL_0013: ldloc.0 IL_0014: ldtoken ExpressionTrees/'<>c__DisplayClass24_0' IL_0019: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001e: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0023: ldtoken field uint8 ExpressionTrees/'<>c__DisplayClass24_0'::z IL_0028: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_002d: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0032: ldtoken [mscorlib]System.Int32 IL_0037: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003c: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0041: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Not(class [System.Core]System.Linq.Expressions.Expression) IL_0046: ldc.i4.0 IL_0047: box [mscorlib]System.Int32 IL_004c: ldtoken [mscorlib]System.Int32 IL_0051: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0056: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_005b: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0060: ldc.i4.0 IL_0061: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0066: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_006b: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0070: pop IL_0071: ret } // end of method ExpressionTrees::NotImplicitCast .method public hidebysig instance void MembersBuiltin() cil managed { // Code size 401 (0x191) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldc.i4.s 123 IL_0007: ldc.i4.0 IL_0008: ldc.i4.0 IL_0009: ldc.i4.0 IL_000a: ldc.i4.2 IL_000b: newobj instance void [mscorlib]System.Decimal::.ctor(int32, int32, int32, bool, uint8) IL_0010: box [mscorlib]System.Decimal IL_0015: ldtoken [mscorlib]System.Decimal IL_001a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0024: ldtoken method instance string [mscorlib]System.Decimal::ToString() IL_0029: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_002e: castclass [mscorlib]System.Reflection.MethodInfo IL_0033: ldc.i4.0 IL_0034: newarr [System.Core]System.Linq.Expressions.Expression IL_0039: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_003e: ldc.i4.0 IL_003f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0044: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0049: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_004e: pop IL_004f: call object ExpressionTrees::X() IL_0054: ldc.i4 0x7fff IL_0059: box [mscorlib]System.AttributeTargets IL_005e: ldtoken [mscorlib]System.AttributeTargets IL_0063: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0068: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_006d: ldtoken method instance bool [mscorlib]System.Enum::HasFlag(class [mscorlib]System.Enum) IL_0072: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0077: castclass [mscorlib]System.Reflection.MethodInfo IL_007c: ldc.i4.1 IL_007d: newarr [System.Core]System.Linq.Expressions.Expression IL_0082: dup IL_0083: ldc.i4.0 IL_0084: ldc.i4.1 IL_0085: box [mscorlib]System.AttributeTargets IL_008a: ldtoken [mscorlib]System.AttributeTargets IL_008f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0094: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0099: ldtoken [mscorlib]System.Enum IL_009e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00a3: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_00a8: stelem.ref IL_00a9: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00ae: ldc.i4.0 IL_00af: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00b4: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00b9: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00be: pop IL_00bf: call object ExpressionTrees::X() IL_00c4: ldstr "abc" IL_00c9: ldtoken [mscorlib]System.String IL_00ce: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00d3: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00d8: ldtoken method instance int32 [mscorlib]System.String::get_Length() IL_00dd: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_00e2: castclass [mscorlib]System.Reflection.MethodInfo IL_00e7: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_00ec: ldc.i4.3 IL_00ed: box [mscorlib]System.Int32 IL_00f2: ldtoken [mscorlib]System.Int32 IL_00f7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00fc: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0101: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0106: ldc.i4.0 IL_0107: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_010c: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0111: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0116: pop IL_0117: call object ExpressionTrees::X() IL_011c: ldc.i4.s 97 IL_011e: box [mscorlib]System.Char IL_0123: ldtoken [mscorlib]System.Char IL_0128: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_012d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0132: ldtoken method instance int32 [mscorlib]System.Char::CompareTo(char) IL_0137: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_013c: castclass [mscorlib]System.Reflection.MethodInfo IL_0141: ldc.i4.1 IL_0142: newarr [System.Core]System.Linq.Expressions.Expression IL_0147: dup IL_0148: ldc.i4.0 IL_0149: ldc.i4.s 98 IL_014b: box [mscorlib]System.Char IL_0150: ldtoken [mscorlib]System.Char IL_0155: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_015a: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_015f: stelem.ref IL_0160: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0165: ldc.i4.0 IL_0166: box [mscorlib]System.Int32 IL_016b: ldtoken [mscorlib]System.Int32 IL_0170: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0175: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_017a: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::LessThan(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_017f: ldc.i4.0 IL_0180: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0185: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_018a: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_018f: pop IL_0190: ret } // end of method ExpressionTrees::MembersBuiltin .method public hidebysig instance void MembersDefault() cil managed { // Code size 540 (0x21c) .maxstack 7 .locals init (valuetype [mscorlib]System.DateTime V_0) IL_0000: call object ExpressionTrees::X() IL_0005: ldloca.s V_0 IL_0007: initobj [mscorlib]System.DateTime IL_000d: ldloc.0 IL_000e: box [mscorlib]System.DateTime IL_0013: ldtoken [mscorlib]System.DateTime IL_0018: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0022: ldtoken method instance int64 [mscorlib]System.DateTime::get_Ticks() IL_0027: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_002c: castclass [mscorlib]System.Reflection.MethodInfo IL_0031: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_0036: ldc.i4.0 IL_0037: conv.i8 IL_0038: box [mscorlib]System.Int64 IL_003d: ldtoken [mscorlib]System.Int64 IL_0042: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0047: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004c: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0051: ldc.i4.0 IL_0052: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0057: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_005c: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0061: pop IL_0062: call object ExpressionTrees::X() IL_0067: ldnull IL_0068: ldtoken [mscorlib]System.Array IL_006d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0072: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0077: ldtoken method instance int32 [mscorlib]System.Array::get_Length() IL_007c: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0081: castclass [mscorlib]System.Reflection.MethodInfo IL_0086: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_008b: ldc.i4.0 IL_008c: box [mscorlib]System.Int32 IL_0091: ldtoken [mscorlib]System.Int32 IL_0096: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_009b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00a0: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00a5: ldc.i4.0 IL_00a6: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00ab: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00b0: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00b5: pop IL_00b6: call object ExpressionTrees::X() IL_00bb: ldnull IL_00bc: ldtoken [mscorlib]System.Type IL_00c1: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00c6: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00cb: ldtoken method instance bool [mscorlib]System.Type::get_IsLayoutSequential() IL_00d0: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_00d5: castclass [mscorlib]System.Reflection.MethodInfo IL_00da: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_00df: ldc.i4.0 IL_00e0: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00e5: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00ea: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00ef: pop IL_00f0: call object ExpressionTrees::X() IL_00f5: ldnull IL_00f6: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_00fb: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0100: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0105: ldtoken method instance int32 class [mscorlib]System.Collections.Generic.List`1::get_Count() IL_010a: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_010f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0114: castclass [mscorlib]System.Reflection.MethodInfo IL_0119: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_011e: ldc.i4.0 IL_011f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0124: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0129: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_012e: pop IL_012f: call object ExpressionTrees::X() IL_0134: ldnull IL_0135: ldtoken [mscorlib]System.Array IL_013a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_013f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0144: ldtoken method instance object [mscorlib]System.Array::Clone() IL_0149: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_014e: castclass [mscorlib]System.Reflection.MethodInfo IL_0153: ldc.i4.0 IL_0154: newarr [System.Core]System.Linq.Expressions.Expression IL_0159: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_015e: ldnull IL_015f: ldtoken [mscorlib]System.Object IL_0164: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0169: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_016e: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0173: ldc.i4.0 IL_0174: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0179: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_017e: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0183: pop IL_0184: call object ExpressionTrees::X() IL_0189: ldnull IL_018a: ldtoken [mscorlib]System.Type IL_018f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0194: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0199: ldtoken method instance bool [mscorlib]System.Type::IsInstanceOfType(object) IL_019e: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_01a3: castclass [mscorlib]System.Reflection.MethodInfo IL_01a8: ldc.i4.1 IL_01a9: newarr [System.Core]System.Linq.Expressions.Expression IL_01ae: dup IL_01af: ldc.i4.0 IL_01b0: ldtoken [mscorlib]System.Object IL_01b5: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01ba: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_01bf: stelem.ref IL_01c0: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_01c5: ldc.i4.0 IL_01c6: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_01cb: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_01d0: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_01d5: pop IL_01d6: call object ExpressionTrees::X() IL_01db: ldnull IL_01dc: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_01e1: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01e6: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_01eb: ldtoken method instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 class [mscorlib]System.Collections.Generic.List`1::AsReadOnly() IL_01f0: ldtoken class [mscorlib]System.Collections.Generic.List`1 IL_01f5: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_01fa: castclass [mscorlib]System.Reflection.MethodInfo IL_01ff: ldc.i4.0 IL_0200: newarr [System.Core]System.Linq.Expressions.Expression IL_0205: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_020a: ldc.i4.0 IL_020b: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0210: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0215: call object ExpressionTrees::ToCode>(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_021a: pop IL_021b: ret } // end of method ExpressionTrees::MembersDefault .method public hidebysig instance void DoAssert() cil managed { // Code size 346 (0x15a) .maxstack 9 IL_0000: call object ExpressionTrees::X() IL_0005: ldarg.0 IL_0006: ldtoken ExpressionTrees IL_000b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0010: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0015: ldtoken field int32 ExpressionTrees::'field' IL_001a: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_001f: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0024: ldarg.0 IL_0025: ldtoken ExpressionTrees IL_002a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0034: ldtoken method instance int32 ExpressionTrees::C() IL_0039: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_003e: castclass [mscorlib]System.Reflection.MethodInfo IL_0043: ldc.i4.0 IL_0044: newarr [System.Core]System.Linq.Expressions.Expression IL_0049: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_004e: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::NotEqual(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0053: ldc.i4.0 IL_0054: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0059: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_005e: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0063: pop IL_0064: call object ExpressionTrees::X() IL_0069: ldnull IL_006a: ldtoken method bool [mscorlib]System.Object::ReferenceEquals(object, object) IL_006f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0074: castclass [mscorlib]System.Reflection.MethodInfo IL_0079: ldc.i4.2 IL_007a: newarr [System.Core]System.Linq.Expressions.Expression IL_007f: dup IL_0080: ldc.i4.0 IL_0081: ldarg.0 IL_0082: ldtoken ExpressionTrees IL_0087: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_008c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0091: stelem.ref IL_0092: dup IL_0093: ldc.i4.1 IL_0094: ldtoken ExpressionTrees IL_0099: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_009e: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_00a3: stelem.ref IL_00a4: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00a9: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Not(class [System.Core]System.Linq.Expressions.Expression) IL_00ae: ldc.i4.0 IL_00af: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00b4: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00b9: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00be: pop IL_00bf: call object ExpressionTrees::X() IL_00c4: ldarg.0 IL_00c5: ldtoken ExpressionTrees IL_00ca: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00cf: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00d4: ldtoken method instance bool ExpressionTrees::MyEquals(class ExpressionTrees) IL_00d9: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_00de: castclass [mscorlib]System.Reflection.MethodInfo IL_00e3: ldc.i4.1 IL_00e4: newarr [System.Core]System.Linq.Expressions.Expression IL_00e9: dup IL_00ea: ldc.i4.0 IL_00eb: ldarg.0 IL_00ec: ldtoken ExpressionTrees IL_00f1: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00f6: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00fb: stelem.ref IL_00fc: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0101: ldarg.0 IL_0102: ldtoken ExpressionTrees IL_0107: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_010c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0111: ldtoken method instance bool ExpressionTrees::MyEquals(class ExpressionTrees) IL_0116: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_011b: castclass [mscorlib]System.Reflection.MethodInfo IL_0120: ldc.i4.1 IL_0121: newarr [System.Core]System.Linq.Expressions.Expression IL_0126: dup IL_0127: ldc.i4.0 IL_0128: ldnull IL_0129: ldtoken ExpressionTrees IL_012e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0133: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0138: stelem.ref IL_0139: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_013e: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Not(class [System.Core]System.Linq.Expressions.Expression) IL_0143: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::AndAlso(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0148: ldc.i4.0 IL_0149: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_014e: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0153: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0158: pop IL_0159: ret } // end of method ExpressionTrees::DoAssert .method private hidebysig instance int32 C() cil managed { // Code size 6 (0x6) .maxstack 8 IL_0000: newobj instance void [mscorlib]System.NotImplementedException::.ctor() IL_0005: throw } // end of method ExpressionTrees::C .method private hidebysig instance bool MyEquals(class ExpressionTrees other) cil managed { // Code size 6 (0x6) .maxstack 8 IL_0000: newobj instance void [mscorlib]System.NotImplementedException::.ctor() IL_0005: throw } // end of method ExpressionTrees::MyEquals .method public hidebysig instance void MethodGroupAsExtensionMethod() cil managed { // Code size 273 (0x111) .maxstack 12 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken method bool [System.Core]System.Linq.Enumerable::Any(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_000a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_000f: castclass [mscorlib]System.Reflection.MethodInfo IL_0014: ldtoken [mscorlib]System.Reflection.MethodInfo IL_0019: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001e: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0023: ldtoken method instance class [mscorlib]System.Delegate [mscorlib]System.Reflection.MethodInfo::CreateDelegate(class [mscorlib]System.Type, object) IL_0028: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_002d: castclass [mscorlib]System.Reflection.MethodInfo IL_0032: ldc.i4.2 IL_0033: newarr [System.Core]System.Linq.Expressions.Expression IL_0038: dup IL_0039: ldc.i4.0 IL_003a: ldtoken class [mscorlib]System.Func`1 IL_003f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0044: ldtoken [mscorlib]System.Type IL_0049: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_004e: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0053: stelem.ref IL_0054: dup IL_0055: ldc.i4.1 IL_0056: ldtoken [mscorlib]System.Int32 IL_005b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0060: ldc.i4.4 IL_0061: newarr [System.Core]System.Linq.Expressions.Expression IL_0066: dup IL_0067: ldc.i4.0 IL_0068: ldc.i4 0x7d0 IL_006d: box [mscorlib]System.Int32 IL_0072: ldtoken [mscorlib]System.Int32 IL_0077: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_007c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0081: stelem.ref IL_0082: dup IL_0083: ldc.i4.1 IL_0084: ldc.i4 0x7d4 IL_0089: box [mscorlib]System.Int32 IL_008e: ldtoken [mscorlib]System.Int32 IL_0093: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0098: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_009d: stelem.ref IL_009e: dup IL_009f: ldc.i4.2 IL_00a0: ldc.i4 0x7d8 IL_00a5: box [mscorlib]System.Int32 IL_00aa: ldtoken [mscorlib]System.Int32 IL_00af: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00b4: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00b9: stelem.ref IL_00ba: dup IL_00bb: ldc.i4.3 IL_00bc: ldc.i4 0x7dc IL_00c1: box [mscorlib]System.Int32 IL_00c6: ldtoken [mscorlib]System.Int32 IL_00cb: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00d0: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00d5: stelem.ref IL_00d6: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_00db: ldtoken class [mscorlib]System.Collections.Generic.IEnumerable`1 IL_00e0: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00e5: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_00ea: stelem.ref IL_00eb: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00f0: ldtoken class [mscorlib]System.Func`1 IL_00f5: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00fa: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_00ff: ldc.i4.0 IL_0100: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0105: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_010a: call object ExpressionTrees::ToCode>(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_010f: pop IL_0110: ret } // end of method ExpressionTrees::MethodGroupAsExtensionMethod .method public hidebysig instance void MethodGroupConstant() cil managed { // Code size 872 (0x368) .maxstack 13 .locals init (class ExpressionTrees/'<>c__DisplayClass31_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass31_0'::.ctor() IL_0005: stloc.0 IL_0006: call object ExpressionTrees::X() IL_000b: ldnull IL_000c: ldtoken method bool [mscorlib]System.Array::TrueForAll(!!0[], class [mscorlib]System.Predicate`1) IL_0011: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0016: castclass [mscorlib]System.Reflection.MethodInfo IL_001b: ldc.i4.2 IL_001c: newarr [System.Core]System.Linq.Expressions.Expression IL_0021: dup IL_0022: ldc.i4.0 IL_0023: ldtoken [mscorlib]System.Int32 IL_0028: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002d: ldc.i4.4 IL_002e: newarr [System.Core]System.Linq.Expressions.Expression IL_0033: dup IL_0034: ldc.i4.0 IL_0035: ldc.i4 0x7d0 IL_003a: box [mscorlib]System.Int32 IL_003f: ldtoken [mscorlib]System.Int32 IL_0044: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0049: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004e: stelem.ref IL_004f: dup IL_0050: ldc.i4.1 IL_0051: ldc.i4 0x7d4 IL_0056: box [mscorlib]System.Int32 IL_005b: ldtoken [mscorlib]System.Int32 IL_0060: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0065: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_006a: stelem.ref IL_006b: dup IL_006c: ldc.i4.2 IL_006d: ldc.i4 0x7d8 IL_0072: box [mscorlib]System.Int32 IL_0077: ldtoken [mscorlib]System.Int32 IL_007c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0081: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0086: stelem.ref IL_0087: dup IL_0088: ldc.i4.3 IL_0089: ldc.i4 0x7dc IL_008e: box [mscorlib]System.Int32 IL_0093: ldtoken [mscorlib]System.Int32 IL_0098: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_009d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00a2: stelem.ref IL_00a3: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_00a8: stelem.ref IL_00a9: dup IL_00aa: ldc.i4.1 IL_00ab: ldtoken method bool [mscorlib]System.DateTime::IsLeapYear(int32) IL_00b0: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_00b5: castclass [mscorlib]System.Reflection.MethodInfo IL_00ba: ldtoken [mscorlib]System.Reflection.MethodInfo IL_00bf: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00c4: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00c9: ldtoken method instance class [mscorlib]System.Delegate [mscorlib]System.Reflection.MethodInfo::CreateDelegate(class [mscorlib]System.Type, object) IL_00ce: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_00d3: castclass [mscorlib]System.Reflection.MethodInfo IL_00d8: ldc.i4.2 IL_00d9: newarr [System.Core]System.Linq.Expressions.Expression IL_00de: dup IL_00df: ldc.i4.0 IL_00e0: ldtoken class [mscorlib]System.Predicate`1 IL_00e5: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00ea: ldtoken [mscorlib]System.Type IL_00ef: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00f4: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00f9: stelem.ref IL_00fa: dup IL_00fb: ldc.i4.1 IL_00fc: ldnull IL_00fd: ldtoken [mscorlib]System.Object IL_0102: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0107: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_010c: stelem.ref IL_010d: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0112: ldtoken class [mscorlib]System.Predicate`1 IL_0117: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_011c: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0121: stelem.ref IL_0122: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0127: ldc.i4.0 IL_0128: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_012d: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0132: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0137: pop IL_0138: ldloc.0 IL_0139: newobj instance void class [System.Core]System.Collections.Generic.HashSet`1::.ctor() IL_013e: stfld class [System.Core]System.Collections.Generic.HashSet`1 ExpressionTrees/'<>c__DisplayClass31_0'::set IL_0143: call object ExpressionTrees::X() IL_0148: ldnull IL_0149: ldtoken method bool [System.Core]System.Linq.Enumerable::All(class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Func`2) IL_014e: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0153: castclass [mscorlib]System.Reflection.MethodInfo IL_0158: ldc.i4.2 IL_0159: newarr [System.Core]System.Linq.Expressions.Expression IL_015e: dup IL_015f: ldc.i4.0 IL_0160: ldtoken [mscorlib]System.Int32 IL_0165: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_016a: ldc.i4.4 IL_016b: newarr [System.Core]System.Linq.Expressions.Expression IL_0170: dup IL_0171: ldc.i4.0 IL_0172: ldc.i4 0x7d0 IL_0177: box [mscorlib]System.Int32 IL_017c: ldtoken [mscorlib]System.Int32 IL_0181: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0186: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_018b: stelem.ref IL_018c: dup IL_018d: ldc.i4.1 IL_018e: ldc.i4 0x7d4 IL_0193: box [mscorlib]System.Int32 IL_0198: ldtoken [mscorlib]System.Int32 IL_019d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01a2: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_01a7: stelem.ref IL_01a8: dup IL_01a9: ldc.i4.2 IL_01aa: ldc.i4 0x7d8 IL_01af: box [mscorlib]System.Int32 IL_01b4: ldtoken [mscorlib]System.Int32 IL_01b9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01be: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_01c3: stelem.ref IL_01c4: dup IL_01c5: ldc.i4.3 IL_01c6: ldc.i4 0x7dc IL_01cb: box [mscorlib]System.Int32 IL_01d0: ldtoken [mscorlib]System.Int32 IL_01d5: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01da: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_01df: stelem.ref IL_01e0: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_01e5: stelem.ref IL_01e6: dup IL_01e7: ldc.i4.1 IL_01e8: ldtoken method instance bool class [System.Core]System.Collections.Generic.HashSet`1::Add(!0) IL_01ed: ldtoken class [System.Core]System.Collections.Generic.HashSet`1 IL_01f2: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_01f7: castclass [mscorlib]System.Reflection.MethodInfo IL_01fc: ldtoken [mscorlib]System.Reflection.MethodInfo IL_0201: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0206: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_020b: ldtoken method instance class [mscorlib]System.Delegate [mscorlib]System.Reflection.MethodInfo::CreateDelegate(class [mscorlib]System.Type, object) IL_0210: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0215: castclass [mscorlib]System.Reflection.MethodInfo IL_021a: ldc.i4.2 IL_021b: newarr [System.Core]System.Linq.Expressions.Expression IL_0220: dup IL_0221: ldc.i4.0 IL_0222: ldtoken class [mscorlib]System.Func`2 IL_0227: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_022c: ldtoken [mscorlib]System.Type IL_0231: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0236: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_023b: stelem.ref IL_023c: dup IL_023d: ldc.i4.1 IL_023e: ldloc.0 IL_023f: ldtoken ExpressionTrees/'<>c__DisplayClass31_0' IL_0244: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0249: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_024e: ldtoken field class [System.Core]System.Collections.Generic.HashSet`1 ExpressionTrees/'<>c__DisplayClass31_0'::set IL_0253: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_0258: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_025d: stelem.ref IL_025e: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0263: ldtoken class [mscorlib]System.Func`2 IL_0268: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_026d: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0272: stelem.ref IL_0273: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0278: ldc.i4.0 IL_0279: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_027e: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0283: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0288: pop IL_0289: ldloc.0 IL_028a: ldsfld class [mscorlib]System.Func`2,bool> ExpressionTrees/'<>c'::'<>9__31_0' IL_028f: dup IL_0290: brtrue.s IL_02a9 IL_0292: pop IL_0293: ldsfld class ExpressionTrees/'<>c' ExpressionTrees/'<>c'::'<>9' IL_0298: ldftn instance bool ExpressionTrees/'<>c'::'b__31_0'(class [mscorlib]System.Func`3) IL_029e: newobj instance void class [mscorlib]System.Func`2,bool>::.ctor(object, native int) IL_02a3: dup IL_02a4: stsfld class [mscorlib]System.Func`2,bool> ExpressionTrees/'<>c'::'<>9__31_0' IL_02a9: stfld class [mscorlib]System.Func`2,bool> ExpressionTrees/'<>c__DisplayClass31_0'::sink IL_02ae: call object ExpressionTrees::X() IL_02b3: ldloc.0 IL_02b4: ldtoken ExpressionTrees/'<>c__DisplayClass31_0' IL_02b9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_02be: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_02c3: ldtoken field class [mscorlib]System.Func`2,bool> ExpressionTrees/'<>c__DisplayClass31_0'::sink IL_02c8: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_02cd: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_02d2: ldc.i4.1 IL_02d3: newarr [System.Core]System.Linq.Expressions.Expression IL_02d8: dup IL_02d9: ldc.i4.0 IL_02da: ldtoken method bool [mscorlib]System.Object::Equals(object, object) IL_02df: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_02e4: castclass [mscorlib]System.Reflection.MethodInfo IL_02e9: ldtoken [mscorlib]System.Reflection.MethodInfo IL_02ee: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_02f3: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_02f8: ldtoken method instance class [mscorlib]System.Delegate [mscorlib]System.Reflection.MethodInfo::CreateDelegate(class [mscorlib]System.Type, object) IL_02fd: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0302: castclass [mscorlib]System.Reflection.MethodInfo IL_0307: ldc.i4.2 IL_0308: newarr [System.Core]System.Linq.Expressions.Expression IL_030d: dup IL_030e: ldc.i4.0 IL_030f: ldtoken class [mscorlib]System.Func`3 IL_0314: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0319: ldtoken [mscorlib]System.Type IL_031e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0323: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0328: stelem.ref IL_0329: dup IL_032a: ldc.i4.1 IL_032b: ldnull IL_032c: ldtoken [mscorlib]System.Object IL_0331: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0336: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_033b: stelem.ref IL_033c: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0341: ldtoken class [mscorlib]System.Func`3 IL_0346: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_034b: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0350: stelem.ref IL_0351: call class [System.Core]System.Linq.Expressions.InvocationExpression [System.Core]System.Linq.Expressions.Expression::Invoke(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression[]) IL_0356: ldc.i4.0 IL_0357: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_035c: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0361: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0366: pop IL_0367: ret } // end of method ExpressionTrees::MethodGroupConstant .method public hidebysig instance void MultipleCasts() cil managed { // Code size 100 (0x64) .maxstack 4 IL_0000: call object ExpressionTrees::X() IL_0005: ldc.i4.1 IL_0006: box [mscorlib]System.Int32 IL_000b: ldtoken [mscorlib]System.Int32 IL_0010: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0015: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_001a: ldc.i4.1 IL_001b: box [mscorlib]System.Int32 IL_0020: ldtoken [mscorlib]System.Int32 IL_0025: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002a: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_002f: ldtoken [mscorlib]System.Object IL_0034: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0039: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_003e: ldtoken [mscorlib]System.Int32 IL_0043: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0048: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_004d: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0052: ldc.i4.0 IL_0053: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0058: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_005d: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0062: pop IL_0063: ret } // end of method ExpressionTrees::MultipleCasts .method public hidebysig instance void MultipleDots() cil managed { // Code size 142 (0x8e) .maxstack 4 IL_0000: call object ExpressionTrees::X() IL_0005: ldc.i4.3 IL_0006: box [mscorlib]System.Int32 IL_000b: ldtoken [mscorlib]System.Int32 IL_0010: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0015: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_001a: ldtoken method instance string [mscorlib]System.Int32::ToString() IL_001f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0024: castclass [mscorlib]System.Reflection.MethodInfo IL_0029: ldc.i4.0 IL_002a: newarr [System.Core]System.Linq.Expressions.Expression IL_002f: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0034: ldtoken method instance string [mscorlib]System.Object::ToString() IL_0039: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_003e: castclass [mscorlib]System.Reflection.MethodInfo IL_0043: ldc.i4.0 IL_0044: newarr [System.Core]System.Linq.Expressions.Expression IL_0049: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_004e: ldtoken method instance int32 [mscorlib]System.String::get_Length() IL_0053: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0058: castclass [mscorlib]System.Reflection.MethodInfo IL_005d: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_0062: ldc.i4.0 IL_0063: box [mscorlib]System.Int32 IL_0068: ldtoken [mscorlib]System.Int32 IL_006d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0072: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0077: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::GreaterThan(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_007c: ldc.i4.0 IL_007d: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0082: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0087: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_008c: pop IL_008d: ret } // end of method ExpressionTrees::MultipleDots .method public hidebysig instance void NestedLambda() cil managed { // Code size 547 (0x223) .maxstack 12 .locals init (class ExpressionTrees/'<>c__DisplayClass34_0' V_0, class [System.Core]System.Linq.Expressions.ParameterExpression V_1, class [System.Core]System.Linq.Expressions.ParameterExpression V_2) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass34_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldsfld class [mscorlib]System.Func`2,int32> ExpressionTrees/'<>c'::'<>9__34_0' IL_000c: dup IL_000d: brtrue.s IL_0026 IL_000f: pop IL_0010: ldsfld class ExpressionTrees/'<>c' ExpressionTrees/'<>c'::'<>9' IL_0015: ldftn instance int32 ExpressionTrees/'<>c'::'b__34_0'(class [mscorlib]System.Func`1) IL_001b: newobj instance void class [mscorlib]System.Func`2,int32>::.ctor(object, native int) IL_0020: dup IL_0021: stsfld class [mscorlib]System.Func`2,int32> ExpressionTrees/'<>c'::'<>9__34_0' IL_0026: stfld class [mscorlib]System.Func`2,int32> ExpressionTrees/'<>c__DisplayClass34_0'::'call' IL_002b: call object ExpressionTrees::X() IL_0030: ldloc.0 IL_0031: ldtoken ExpressionTrees/'<>c__DisplayClass34_0' IL_0036: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0040: ldtoken field class [mscorlib]System.Func`2,int32> ExpressionTrees/'<>c__DisplayClass34_0'::'call' IL_0045: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_004a: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_004f: ldc.i4.1 IL_0050: newarr [System.Core]System.Linq.Expressions.Expression IL_0055: dup IL_0056: ldc.i4.0 IL_0057: ldc.i4.s 42 IL_0059: box [mscorlib]System.Int32 IL_005e: ldtoken [mscorlib]System.Int32 IL_0063: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0068: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_006d: ldc.i4.0 IL_006e: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0073: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0078: stelem.ref IL_0079: call class [System.Core]System.Linq.Expressions.InvocationExpression [System.Core]System.Linq.Expressions.Expression::Invoke(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression[]) IL_007e: ldc.i4.0 IL_007f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0084: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0089: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_008e: pop IL_008f: call object ExpressionTrees::X() IL_0094: ldnull IL_0095: ldtoken method class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::Select(class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Func`2) IL_009a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_009f: castclass [mscorlib]System.Reflection.MethodInfo IL_00a4: ldc.i4.2 IL_00a5: newarr [System.Core]System.Linq.Expressions.Expression IL_00aa: dup IL_00ab: ldc.i4.0 IL_00ac: ldtoken [mscorlib]System.Int32 IL_00b1: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00b6: ldc.i4.2 IL_00b7: newarr [System.Core]System.Linq.Expressions.Expression IL_00bc: dup IL_00bd: ldc.i4.0 IL_00be: ldc.i4.s 37 IL_00c0: box [mscorlib]System.Int32 IL_00c5: ldtoken [mscorlib]System.Int32 IL_00ca: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00cf: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00d4: stelem.ref IL_00d5: dup IL_00d6: ldc.i4.1 IL_00d7: ldc.i4.s 42 IL_00d9: box [mscorlib]System.Int32 IL_00de: ldtoken [mscorlib]System.Int32 IL_00e3: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00e8: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00ed: stelem.ref IL_00ee: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_00f3: stelem.ref IL_00f4: dup IL_00f5: ldc.i4.1 IL_00f6: ldtoken [mscorlib]System.Int32 IL_00fb: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0100: ldstr "x" IL_0105: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_010a: stloc.1 IL_010b: ldloc.1 IL_010c: ldc.i4.2 IL_010d: box [mscorlib]System.Int32 IL_0112: ldtoken [mscorlib]System.Int32 IL_0117: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_011c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0121: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Multiply(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0126: ldc.i4.1 IL_0127: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_012c: dup IL_012d: ldc.i4.0 IL_012e: ldloc.1 IL_012f: stelem.ref IL_0130: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0135: stelem.ref IL_0136: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_013b: ldc.i4.0 IL_013c: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0141: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0146: call object ExpressionTrees::ToCode>(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_014b: pop IL_014c: call object ExpressionTrees::X() IL_0151: ldnull IL_0152: ldtoken method class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::Select(class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Func`3) IL_0157: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_015c: castclass [mscorlib]System.Reflection.MethodInfo IL_0161: ldc.i4.2 IL_0162: newarr [System.Core]System.Linq.Expressions.Expression IL_0167: dup IL_0168: ldc.i4.0 IL_0169: ldtoken [mscorlib]System.Int32 IL_016e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0173: ldc.i4.2 IL_0174: newarr [System.Core]System.Linq.Expressions.Expression IL_0179: dup IL_017a: ldc.i4.0 IL_017b: ldc.i4.s 37 IL_017d: box [mscorlib]System.Int32 IL_0182: ldtoken [mscorlib]System.Int32 IL_0187: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_018c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0191: stelem.ref IL_0192: dup IL_0193: ldc.i4.1 IL_0194: ldc.i4.s 42 IL_0196: box [mscorlib]System.Int32 IL_019b: ldtoken [mscorlib]System.Int32 IL_01a0: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01a5: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_01aa: stelem.ref IL_01ab: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_01b0: stelem.ref IL_01b1: dup IL_01b2: ldc.i4.1 IL_01b3: ldtoken [mscorlib]System.Int32 IL_01b8: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01bd: ldstr "x" IL_01c2: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_01c7: stloc.1 IL_01c8: ldtoken [mscorlib]System.Int32 IL_01cd: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01d2: ldstr "i" IL_01d7: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_01dc: stloc.2 IL_01dd: ldloc.1 IL_01de: ldc.i4.2 IL_01df: box [mscorlib]System.Int32 IL_01e4: ldtoken [mscorlib]System.Int32 IL_01e9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01ee: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_01f3: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Multiply(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_01f8: ldc.i4.2 IL_01f9: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_01fe: dup IL_01ff: ldc.i4.0 IL_0200: ldloc.1 IL_0201: stelem.ref IL_0202: dup IL_0203: ldc.i4.1 IL_0204: ldloc.2 IL_0205: stelem.ref IL_0206: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_020b: stelem.ref IL_020c: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0211: ldc.i4.0 IL_0212: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0217: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_021c: call object ExpressionTrees::ToCode>(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0221: pop IL_0222: ret } // end of method ExpressionTrees::NestedLambda .method public hidebysig instance void CurriedLambda() cil managed { // Code size 133 (0x85) .maxstack 6 .locals init (class [System.Core]System.Linq.Expressions.ParameterExpression V_0, class [System.Core]System.Linq.Expressions.ParameterExpression V_1, class [System.Core]System.Linq.Expressions.ParameterExpression V_2) IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Int32 IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: ldstr "a" IL_0014: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0019: stloc.0 IL_001a: ldtoken [mscorlib]System.Int32 IL_001f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0024: ldstr "b" IL_0029: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_002e: stloc.1 IL_002f: ldtoken [mscorlib]System.Int32 IL_0034: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0039: ldstr "c" IL_003e: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0043: stloc.2 IL_0044: ldloc.0 IL_0045: ldloc.1 IL_0046: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_004b: ldloc.2 IL_004c: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0051: ldc.i4.1 IL_0052: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0057: dup IL_0058: ldc.i4.0 IL_0059: ldloc.2 IL_005a: stelem.ref IL_005b: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0060: ldc.i4.1 IL_0061: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0066: dup IL_0067: ldc.i4.0 IL_0068: ldloc.1 IL_0069: stelem.ref IL_006a: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_006f: ldc.i4.1 IL_0070: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0075: dup IL_0076: ldc.i4.0 IL_0077: ldloc.0 IL_0078: stelem.ref IL_0079: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>>>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_007e: call object ExpressionTrees::ToCode>>(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0083: pop IL_0084: ret } // end of method ExpressionTrees::CurriedLambda .method private hidebysig instance bool Fizz(class [mscorlib]System.Func`2 a) cil managed { // Code size 9 (0x9) .maxstack 8 IL_0000: ldarg.1 IL_0001: ldc.i4.s 42 IL_0003: callvirt instance !1 class [mscorlib]System.Func`2::Invoke(!0) IL_0008: ret } // end of method ExpressionTrees::Fizz .method private hidebysig instance bool Buzz(class [mscorlib]System.Func`2 a) cil managed { // Code size 9 (0x9) .maxstack 8 IL_0000: ldarg.1 IL_0001: ldc.i4.s 42 IL_0003: callvirt instance !1 class [mscorlib]System.Func`2::Invoke(!0) IL_0008: ret } // end of method ExpressionTrees::Buzz .method private hidebysig instance bool Fizz(class [mscorlib]System.Func`2 a) cil managed { // Code size 12 (0xc) .maxstack 8 IL_0000: ldarg.1 IL_0001: ldstr "42" IL_0006: callvirt instance !1 class [mscorlib]System.Func`2::Invoke(!0) IL_000b: ret } // end of method ExpressionTrees::Fizz .method private hidebysig instance bool Fizz(class [mscorlib]System.Func`2 a) cil managed { // Code size 8 (0x8) .maxstack 8 IL_0000: ldarg.1 IL_0001: ldnull IL_0002: callvirt instance !1 class [mscorlib]System.Func`2::Invoke(!0) IL_0007: ret } // end of method ExpressionTrees::Fizz .method public hidebysig instance void NestedLambda2() cil managed { // Code size 1124 (0x464) .maxstack 14 .locals init (class [System.Core]System.Linq.Expressions.ParameterExpression V_0) IL_0000: call object ExpressionTrees::X() IL_0005: ldarg.0 IL_0006: ldtoken ExpressionTrees IL_000b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0010: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0015: ldtoken method instance bool ExpressionTrees::Fizz(class [mscorlib]System.Func`2) IL_001a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_001f: castclass [mscorlib]System.Reflection.MethodInfo IL_0024: ldc.i4.1 IL_0025: newarr [System.Core]System.Linq.Expressions.Expression IL_002a: dup IL_002b: ldc.i4.0 IL_002c: ldtoken [mscorlib]System.String IL_0031: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0036: ldstr "x" IL_003b: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0040: stloc.0 IL_0041: ldloc.0 IL_0042: ldstr "a" IL_0047: ldtoken [mscorlib]System.String IL_004c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0051: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0056: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_005b: ldc.i4.1 IL_005c: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0061: dup IL_0062: ldc.i4.0 IL_0063: ldloc.0 IL_0064: stelem.ref IL_0065: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_006a: stelem.ref IL_006b: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0070: ldc.i4.0 IL_0071: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0076: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_007b: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0080: pop IL_0081: call object ExpressionTrees::X() IL_0086: ldarg.0 IL_0087: ldtoken ExpressionTrees IL_008c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0091: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0096: ldtoken method instance bool ExpressionTrees::Fizz(class [mscorlib]System.Func`2) IL_009b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_00a0: castclass [mscorlib]System.Reflection.MethodInfo IL_00a5: ldc.i4.1 IL_00a6: newarr [System.Core]System.Linq.Expressions.Expression IL_00ab: dup IL_00ac: ldc.i4.0 IL_00ad: ldtoken [mscorlib]System.String IL_00b2: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00b7: ldstr "x" IL_00bc: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_00c1: stloc.0 IL_00c2: ldloc.0 IL_00c3: ldstr "a" IL_00c8: ldtoken [mscorlib]System.String IL_00cd: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00d2: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00d7: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::NotEqual(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00dc: ldc.i4.1 IL_00dd: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00e2: dup IL_00e3: ldc.i4.0 IL_00e4: ldloc.0 IL_00e5: stelem.ref IL_00e6: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00eb: stelem.ref IL_00ec: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00f1: ldc.i4.0 IL_00f2: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00f7: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00fc: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0101: pop IL_0102: call object ExpressionTrees::X() IL_0107: ldarg.0 IL_0108: ldtoken ExpressionTrees IL_010d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0112: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0117: ldtoken method instance bool ExpressionTrees::Fizz(class [mscorlib]System.Func`2) IL_011c: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0121: castclass [mscorlib]System.Reflection.MethodInfo IL_0126: ldc.i4.1 IL_0127: newarr [System.Core]System.Linq.Expressions.Expression IL_012c: dup IL_012d: ldc.i4.0 IL_012e: ldtoken [mscorlib]System.Action IL_0133: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0138: ldstr "x" IL_013d: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0142: stloc.0 IL_0143: ldloc.0 IL_0144: ldtoken method instance void ExpressionTrees::NestedLambda2() IL_0149: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_014e: castclass [mscorlib]System.Reflection.MethodInfo IL_0153: ldtoken [mscorlib]System.Reflection.MethodInfo IL_0158: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_015d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0162: ldtoken method instance class [mscorlib]System.Delegate [mscorlib]System.Reflection.MethodInfo::CreateDelegate(class [mscorlib]System.Type, object) IL_0167: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_016c: castclass [mscorlib]System.Reflection.MethodInfo IL_0171: ldc.i4.2 IL_0172: newarr [System.Core]System.Linq.Expressions.Expression IL_0177: dup IL_0178: ldc.i4.0 IL_0179: ldtoken [mscorlib]System.Action IL_017e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0183: ldtoken [mscorlib]System.Type IL_0188: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_018d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0192: stelem.ref IL_0193: dup IL_0194: ldc.i4.1 IL_0195: ldarg.0 IL_0196: ldtoken ExpressionTrees IL_019b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01a0: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_01a5: stelem.ref IL_01a6: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_01ab: ldtoken [mscorlib]System.Action IL_01b0: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01b5: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_01ba: ldc.i4.0 IL_01bb: ldtoken method bool [mscorlib]System.Delegate::op_Equality(class [mscorlib]System.Delegate, class [mscorlib]System.Delegate) IL_01c0: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_01c5: castclass [mscorlib]System.Reflection.MethodInfo IL_01ca: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, bool, class [mscorlib]System.Reflection.MethodInfo) IL_01cf: ldc.i4.1 IL_01d0: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_01d5: dup IL_01d6: ldc.i4.0 IL_01d7: ldloc.0 IL_01d8: stelem.ref IL_01d9: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_01de: stelem.ref IL_01df: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_01e4: ldc.i4.0 IL_01e5: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_01ea: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_01ef: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_01f4: pop IL_01f5: call object ExpressionTrees::X() IL_01fa: ldarg.0 IL_01fb: ldtoken ExpressionTrees IL_0200: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0205: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_020a: ldtoken method instance bool ExpressionTrees::Fizz(class [mscorlib]System.Func`2) IL_020f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0214: castclass [mscorlib]System.Reflection.MethodInfo IL_0219: ldc.i4.1 IL_021a: newarr [System.Core]System.Linq.Expressions.Expression IL_021f: dup IL_0220: ldc.i4.0 IL_0221: ldtoken [mscorlib]System.Action IL_0226: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_022b: ldstr "x" IL_0230: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0235: stloc.0 IL_0236: ldloc.0 IL_0237: ldtoken method instance void ExpressionTrees::NestedLambda2() IL_023c: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0241: castclass [mscorlib]System.Reflection.MethodInfo IL_0246: ldtoken [mscorlib]System.Reflection.MethodInfo IL_024b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0250: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0255: ldtoken method instance class [mscorlib]System.Delegate [mscorlib]System.Reflection.MethodInfo::CreateDelegate(class [mscorlib]System.Type, object) IL_025a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_025f: castclass [mscorlib]System.Reflection.MethodInfo IL_0264: ldc.i4.2 IL_0265: newarr [System.Core]System.Linq.Expressions.Expression IL_026a: dup IL_026b: ldc.i4.0 IL_026c: ldtoken [mscorlib]System.Action IL_0271: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0276: ldtoken [mscorlib]System.Type IL_027b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0280: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0285: stelem.ref IL_0286: dup IL_0287: ldc.i4.1 IL_0288: ldarg.0 IL_0289: ldtoken ExpressionTrees IL_028e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0293: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0298: stelem.ref IL_0299: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_029e: ldtoken [mscorlib]System.Action IL_02a3: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_02a8: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_02ad: ldc.i4.0 IL_02ae: ldtoken method bool [mscorlib]System.Delegate::op_Inequality(class [mscorlib]System.Delegate, class [mscorlib]System.Delegate) IL_02b3: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_02b8: castclass [mscorlib]System.Reflection.MethodInfo IL_02bd: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::NotEqual(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, bool, class [mscorlib]System.Reflection.MethodInfo) IL_02c2: ldc.i4.1 IL_02c3: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_02c8: dup IL_02c9: ldc.i4.0 IL_02ca: ldloc.0 IL_02cb: stelem.ref IL_02cc: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_02d1: stelem.ref IL_02d2: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_02d7: ldc.i4.0 IL_02d8: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_02dd: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_02e2: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_02e7: pop IL_02e8: call object ExpressionTrees::X() IL_02ed: ldarg.0 IL_02ee: ldtoken ExpressionTrees IL_02f3: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_02f8: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_02fd: ldtoken method instance bool ExpressionTrees::Fizz(class [mscorlib]System.Func`2) IL_0302: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0307: castclass [mscorlib]System.Reflection.MethodInfo IL_030c: ldc.i4.1 IL_030d: newarr [System.Core]System.Linq.Expressions.Expression IL_0312: dup IL_0313: ldc.i4.0 IL_0314: ldtoken [mscorlib]System.Int32 IL_0319: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_031e: ldstr "x" IL_0323: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0328: stloc.0 IL_0329: ldloc.0 IL_032a: ldc.i4.s 37 IL_032c: box [mscorlib]System.Int32 IL_0331: ldtoken [mscorlib]System.Int32 IL_0336: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_033b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0340: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0345: ldc.i4.1 IL_0346: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_034b: dup IL_034c: ldc.i4.0 IL_034d: ldloc.0 IL_034e: stelem.ref IL_034f: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0354: stelem.ref IL_0355: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_035a: ldc.i4.0 IL_035b: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0360: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0365: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_036a: pop IL_036b: call object ExpressionTrees::X() IL_0370: ldarg.0 IL_0371: ldtoken ExpressionTrees IL_0376: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_037b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0380: ldtoken method instance bool ExpressionTrees::Fizz(class [mscorlib]System.Func`2) IL_0385: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_038a: castclass [mscorlib]System.Reflection.MethodInfo IL_038f: ldc.i4.1 IL_0390: newarr [System.Core]System.Linq.Expressions.Expression IL_0395: dup IL_0396: ldc.i4.0 IL_0397: ldtoken [mscorlib]System.Int32 IL_039c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_03a1: ldstr "x" IL_03a6: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_03ab: stloc.0 IL_03ac: ldc.i4.1 IL_03ad: box [mscorlib]System.Boolean IL_03b2: ldtoken [mscorlib]System.Boolean IL_03b7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_03bc: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_03c1: ldc.i4.1 IL_03c2: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_03c7: dup IL_03c8: ldc.i4.0 IL_03c9: ldloc.0 IL_03ca: stelem.ref IL_03cb: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_03d0: stelem.ref IL_03d1: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_03d6: ldc.i4.0 IL_03d7: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_03dc: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_03e1: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_03e6: pop IL_03e7: call object ExpressionTrees::X() IL_03ec: ldarg.0 IL_03ed: ldtoken ExpressionTrees IL_03f2: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_03f7: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_03fc: ldtoken method instance bool ExpressionTrees::Buzz(class [mscorlib]System.Func`2) IL_0401: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0406: castclass [mscorlib]System.Reflection.MethodInfo IL_040b: ldc.i4.1 IL_040c: newarr [System.Core]System.Linq.Expressions.Expression IL_0411: dup IL_0412: ldc.i4.0 IL_0413: ldtoken [mscorlib]System.Int32 IL_0418: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_041d: ldstr "x" IL_0422: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0427: stloc.0 IL_0428: ldc.i4.1 IL_0429: box [mscorlib]System.Boolean IL_042e: ldtoken [mscorlib]System.Boolean IL_0433: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0438: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_043d: ldc.i4.1 IL_043e: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0443: dup IL_0444: ldc.i4.0 IL_0445: ldloc.0 IL_0446: stelem.ref IL_0447: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_044c: stelem.ref IL_044d: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0452: ldc.i4.0 IL_0453: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0458: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_045d: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0462: pop IL_0463: ret } // end of method ExpressionTrees::NestedLambda2 .method public hidebysig instance void NewArrayAndExtensionMethod() cil managed { // Code size 290 (0x122) .maxstack 12 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method bool [System.Core]System.Linq.Enumerable::SequenceEqual(class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_000b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0010: castclass [mscorlib]System.Reflection.MethodInfo IL_0015: ldc.i4.2 IL_0016: newarr [System.Core]System.Linq.Expressions.Expression IL_001b: dup IL_001c: ldc.i4.0 IL_001d: ldtoken [mscorlib]System.Double IL_0022: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0027: ldc.i4.3 IL_0028: newarr [System.Core]System.Linq.Expressions.Expression IL_002d: dup IL_002e: ldc.i4.0 IL_002f: ldc.r8 1. IL_0038: box [mscorlib]System.Double IL_003d: ldtoken [mscorlib]System.Double IL_0042: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0047: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004c: stelem.ref IL_004d: dup IL_004e: ldc.i4.1 IL_004f: ldc.r8 2.0099999999999998 IL_0058: box [mscorlib]System.Double IL_005d: ldtoken [mscorlib]System.Double IL_0062: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0067: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_006c: stelem.ref IL_006d: dup IL_006e: ldc.i4.2 IL_006f: ldc.r8 3.5 IL_0078: box [mscorlib]System.Double IL_007d: ldtoken [mscorlib]System.Double IL_0082: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0087: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_008c: stelem.ref IL_008d: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_0092: stelem.ref IL_0093: dup IL_0094: ldc.i4.1 IL_0095: ldtoken [mscorlib]System.Double IL_009a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_009f: ldc.i4.3 IL_00a0: newarr [System.Core]System.Linq.Expressions.Expression IL_00a5: dup IL_00a6: ldc.i4.0 IL_00a7: ldc.r8 1. IL_00b0: box [mscorlib]System.Double IL_00b5: ldtoken [mscorlib]System.Double IL_00ba: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00bf: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00c4: stelem.ref IL_00c5: dup IL_00c6: ldc.i4.1 IL_00c7: ldc.r8 2.0099999999999998 IL_00d0: box [mscorlib]System.Double IL_00d5: ldtoken [mscorlib]System.Double IL_00da: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00df: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00e4: stelem.ref IL_00e5: dup IL_00e6: ldc.i4.2 IL_00e7: ldc.r8 3.5 IL_00f0: box [mscorlib]System.Double IL_00f5: ldtoken [mscorlib]System.Double IL_00fa: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00ff: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0104: stelem.ref IL_0105: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_010a: stelem.ref IL_010b: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0110: ldc.i4.0 IL_0111: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0116: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_011b: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0120: pop IL_0121: ret } // end of method ExpressionTrees::NewArrayAndExtensionMethod .method public hidebysig instance void NewMultiDimArray() cil managed { // Code size 138 (0x8a) .maxstack 7 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Int32 IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: ldc.i4.2 IL_0010: newarr [System.Core]System.Linq.Expressions.Expression IL_0015: dup IL_0016: ldc.i4.0 IL_0017: ldc.i4.3 IL_0018: box [mscorlib]System.Int32 IL_001d: ldtoken [mscorlib]System.Int32 IL_0022: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0027: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_002c: stelem.ref IL_002d: dup IL_002e: ldc.i4.1 IL_002f: ldc.i4.4 IL_0030: box [mscorlib]System.Int32 IL_0035: ldtoken [mscorlib]System.Int32 IL_003a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0044: stelem.ref IL_0045: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayBounds(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_004a: ldtoken method instance int32 [mscorlib]System.Array::get_Length() IL_004f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0054: castclass [mscorlib]System.Reflection.MethodInfo IL_0059: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_005e: ldc.i4.1 IL_005f: box [mscorlib]System.Int32 IL_0064: ldtoken [mscorlib]System.Int32 IL_0069: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_006e: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0073: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0078: ldc.i4.0 IL_0079: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_007e: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0083: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0088: pop IL_0089: ret } // end of method ExpressionTrees::NewMultiDimArray .method public hidebysig instance void NewObject() cil managed { // Code size 58 (0x3a) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Object IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0014: ldtoken [mscorlib]System.Object IL_0019: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001e: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0023: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::NotEqual(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0028: ldc.i4.0 IL_0029: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_002e: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0033: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0038: pop IL_0039: ret } // end of method ExpressionTrees::NewObject .method public hidebysig instance void NotOperator() cil managed { // Code size 270 (0x10e) .maxstack 4 .locals init (class ExpressionTrees/'<>c__DisplayClass44_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass44_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldc.i4.1 IL_0008: stfld bool ExpressionTrees/'<>c__DisplayClass44_0'::x IL_000d: ldloc.0 IL_000e: ldc.i4.3 IL_000f: stfld int32 ExpressionTrees/'<>c__DisplayClass44_0'::y IL_0014: ldloc.0 IL_0015: ldc.i4.s 42 IL_0017: stfld uint8 ExpressionTrees/'<>c__DisplayClass44_0'::z IL_001c: call object ExpressionTrees::X() IL_0021: ldloc.0 IL_0022: ldtoken ExpressionTrees/'<>c__DisplayClass44_0' IL_0027: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0031: ldtoken field uint8 ExpressionTrees/'<>c__DisplayClass44_0'::z IL_0036: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_003b: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0040: ldtoken [mscorlib]System.Int32 IL_0045: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_004a: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_004f: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Not(class [System.Core]System.Linq.Expressions.Expression) IL_0054: ldc.i4.0 IL_0055: box [mscorlib]System.Int32 IL_005a: ldtoken [mscorlib]System.Int32 IL_005f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0064: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0069: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_006e: ldc.i4.0 IL_006f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0074: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0079: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_007e: pop IL_007f: call object ExpressionTrees::X() IL_0084: ldloc.0 IL_0085: ldtoken ExpressionTrees/'<>c__DisplayClass44_0' IL_008a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_008f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0094: ldtoken field int32 ExpressionTrees/'<>c__DisplayClass44_0'::y IL_0099: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_009e: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_00a3: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Not(class [System.Core]System.Linq.Expressions.Expression) IL_00a8: ldc.i4.0 IL_00a9: box [mscorlib]System.Int32 IL_00ae: ldtoken [mscorlib]System.Int32 IL_00b3: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00b8: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00bd: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00c2: ldc.i4.0 IL_00c3: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00c8: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00cd: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00d2: pop IL_00d3: call object ExpressionTrees::X() IL_00d8: ldloc.0 IL_00d9: ldtoken ExpressionTrees/'<>c__DisplayClass44_0' IL_00de: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00e3: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00e8: ldtoken field bool ExpressionTrees/'<>c__DisplayClass44_0'::x IL_00ed: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_00f2: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_00f7: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Not(class [System.Core]System.Linq.Expressions.Expression) IL_00fc: ldc.i4.0 IL_00fd: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0102: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0107: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_010c: pop IL_010d: ret } // end of method ExpressionTrees::NotOperator .method public hidebysig instance void ObjectInitializers() cil managed { // Code size 288 (0x120) .maxstack 8 .locals init (class ExpressionTrees/'<>c__DisplayClass45_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass45_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: newobj instance void [System.Xml]System.Xml.XmlReaderSettings::.ctor() IL_000c: dup IL_000d: ldc.i4.0 IL_000e: callvirt instance void [System.Xml]System.Xml.XmlReaderSettings::set_CloseInput(bool) IL_0013: dup IL_0014: ldc.i4.0 IL_0015: callvirt instance void [System.Xml]System.Xml.XmlReaderSettings::set_CheckCharacters(bool) IL_001a: stfld class [System.Xml]System.Xml.XmlReaderSettings ExpressionTrees/'<>c__DisplayClass45_0'::s IL_001f: call object ExpressionTrees::X() IL_0024: ldtoken [System.Xml]System.Xml.XmlReaderSettings IL_0029: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002e: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0033: ldc.i4.2 IL_0034: newarr [System.Core]System.Linq.Expressions.MemberBinding IL_0039: dup IL_003a: ldc.i4.0 IL_003b: ldtoken method instance void [System.Xml]System.Xml.XmlReaderSettings::set_CloseInput(bool) IL_0040: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0045: castclass [mscorlib]System.Reflection.MethodInfo IL_004a: ldloc.0 IL_004b: ldtoken ExpressionTrees/'<>c__DisplayClass45_0' IL_0050: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0055: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_005a: ldtoken field class [System.Xml]System.Xml.XmlReaderSettings ExpressionTrees/'<>c__DisplayClass45_0'::s IL_005f: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_0064: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0069: ldtoken method instance bool [System.Xml]System.Xml.XmlReaderSettings::get_CloseInput() IL_006e: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0073: castclass [mscorlib]System.Reflection.MethodInfo IL_0078: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_007d: call class [System.Core]System.Linq.Expressions.MemberAssignment [System.Core]System.Linq.Expressions.Expression::Bind(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression) IL_0082: stelem.ref IL_0083: dup IL_0084: ldc.i4.1 IL_0085: ldtoken method instance void [System.Xml]System.Xml.XmlReaderSettings::set_CheckCharacters(bool) IL_008a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_008f: castclass [mscorlib]System.Reflection.MethodInfo IL_0094: ldloc.0 IL_0095: ldtoken ExpressionTrees/'<>c__DisplayClass45_0' IL_009a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_009f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00a4: ldtoken field class [System.Xml]System.Xml.XmlReaderSettings ExpressionTrees/'<>c__DisplayClass45_0'::s IL_00a9: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_00ae: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_00b3: ldtoken method instance bool [System.Xml]System.Xml.XmlReaderSettings::get_CheckCharacters() IL_00b8: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_00bd: castclass [mscorlib]System.Reflection.MethodInfo IL_00c2: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_00c7: call class [System.Core]System.Linq.Expressions.MemberAssignment [System.Core]System.Linq.Expressions.Expression::Bind(class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression) IL_00cc: stelem.ref IL_00cd: call class [System.Core]System.Linq.Expressions.MemberInitExpression [System.Core]System.Linq.Expressions.Expression::MemberInit(class [System.Core]System.Linq.Expressions.NewExpression, class [System.Core]System.Linq.Expressions.MemberBinding[]) IL_00d2: ldtoken method instance bool [mscorlib]System.Object::Equals(object) IL_00d7: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_00dc: castclass [mscorlib]System.Reflection.MethodInfo IL_00e1: ldc.i4.1 IL_00e2: newarr [System.Core]System.Linq.Expressions.Expression IL_00e7: dup IL_00e8: ldc.i4.0 IL_00e9: ldloc.0 IL_00ea: ldtoken ExpressionTrees/'<>c__DisplayClass45_0' IL_00ef: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00f4: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00f9: ldtoken field class [System.Xml]System.Xml.XmlReaderSettings ExpressionTrees/'<>c__DisplayClass45_0'::s IL_00fe: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_0103: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0108: stelem.ref IL_0109: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_010e: ldc.i4.0 IL_010f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0114: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0119: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_011e: pop IL_011f: ret } // end of method ExpressionTrees::ObjectInitializers .method public hidebysig instance void Quoted() cil managed { // Code size 173 (0xad) .maxstack 6 .locals init (class [System.Core]System.Linq.Expressions.ParameterExpression V_0, class [System.Core]System.Linq.Expressions.ParameterExpression V_1) IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Int32 IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: ldstr "n" IL_0014: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_0019: stloc.0 IL_001a: ldtoken [mscorlib]System.String IL_001f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0024: ldstr "s" IL_0029: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_002e: stloc.1 IL_002f: ldloc.1 IL_0030: ldloc.0 IL_0031: ldtoken method instance string [mscorlib]System.Int32::ToString() IL_0036: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_003b: castclass [mscorlib]System.Reflection.MethodInfo IL_0040: ldc.i4.0 IL_0041: newarr [System.Core]System.Linq.Expressions.Expression IL_0046: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_004b: ldtoken method string [mscorlib]System.String::Concat(string, string) IL_0050: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0055: castclass [mscorlib]System.Reflection.MethodInfo IL_005a: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_005f: ldc.i4.2 IL_0060: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0065: dup IL_0066: ldc.i4.0 IL_0067: ldloc.0 IL_0068: stelem.ref IL_0069: dup IL_006a: ldc.i4.1 IL_006b: ldloc.1 IL_006c: stelem.ref IL_006d: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0072: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Quote(class [System.Core]System.Linq.Expressions.Expression) IL_0077: ldtoken class [System.Core]System.Linq.Expressions.Expression`1> IL_007c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0081: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0086: ldnull IL_0087: ldtoken [mscorlib]System.Object IL_008c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0091: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0096: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::NotEqual(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_009b: ldc.i4.0 IL_009c: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00a1: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00a6: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00ab: pop IL_00ac: ret } // end of method ExpressionTrees::Quoted .method public hidebysig instance void Quoted2() cil managed { // Code size 165 (0xa5) .maxstack 9 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_000b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0010: castclass [mscorlib]System.Reflection.MethodInfo IL_0015: ldc.i4.2 IL_0016: newarr [System.Core]System.Linq.Expressions.Expression IL_001b: dup IL_001c: ldc.i4.0 IL_001d: ldnull IL_001e: ldtoken method object ExpressionTrees::X() IL_0023: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0028: castclass [mscorlib]System.Reflection.MethodInfo IL_002d: ldc.i4.0 IL_002e: newarr [System.Core]System.Linq.Expressions.Expression IL_0033: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0038: stelem.ref IL_0039: dup IL_003a: ldc.i4.1 IL_003b: ldc.i4.1 IL_003c: box [mscorlib]System.Boolean IL_0041: ldtoken [mscorlib]System.Boolean IL_0046: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_004b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0050: ldc.i4.0 IL_0051: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0056: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_005b: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Quote(class [System.Core]System.Linq.Expressions.Expression) IL_0060: stelem.ref IL_0061: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0066: ldtoken method instance bool [mscorlib]System.Object::Equals(object) IL_006b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0070: castclass [mscorlib]System.Reflection.MethodInfo IL_0075: ldc.i4.1 IL_0076: newarr [System.Core]System.Linq.Expressions.Expression IL_007b: dup IL_007c: ldc.i4.0 IL_007d: ldnull IL_007e: ldtoken [mscorlib]System.Object IL_0083: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0088: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_008d: stelem.ref IL_008e: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0093: ldc.i4.0 IL_0094: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0099: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_009e: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00a3: pop IL_00a4: ret } // end of method ExpressionTrees::Quoted2 .method public hidebysig instance void QuotedWithAnonymous() cil managed { // Code size 347 (0x15b) .maxstack 22 .locals init (class [System.Core]System.Linq.Expressions.ParameterExpression V_0) IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method !!0 [System.Core]System.Linq.Enumerable::Single(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_000b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0010: castclass [mscorlib]System.Reflection.MethodInfo IL_0015: ldc.i4.1 IL_0016: newarr [System.Core]System.Linq.Expressions.Expression IL_001b: dup IL_001c: ldc.i4.0 IL_001d: ldnull IL_001e: ldtoken method class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::Selectf__AnonymousType1`2',string>(class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Func`2) IL_0023: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0028: castclass [mscorlib]System.Reflection.MethodInfo IL_002d: ldc.i4.2 IL_002e: newarr [System.Core]System.Linq.Expressions.Expression IL_0033: dup IL_0034: ldc.i4.0 IL_0035: ldtoken class '<>f__AnonymousType1`2' IL_003a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003f: ldc.i4.1 IL_0040: newarr [System.Core]System.Linq.Expressions.Expression IL_0045: dup IL_0046: ldc.i4.0 IL_0047: ldtoken method instance void class '<>f__AnonymousType1`2'::.ctor(!0, !1) IL_004c: ldtoken class '<>f__AnonymousType1`2' IL_0051: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0056: castclass [mscorlib]System.Reflection.ConstructorInfo IL_005b: ldc.i4.2 IL_005c: newarr [System.Core]System.Linq.Expressions.Expression IL_0061: dup IL_0062: ldc.i4.0 IL_0063: ldstr "a" IL_0068: ldtoken [mscorlib]System.String IL_006d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0072: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0077: stelem.ref IL_0078: dup IL_0079: ldc.i4.1 IL_007a: ldstr "b" IL_007f: ldtoken [mscorlib]System.String IL_0084: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0089: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_008e: stelem.ref IL_008f: ldc.i4.2 IL_0090: newarr [mscorlib]System.Reflection.MemberInfo IL_0095: dup IL_0096: ldc.i4.0 IL_0097: ldtoken method instance !0 class '<>f__AnonymousType1`2'::get_X() IL_009c: ldtoken class '<>f__AnonymousType1`2' IL_00a1: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_00a6: castclass [mscorlib]System.Reflection.MethodInfo IL_00ab: stelem.ref IL_00ac: dup IL_00ad: ldc.i4.1 IL_00ae: ldtoken method instance !1 class '<>f__AnonymousType1`2'::get_Y() IL_00b3: ldtoken class '<>f__AnonymousType1`2' IL_00b8: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_00bd: castclass [mscorlib]System.Reflection.MethodInfo IL_00c2: stelem.ref IL_00c3: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Reflection.ConstructorInfo, class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Reflection.MemberInfo[]) IL_00c8: stelem.ref IL_00c9: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_00ce: stelem.ref IL_00cf: dup IL_00d0: ldc.i4.1 IL_00d1: ldtoken class '<>f__AnonymousType1`2' IL_00d6: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00db: ldstr "o" IL_00e0: call class [System.Core]System.Linq.Expressions.ParameterExpression [System.Core]System.Linq.Expressions.Expression::Parameter(class [mscorlib]System.Type, string) IL_00e5: stloc.0 IL_00e6: ldloc.0 IL_00e7: ldtoken method instance !0 class '<>f__AnonymousType1`2'::get_X() IL_00ec: ldtoken class '<>f__AnonymousType1`2' IL_00f1: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_00f6: castclass [mscorlib]System.Reflection.MethodInfo IL_00fb: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_0100: ldloc.0 IL_0101: ldtoken method instance !1 class '<>f__AnonymousType1`2'::get_Y() IL_0106: ldtoken class '<>f__AnonymousType1`2' IL_010b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0110: castclass [mscorlib]System.Reflection.MethodInfo IL_0115: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_011a: ldtoken method string [mscorlib]System.String::Concat(string, string) IL_011f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0124: castclass [mscorlib]System.Reflection.MethodInfo IL_0129: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_012e: ldc.i4.1 IL_012f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0134: dup IL_0135: ldc.i4.0 IL_0136: ldloc.0 IL_0137: stelem.ref IL_0138: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambdaf__AnonymousType1`2',string>>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_013d: stelem.ref IL_013e: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0143: stelem.ref IL_0144: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0149: ldc.i4.0 IL_014a: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_014f: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0154: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0159: pop IL_015a: ret } // end of method ExpressionTrees::QuotedWithAnonymous .method public hidebysig instance void StaticCall() cil managed { // Code size 128 (0x80) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method bool [mscorlib]System.Object::Equals(object, object) IL_000b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0010: castclass [mscorlib]System.Reflection.MethodInfo IL_0015: ldc.i4.2 IL_0016: newarr [System.Core]System.Linq.Expressions.Expression IL_001b: dup IL_001c: ldc.i4.0 IL_001d: ldc.i4.3 IL_001e: box [mscorlib]System.Int32 IL_0023: ldtoken [mscorlib]System.Int32 IL_0028: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0032: ldtoken [mscorlib]System.Object IL_0037: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003c: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0041: stelem.ref IL_0042: dup IL_0043: ldc.i4.1 IL_0044: ldc.i4.0 IL_0045: box [mscorlib]System.Int32 IL_004a: ldtoken [mscorlib]System.Int32 IL_004f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0054: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0059: ldtoken [mscorlib]System.Object IL_005e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0063: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0068: stelem.ref IL_0069: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_006e: ldc.i4.0 IL_006f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0074: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0079: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_007e: pop IL_007f: ret } // end of method ExpressionTrees::StaticCall .method public hidebysig instance void ThisCall() cil managed { // Code size 109 (0x6d) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldarg.0 IL_0006: ldtoken ExpressionTrees IL_000b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0010: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0015: ldtoken method instance bool [mscorlib]System.Object::Equals(object) IL_001a: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_001f: castclass [mscorlib]System.Reflection.MethodInfo IL_0024: ldc.i4.1 IL_0025: newarr [System.Core]System.Linq.Expressions.Expression IL_002a: dup IL_002b: ldc.i4.0 IL_002c: ldc.i4.3 IL_002d: box [mscorlib]System.Int32 IL_0032: ldtoken [mscorlib]System.Int32 IL_0037: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0041: ldtoken [mscorlib]System.Object IL_0046: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_004b: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0050: stelem.ref IL_0051: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0056: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Not(class [System.Core]System.Linq.Expressions.Expression) IL_005b: ldc.i4.0 IL_005c: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0061: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0066: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_006b: pop IL_006c: ret } // end of method ExpressionTrees::ThisCall .method public hidebysig instance void ThisExplicit() cil managed { // Code size 108 (0x6c) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method bool [mscorlib]System.Object::Equals(object, object) IL_000b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0010: castclass [mscorlib]System.Reflection.MethodInfo IL_0015: ldc.i4.2 IL_0016: newarr [System.Core]System.Linq.Expressions.Expression IL_001b: dup IL_001c: ldc.i4.0 IL_001d: ldarg.0 IL_001e: ldtoken ExpressionTrees IL_0023: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0028: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_002d: stelem.ref IL_002e: dup IL_002f: ldc.i4.1 IL_0030: ldc.i4.3 IL_0031: box [mscorlib]System.Int32 IL_0036: ldtoken [mscorlib]System.Int32 IL_003b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0040: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0045: ldtoken [mscorlib]System.Object IL_004a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_004f: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0054: stelem.ref IL_0055: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_005a: ldc.i4.0 IL_005b: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0060: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0065: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_006a: pop IL_006b: ret } // end of method ExpressionTrees::ThisExplicit .method public hidebysig instance void TypedConstant() cil managed { // Code size 100 (0x64) .maxstack 7 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken [mscorlib]System.Type IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: ldc.i4.2 IL_0010: newarr [System.Core]System.Linq.Expressions.Expression IL_0015: dup IL_0016: ldc.i4.0 IL_0017: ldtoken [mscorlib]System.Int32 IL_001c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0021: ldtoken [mscorlib]System.Type IL_0026: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002b: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0030: stelem.ref IL_0031: dup IL_0032: ldc.i4.1 IL_0033: ldtoken [mscorlib]System.String IL_0038: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003d: ldtoken [mscorlib]System.Type IL_0042: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0047: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_004c: stelem.ref IL_004d: call class [System.Core]System.Linq.Expressions.NewArrayExpression [System.Core]System.Linq.Expressions.Expression::NewArrayInit(class [mscorlib]System.Type, class [System.Core]System.Linq.Expressions.Expression[]) IL_0052: ldc.i4.0 IL_0053: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0058: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_005d: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0062: pop IL_0063: ret } // end of method ExpressionTrees::TypedConstant .method public hidebysig instance void StaticCallImplicitCast() cil managed { // Code size 128 (0x80) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method bool [mscorlib]System.Object::Equals(object, object) IL_000b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0010: castclass [mscorlib]System.Reflection.MethodInfo IL_0015: ldc.i4.2 IL_0016: newarr [System.Core]System.Linq.Expressions.Expression IL_001b: dup IL_001c: ldc.i4.0 IL_001d: ldc.i4.3 IL_001e: box [mscorlib]System.Int32 IL_0023: ldtoken [mscorlib]System.Int32 IL_0028: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002d: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0032: ldtoken [mscorlib]System.Object IL_0037: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003c: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0041: stelem.ref IL_0042: dup IL_0043: ldc.i4.1 IL_0044: ldc.i4.0 IL_0045: box [mscorlib]System.Int32 IL_004a: ldtoken [mscorlib]System.Int32 IL_004f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0054: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0059: ldtoken [mscorlib]System.Object IL_005e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0063: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0068: stelem.ref IL_0069: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_006e: ldc.i4.0 IL_006f: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_0074: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0079: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_007e: pop IL_007f: ret } // end of method ExpressionTrees::StaticCallImplicitCast .method public hidebysig instance void StaticMembers() cil managed { // Code size 216 (0xd8) .maxstack 10 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now() IL_000b: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0010: castclass [mscorlib]System.Reflection.MethodInfo IL_0015: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_001a: ldnull IL_001b: ldtoken method valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now() IL_0020: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0025: castclass [mscorlib]System.Reflection.MethodInfo IL_002a: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_002f: ldnull IL_0030: ldtoken method valuetype [mscorlib]System.TimeSpan [mscorlib]System.TimeSpan::FromMilliseconds(float64) IL_0035: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_003a: castclass [mscorlib]System.Reflection.MethodInfo IL_003f: ldc.i4.1 IL_0040: newarr [System.Core]System.Linq.Expressions.Expression IL_0045: dup IL_0046: ldc.i4.0 IL_0047: ldc.r8 10.000999999999999 IL_0050: box [mscorlib]System.Double IL_0055: ldtoken [mscorlib]System.Double IL_005a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_005f: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0064: stelem.ref IL_0065: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_006a: ldtoken method valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::op_Addition(valuetype [mscorlib]System.DateTime, valuetype [mscorlib]System.TimeSpan) IL_006f: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0074: castclass [mscorlib]System.Reflection.MethodInfo IL_0079: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_007e: ldc.i4.0 IL_007f: ldtoken method bool [mscorlib]System.DateTime::op_GreaterThan(valuetype [mscorlib]System.DateTime, valuetype [mscorlib]System.DateTime) IL_0084: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0089: castclass [mscorlib]System.Reflection.MethodInfo IL_008e: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::GreaterThan(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, bool, class [mscorlib]System.Reflection.MethodInfo) IL_0093: ldtoken method instance string [mscorlib]System.Boolean::ToString() IL_0098: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_009d: castclass [mscorlib]System.Reflection.MethodInfo IL_00a2: ldc.i4.0 IL_00a3: newarr [System.Core]System.Linq.Expressions.Expression IL_00a8: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_00ad: ldstr "False" IL_00b2: ldtoken [mscorlib]System.String IL_00b7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00bc: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00c1: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00c6: ldc.i4.0 IL_00c7: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_00cc: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_00d1: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_00d6: pop IL_00d7: ret } // end of method ExpressionTrees::StaticMembers .method public hidebysig instance void Strings() cil managed { // Code size 406 (0x196) .maxstack 8 .locals init (class ExpressionTrees/'<>c__DisplayClass55_0' V_0) IL_0000: newobj instance void ExpressionTrees/'<>c__DisplayClass55_0'::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldc.i4.1 IL_0008: stfld int32 ExpressionTrees/'<>c__DisplayClass55_0'::i IL_000d: ldloc.0 IL_000e: ldstr "X" IL_0013: stfld string ExpressionTrees/'<>c__DisplayClass55_0'::x IL_0018: call object ExpressionTrees::X() IL_001d: ldstr "a\n\\b" IL_0022: ldtoken [mscorlib]System.String IL_0027: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_002c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0031: ldloc.0 IL_0032: ldtoken ExpressionTrees/'<>c__DisplayClass55_0' IL_0037: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_003c: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0041: ldtoken field string ExpressionTrees/'<>c__DisplayClass55_0'::x IL_0046: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_004b: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0050: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Coalesce(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0055: ldloc.0 IL_0056: ldtoken ExpressionTrees/'<>c__DisplayClass55_0' IL_005b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0060: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0065: ldtoken field string ExpressionTrees/'<>c__DisplayClass55_0'::x IL_006a: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_006f: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0074: ldtoken method string [mscorlib]System.String::Concat(string, string) IL_0079: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_007e: castclass [mscorlib]System.Reflection.MethodInfo IL_0083: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_0088: ldtoken method instance int32 [mscorlib]System.String::get_Length() IL_008d: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0092: castclass [mscorlib]System.Reflection.MethodInfo IL_0097: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_009c: ldc.i4.2 IL_009d: box [mscorlib]System.Int32 IL_00a2: ldtoken [mscorlib]System.Int32 IL_00a7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00ac: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00b1: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Equal(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_00b6: ldc.i4.0 IL_00b7: box [mscorlib]System.Boolean IL_00bc: ldtoken [mscorlib]System.Boolean IL_00c1: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00c6: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00cb: ldc.i4.1 IL_00cc: box [mscorlib]System.Boolean IL_00d1: ldtoken [mscorlib]System.Boolean IL_00d6: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00db: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00e0: ldc.i4.1 IL_00e1: newobj instance void [mscorlib]System.Decimal::.ctor(int32) IL_00e6: box [mscorlib]System.Decimal IL_00eb: ldtoken [mscorlib]System.Decimal IL_00f0: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00f5: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_00fa: ldloc.0 IL_00fb: ldtoken ExpressionTrees/'<>c__DisplayClass55_0' IL_0100: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0105: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_010a: ldtoken field int32 ExpressionTrees/'<>c__DisplayClass55_0'::i IL_010f: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle) IL_0114: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0119: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Negate(class [System.Core]System.Linq.Expressions.Expression) IL_011e: ldtoken [mscorlib]System.Decimal IL_0123: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0128: ldtoken method valuetype [mscorlib]System.Decimal [mscorlib]System.Decimal::op_Implicit(int32) IL_012d: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle) IL_0132: castclass [mscorlib]System.Reflection.MethodInfo IL_0137: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type, class [mscorlib]System.Reflection.MethodInfo) IL_013c: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0141: ldc.i4.0 IL_0142: newobj instance void [mscorlib]System.Decimal::.ctor(int32) IL_0147: box [mscorlib]System.Decimal IL_014c: ldtoken [mscorlib]System.Decimal IL_0151: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0156: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_015b: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::GreaterThan(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0160: ldc.i4.0 IL_0161: box [mscorlib]System.Boolean IL_0166: ldtoken [mscorlib]System.Boolean IL_016b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0170: call class [System.Core]System.Linq.Expressions.ConstantExpression [System.Core]System.Linq.Expressions.Expression::Constant(object, class [mscorlib]System.Type) IL_0175: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::OrElse(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_017a: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::AndAlso(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_017f: call class [System.Core]System.Linq.Expressions.ConditionalExpression [System.Core]System.Linq.Expressions.Expression::Condition(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0184: ldc.i4.0 IL_0185: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_018a: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_018f: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0194: pop IL_0195: ret } // end of method ExpressionTrees::Strings .method public hidebysig instance void GenericClassInstance() cil managed { // Code size 118 (0x76) .maxstack 5 IL_0000: call object ExpressionTrees::X() IL_0005: ldtoken class ExpressionTrees/GenericClass`1 IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000f: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0014: ldtoken field !0 class ExpressionTrees/GenericClass`1::InstanceField IL_0019: ldtoken class ExpressionTrees/GenericClass`1 IL_001e: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0023: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_0028: ldtoken [mscorlib]System.Double IL_002d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0032: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0037: ldtoken class ExpressionTrees/GenericClass`1 IL_003c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0041: call class [System.Core]System.Linq.Expressions.NewExpression [System.Core]System.Linq.Expressions.Expression::New(class [mscorlib]System.Type) IL_0046: ldtoken method instance !0 class ExpressionTrees/GenericClass`1::get_InstanceProperty() IL_004b: ldtoken class ExpressionTrees/GenericClass`1 IL_0050: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0055: castclass [mscorlib]System.Reflection.MethodInfo IL_005a: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_005f: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0064: ldc.i4.0 IL_0065: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_006a: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_006f: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0074: pop IL_0075: ret } // end of method ExpressionTrees::GenericClassInstance .method public hidebysig instance void GenericClassStatic() cil managed { // Code size 90 (0x5a) .maxstack 5 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken field !0 class ExpressionTrees/GenericClass`1::StaticField IL_000b: ldtoken class ExpressionTrees/GenericClass`1 IL_0010: call class [mscorlib]System.Reflection.FieldInfo [mscorlib]System.Reflection.FieldInfo::GetFieldFromHandle(valuetype [mscorlib]System.RuntimeFieldHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0015: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Field(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.FieldInfo) IL_001a: ldtoken [mscorlib]System.Double IL_001f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0024: call class [System.Core]System.Linq.Expressions.UnaryExpression [System.Core]System.Linq.Expressions.Expression::Convert(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Type) IL_0029: ldnull IL_002a: ldtoken method !0 class ExpressionTrees/GenericClass`1::get_StaticProperty() IL_002f: ldtoken class ExpressionTrees/GenericClass`1 IL_0034: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0039: castclass [mscorlib]System.Reflection.MethodInfo IL_003e: call class [System.Core]System.Linq.Expressions.MemberExpression [System.Core]System.Linq.Expressions.Expression::Property(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo) IL_0043: call class [System.Core]System.Linq.Expressions.BinaryExpression [System.Core]System.Linq.Expressions.Expression::Add(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.Expression) IL_0048: ldc.i4.0 IL_0049: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_004e: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0053: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0058: pop IL_0059: ret } // end of method ExpressionTrees::GenericClassStatic .method public hidebysig instance void InvokeGenericMethod() cil managed { // Code size 55 (0x37) .maxstack 8 IL_0000: call object ExpressionTrees::X() IL_0005: ldnull IL_0006: ldtoken method bool class ExpressionTrees/GenericClass`1::GenericMethod() IL_000b: ldtoken class ExpressionTrees/GenericClass`1 IL_0010: call class [mscorlib]System.Reflection.MethodBase [mscorlib]System.Reflection.MethodBase::GetMethodFromHandle(valuetype [mscorlib]System.RuntimeMethodHandle, valuetype [mscorlib]System.RuntimeTypeHandle) IL_0015: castclass [mscorlib]System.Reflection.MethodInfo IL_001a: ldc.i4.0 IL_001b: newarr [System.Core]System.Linq.Expressions.Expression IL_0020: call class [System.Core]System.Linq.Expressions.MethodCallExpression [System.Core]System.Linq.Expressions.Expression::Call(class [System.Core]System.Linq.Expressions.Expression, class [mscorlib]System.Reflection.MethodInfo, class [System.Core]System.Linq.Expressions.Expression[]) IL_0025: ldc.i4.0 IL_0026: newarr [System.Core]System.Linq.Expressions.ParameterExpression IL_002b: call class [System.Core]System.Linq.Expressions.Expression`1 [System.Core]System.Linq.Expressions.Expression::Lambda>(class [System.Core]System.Linq.Expressions.Expression, class [System.Core]System.Linq.Expressions.ParameterExpression[]) IL_0030: call object ExpressionTrees::ToCode(object, class [System.Core]System.Linq.Expressions.Expression`1>) IL_0035: pop IL_0036: ret } // end of method ExpressionTrees::InvokeGenericMethod .method public hidebysig specialname rtspecialname instance void .ctor() cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } // end of method ExpressionTrees::.ctor } // end of class ExpressionTrees // ============================================================= // *********** DISASSEMBLY COMPLETE ***********************