diff --git a/ICSharpCode.Decompiler.Tests/ICSharpCode.Decompiler.Tests.csproj b/ICSharpCode.Decompiler.Tests/ICSharpCode.Decompiler.Tests.csproj
index ba0dc00cc..7d753aa81 100644
--- a/ICSharpCode.Decompiler.Tests/ICSharpCode.Decompiler.Tests.csproj
+++ b/ICSharpCode.Decompiler.Tests/ICSharpCode.Decompiler.Tests.csproj
@@ -86,6 +86,7 @@
+
diff --git a/ICSharpCode.Decompiler.Tests/PrettyTestRunner.cs b/ICSharpCode.Decompiler.Tests/PrettyTestRunner.cs
index 6da0ade88..da01ee8ee 100644
--- a/ICSharpCode.Decompiler.Tests/PrettyTestRunner.cs
+++ b/ICSharpCode.Decompiler.Tests/PrettyTestRunner.cs
@@ -133,6 +133,12 @@ namespace ICSharpCode.Decompiler.Tests
Run(cscOptions: cscOptions);
}
+ [Test]
+ public void QueryExpressions([ValueSource("defaultOptions")] CompilerOptions cscOptions)
+ {
+ Run(cscOptions: cscOptions);
+ }
+
void Run([CallerMemberName] string testName = null, AssemblerOptions asmOptions = AssemblerOptions.None, CompilerOptions cscOptions = CompilerOptions.None)
{
var ilFile = Path.Combine(TestCasePath, testName);
diff --git a/ICSharpCode.Decompiler.Tests/TestCases/Pretty/QueryExpressions.cs b/ICSharpCode.Decompiler.Tests/TestCases/Pretty/QueryExpressions.cs
new file mode 100644
index 000000000..890af6dc0
--- /dev/null
+++ b/ICSharpCode.Decompiler.Tests/TestCases/Pretty/QueryExpressions.cs
@@ -0,0 +1,184 @@
+// Copyright (c) AlphaSierraPapa for the SharpDevelop Team
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy of this
+// software and associated documentation files (the "Software"), to deal in the Software
+// without restriction, including without limitation the rights to use, copy, modify, merge,
+// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
+// to whom the Software is furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in all copies or
+// substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
+// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
+// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+// DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace ICSharpCode.Decompiler.Tests.TestCases.Pretty
+{
+ public class QueryExpressions
+ {
+ public class Customer
+ {
+ public int CustomerID;
+ public IEnumerable Orders;
+ public string Name;
+ public string Country;
+ public string City;
+ }
+
+ public class Order
+ {
+ public int OrderID;
+ public DateTime OrderDate;
+ public Customer Customer;
+ public int CustomerID;
+ public decimal Total;
+ public IEnumerable Details;
+ }
+
+ public class OrderDetail
+ {
+ public decimal UnitPrice;
+ public int Quantity;
+ }
+
+ public IEnumerable customers;
+ public IEnumerable orders;
+
+ public object MultipleWhere()
+ {
+ return from c in this.customers
+ where c.Orders.Count() > 10
+ where c.Country == "DE"
+ select c;
+ }
+
+ public object SelectManyFollowedBySelect()
+ {
+ return from c in this.customers
+ from o in c.Orders
+ select new {
+ c.Name,
+ o.OrderID,
+ o.Total
+ };
+ }
+
+ public object SelectManyFollowedByOrderBy()
+ {
+ return from c in this.customers
+ from o in c.Orders
+ orderby o.Total descending
+ select new {
+ c.Name,
+ o.OrderID,
+ o.Total
+ };
+ }
+
+ public object MultipleSelectManyFollowedBySelect()
+ {
+ return from c in this.customers
+ from o in c.Orders
+ from d in o.Details
+ select new {
+ c.Name,
+ o.OrderID,
+ d.Quantity
+ };
+ }
+
+ public object MultipleSelectManyFollowedByLet()
+ {
+ return from c in this.customers
+ from o in c.Orders
+ from d in o.Details
+ let x = d.Quantity * d.UnitPrice
+ select new {
+ c.Name,
+ o.OrderID,
+ x
+ };
+ }
+
+ public object FromLetWhereSelect()
+ {
+ return from o in this.orders
+ let t = o.Details.Sum((Func)((OrderDetail d) => d.UnitPrice * d.Quantity))
+ where t >= 1000m
+ select new {
+ OrderID = o.OrderID,
+ Total = t
+ };
+ }
+
+ public object MultipleLet()
+ {
+ return from a in this.customers
+ let b = a.Country
+ let c = a.Name
+ select b + c;
+ }
+
+ public object Join()
+ {
+ return from c in this.customers
+ join o in this.orders on c.CustomerID equals o.CustomerID
+ select new {
+ c.Name,
+ o.OrderDate,
+ o.Total
+ };
+ }
+
+ public object JoinInto()
+ {
+ return from c in this.customers
+ join o in this.orders on c.CustomerID equals o.CustomerID into co
+ let n = co.Count()
+ // should be n >= 10
+ where !(n < 10)
+ select new {
+ Name = c.Name,
+ OrderCount = n
+ };
+ }
+
+ public object OrderBy()
+ {
+ return from o in this.orders
+ orderby o.Customer.Name, o.Total descending
+ select o;
+ }
+
+ public object GroupBy()
+ {
+ return from c in this.customers
+ group c.Name by c.Country;
+ }
+
+ public object ExplicitType()
+ {
+ return from Customer c in this.customers
+ where c.City == "London"
+ select c;
+ }
+
+ public object QueryContinuation()
+ {
+ return from c in this.customers
+ group c by c.Country into g
+ select new {
+ Country = g.Key,
+ CustCount = g.Count()
+ };
+ }
+ }
+}
diff --git a/ICSharpCode.Decompiler.Tests/TestCases/Pretty/QueryExpressions.il b/ICSharpCode.Decompiler.Tests/TestCases/Pretty/QueryExpressions.il
new file mode 100644
index 000000000..c8b0d5076
--- /dev/null
+++ b/ICSharpCode.Decompiler.Tests/TestCases/Pretty/QueryExpressions.il
@@ -0,0 +1,4742 @@
+
+// Microsoft (R) .NET Framework IL Disassembler. Version 4.0.30319.17929
+// Copyright (c) Microsoft Corporation. All rights reserved.
+
+
+
+// Metadata version: v4.0.30319
+.assembly extern mscorlib
+{
+ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
+ .ver 4:0:0:0
+}
+.assembly extern System.Core
+{
+ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
+ .ver 4:0:0:0
+}
+.assembly o43t14jy
+{
+ .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.
+ .permissionset reqmin
+ = {[mscorlib]System.Security.Permissions.SecurityPermissionAttribute = {property bool 'SkipVerification' = bool(true)}}
+ .hash algorithm 0x00008004
+ .ver 0:0:0:0
+}
+.module o43t14jy.dll
+// MVID: {6BAE605B-B0FE-4E01-BE5E-39B7D00E7902}
+.custom instance void [mscorlib]System.Security.UnverifiableCodeAttribute::.ctor() = ( 01 00 00 00 )
+.imagebase 0x10000000
+.file alignment 0x00000200
+.stackreserve 0x00100000
+.subsystem 0x0003 // WINDOWS_CUI
+.corflags 0x00000001 // ILONLY
+// Image base: 0x03170000
+
+
+// =============== CLASS MEMBERS DECLARATION ===================
+
+.class public auto ansi beforefieldinit ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions
+ extends [mscorlib]System.Object
+{
+ .class auto ansi nested public beforefieldinit Customer
+ extends [mscorlib]System.Object
+ {
+ .field public int32 CustomerID
+ .field public class [mscorlib]System.Collections.Generic.IEnumerable`1 Orders
+ .field public string Name
+ .field public string Country
+ .field public string City
+ .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 Customer::.ctor
+
+ } // end of class Customer
+
+ .class auto ansi nested public beforefieldinit Order
+ extends [mscorlib]System.Object
+ {
+ .field public int32 OrderID
+ .field public valuetype [mscorlib]System.DateTime OrderDate
+ .field public class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer Customer
+ .field public int32 CustomerID
+ .field public valuetype [mscorlib]System.Decimal Total
+ .field public class [mscorlib]System.Collections.Generic.IEnumerable`1 Details
+ .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 Order::.ctor
+
+ } // end of class Order
+
+ .class auto ansi nested public beforefieldinit OrderDetail
+ extends [mscorlib]System.Object
+ {
+ .field public valuetype [mscorlib]System.Decimal UnitPrice
+ .field public int32 Quantity
+ .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 OrderDetail::.ctor
+
+ } // end of class OrderDetail
+
+ .field public class [mscorlib]System.Collections.Generic.IEnumerable`1 customers
+ .field public class [mscorlib]System.Collections.Generic.IEnumerable`1 orders
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate2'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate3'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2> 'CS$<>9__CachedAnonymousMethodDelegate7'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`3f__AnonymousType0`3'> 'CS$<>9__CachedAnonymousMethodDelegate8'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2> 'CS$<>9__CachedAnonymousMethodDelegatee'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`3f__AnonymousType1`2'> 'CS$<>9__CachedAnonymousMethodDelegatef'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType1`2',valuetype [mscorlib]System.Decimal> 'CS$<>9__CachedAnonymousMethodDelegate10'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType1`2',class '<>f__AnonymousType0`3'> 'CS$<>9__CachedAnonymousMethodDelegate11'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2> 'CS$<>9__CachedAnonymousMethodDelegate18'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`3f__AnonymousType1`2'> 'CS$<>9__CachedAnonymousMethodDelegate19'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType1`2',class [mscorlib]System.Collections.Generic.IEnumerable`1> 'CS$<>9__CachedAnonymousMethodDelegate1a'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`3f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail,class '<>f__AnonymousType2`3'> 'CS$<>9__CachedAnonymousMethodDelegate1b'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2> 'CS$<>9__CachedAnonymousMethodDelegate25'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`3f__AnonymousType1`2'> 'CS$<>9__CachedAnonymousMethodDelegate26'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType1`2',class [mscorlib]System.Collections.Generic.IEnumerable`1> 'CS$<>9__CachedAnonymousMethodDelegate27'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`3f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail,class '<>f__AnonymousType3`2'f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail>> 'CS$<>9__CachedAnonymousMethodDelegate28'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType3`2'f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail>,class '<>f__AnonymousType4`2'f__AnonymousType3`2'f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail>,valuetype [mscorlib]System.Decimal>> 'CS$<>9__CachedAnonymousMethodDelegate29'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType4`2'f__AnonymousType3`2'f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail>,valuetype [mscorlib]System.Decimal>,class '<>f__AnonymousType5`3'> 'CS$<>9__CachedAnonymousMethodDelegate2a'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType6`2'> 'CS$<>9__CachedAnonymousMethodDelegate30'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType6`2',bool> 'CS$<>9__CachedAnonymousMethodDelegate31'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType6`2',class '<>f__AnonymousType7`2'> 'CS$<>9__CachedAnonymousMethodDelegate32'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate33'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType8`2'> 'CS$<>9__CachedAnonymousMethodDelegate39'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType8`2',class '<>f__AnonymousType9`2'f__AnonymousType8`2',string>> 'CS$<>9__CachedAnonymousMethodDelegate3a'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousType9`2'f__AnonymousType8`2',string>,string> 'CS$<>9__CachedAnonymousMethodDelegate3b'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate40'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate41'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`3f__AnonymousTypea`3'> 'CS$<>9__CachedAnonymousMethodDelegate42'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate4b'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate4c'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`3,class '<>f__AnonymousTypeb`2'>> 'CS$<>9__CachedAnonymousMethodDelegate4d'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousTypeb`2'>,class '<>f__AnonymousTypec`2'f__AnonymousTypeb`2'>,int32>> 'CS$<>9__CachedAnonymousMethodDelegate4e'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousTypec`2'f__AnonymousTypeb`2'>,int32>,bool> 'CS$<>9__CachedAnonymousMethodDelegate4f'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2f__AnonymousTypec`2'f__AnonymousTypeb`2'>,int32>,class '<>f__AnonymousTyped`2'> 'CS$<>9__CachedAnonymousMethodDelegate50'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate53'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate54'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate57'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate58'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate5a'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2 'CS$<>9__CachedAnonymousMethodDelegate5d'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .field private static class [mscorlib]System.Func`2,class '<>f__AnonymousTypee`2'> 'CS$<>9__CachedAnonymousMethodDelegate5e'
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .method public hidebysig instance object
+ MultipleWhere() cil managed
+ {
+ // Code size 84 (0x54)
+ .maxstack 3
+ .locals init (object V_0)
+ IL_0000: nop
+ IL_0001: ldarg.0
+ IL_0002: ldfld class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::customers
+ IL_0007: ldsfld class [mscorlib]System.Func`2 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate2'
+ IL_000c: brtrue.s IL_0021
+
+ IL_000e: ldnull
+ IL_000f: ldftn bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__0'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer)
+ IL_0015: newobj instance void class [mscorlib]System.Func`2::.ctor(object,
+ native int)
+ IL_001a: stsfld class [mscorlib]System.Func`2 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate2'
+ IL_001f: br.s IL_0021
+
+ IL_0021: ldsfld class [mscorlib]System.Func`2 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate2'
+ IL_0026: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::Where(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2)
+ IL_002b: ldsfld class [mscorlib]System.Func`2 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate3'
+ IL_0030: brtrue.s IL_0045
+
+ IL_0032: ldnull
+ IL_0033: ldftn bool ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__1'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer)
+ IL_0039: newobj instance void class [mscorlib]System.Func`2::.ctor(object,
+ native int)
+ IL_003e: stsfld class [mscorlib]System.Func`2 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate3'
+ IL_0043: br.s IL_0045
+
+ IL_0045: ldsfld class [mscorlib]System.Func`2 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate3'
+ IL_004a: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::Where(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2)
+ IL_004f: stloc.0
+ IL_0050: br.s IL_0052
+
+ IL_0052: ldloc.0
+ IL_0053: ret
+ } // end of method QueryExpressions::MultipleWhere
+
+ .method public hidebysig instance object
+ SelectManyFollowedBySelect() cil managed
+ {
+ // Code size 79 (0x4f)
+ .maxstack 4
+ .locals init (object V_0)
+ IL_0000: nop
+ IL_0001: ldarg.0
+ IL_0002: ldfld class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::customers
+ IL_0007: ldsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate7'
+ IL_000c: brtrue.s IL_0021
+
+ IL_000e: ldnull
+ IL_000f: ldftn class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__5'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer)
+ IL_0015: newobj instance void class [mscorlib]System.Func`2>::.ctor(object,
+ native int)
+ IL_001a: stsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate7'
+ IL_001f: br.s IL_0021
+
+ IL_0021: ldsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate7'
+ IL_0026: ldsfld class [mscorlib]System.Func`3f__AnonymousType0`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate8'
+ IL_002b: brtrue.s IL_0040
+
+ IL_002d: ldnull
+ IL_002e: ldftn class '<>f__AnonymousType0`3' ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__6'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer,
+ class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Order)
+ IL_0034: newobj instance void class [mscorlib]System.Func`3f__AnonymousType0`3'>::.ctor(object,
+ native int)
+ IL_0039: stsfld class [mscorlib]System.Func`3f__AnonymousType0`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate8'
+ IL_003e: br.s IL_0040
+
+ IL_0040: ldsfld class [mscorlib]System.Func`3f__AnonymousType0`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate8'
+ IL_0045: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::SelectManyf__AnonymousType0`3'>(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2>,
+ class [mscorlib]System.Func`3)
+ IL_004a: stloc.0
+ IL_004b: br.s IL_004d
+
+ IL_004d: ldloc.0
+ IL_004e: ret
+ } // end of method QueryExpressions::SelectManyFollowedBySelect
+
+ .method public hidebysig instance object
+ SelectManyFollowedByOrderBy() cil managed
+ {
+ // Code size 151 (0x97)
+ .maxstack 4
+ .locals init (object V_0)
+ IL_0000: nop
+ IL_0001: ldarg.0
+ IL_0002: ldfld class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::customers
+ IL_0007: ldsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegatee'
+ IL_000c: brtrue.s IL_0021
+
+ IL_000e: ldnull
+ IL_000f: ldftn class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__a'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer)
+ IL_0015: newobj instance void class [mscorlib]System.Func`2>::.ctor(object,
+ native int)
+ IL_001a: stsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegatee'
+ IL_001f: br.s IL_0021
+
+ IL_0021: ldsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegatee'
+ IL_0026: ldsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegatef'
+ IL_002b: brtrue.s IL_0040
+
+ IL_002d: ldnull
+ IL_002e: ldftn class '<>f__AnonymousType1`2' ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__b'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer,
+ class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Order)
+ IL_0034: newobj instance void class [mscorlib]System.Func`3f__AnonymousType1`2'>::.ctor(object,
+ native int)
+ IL_0039: stsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegatef'
+ IL_003e: br.s IL_0040
+
+ IL_0040: ldsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegatef'
+ IL_0045: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::SelectManyf__AnonymousType1`2'>(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2>,
+ class [mscorlib]System.Func`3)
+ IL_004a: ldsfld class [mscorlib]System.Func`2f__AnonymousType1`2',valuetype [mscorlib]System.Decimal> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate10'
+ IL_004f: brtrue.s IL_0064
+
+ IL_0051: ldnull
+ IL_0052: ldftn valuetype [mscorlib]System.Decimal ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__c'(class '<>f__AnonymousType1`2')
+ IL_0058: newobj instance void class [mscorlib]System.Func`2f__AnonymousType1`2',valuetype [mscorlib]System.Decimal>::.ctor(object,
+ native int)
+ IL_005d: stsfld class [mscorlib]System.Func`2f__AnonymousType1`2',valuetype [mscorlib]System.Decimal> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate10'
+ IL_0062: br.s IL_0064
+
+ IL_0064: ldsfld class [mscorlib]System.Func`2f__AnonymousType1`2',valuetype [mscorlib]System.Decimal> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate10'
+ IL_0069: call class [System.Core]System.Linq.IOrderedEnumerable`1 [System.Core]System.Linq.Enumerable::OrderByDescendingf__AnonymousType1`2',valuetype [mscorlib]System.Decimal>(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2)
+ IL_006e: ldsfld class [mscorlib]System.Func`2f__AnonymousType1`2',class '<>f__AnonymousType0`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate11'
+ IL_0073: brtrue.s IL_0088
+
+ IL_0075: ldnull
+ IL_0076: ldftn class '<>f__AnonymousType0`3' ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__d'(class '<>f__AnonymousType1`2')
+ IL_007c: newobj instance void class [mscorlib]System.Func`2f__AnonymousType1`2',class '<>f__AnonymousType0`3'>::.ctor(object,
+ native int)
+ IL_0081: stsfld class [mscorlib]System.Func`2f__AnonymousType1`2',class '<>f__AnonymousType0`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate11'
+ IL_0086: br.s IL_0088
+
+ IL_0088: ldsfld class [mscorlib]System.Func`2f__AnonymousType1`2',class '<>f__AnonymousType0`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate11'
+ IL_008d: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::Selectf__AnonymousType1`2',class '<>f__AnonymousType0`3'>(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2)
+ IL_0092: stloc.0
+ IL_0093: br.s IL_0095
+
+ IL_0095: ldloc.0
+ IL_0096: ret
+ } // end of method QueryExpressions::SelectManyFollowedByOrderBy
+
+ .method public hidebysig instance object
+ MultipleSelectManyFollowedBySelect() cil managed
+ {
+ // Code size 146 (0x92)
+ .maxstack 4
+ .locals init (object V_0)
+ IL_0000: nop
+ IL_0001: ldarg.0
+ IL_0002: ldfld class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::customers
+ IL_0007: ldsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate18'
+ IL_000c: brtrue.s IL_0021
+
+ IL_000e: ldnull
+ IL_000f: ldftn class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__14'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer)
+ IL_0015: newobj instance void class [mscorlib]System.Func`2>::.ctor(object,
+ native int)
+ IL_001a: stsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate18'
+ IL_001f: br.s IL_0021
+
+ IL_0021: ldsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate18'
+ IL_0026: ldsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate19'
+ IL_002b: brtrue.s IL_0040
+
+ IL_002d: ldnull
+ IL_002e: ldftn class '<>f__AnonymousType1`2' ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__15'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer,
+ class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Order)
+ IL_0034: newobj instance void class [mscorlib]System.Func`3f__AnonymousType1`2'>::.ctor(object,
+ native int)
+ IL_0039: stsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate19'
+ IL_003e: br.s IL_0040
+
+ IL_0040: ldsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate19'
+ IL_0045: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::SelectManyf__AnonymousType1`2'>(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2>,
+ class [mscorlib]System.Func`3)
+ IL_004a: ldsfld class [mscorlib]System.Func`2f__AnonymousType1`2',class [mscorlib]System.Collections.Generic.IEnumerable`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate1a'
+ IL_004f: brtrue.s IL_0064
+
+ IL_0051: ldnull
+ IL_0052: ldftn class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__16'(class '<>f__AnonymousType1`2')
+ IL_0058: newobj instance void class [mscorlib]System.Func`2f__AnonymousType1`2',class [mscorlib]System.Collections.Generic.IEnumerable`1>::.ctor(object,
+ native int)
+ IL_005d: stsfld class [mscorlib]System.Func`2f__AnonymousType1`2',class [mscorlib]System.Collections.Generic.IEnumerable`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate1a'
+ IL_0062: br.s IL_0064
+
+ IL_0064: ldsfld class [mscorlib]System.Func`2f__AnonymousType1`2',class [mscorlib]System.Collections.Generic.IEnumerable`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate1a'
+ IL_0069: ldsfld class [mscorlib]System.Func`3f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail,class '<>f__AnonymousType2`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate1b'
+ IL_006e: brtrue.s IL_0083
+
+ IL_0070: ldnull
+ IL_0071: ldftn class '<>f__AnonymousType2`3' ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__17'(class '<>f__AnonymousType1`2',
+ class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail)
+ IL_0077: newobj instance void class [mscorlib]System.Func`3f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail,class '<>f__AnonymousType2`3'>::.ctor(object,
+ native int)
+ IL_007c: stsfld class [mscorlib]System.Func`3f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail,class '<>f__AnonymousType2`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate1b'
+ IL_0081: br.s IL_0083
+
+ IL_0083: ldsfld class [mscorlib]System.Func`3f__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail,class '<>f__AnonymousType2`3'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate1b'
+ IL_0088: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::SelectManyf__AnonymousType1`2',class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/OrderDetail,class '<>f__AnonymousType2`3'>(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2>,
+ class [mscorlib]System.Func`3)
+ IL_008d: stloc.0
+ IL_008e: br.s IL_0090
+
+ IL_0090: ldloc.0
+ IL_0091: ret
+ } // end of method QueryExpressions::MultipleSelectManyFollowedBySelect
+
+ .method public hidebysig instance object
+ MultipleSelectManyFollowedByLet() cil managed
+ {
+ // Code size 218 (0xda)
+ .maxstack 4
+ .locals init (object V_0)
+ IL_0000: nop
+ IL_0001: ldarg.0
+ IL_0002: ldfld class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::customers
+ IL_0007: ldsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate25'
+ IL_000c: brtrue.s IL_0021
+
+ IL_000e: ldnull
+ IL_000f: ldftn class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__1f'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer)
+ IL_0015: newobj instance void class [mscorlib]System.Func`2>::.ctor(object,
+ native int)
+ IL_001a: stsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate25'
+ IL_001f: br.s IL_0021
+
+ IL_0021: ldsfld class [mscorlib]System.Func`2> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate25'
+ IL_0026: ldsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate26'
+ IL_002b: brtrue.s IL_0040
+
+ IL_002d: ldnull
+ IL_002e: ldftn class '<>f__AnonymousType1`2' ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__20'(class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Customer,
+ class ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions/Order)
+ IL_0034: newobj instance void class [mscorlib]System.Func`3f__AnonymousType1`2'>::.ctor(object,
+ native int)
+ IL_0039: stsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate26'
+ IL_003e: br.s IL_0040
+
+ IL_0040: ldsfld class [mscorlib]System.Func`3f__AnonymousType1`2'> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate26'
+ IL_0045: call class [mscorlib]System.Collections.Generic.IEnumerable`1 [System.Core]System.Linq.Enumerable::SelectManyf__AnonymousType1`2'>(class [mscorlib]System.Collections.Generic.IEnumerable`1,
+ class [mscorlib]System.Func`2>,
+ class [mscorlib]System.Func`3)
+ IL_004a: ldsfld class [mscorlib]System.Func`2f__AnonymousType1`2',class [mscorlib]System.Collections.Generic.IEnumerable`1> ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'CS$<>9__CachedAnonymousMethodDelegate27'
+ IL_004f: brtrue.s IL_0064
+
+ IL_0051: ldnull
+ IL_0052: ldftn class [mscorlib]System.Collections.Generic.IEnumerable`1 ICSharpCode.Decompiler.Tests.TestCases.Pretty.QueryExpressions::'b__21'(class '<>f__AnonymousType1`2')
+ IL_0058: newobj instance void class [mscorlib]System.Func`2