1 implementation of IFlowCaptureReferenceOperation
Microsoft.CodeAnalysis (1)
Generated\Operations.Generated.cs (1)
8905internal sealed partial class FlowCaptureReferenceOperation : Operation, IFlowCaptureReferenceOperation
80 references to IFlowCaptureReferenceOperation
GenerateDocumentationAndConfigFiles (6)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\LValueFlowCaptureProvider.cs (3)
21/// Corresponding <see cref="IFlowCaptureReferenceOperation"/>s which share the same 54foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (3)
209var captureReference = (IFlowCaptureReferenceOperation)write; 280public override void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation)
ILLink.RoslynAnalyzer (11)
DataFlow\LocalDataFlowVisitor.cs (7)
402Debug.Assert(targetOperation is not IFlowCaptureReferenceOperation); 478if (targetOperation is not IFlowCaptureReferenceOperation flowCaptureReference) 544private TValue GetFlowCaptureValue(IFlowCaptureReferenceOperation operation, LocalDataFlowState<TValue, TContext, TValueLattice, TContextLattice> state) 555public override TValue VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation, LocalDataFlowState<TValue, TContext, TValueLattice, TContextLattice> state) 607Debug.Assert(operation.Value is not IFlowCaptureReferenceOperation); 608if (operation.Value is IFlowCaptureReferenceOperation) 623if (operation.Value is IFlowCaptureReferenceOperation captureRef)
DataFlow\LValueFlowCaptureProvider.cs (4)
22/// Corresponding <see cref="IFlowCaptureReferenceOperation"/>s which share the same 41private static bool IsLValueFlowCapture(IFlowCaptureReferenceOperation flowCaptureReference, out IAssignmentOperation? assignment) 63foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
Microsoft.CodeAnalysis (13)
Generated\OperationKind.Generated.cs (1)
217/// <summary>Indicates an <see cref="IFlowCaptureReferenceOperation"/>.</summary>
Generated\Operations.Generated.cs (3)
11308public override IOperation VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation, object? argument) 11587public virtual void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation) => DefaultVisit(operation); 11728public virtual TResult? VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation, TArgument argument) => DefaultVisit(operation, argument);
Operations\ControlFlowGraphBuilder.cs (9)
1697captureId != ((IFlowCaptureReferenceOperation)result).Id.Value) 1887if (operation is IFlowCaptureReferenceOperation reference) 1894foreach (IFlowCaptureReferenceOperation reference in operation.DescendantsAndSelf().OfType<IFlowCaptureReferenceOperation>()) 4765IFlowCaptureReferenceOperation? positiveFlag = null; 5923public override IOperation VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation, int? captureIdForResult) 7013Debug.Assert(receiverCapture is IFlowCaptureReferenceOperation); 7027Debug.Assert(argumentCapture is IFlowCaptureReferenceOperation or IDiscardOperation); 7185return captured is IFlowCaptureReferenceOperation reference ?
Microsoft.CodeAnalysis.Analyzers (6)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\LValueFlowCaptureProvider.cs (3)
21/// Corresponding <see cref="IFlowCaptureReferenceOperation"/>s which share the same 54foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (3)
209var captureReference = (IFlowCaptureReferenceOperation)write; 280public override void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation)
Microsoft.CodeAnalysis.AnalyzerUtilities (19)
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\Extensions\IOperationExtensions_FlowAnalysis.cs (1)
52public static bool IsLValueFlowCaptureReference(this IFlowCaptureReferenceOperation flowCaptureReference)
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.PointsToDataFlowOperationVisitor.cs (1)
1241public override PointsToAbstractValue VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation, object? argument)
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AbstractLocation.cs (1)
25/// 4. Location created for flow capture entities, i.e. for <see cref="InterproceduralCaptureId"/> created for <see cref="IFlowCaptureOperation"/> or <see cref="IFlowCaptureReferenceOperation"/>.
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntityFactory.cs (1)
231case IFlowCaptureReferenceOperation flowCaptureReference:
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowOperationVisitor.cs (6)
226protected bool IsLValueFlowCaptureReference(IFlowCaptureReferenceOperation flowCaptureReference) 1682case IFlowCaptureReferenceOperation: 1949private void HandleFlowCaptureReferenceAssignment(IFlowCaptureReferenceOperation flowCaptureReference, IOperation assignedValueOperation, TAbstractAnalysisValue assignedValue) 2839if (operation.Target is IFlowCaptureReferenceOperation flowCaptureReference) 2884if (operation.Target is IFlowCaptureReferenceOperation flowCaptureReference) 2966public override TAbstractAnalysisValue VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation, object? argument)
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\LValueFlowCapturesProvider.cs (3)
32var rvalueFlowCaptureIds = new Dictionary<CaptureId, HashSet<IFlowCaptureReferenceOperation>>(); 34foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\LValueFlowCaptureProvider.cs (3)
21/// Corresponding <see cref="IFlowCaptureReferenceOperation"/>s which share the same 54foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (3)
209var captureReference = (IFlowCaptureReferenceOperation)write; 280public override void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation)
Microsoft.CodeAnalysis.CodeStyle (6)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\LValueFlowCaptureProvider.cs (3)
21/// Corresponding <see cref="IFlowCaptureReferenceOperation"/>s which share the same 54foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (3)
209var captureReference = (IFlowCaptureReferenceOperation)write; 280public override void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation)
Microsoft.CodeAnalysis.ResxSourceGenerator (6)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\LValueFlowCaptureProvider.cs (3)
21/// Corresponding <see cref="IFlowCaptureReferenceOperation"/>s which share the same 54foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (3)
209var captureReference = (IFlowCaptureReferenceOperation)write; 280public override void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation)
Microsoft.CodeAnalysis.Workspaces (6)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\LValueFlowCaptureProvider.cs (3)
21/// Corresponding <see cref="IFlowCaptureReferenceOperation"/>s which share the same 54foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (3)
209var captureReference = (IFlowCaptureReferenceOperation)write; 280public override void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation)
Roslyn.Diagnostics.Analyzers (7)
AbstractDoNotCopyValue.cs (1)
745public override void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\LValueFlowCaptureProvider.cs (3)
21/// Corresponding <see cref="IFlowCaptureReferenceOperation"/>s which share the same 54foreach (var flowCaptureReference in cfg.DescendantOperations<IFlowCaptureReferenceOperation>(OperationKind.FlowCaptureReference))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (3)
209var captureReference = (IFlowCaptureReferenceOperation)write; 280public override void VisitFlowCaptureReference(IFlowCaptureReferenceOperation operation)