// 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 Microsoft.CSharp { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: .ver 4:0:0:0 } .assembly CustomShortCircuitOperators { .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 CustomShortCircuitOperators.dll .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 // =============== CLASS MEMBERS DECLARATION =================== .class private auto ansi beforefieldinit ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass extends [mscorlib]System.Object { .method public hidebysig specialname static bool op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass x) cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldc.i4.1 IL_0001: ret } // end of method BaseClass::op_True .method public hidebysig specialname static bool op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass x) cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldc.i4.0 IL_0001: ret } // end of method BaseClass::op_False .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 BaseClass::.ctor } // end of class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass .class private auto ansi beforefieldinit ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C extends ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass { .class abstract auto ansi sealed nested private beforefieldinit '<>o__10' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__0' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__1' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__2' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__3' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__4' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__5' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__6' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__7' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__8' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__9' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__10' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__11' } // end of class '<>o__10' .method public hidebysig specialname static class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C op_BitwiseAnd(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C x, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C y) cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldnull IL_0001: ret } // end of method C::op_BitwiseAnd .method public hidebysig specialname static class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C op_BitwiseOr(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C x, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C y) cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldnull IL_0001: ret } // end of method C::op_BitwiseOr .method public hidebysig specialname static class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C op_LogicalNot(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C x) cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: ldarg.0 IL_0001: ret } // end of method C::op_LogicalNot .method public hidebysig static class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C GetC(int32 a) cil managed { // Code size 6 (0x6) .maxstack 8 IL_0000: newobj instance void ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::.ctor() IL_0005: ret } // end of method C::GetC .method public hidebysig static class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C LogicAnd() cil managed { // Code size 30 (0x1e) .maxstack 2 .locals init (class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_0) IL_0000: ldc.i4.1 IL_0001: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0006: stloc.0 IL_0007: ldloc.0 IL_0008: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_000d: brtrue.s IL_001c IL_000f: ldloc.0 IL_0010: ldc.i4.2 IL_0011: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0016: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseAnd(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_001b: ret IL_001c: ldloc.0 IL_001d: ret } // end of method C::LogicAnd .method public hidebysig static class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C LogicOr() cil managed { // Code size 30 (0x1e) .maxstack 2 .locals init (class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_0) IL_0000: ldc.i4.1 IL_0001: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0006: stloc.0 IL_0007: ldloc.0 IL_0008: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_000d: brtrue.s IL_001c IL_000f: ldloc.0 IL_0010: ldc.i4.2 IL_0011: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0016: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseOr(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_001b: ret IL_001c: ldloc.0 IL_001d: ret } // end of method C::LogicOr .method public hidebysig static class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C Complex() cil managed { // Code size 107 (0x6b) .maxstack 3 .locals init (class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_0, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_1, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_2) IL_0000: ldc.i4.1 IL_0001: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0006: stloc.2 IL_0007: ldloc.2 IL_0008: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_000d: brtrue.s IL_001d IL_000f: ldloc.2 IL_0010: ldc.i4.2 IL_0011: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0016: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseOr(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_001b: br.s IL_001e IL_001d: ldloc.2 IL_001e: stloc.1 IL_001f: ldloc.1 IL_0020: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_0025: brtrue.s IL_0035 IL_0027: ldloc.1 IL_0028: ldc.i4.3 IL_0029: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_002e: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseAnd(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_0033: br.s IL_0036 IL_0035: ldloc.1 IL_0036: stloc.0 IL_0037: ldloc.0 IL_0038: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_003d: brtrue.s IL_0069 IL_003f: ldloc.0 IL_0040: ldc.i4.4 IL_0041: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0046: stloc.1 IL_0047: ldloc.1 IL_0048: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_004d: brtrue.s IL_005d IL_004f: ldloc.1 IL_0050: ldc.i4.5 IL_0051: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0056: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseOr(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_005b: br.s IL_005e IL_005d: ldloc.1 IL_005e: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_LogicalNot(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_0063: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseAnd(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_0068: ret IL_0069: ldloc.0 IL_006a: ret } // end of method C::Complex .method private hidebysig static void Main() cil managed { // Code size 73 (0x49) .maxstack 3 .locals init (class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_0, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_1, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_2) IL_0000: newobj instance void ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::.ctor() IL_0005: newobj instance void ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::.ctor() IL_000a: stloc.0 IL_000b: dup IL_000c: stloc.2 IL_000d: ldloc.2 IL_000e: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_0013: brtrue.s IL_001e IL_0015: ldloc.2 IL_0016: ldloc.0 IL_0017: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseAnd(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_001c: br.s IL_001f IL_001e: ldloc.2 IL_001f: stloc.1 IL_0020: stloc.2 IL_0021: ldloc.2 IL_0022: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_0027: brtrue.s IL_0032 IL_0029: ldloc.2 IL_002a: ldloc.0 IL_002b: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseOr(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_0030: br.s IL_0033 IL_0032: ldloc.2 IL_0033: ldloc.1 IL_0034: callvirt instance string [mscorlib]System.Object::ToString() IL_0039: call void [mscorlib]System.Console::WriteLine(string) IL_003e: callvirt instance string [mscorlib]System.Object::ToString() IL_0043: call void [mscorlib]System.Console::WriteLine(string) IL_0048: ret } // end of method C::Main .method private hidebysig static void Test2() cil managed { // Code size 150 (0x96) .maxstack 2 .locals init (class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_0) IL_0000: ldc.i4.1 IL_0001: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0006: stloc.0 IL_0007: ldloc.0 IL_0008: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_000d: brtrue.s IL_001d IL_000f: ldloc.0 IL_0010: ldc.i4.2 IL_0011: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0016: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseAnd(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_001b: br.s IL_001e IL_001d: ldloc.0 IL_001e: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_0023: brfalse.s IL_0030 IL_0025: ldc.i4.3 IL_0026: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_002b: call void [mscorlib]System.Console::WriteLine(object) IL_0030: ldc.i4.1 IL_0031: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0036: stloc.0 IL_0037: ldloc.0 IL_0038: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_003d: brtrue.s IL_004d IL_003f: ldloc.0 IL_0040: ldc.i4.2 IL_0041: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0046: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseOr(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_004b: br.s IL_004e IL_004d: ldloc.0 IL_004e: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_0053: brfalse.s IL_0060 IL_0055: ldc.i4.3 IL_0056: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_005b: call void [mscorlib]System.Console::WriteLine(object) IL_0060: ldc.i4.1 IL_0061: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0066: stloc.0 IL_0067: ldloc.0 IL_0068: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_006d: brtrue.s IL_007d IL_006f: ldloc.0 IL_0070: ldc.i4.2 IL_0071: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0076: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_BitwiseAnd(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C, class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_007b: br.s IL_007e IL_007d: ldloc.0 IL_007e: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_LogicalNot(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_0083: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_0088: brfalse.s IL_0095 IL_008a: ldc.i4.3 IL_008b: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0090: call void [mscorlib]System.Console::WriteLine(object) IL_0095: ret } // end of method C::Test2 .method private hidebysig static void Test3() cil managed { // Code size 50 (0x32) .maxstack 1 .locals init (class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_0) IL_0000: newobj instance void ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::.ctor() IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_000c: brfalse.s IL_0019 IL_000e: ldloc.0 IL_000f: callvirt instance string [mscorlib]System.Object::ToString() IL_0014: call void [mscorlib]System.Console::WriteLine(string) IL_0019: ldloc.0 IL_001a: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::op_LogicalNot(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C) IL_001f: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_0024: brfalse.s IL_0031 IL_0026: ldloc.0 IL_0027: callvirt instance string [mscorlib]System.Object::ToString() IL_002c: call void [mscorlib]System.Console::WriteLine(string) IL_0031: ret } // end of method C::Test3 .method public hidebysig instance void WithDynamic(object d) cil managed { .param [1] .custom instance void [System.Core]System.Runtime.CompilerServices.DynamicAttribute::.ctor() = ( 01 00 00 00 ) // Code size 1076 (0x434) .maxstack 14 .locals init (class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C V_0) IL_0000: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__2' IL_0005: brtrue.s IL_0046 IL_0007: ldc.i4 0x100 IL_000c: ldstr "WriteLine" IL_0011: ldnull IL_0012: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_0017: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001c: ldc.i4.2 IL_001d: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_0022: dup IL_0023: ldc.i4.0 IL_0024: ldc.i4.s 33 IL_0026: ldnull IL_0027: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_002c: stelem.ref IL_002d: dup IL_002e: ldc.i4.1 IL_002f: ldc.i4.0 IL_0030: ldnull IL_0031: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0036: stelem.ref IL_0037: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::InvokeMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_003c: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0041: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__2' IL_0046: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__2' IL_004b: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0050: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__2' IL_0055: ldtoken [mscorlib]System.Console IL_005a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_005f: ldc.i4.1 IL_0060: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0065: stloc.0 IL_0066: ldloc.0 IL_0067: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_006c: brtrue IL_010f IL_0071: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__1' IL_0076: brtrue.s IL_00ad IL_0078: ldc.i4.8 IL_0079: ldc.i4.2 IL_007a: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_007f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0084: ldc.i4.2 IL_0085: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_008a: dup IL_008b: ldc.i4.0 IL_008c: ldc.i4.1 IL_008d: ldnull IL_008e: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0093: stelem.ref IL_0094: dup IL_0095: ldc.i4.1 IL_0096: ldc.i4.0 IL_0097: ldnull IL_0098: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_009d: stelem.ref IL_009e: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::BinaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_00a3: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_00a8: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__1' IL_00ad: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__1' IL_00b2: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_00b7: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__1' IL_00bc: ldloc.0 IL_00bd: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__0' IL_00c2: brtrue.s IL_00f3 IL_00c4: ldc.i4.0 IL_00c5: ldstr "P" IL_00ca: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_00cf: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00d4: ldc.i4.1 IL_00d5: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_00da: dup IL_00db: ldc.i4.0 IL_00dc: ldc.i4.0 IL_00dd: ldnull IL_00de: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_00e3: stelem.ref IL_00e4: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::GetMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_00e9: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_00ee: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__0' IL_00f3: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__0' IL_00f8: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_00fd: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__0' IL_0102: ldarg.1 IL_0103: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0108: callvirt instance !3 class [mscorlib]System.Func`4::Invoke(!0, !1, !2) IL_010d: br.s IL_0110 IL_010f: ldloc.0 IL_0110: callvirt instance void class [mscorlib]System.Action`3::Invoke(!0, !1, !2) IL_0115: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__5' IL_011a: brtrue.s IL_015b IL_011c: ldc.i4 0x100 IL_0121: ldstr "WriteLine" IL_0126: ldnull IL_0127: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_012c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0131: ldc.i4.2 IL_0132: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_0137: dup IL_0138: ldc.i4.0 IL_0139: ldc.i4.s 33 IL_013b: ldnull IL_013c: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0141: stelem.ref IL_0142: dup IL_0143: ldc.i4.1 IL_0144: ldc.i4.0 IL_0145: ldnull IL_0146: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_014b: stelem.ref IL_014c: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::InvokeMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0151: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0156: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__5' IL_015b: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__5' IL_0160: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0165: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__5' IL_016a: ldtoken [mscorlib]System.Console IL_016f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0174: ldc.i4.2 IL_0175: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_017a: stloc.0 IL_017b: ldloc.0 IL_017c: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_0181: brtrue IL_0225 IL_0186: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__4' IL_018b: brtrue.s IL_01c3 IL_018d: ldc.i4.8 IL_018e: ldc.i4.s 36 IL_0190: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_0195: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_019a: ldc.i4.2 IL_019b: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_01a0: dup IL_01a1: ldc.i4.0 IL_01a2: ldc.i4.1 IL_01a3: ldnull IL_01a4: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_01a9: stelem.ref IL_01aa: dup IL_01ab: ldc.i4.1 IL_01ac: ldc.i4.0 IL_01ad: ldnull IL_01ae: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_01b3: stelem.ref IL_01b4: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::BinaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_01b9: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_01be: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__4' IL_01c3: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__4' IL_01c8: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_01cd: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__4' IL_01d2: ldloc.0 IL_01d3: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__3' IL_01d8: brtrue.s IL_0209 IL_01da: ldc.i4.0 IL_01db: ldstr "P" IL_01e0: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_01e5: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01ea: ldc.i4.1 IL_01eb: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_01f0: dup IL_01f1: ldc.i4.0 IL_01f2: ldc.i4.0 IL_01f3: ldnull IL_01f4: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_01f9: stelem.ref IL_01fa: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::GetMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_01ff: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0204: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__3' IL_0209: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__3' IL_020e: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0213: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__3' IL_0218: ldarg.1 IL_0219: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_021e: callvirt instance !3 class [mscorlib]System.Func`4::Invoke(!0, !1, !2) IL_0223: br.s IL_0226 IL_0225: ldloc.0 IL_0226: callvirt instance void class [mscorlib]System.Action`3::Invoke(!0, !1, !2) IL_022b: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__8' IL_0230: brtrue.s IL_025e IL_0232: ldc.i4.0 IL_0233: ldc.i4.s 83 IL_0235: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_023a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_023f: ldc.i4.1 IL_0240: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_0245: dup IL_0246: ldc.i4.0 IL_0247: ldc.i4.0 IL_0248: ldnull IL_0249: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_024e: stelem.ref IL_024f: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::UnaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0254: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0259: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__8' IL_025e: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__8' IL_0263: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0268: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__8' IL_026d: ldc.i4.3 IL_026e: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0273: stloc.0 IL_0274: ldloc.0 IL_0275: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_False(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_027a: brtrue IL_031d IL_027f: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__7' IL_0284: brtrue.s IL_02bb IL_0286: ldc.i4.8 IL_0287: ldc.i4.2 IL_0288: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_028d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0292: ldc.i4.2 IL_0293: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_0298: dup IL_0299: ldc.i4.0 IL_029a: ldc.i4.1 IL_029b: ldnull IL_029c: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_02a1: stelem.ref IL_02a2: dup IL_02a3: ldc.i4.1 IL_02a4: ldc.i4.0 IL_02a5: ldnull IL_02a6: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_02ab: stelem.ref IL_02ac: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::BinaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_02b1: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_02b6: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__7' IL_02bb: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__7' IL_02c0: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_02c5: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__7' IL_02ca: ldloc.0 IL_02cb: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__6' IL_02d0: brtrue.s IL_0301 IL_02d2: ldc.i4.0 IL_02d3: ldstr "P" IL_02d8: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_02dd: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_02e2: ldc.i4.1 IL_02e3: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_02e8: dup IL_02e9: ldc.i4.0 IL_02ea: ldc.i4.0 IL_02eb: ldnull IL_02ec: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_02f1: stelem.ref IL_02f2: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::GetMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_02f7: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_02fc: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__6' IL_0301: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__6' IL_0306: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_030b: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__6' IL_0310: ldarg.1 IL_0311: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0316: callvirt instance !3 class [mscorlib]System.Func`4::Invoke(!0, !1, !2) IL_031b: br.s IL_031e IL_031d: ldloc.0 IL_031e: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0323: brfalse.s IL_0330 IL_0325: ldc.i4.4 IL_0326: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_032b: call void [mscorlib]System.Console::WriteLine(object) IL_0330: ldc.i4.5 IL_0331: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_0336: stloc.0 IL_0337: ldloc.0 IL_0338: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::op_True(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass) IL_033d: brtrue IL_0428 IL_0342: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__11' IL_0347: brtrue.s IL_0375 IL_0349: ldc.i4.0 IL_034a: ldc.i4.s 83 IL_034c: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_0351: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0356: ldc.i4.1 IL_0357: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_035c: dup IL_035d: ldc.i4.0 IL_035e: ldc.i4.0 IL_035f: ldnull IL_0360: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0365: stelem.ref IL_0366: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::UnaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_036b: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0370: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__11' IL_0375: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__11' IL_037a: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_037f: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__11' IL_0384: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__10' IL_0389: brtrue.s IL_03c1 IL_038b: ldc.i4.8 IL_038c: ldc.i4.s 36 IL_038e: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_0393: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0398: ldc.i4.2 IL_0399: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_039e: dup IL_039f: ldc.i4.0 IL_03a0: ldc.i4.1 IL_03a1: ldnull IL_03a2: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_03a7: stelem.ref IL_03a8: dup IL_03a9: ldc.i4.1 IL_03aa: ldc.i4.0 IL_03ab: ldnull IL_03ac: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_03b1: stelem.ref IL_03b2: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::BinaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_03b7: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_03bc: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__10' IL_03c1: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__10' IL_03c6: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_03cb: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__10' IL_03d0: ldloc.0 IL_03d1: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__9' IL_03d6: brtrue.s IL_0407 IL_03d8: ldc.i4.0 IL_03d9: ldstr "P" IL_03de: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C IL_03e3: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_03e8: ldc.i4.1 IL_03e9: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_03ee: dup IL_03ef: ldc.i4.0 IL_03f0: ldc.i4.0 IL_03f1: ldnull IL_03f2: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_03f7: stelem.ref IL_03f8: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::GetMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_03fd: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0402: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__9' IL_0407: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__9' IL_040c: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0411: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C/'<>o__10'::'<>p__9' IL_0416: ldarg.1 IL_0417: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_041c: callvirt instance !3 class [mscorlib]System.Func`4::Invoke(!0, !1, !2) IL_0421: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0426: brfalse.s IL_0433 IL_0428: ldc.i4.6 IL_0429: call class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C::GetC(int32) IL_042e: call void [mscorlib]System.Console::WriteLine(object) IL_0433: ret } // end of method C::WithDynamic .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 ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.BaseClass::.ctor() IL_0006: ret } // end of method C::.ctor } // end of class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.C .class private sequential ansi sealed beforefieldinit ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S extends [mscorlib]System.ValueType { .class abstract auto ansi sealed nested private beforefieldinit '<>o__11' extends [mscorlib]System.Object { .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__0' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__1' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__2' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__3' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__4' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__5' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__6' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__7' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__8' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__9' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__10' .field public static class [System.Core]System.Runtime.CompilerServices.CallSite`1> '<>p__11' } // end of class '<>o__11' .field private initonly bool val .method public hidebysig specialname rtspecialname instance void .ctor(bool val) cil managed { // Code size 8 (0x8) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldarg.1 IL_0002: stfld bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::val IL_0007: ret } // end of method S::.ctor .method public hidebysig specialname static bool op_True(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S x) cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::val IL_0006: ret } // end of method S::op_True .method public hidebysig specialname static bool op_False(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S x) cil managed { // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::val IL_0006: ret } // end of method S::op_False .method public hidebysig specialname static valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S op_BitwiseAnd(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S x, valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S y) cil managed { // Code size 19 (0x13) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::val IL_0006: ldarg.1 IL_0007: ldfld bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::val IL_000c: and IL_000d: newobj instance void ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::.ctor(bool) IL_0012: ret } // end of method S::op_BitwiseAnd .method public hidebysig specialname static valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S op_BitwiseOr(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S x, valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S y) cil managed { // Code size 19 (0x13) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::val IL_0006: ldarg.1 IL_0007: ldfld bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::val IL_000c: or IL_000d: newobj instance void ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::.ctor(bool) IL_0012: ret } // end of method S::op_BitwiseOr .method public hidebysig specialname static valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S op_LogicalNot(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S x) cil managed { // Code size 15 (0xf) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldfld bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::val IL_0006: ldc.i4.0 IL_0007: ceq IL_0009: newobj instance void ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::.ctor(bool) IL_000e: ret } // end of method S::op_LogicalNot .method public hidebysig static valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S Get(int32 i) cil managed { // Code size 10 (0xa) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldc.i4.0 IL_0002: cgt IL_0004: newobj instance void ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::.ctor(bool) IL_0009: ret } // end of method S::Get .method public hidebysig static valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S LogicAnd() cil managed { // Code size 30 (0x1e) .maxstack 2 .locals init (valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S V_0) IL_0000: ldc.i4.1 IL_0001: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_0006: stloc.0 IL_0007: ldloc.0 IL_0008: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_False(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_000d: brtrue.s IL_001c IL_000f: ldloc.0 IL_0010: ldc.i4.2 IL_0011: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_0016: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_BitwiseAnd(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S, valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_001b: ret IL_001c: ldloc.0 IL_001d: ret } // end of method S::LogicAnd .method public hidebysig static valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S LogicOr() cil managed { // Code size 30 (0x1e) .maxstack 2 .locals init (valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S V_0) IL_0000: ldc.i4.1 IL_0001: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_0006: stloc.0 IL_0007: ldloc.0 IL_0008: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_True(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_000d: brtrue.s IL_001c IL_000f: ldloc.0 IL_0010: ldc.i4.2 IL_0011: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_0016: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_BitwiseOr(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S, valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_001b: ret IL_001c: ldloc.0 IL_001d: ret } // end of method S::LogicOr .method public hidebysig instance void InConditionDetection() cil managed { // Code size 128 (0x80) .maxstack 2 .locals init (valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S V_0) IL_0000: ldstr "a" IL_0005: call void [mscorlib]System.Console::WriteLine(string) IL_000a: ldc.i4.1 IL_000b: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_0010: stloc.0 IL_0011: ldloc.0 IL_0012: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_False(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_0017: brtrue.s IL_0027 IL_0019: ldloc.0 IL_001a: ldc.i4.2 IL_001b: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_0020: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_BitwiseAnd(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S, valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_0025: br.s IL_0028 IL_0027: ldloc.0 IL_0028: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_True(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_002d: brfalse.s IL_003b IL_002f: ldstr "b" IL_0034: call void [mscorlib]System.Console::WriteLine(string) IL_0039: br.s IL_0045 IL_003b: ldstr "c" IL_0040: call void [mscorlib]System.Console::WriteLine(string) IL_0045: ldc.i4.1 IL_0046: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_004b: stloc.0 IL_004c: ldloc.0 IL_004d: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_True(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_0052: brtrue.s IL_0062 IL_0054: ldloc.0 IL_0055: ldc.i4.2 IL_0056: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_005b: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_BitwiseOr(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S, valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_0060: br.s IL_0063 IL_0062: ldloc.0 IL_0063: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_True(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_0068: brfalse.s IL_0075 IL_006a: ldstr "d" IL_006f: call void [mscorlib]System.Console::WriteLine(string) IL_0074: ret IL_0075: ldstr "e" IL_007a: call void [mscorlib]System.Console::WriteLine(string) IL_007f: ret } // end of method S::InConditionDetection .method public hidebysig instance void WithDynamic(object d) cil managed { .param [1] .custom instance void [System.Core]System.Runtime.CompilerServices.DynamicAttribute::.ctor() = ( 01 00 00 00 ) // Code size 1101 (0x44d) .maxstack 14 .locals init (valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S V_0) IL_0000: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__2' IL_0005: brtrue.s IL_0046 IL_0007: ldc.i4 0x100 IL_000c: ldstr "WriteLine" IL_0011: ldnull IL_0012: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_0017: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_001c: ldc.i4.2 IL_001d: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_0022: dup IL_0023: ldc.i4.0 IL_0024: ldc.i4.s 33 IL_0026: ldnull IL_0027: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_002c: stelem.ref IL_002d: dup IL_002e: ldc.i4.1 IL_002f: ldc.i4.0 IL_0030: ldnull IL_0031: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0036: stelem.ref IL_0037: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::InvokeMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_003c: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0041: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__2' IL_0046: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__2' IL_004b: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0050: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__2' IL_0055: ldtoken [mscorlib]System.Console IL_005a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_005f: ldc.i4.1 IL_0060: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_0065: stloc.0 IL_0066: ldloc.0 IL_0067: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_False(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_006c: brtrue IL_010f IL_0071: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__1' IL_0076: brtrue.s IL_00ad IL_0078: ldc.i4.8 IL_0079: ldc.i4.2 IL_007a: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_007f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0084: ldc.i4.2 IL_0085: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_008a: dup IL_008b: ldc.i4.0 IL_008c: ldc.i4.1 IL_008d: ldnull IL_008e: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0093: stelem.ref IL_0094: dup IL_0095: ldc.i4.1 IL_0096: ldc.i4.0 IL_0097: ldnull IL_0098: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_009d: stelem.ref IL_009e: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::BinaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_00a3: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_00a8: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__1' IL_00ad: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__1' IL_00b2: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_00b7: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__1' IL_00bc: ldloc.0 IL_00bd: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__0' IL_00c2: brtrue.s IL_00f3 IL_00c4: ldc.i4.0 IL_00c5: ldstr "P" IL_00ca: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_00cf: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_00d4: ldc.i4.1 IL_00d5: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_00da: dup IL_00db: ldc.i4.0 IL_00dc: ldc.i4.0 IL_00dd: ldnull IL_00de: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_00e3: stelem.ref IL_00e4: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::GetMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_00e9: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_00ee: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__0' IL_00f3: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__0' IL_00f8: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_00fd: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__0' IL_0102: ldarg.1 IL_0103: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0108: callvirt instance !3 class [mscorlib]System.Func`4::Invoke(!0, !1, !2) IL_010d: br.s IL_0115 IL_010f: ldloc.0 IL_0110: box ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_0115: callvirt instance void class [mscorlib]System.Action`3::Invoke(!0, !1, !2) IL_011a: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__5' IL_011f: brtrue.s IL_0160 IL_0121: ldc.i4 0x100 IL_0126: ldstr "WriteLine" IL_012b: ldnull IL_012c: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_0131: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0136: ldc.i4.2 IL_0137: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_013c: dup IL_013d: ldc.i4.0 IL_013e: ldc.i4.s 33 IL_0140: ldnull IL_0141: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0146: stelem.ref IL_0147: dup IL_0148: ldc.i4.1 IL_0149: ldc.i4.0 IL_014a: ldnull IL_014b: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0150: stelem.ref IL_0151: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::InvokeMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Collections.Generic.IEnumerable`1, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0156: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_015b: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__5' IL_0160: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__5' IL_0165: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_016a: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__5' IL_016f: ldtoken [mscorlib]System.Console IL_0174: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0179: ldc.i4.2 IL_017a: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_017f: stloc.0 IL_0180: ldloc.0 IL_0181: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_True(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_0186: brtrue IL_022a IL_018b: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__4' IL_0190: brtrue.s IL_01c8 IL_0192: ldc.i4.8 IL_0193: ldc.i4.s 36 IL_0195: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_019a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_019f: ldc.i4.2 IL_01a0: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_01a5: dup IL_01a6: ldc.i4.0 IL_01a7: ldc.i4.1 IL_01a8: ldnull IL_01a9: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_01ae: stelem.ref IL_01af: dup IL_01b0: ldc.i4.1 IL_01b1: ldc.i4.0 IL_01b2: ldnull IL_01b3: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_01b8: stelem.ref IL_01b9: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::BinaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_01be: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_01c3: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__4' IL_01c8: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__4' IL_01cd: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_01d2: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__4' IL_01d7: ldloc.0 IL_01d8: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__3' IL_01dd: brtrue.s IL_020e IL_01df: ldc.i4.0 IL_01e0: ldstr "P" IL_01e5: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_01ea: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_01ef: ldc.i4.1 IL_01f0: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_01f5: dup IL_01f6: ldc.i4.0 IL_01f7: ldc.i4.0 IL_01f8: ldnull IL_01f9: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_01fe: stelem.ref IL_01ff: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::GetMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0204: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0209: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__3' IL_020e: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__3' IL_0213: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0218: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__3' IL_021d: ldarg.1 IL_021e: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0223: callvirt instance !3 class [mscorlib]System.Func`4::Invoke(!0, !1, !2) IL_0228: br.s IL_0230 IL_022a: ldloc.0 IL_022b: box ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_0230: callvirt instance void class [mscorlib]System.Action`3::Invoke(!0, !1, !2) IL_0235: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__8' IL_023a: brtrue.s IL_0268 IL_023c: ldc.i4.0 IL_023d: ldc.i4.s 83 IL_023f: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_0244: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_0249: ldc.i4.1 IL_024a: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_024f: dup IL_0250: ldc.i4.0 IL_0251: ldc.i4.0 IL_0252: ldnull IL_0253: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0258: stelem.ref IL_0259: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::UnaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_025e: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0263: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__8' IL_0268: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__8' IL_026d: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0272: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__8' IL_0277: ldc.i4.3 IL_0278: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_027d: stloc.0 IL_027e: ldloc.0 IL_027f: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_False(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_0284: brtrue IL_0327 IL_0289: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__7' IL_028e: brtrue.s IL_02c5 IL_0290: ldc.i4.8 IL_0291: ldc.i4.2 IL_0292: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_0297: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_029c: ldc.i4.2 IL_029d: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_02a2: dup IL_02a3: ldc.i4.0 IL_02a4: ldc.i4.1 IL_02a5: ldnull IL_02a6: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_02ab: stelem.ref IL_02ac: dup IL_02ad: ldc.i4.1 IL_02ae: ldc.i4.0 IL_02af: ldnull IL_02b0: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_02b5: stelem.ref IL_02b6: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::BinaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_02bb: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_02c0: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__7' IL_02c5: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__7' IL_02ca: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_02cf: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__7' IL_02d4: ldloc.0 IL_02d5: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__6' IL_02da: brtrue.s IL_030b IL_02dc: ldc.i4.0 IL_02dd: ldstr "P" IL_02e2: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_02e7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_02ec: ldc.i4.1 IL_02ed: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_02f2: dup IL_02f3: ldc.i4.0 IL_02f4: ldc.i4.0 IL_02f5: ldnull IL_02f6: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_02fb: stelem.ref IL_02fc: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::GetMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0301: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0306: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__6' IL_030b: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__6' IL_0310: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0315: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__6' IL_031a: ldarg.1 IL_031b: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0320: callvirt instance !3 class [mscorlib]System.Func`4::Invoke(!0, !1, !2) IL_0325: br.s IL_032d IL_0327: ldloc.0 IL_0328: box ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_032d: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0332: brfalse.s IL_0344 IL_0334: ldc.i4.4 IL_0335: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_033a: box ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_033f: call void [mscorlib]System.Console::WriteLine(object) IL_0344: ldc.i4.5 IL_0345: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_034a: stloc.0 IL_034b: ldloc.0 IL_034c: call bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::op_True(valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S) IL_0351: brtrue IL_043c IL_0356: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__11' IL_035b: brtrue.s IL_0389 IL_035d: ldc.i4.0 IL_035e: ldc.i4.s 83 IL_0360: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_0365: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_036a: ldc.i4.1 IL_036b: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_0370: dup IL_0371: ldc.i4.0 IL_0372: ldc.i4.0 IL_0373: ldnull IL_0374: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_0379: stelem.ref IL_037a: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::UnaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_037f: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0384: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__11' IL_0389: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__11' IL_038e: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0393: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__11' IL_0398: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__10' IL_039d: brtrue.s IL_03d5 IL_039f: ldc.i4.8 IL_03a0: ldc.i4.s 36 IL_03a2: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_03a7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_03ac: ldc.i4.2 IL_03ad: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_03b2: dup IL_03b3: ldc.i4.0 IL_03b4: ldc.i4.1 IL_03b5: ldnull IL_03b6: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_03bb: stelem.ref IL_03bc: dup IL_03bd: ldc.i4.1 IL_03be: ldc.i4.0 IL_03bf: ldnull IL_03c0: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_03c5: stelem.ref IL_03c6: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::BinaryOperation(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, valuetype [System.Core]System.Linq.Expressions.ExpressionType, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_03cb: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_03d0: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__10' IL_03d5: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__10' IL_03da: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_03df: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__10' IL_03e4: ldloc.0 IL_03e5: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__9' IL_03ea: brtrue.s IL_041b IL_03ec: ldc.i4.0 IL_03ed: ldstr "P" IL_03f2: ldtoken ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_03f7: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_03fc: ldc.i4.1 IL_03fd: newarr [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo IL_0402: dup IL_0403: ldc.i4.0 IL_0404: ldc.i4.0 IL_0405: ldnull IL_0406: call class [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo::Create(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfoFlags, string) IL_040b: stelem.ref IL_040c: call class [System.Core]System.Runtime.CompilerServices.CallSiteBinder [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.Binder::GetMember(valuetype [Microsoft.CSharp]Microsoft.CSharp.RuntimeBinder.CSharpBinderFlags, string, class [mscorlib]System.Type, class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0411: call class [System.Core]System.Runtime.CompilerServices.CallSite`1 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Create(class [System.Core]System.Runtime.CompilerServices.CallSiteBinder) IL_0416: stsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__9' IL_041b: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__9' IL_0420: ldfld !0 class [System.Core]System.Runtime.CompilerServices.CallSite`1>::Target IL_0425: ldsfld class [System.Core]System.Runtime.CompilerServices.CallSite`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S/'<>o__11'::'<>p__9' IL_042a: ldarg.1 IL_042b: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_0430: callvirt instance !3 class [mscorlib]System.Func`4::Invoke(!0, !1, !2) IL_0435: callvirt instance !2 class [mscorlib]System.Func`3::Invoke(!0, !1) IL_043a: brfalse.s IL_044c IL_043c: ldc.i4.6 IL_043d: call valuetype ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S::Get(int32) IL_0442: box ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S IL_0447: call void [mscorlib]System.Console::WriteLine(object) IL_044c: ret } // end of method S::WithDynamic } // end of class ICSharpCode.Decompiler.Tests.TestCases.Pretty.CustomShortCircuitOperators.S // ============================================================= // *********** DISASSEMBLY COMPLETE ***********************