1 write to NeedsDisposal
Microsoft.CodeAnalysis.CSharp (1)
Binder\ForEachEnumeratorInfo.cs (1)
86
this.
NeedsDisposal
= needsDisposal;
36 references to NeedsDisposal
Microsoft.CodeAnalysis.CSharp (5)
Compilation\MemberSemanticModel.cs (1)
974
if (enumeratorInfoOpt.
NeedsDisposal
)
FlowAnalysis\NullableWalker.cs (1)
11755
if (enumeratorInfoOpt is {
NeedsDisposal
: true, DisposeAwaitableInfo: BoundAwaitableInfo awaitDisposalInfo })
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
317
if (!enumeratorInfo.
NeedsDisposal
)
Operations\CSharpOperationFactory.cs (2)
1908
needsDispose: enumeratorInfoOpt.
NeedsDisposal
,
1909
knownToImplementIDisposable: enumeratorInfoOpt.
NeedsDisposal
?
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (12)
CodeGen\CodeGenAwaitForeachTests.cs (12)
2482
Assert.False(internalInfo.
NeedsDisposal
);
4416
Assert.True(internalInfo.
NeedsDisposal
);
4900
Assert.True(internalInfo.
NeedsDisposal
);
5033
Assert.False(internalInfo.
NeedsDisposal
);
5229
Assert.True(internalInfo.
NeedsDisposal
);
5352
Assert.True(internalInfo.
NeedsDisposal
);
5486
Assert.True(internalInfo.
NeedsDisposal
);
6968
Assert.True(internalInfo.
NeedsDisposal
);
7124
Assert.True(internalInfo.
NeedsDisposal
);
7403
Assert.True(internalInfo.
NeedsDisposal
);
8088
Assert.True(internalInfo.
NeedsDisposal
);
8232
Assert.False(internalInfo.
NeedsDisposal
);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (19)
Semantics\ForEachTests.cs (19)
1214
Assert.True(info.
NeedsDisposal
);
1252
Assert.True(info.
NeedsDisposal
);
1296
Assert.True(info.
NeedsDisposal
);
1340
Assert.False(info.
NeedsDisposal
); // Definitely not disposable
1373
Assert.True(info.
NeedsDisposal
);
1413
Assert.True(info.
NeedsDisposal
);
1455
Assert.True(info.
NeedsDisposal
);
1494
Assert.True(info.
NeedsDisposal
);
1527
Assert.True(info.
NeedsDisposal
);
1558
Assert.True(info.
NeedsDisposal
);
1644
Assert.True(info.
NeedsDisposal
);
1675
Assert.True(info.
NeedsDisposal
);
1708
Assert.True(info.
NeedsDisposal
);
1749
Assert.True(info.
NeedsDisposal
);
1833
Assert.True(info.
NeedsDisposal
);
1880
Assert.False(info.
NeedsDisposal
); // Definitely not disposable
3124
Assert.True(info.
NeedsDisposal
);
3242
Assert.False(info.
NeedsDisposal
);
3280
if (enumeratorInfo.
NeedsDisposal
)