Skip to content

Commit 39efe70

Browse files
committed
Move ParameterScope structure to the top of the LinqBindingCollection class declaration
1 parent 88e29fc commit 39efe70

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

Orm/Xtensive.Orm/Orm/Linq/LinqBindingCollection.cs

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,26 @@ namespace Xtensive.Orm.Linq
1515
[Serializable]
1616
internal class LinqBindingCollection : BindingCollection<ParameterExpression, ProjectionExpression>
1717
{
18+
internal readonly ref struct ParameterScope
19+
{
20+
private readonly LinqBindingCollection owner;
21+
private readonly IReadOnlyCollection<ParameterExpression> parameters;
22+
23+
public void Dispose()
24+
{
25+
var linkedParameters = owner.linkedParameters;
26+
foreach (var parameter in parameters) {
27+
linkedParameters.Remove(parameter);
28+
}
29+
}
30+
31+
public ParameterScope(LinqBindingCollection owner, IReadOnlyCollection<ParameterExpression> parameters)
32+
{
33+
this.owner = owner;
34+
this.parameters = parameters;
35+
}
36+
}
37+
1838
private readonly Dictionary<ParameterExpression, IEnumerable<ParameterExpression>> linkedParameters
1939
= new Dictionary<ParameterExpression, IEnumerable<ParameterExpression>>();
2040

@@ -57,26 +77,6 @@ public override void ReplaceBound(ParameterExpression key, ProjectionExpression
5777
}
5878
}
5979

60-
internal readonly ref struct ParameterScope
61-
{
62-
private readonly LinqBindingCollection owner;
63-
private readonly IReadOnlyCollection<ParameterExpression> parameters;
64-
65-
public void Dispose()
66-
{
67-
var linkedParameters = owner.linkedParameters;
68-
foreach (var parameter in parameters) {
69-
linkedParameters.Remove(parameter);
70-
}
71-
}
72-
73-
public ParameterScope(LinqBindingCollection owner, IReadOnlyCollection<ParameterExpression> parameters)
74-
{
75-
this.owner = owner;
76-
this.parameters = parameters;
77-
}
78-
}
79-
8080
public ParameterScope LinkParameters(IReadOnlyCollection<ParameterExpression> parameters)
8181
{
8282
foreach (var parameter in parameters) {

0 commit comments

Comments
 (0)