7 implementations of IEventSymbol
GenerateDocumentationAndConfigFiles (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (1)
21IMethodSymbol? raiseMethod) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, declaredAccessibility, modifiers, name), IEventSymbol
Microsoft.CodeAnalysis.Analyzers (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (1)
21IMethodSymbol? raiseMethod) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, declaredAccessibility, modifiers, name), IEventSymbol
Microsoft.CodeAnalysis.CodeStyle.Fixes (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (1)
21IMethodSymbol? raiseMethod) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, declaredAccessibility, modifiers, name), IEventSymbol
Microsoft.CodeAnalysis.CSharp (1)
Symbols\PublicModel\EventSymbol.cs (1)
11internal sealed class EventSymbol : Symbol, IEventSymbol
Microsoft.CodeAnalysis.Features (1)
MetadataAsSource\AbstractMetadataAsSourceService.WrappedEventSymbol.cs (1)
12private sealed class WrappedEventSymbol(IEventSymbol eventSymbol, bool canImplementImplicitly, IDocumentationCommentFormattingService docCommentFormattingService) : AbstractWrappedSymbol(eventSymbol, canImplementImplicitly, docCommentFormattingService), IEventSymbol
Microsoft.CodeAnalysis.Workspaces (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (1)
21IMethodSymbol? raiseMethod) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, declaredAccessibility, modifiers, name), IEventSymbol
Roslyn.Diagnostics.Analyzers (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (1)
21IMethodSymbol? raiseMethod) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, declaredAccessibility, modifiers, name), IEventSymbol
678 references to IEventSymbol
GenerateDocumentationAndConfigFiles (61)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (1)
208if (symbol is IEventSymbol eventSymbol && !eventSymbol.ExplicitInterfaceImplementations.IsEmpty)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
30/// <item>Two <see cref="IEventSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.EventSymbolKey.cs (5)
9private sealed class EventSymbolKey : AbstractSymbolKey<IEventSymbol> 13public sealed override void Create(IEventSymbol symbol, SymbolKeyWriter visitor) 23SymbolKeyReader reader, IEventSymbol? contextualSymbol, out string? failureReason) 37using var events = GetMembersOfNamedType<IEventSymbol>(containingTypeResolution, metadataName); 44var candidate = events.Builder[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ParameterSymbolKey.cs (1)
51case IEventSymbol eventSymbol:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
470public override void VisitEvent(IEventSymbol eventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (3)
183IEventSymbol @event => @event.ExplicitInterfaceImplementations.Length > 0, 433case IEventSymbol ev: 650IEventSymbol => true,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (3)
89IEventSymbol @event => @event.OverriddenEvent, 144IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 345IEventSymbol eventSymbol => eventSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
131public override bool VisitEvent(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SignatureComparer.cs (10)
45SymbolKind.Event => HaveSameSignature((IEventSymbol)symbol1, (IEventSymbol)symbol2, caseSensitive), 50private static bool HaveSameSignature(IEventSymbol event1, IEventSymbol event2, bool caseSensitive) 174var ev1 = (IEventSymbol)symbol1; 175var ev2 = (IEventSymbol)symbol2; 251private bool HaveSameReturnType(IEventSymbol ev1, IEventSymbol ev2)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (2)
243private static bool IsPartialEventDefinitionPart(IEventSymbol symbol) 250private static bool IsPartialEventImplementationPart(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (4)
120SymbolKind.Event => EventsAreEquivalent((IEventSymbol)x, (IEventSymbol)y, equivalentTypesWithDifferingAssemblies), 608private bool EventsAreEquivalent(IEventSymbol x, IEventSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
64SymbolKind.Event => CombineHashCodes((IEventSymbol)x, currentHash), 255private int CombineHashCodes(IEventSymbol x, int currentHash)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (7)
47public TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 76public SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 123protected abstract TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 143public abstract SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 345IEventSymbol @event => CreateEventDeclaration(@event, codeGenerationDestination, info, cancellationToken), 363IEventSymbol @event => AddEvent(currentDestination, @event, info, availableIndices, cancellationToken), 392CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
28public static IEventSymbol CreateEventSymbol( 31ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 568internal static IEventSymbol CreateEventSymbol( 569IEventSymbol @event, 573ImmutableArray<IEventSymbol> explicitInterfaceImplementations = default,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
30public static Task<Document> AddEventDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
22SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 53TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 133Task<Document> AddEventAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventInfo.cs (4)
13private static readonly ConditionalWeakTable<IEventSymbol, CodeGenerationEventInfo> s_eventToInfoMap = new(); 19public static void Attach(IEventSymbol @event, bool isUnsafe) 25private static CodeGenerationEventInfo GetInfo(IEventSymbol @event) 31public static bool GetIsUnsafe(IEventSymbol @event)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (6)
17ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 26public ImmutableArray<IEventSymbol> ExplicitInterfaceImplementations { get; } = explicitInterfaceImplementations.NullToEmpty(); 52public new IEventSymbol OriginalDefinition => this; 56public IEventSymbol? OverriddenEvent => null; 59public IEventSymbol? PartialImplementationPart => null; 61public IEventSymbol? PartialDefinitionPart => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISymbolExtensions.cs (1)
24return symbol is IEventSymbol @event &&
ILLink.RoslynAnalyzer (13)
DataFlow\DynamicallyAccessedMembersBinder.cs (6)
121foreach (var e in typeDefinition.ApplyIncludeInherited(t => t.GetEventsOnTypeHierarchy(filter: null, bindingFlags: BindingFlags.NonPublic | declaredOnlyFlags), withInherited)) 127foreach (var e in typeDefinition.GetEventsOnTypeHierarchy(filter: null, bindingFlags: BindingFlags.Public | declaredOnlyFlags)) 328public static IEnumerable<IEventSymbol> GetEventsOnTypeHierarchy(this ITypeSymbol thisType, Func<IEventSymbol, bool>? filter, BindingFlags? bindingFlags = BindingFlags.Default) 334foreach (var @event in type.GetMembers().OfType<IEventSymbol>())
DataFlow\LocalDataFlowVisitor.cs (1)
119Debug.Assert(OwningSymbol is IMethodSymbol or IFieldSymbol or IPropertySymbol or IEventSymbol,
DataFlow\MethodBodyValue.cs (1)
23Debug.Assert(owningSymbol is (IMethodSymbol or IFieldSymbol or IPropertySymbol or IEventSymbol));
ISymbolExtensions.cs (1)
119IEventSymbol @event => @event.OverriddenEvent,
RequiresAnalyzerBase.cs (1)
133IEventSymbol @event => @event.ContainingType,
TrimAnalysis\ReflectionAccessAnalyzer.cs (3)
58case IEventSymbol @event: 67foreach (var @event in typeSymbol.GetEventsOnTypeHierarchy(e => e.Name == name, bindingFlags)) 195private void GetDiagnosticsForEvent(Location location, IEventSymbol eventSymbol)
Microsoft.AspNetCore.Components.Analyzers (1)
InternalUsageAnalyzer.cs (1)
120case IEventSymbol @event:
Microsoft.AspNetCore.Components.SdkAnalyzers (1)
InternalUsageAnalyzer.cs (1)
120case IEventSymbol @event:
Microsoft.AspNetCore.OpenApi.SourceGenerators (2)
Helpers\ISymbolExtensions.cs (2)
45IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 106IEventSymbol @event => @event.OverriddenEvent,
Microsoft.CodeAnalysis (20)
Compilation\SemanticModel.cs (2)
843public bool IsEventUsableAsField(int position, IEventSymbol eventSymbol) 855protected abstract bool IsEventUsableAsFieldCore(int position, IEventSymbol eventSymbol);
DocumentationCommentId.cs (2)
357public override void VisitEvent(IEventSymbol symbol) 430public override bool VisitEvent(IEventSymbol symbol)
Emit\EditAndContinue\SymbolChanges.cs (2)
37/// A set of symbols (<see cref="IMethodSymbol"/>, <see cref="IPropertySymbol"/>, <see cref="IEventSymbol"/>), 382Debug.Assert(edit.OldSymbol is IMethodSymbol or IPropertySymbol or IEventSymbol);
Emit\SemanticEdit.cs (1)
155if (kind == SemanticEditKind.Delete && oldSymbol is not (IMethodSymbol or IPropertySymbol or IEventSymbol))
Generated\Operations.Generated.cs (3)
1031IEventSymbol Event { get; } 5563internal EventReferenceOperation(IEventSymbol @event, ITypeSymbol? constrainedToType, IOperation? instance, SemanticModel? semanticModel, SyntaxNode syntax, ITypeSymbol? type, bool isImplicit) 5570public IEventSymbol Event { get; }
Symbols\IEventSymbol.cs (5)
54new IEventSymbol OriginalDefinition { get; } 59IEventSymbol? OverriddenEvent { get; } 67ImmutableArray<IEventSymbol> ExplicitInterfaceImplementations { get; } 72IEventSymbol? PartialDefinitionPart { get; } 77IEventSymbol? PartialImplementationPart { get; }
Symbols\ISymbol.cs (2)
181/// <see cref="IEventSymbol"/>. 195/// <see cref="IEventSymbol"/>.
Symbols\SymbolVisitor.cs (1)
43public virtual void VisitEvent(IEventSymbol symbol)
Symbols\SymbolVisitor`1.cs (1)
46public virtual TResult? VisitEvent(IEventSymbol symbol)
Symbols\SymbolVisitor`2.cs (1)
51public virtual TResult VisitEvent(IEventSymbol symbol, TArgument argument)
Microsoft.CodeAnalysis.Analyzers (66)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context), 317SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.EventMetricData.cs (3)
15IEventSymbol symbol, 28internal static EventMetricData Compute(IEventSymbol @event, CodeMetricsAnalysisContext context) 55private static IEnumerable<IMethodSymbol> GetAccessors(IEventSymbol @event)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (1)
208if (symbol is IEventSymbol eventSymbol && !eventSymbol.ExplicitInterfaceImplementations.IsEmpty)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
30/// <item>Two <see cref="IEventSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.EventSymbolKey.cs (5)
9private sealed class EventSymbolKey : AbstractSymbolKey<IEventSymbol> 13public sealed override void Create(IEventSymbol symbol, SymbolKeyWriter visitor) 23SymbolKeyReader reader, IEventSymbol? contextualSymbol, out string? failureReason) 37using var events = GetMembersOfNamedType<IEventSymbol>(containingTypeResolution, metadataName); 44var candidate = events.Builder[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ParameterSymbolKey.cs (1)
51case IEventSymbol eventSymbol:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
470public override void VisitEvent(IEventSymbol eventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (3)
183IEventSymbol @event => @event.ExplicitInterfaceImplementations.Length > 0, 433case IEventSymbol ev: 650IEventSymbol => true,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (3)
89IEventSymbol @event => @event.OverriddenEvent, 144IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 345IEventSymbol eventSymbol => eventSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
131public override bool VisitEvent(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SignatureComparer.cs (10)
45SymbolKind.Event => HaveSameSignature((IEventSymbol)symbol1, (IEventSymbol)symbol2, caseSensitive), 50private static bool HaveSameSignature(IEventSymbol event1, IEventSymbol event2, bool caseSensitive) 174var ev1 = (IEventSymbol)symbol1; 175var ev2 = (IEventSymbol)symbol2; 251private bool HaveSameReturnType(IEventSymbol ev1, IEventSymbol ev2)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (2)
243private static bool IsPartialEventDefinitionPart(IEventSymbol symbol) 250private static bool IsPartialEventImplementationPart(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (4)
120SymbolKind.Event => EventsAreEquivalent((IEventSymbol)x, (IEventSymbol)y, equivalentTypesWithDifferingAssemblies), 608private bool EventsAreEquivalent(IEventSymbol x, IEventSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
64SymbolKind.Event => CombineHashCodes((IEventSymbol)x, currentHash), 255private int CombineHashCodes(IEventSymbol x, int currentHash)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (7)
47public TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 76public SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 123protected abstract TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 143public abstract SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 345IEventSymbol @event => CreateEventDeclaration(@event, codeGenerationDestination, info, cancellationToken), 363IEventSymbol @event => AddEvent(currentDestination, @event, info, availableIndices, cancellationToken), 392CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
28public static IEventSymbol CreateEventSymbol( 31ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 568internal static IEventSymbol CreateEventSymbol( 569IEventSymbol @event, 573ImmutableArray<IEventSymbol> explicitInterfaceImplementations = default,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
30public static Task<Document> AddEventDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
22SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 53TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 133Task<Document> AddEventAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventInfo.cs (4)
13private static readonly ConditionalWeakTable<IEventSymbol, CodeGenerationEventInfo> s_eventToInfoMap = new(); 19public static void Attach(IEventSymbol @event, bool isUnsafe) 25private static CodeGenerationEventInfo GetInfo(IEventSymbol @event) 31public static bool GetIsUnsafe(IEventSymbol @event)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (6)
17ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 26public ImmutableArray<IEventSymbol> ExplicitInterfaceImplementations { get; } = explicitInterfaceImplementations.NullToEmpty(); 52public new IEventSymbol OriginalDefinition => this; 56public IEventSymbol? OverriddenEvent => null; 59public IEventSymbol? PartialImplementationPart => null; 61public IEventSymbol? PartialDefinitionPart => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISymbolExtensions.cs (1)
24return symbol is IEventSymbol @event &&
Microsoft.CodeAnalysis.AnalyzerUtilities (39)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context), 317SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.EventMetricData.cs (3)
15IEventSymbol symbol, 28internal static EventMetricData Compute(IEventSymbol @event, CodeMetricsAnalysisContext context) 55private static IEnumerable<IMethodSymbol> GetAccessors(IEventSymbol @event)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (1)
208if (symbol is IEventSymbol eventSymbol && !eventSymbol.ExplicitInterfaceImplementations.IsEmpty)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
30/// <item>Two <see cref="IEventSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.EventSymbolKey.cs (5)
9private sealed class EventSymbolKey : AbstractSymbolKey<IEventSymbol> 13public sealed override void Create(IEventSymbol symbol, SymbolKeyWriter visitor) 23SymbolKeyReader reader, IEventSymbol? contextualSymbol, out string? failureReason) 37using var events = GetMembersOfNamedType<IEventSymbol>(containingTypeResolution, metadataName); 44var candidate = events.Builder[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ParameterSymbolKey.cs (1)
51case IEventSymbol eventSymbol:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
470public override void VisitEvent(IEventSymbol eventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (3)
183IEventSymbol @event => @event.ExplicitInterfaceImplementations.Length > 0, 433case IEventSymbol ev: 650IEventSymbol => true,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (3)
89IEventSymbol @event => @event.OverriddenEvent, 144IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 345IEventSymbol eventSymbol => eventSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
131public override bool VisitEvent(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SignatureComparer.cs (10)
45SymbolKind.Event => HaveSameSignature((IEventSymbol)symbol1, (IEventSymbol)symbol2, caseSensitive), 50private static bool HaveSameSignature(IEventSymbol event1, IEventSymbol event2, bool caseSensitive) 174var ev1 = (IEventSymbol)symbol1; 175var ev2 = (IEventSymbol)symbol2; 251private bool HaveSameReturnType(IEventSymbol ev1, IEventSymbol ev2)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (2)
243private static bool IsPartialEventDefinitionPart(IEventSymbol symbol) 250private static bool IsPartialEventImplementationPart(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (4)
120SymbolKind.Event => EventsAreEquivalent((IEventSymbol)x, (IEventSymbol)y, equivalentTypesWithDifferingAssemblies), 608private bool EventsAreEquivalent(IEventSymbol x, IEventSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
64SymbolKind.Event => CombineHashCodes((IEventSymbol)x, currentHash), 255private int CombineHashCodes(IEventSymbol x, int currentHash)
Microsoft.CodeAnalysis.CodeStyle (34)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (1)
1060return ((IEventSymbol)memberSymbol).ExplicitInterfaceImplementations.IsEmpty;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
30/// <item>Two <see cref="IEventSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.EventSymbolKey.cs (5)
9private sealed class EventSymbolKey : AbstractSymbolKey<IEventSymbol> 13public sealed override void Create(IEventSymbol symbol, SymbolKeyWriter visitor) 23SymbolKeyReader reader, IEventSymbol? contextualSymbol, out string? failureReason) 37using var events = GetMembersOfNamedType<IEventSymbol>(containingTypeResolution, metadataName); 44var candidate = events.Builder[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ParameterSymbolKey.cs (1)
51case IEventSymbol eventSymbol:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
470public override void VisitEvent(IEventSymbol eventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (3)
183IEventSymbol @event => @event.ExplicitInterfaceImplementations.Length > 0, 433case IEventSymbol ev: 650IEventSymbol => true,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (3)
89IEventSymbol @event => @event.OverriddenEvent, 144IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 345IEventSymbol eventSymbol => eventSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
131public override bool VisitEvent(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SignatureComparer.cs (10)
45SymbolKind.Event => HaveSameSignature((IEventSymbol)symbol1, (IEventSymbol)symbol2, caseSensitive), 50private static bool HaveSameSignature(IEventSymbol event1, IEventSymbol event2, bool caseSensitive) 174var ev1 = (IEventSymbol)symbol1; 175var ev2 = (IEventSymbol)symbol2; 251private bool HaveSameReturnType(IEventSymbol ev1, IEventSymbol ev2)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (2)
243private static bool IsPartialEventDefinitionPart(IEventSymbol symbol) 250private static bool IsPartialEventImplementationPart(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (4)
120SymbolKind.Event => EventsAreEquivalent((IEventSymbol)x, (IEventSymbol)y, equivalentTypesWithDifferingAssemblies), 608private bool EventsAreEquivalent(IEventSymbol x, IEventSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
64SymbolKind.Event => CombineHashCodes((IEventSymbol)x, currentHash), 255private int CombineHashCodes(IEventSymbol x, int currentHash)
Microsoft.CodeAnalysis.CodeStyle.Fixes (36)
src\roslyn\src\Analyzers\Core\CodeFixes\AddAccessibilityModifiers\AddAccessibilityModifiersHelpers.cs (1)
48if (symbol is IMethodSymbol or IPropertySymbol or IEventSymbol)
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementAbstractClass\ImplementAbstractClassData.cs (4)
167IEventSymbol @event => GenerateEvent(@event, throughMember, accessibility, modifiers), 234private IEventSymbol GenerateEvent( 235IEventSymbol @event, ISymbol? throughMember, Accessibility accessibility, DeclarationModifiers modifiers) 245IEventSymbol @event, IMethodSymbol? accessor, ISymbol? throughMember,
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (1)
163case IEventSymbol eventSymbol:
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator.cs (3)
301IEventSymbol @event => [GenerateEvent(compilation, memberName, generateInvisibly, factory, modifiers, useExplicitInterfaceSymbol, accessibility, @event)], 306private ISymbol GenerateEvent(Compilation compilation, string memberName, bool generateInvisibly, SyntaxGenerator factory, DeclarationModifiers modifiers, bool useExplicitInterfaceSymbol, Accessibility accessibility, IEventSymbol @event) 324IEventSymbol @event, bool generateInvisibly, IMethodSymbol accessor, string memberName,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (7)
47public TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 76public SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 123protected abstract TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 143public abstract SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 345IEventSymbol @event => CreateEventDeclaration(@event, codeGenerationDestination, info, cancellationToken), 363IEventSymbol @event => AddEvent(currentDestination, @event, info, availableIndices, cancellationToken), 392CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
28public static IEventSymbol CreateEventSymbol( 31ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 568internal static IEventSymbol CreateEventSymbol( 569IEventSymbol @event, 573ImmutableArray<IEventSymbol> explicitInterfaceImplementations = default,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
30public static Task<Document> AddEventDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
22SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 53TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 133Task<Document> AddEventAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventInfo.cs (4)
13private static readonly ConditionalWeakTable<IEventSymbol, CodeGenerationEventInfo> s_eventToInfoMap = new(); 19public static void Attach(IEventSymbol @event, bool isUnsafe) 25private static CodeGenerationEventInfo GetInfo(IEventSymbol @event) 31public static bool GetIsUnsafe(IEventSymbol @event)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (6)
17ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 26public ImmutableArray<IEventSymbol> ExplicitInterfaceImplementations { get; } = explicitInterfaceImplementations.NullToEmpty(); 52public new IEventSymbol OriginalDefinition => this; 56public IEventSymbol? OverriddenEvent => null; 59public IEventSymbol? PartialImplementationPart => null; 61public IEventSymbol? PartialDefinitionPart => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISymbolExtensions.cs (1)
24return symbol is IEventSymbol @event &&
Microsoft.CodeAnalysis.CSharp (34)
Compilation\CSharpSemanticModel.cs (2)
3051public abstract IEventSymbol GetDeclaredSymbol(EventDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken)); 5495protected sealed override bool IsEventUsableAsFieldCore(int position, IEventSymbol symbol)
Compilation\MemberSemanticModel.cs (1)
670public override IEventSymbol GetDeclaredSymbol(EventDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Compilation\SpeculativeSemanticModelWithMemberModel.cs (1)
315public override IEventSymbol GetDeclaredSymbol(EventDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Compilation\SyntaxTreeSemanticModel.cs (1)
1579public override IEventSymbol GetDeclaredSymbol(EventDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
CSharpExtensions.cs (1)
1495public static IEventSymbol? GetDeclaredSymbol(this SemanticModel? semanticModel, EventDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Operations\CSharpOperationFactory_Methods.cs (1)
132IEventSymbol @event = boundEventAssignmentOperator.Event.GetPublicSymbol();
Operations\CSharpOperationFactory.cs (1)
652IEventSymbol @event = boundEventAccess.EventSymbol.GetPublicSymbol();
SymbolDisplay\SymbolDisplayVisitor.Members.cs (4)
230public override void VisitEvent(IEventSymbol symbol) 263private void AddEventName(IEventSymbol symbol) 457var associatedEvent = (IEventSymbol?)symbol.AssociatedSymbol;
Symbols\PublicModel\EventSymbol.cs (17)
25ITypeSymbol IEventSymbol.Type 38CodeAnalysis.NullableAnnotation IEventSymbol.NullableAnnotation => _underlying.TypeWithAnnotations.ToPublicAnnotation(); 40IMethodSymbol? IEventSymbol.AddMethod 48IMethodSymbol? IEventSymbol.RemoveMethod 56IMethodSymbol? IEventSymbol.RaiseMethod 65IEventSymbol IEventSymbol.OriginalDefinition 73IEventSymbol? IEventSymbol.OverriddenEvent 81ImmutableArray<IEventSymbol> IEventSymbol.ExplicitInterfaceImplementations 89bool IEventSymbol.IsWindowsRuntimeEvent => _underlying.IsWindowsRuntimeEvent; 91IEventSymbol? IEventSymbol.PartialDefinitionPart => _underlying.PartialDefinitionPart.GetPublicSymbol(); 93IEventSymbol? IEventSymbol.PartialImplementationPart => _underlying.PartialImplementationPart.GetPublicSymbol(); 95bool IEventSymbol.IsPartialDefinition => _underlying.IsPartialDefinition;
Symbols\SymbolExtensions.cs (5)
426internal static EventSymbol? EnsureCSharpSymbolOrNull(this IEventSymbol? symbol, string paramName) 671internal static IEventSymbol? GetPublicSymbol(this EventSymbol? symbol) 673return symbol.GetPublicSymbol<IEventSymbol>(); 717internal static ImmutableArray<IEventSymbol> GetPublicSymbols(this ImmutableArray<EventSymbol> symbols) 719return GetPublicSymbols<IEventSymbol>(StaticCast<Symbol>.From(symbols));
Microsoft.CodeAnalysis.CSharp.CodeStyle (1)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructReadOnly\CSharpMakeStructReadOnlyDiagnosticAnalyzer.cs (1)
109else if (member is IEventSymbol ev)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (16)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (1)
319IMethodSymbol or IPropertySymbol or IEventSymbol or IFieldSymbol =>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (5)
63CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken) 90protected override TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CSharpCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) 127if (method.AssociatedSymbol is IEventSymbol) 659IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 677if (method.AssociatedSymbol is IEventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\EventGenerator.cs (10)
64IEventSymbol @event, 80IEventSymbol @event, 98IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 115IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 128IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 143IEventSymbol @event, bool isExplicit, CSharpCodeGenerationContextInfo info) 160IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 172IEventSymbol @event, 201IEventSymbol @event, 212IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info)
Microsoft.CodeAnalysis.CSharp.Features (11)
Completion\CompletionProviders\AwaitCompletionProvider.cs (1)
141if (leftSymbol is IEventSymbol)
Completion\CompletionProviders\ExplicitInterfaceMemberCompletionProvider.ItemGetter.cs (1)
183IEventSymbol eventSymbol => eventSymbol.Name,
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (3)
1220if (oldSymbol is IEventSymbol oldEventSymbol && newSymbol is IEventSymbol newEventSymbol) 1970internal override string GetDisplayName(IEventSymbol symbol)
ExtractMethod\CSharpSelectionResult.StatementResult.cs (1)
60IEventSymbol eventSymbol => (eventSymbol.Type, false),
NavigationBar\CSharpNavigationBarItemService.cs (3)
93else if (member is IEventSymbol { PartialImplementationPart: { } } eventSymbol) 98else if (member is IMethodSymbol or IPropertySymbol or IEventSymbol) 100Debug.Assert(member is IMethodSymbol { PartialDefinitionPart: null } or IPropertySymbol { PartialDefinitionPart: null } or IEventSymbol { PartialDefinitionPart: null },
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructReadOnly\CSharpMakeStructReadOnlyDiagnosticAnalyzer.cs (1)
109else if (member is IEventSymbol ev)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (1)
319IMethodSymbol or IPropertySymbol or IEventSymbol or IFieldSymbol =>
Microsoft.CodeAnalysis.CSharp.NetAnalyzers (2)
Microsoft.NetCore.Analyzers\InteropServices\CSharpDynamicInterfaceCastableImplementation.Fixer.cs (2)
45SymbolKind.Event => GenerateEventImplementation((IEventSymbol)member, generator, defaultMethodBodyStatements), 155IEventSymbol evt,
Microsoft.CodeAnalysis.CSharp.Workspaces (17)
Classification\SyntaxClassification\NameSyntaxClassifier.cs (1)
206case IEventSymbol:
Recommendations\CSharpRecommendationServiceRunner.cs (1)
846if (symbol is IEventSymbol ev &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (5)
63CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken) 90protected override TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CSharpCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) 127if (method.AssociatedSymbol is IEventSymbol) 659IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 677if (method.AssociatedSymbol is IEventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\EventGenerator.cs (10)
64IEventSymbol @event, 80IEventSymbol @event, 98IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 115IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 128IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 143IEventSymbol @event, bool isExplicit, CSharpCodeGenerationContextInfo info) 160IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 172IEventSymbol @event, 201IEventSymbol @event, 212IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info)
Microsoft.CodeAnalysis.Extensions.Package (25)
Symbols\INamedTypeSymbolExtensions.cs (3)
183IEventSymbol @event => @event.ExplicitInterfaceImplementations.Length > 0, 433case IEventSymbol ev: 650IEventSymbol => true,
Symbols\ISymbolExtensions.cs (3)
89IEventSymbol @event => @event.OverriddenEvent, 144IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 345IEventSymbol eventSymbol => eventSymbol.Type,
Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
131public override bool VisitEvent(IEventSymbol symbol)
Symbols\SignatureComparer.cs (10)
45SymbolKind.Event => HaveSameSignature((IEventSymbol)symbol1, (IEventSymbol)symbol2, caseSensitive), 50private static bool HaveSameSignature(IEventSymbol event1, IEventSymbol event2, bool caseSensitive) 174var ev1 = (IEventSymbol)symbol1; 175var ev2 = (IEventSymbol)symbol2; 251private bool HaveSameReturnType(IEventSymbol ev1, IEventSymbol ev2)
Symbols\SymbolEquivalenceComparer.cs (2)
243private static bool IsPartialEventDefinitionPart(IEventSymbol symbol) 250private static bool IsPartialEventImplementationPart(IEventSymbol symbol)
Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (4)
120SymbolKind.Event => EventsAreEquivalent((IEventSymbol)x, (IEventSymbol)y, equivalentTypesWithDifferingAssemblies), 608private bool EventsAreEquivalent(IEventSymbol x, IEventSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies)
Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
64SymbolKind.Event => CombineHashCodes((IEventSymbol)x, currentHash), 255private int CombineHashCodes(IEventSymbol x, int currentHash)
Microsoft.CodeAnalysis.Features (71)
ChangeSignature\AbstractChangeSignatureService.cs (2)
127if (symbol is IEventSymbol ev) 297if (symbolWithSyntacticParameters is IEventSymbol eventSymbol)
Completion\Providers\AbstractMemberInsertingCompletionProvider.cs (1)
154IEventSymbol @event => await codeGenService.AddEventAsync(context, containingType, @event, cancellationToken).ConfigureAwait(false),
Completion\Providers\AbstractOverrideCompletionProvider.cs (1)
74SymbolKind.Event => ((IEventSymbol)symbol).Type,
Completion\Providers\AbstractRecommendationServiceBasedCompletionProvider.cs (1)
217if (symbol is IEventSymbol or IMethodSymbol)
Debugging\AbstractBreakpointResolver.cs (1)
234SymbolKind.Event => ((IEventSymbol)symbol).PartialImplementationPart,
EditAndContinue\AbstractEditAndContinueAnalyzer.ActiveMembersBuilder.cs (2)
35if (member is IFieldSymbol or IPropertySymbol or IEventSymbol) 99if (oldMethod is IMethodSymbol or IPropertySymbol or IFieldSymbol or IEventSymbol)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (22)
316SymbolKind.Event => GetDisplayName((IEventSymbol)symbol), 327internal virtual string GetDisplayName(IEventSymbol symbol) 2579protected static bool ReturnTypesEquivalent(IEventSymbol oldEvent, IEventSymbol newEvent, bool exact) 2645return ReturnTypesEquivalent((IEventSymbol)oldMember, (IEventSymbol)newMember, exact); 3471IEventSymbol) 3883IEventSymbol { AddMethod.IsImplicitlyDeclared: false, RemoveMethod.IsImplicitlyDeclared: false }; 3903case IEventSymbol eventSymbol: 3941case IEventSymbol eventSymbol: 4003case IEventSymbol oldEventSymbol: 4016var newEventSymbol = (IEventSymbol)newSymbol; 4142Contract.ThrowIfFalse(oldMember is IFieldSymbol or IPropertySymbol or IEventSymbol); 4394else if (oldSymbol is IEventSymbol oldEvent && newSymbol is IEventSymbol newEvent) 4573else if (oldSymbol is IEventSymbol oldEvent && newSymbol is IEventSymbol newEvent) 5058if (newSymbol is IMethodSymbol or IEventSymbol or IPropertySymbol) 5406if (HasBackingField((IEventSymbol)newSymbol) && 5430private static bool HasBackingField(IEventSymbol @event) 7089IEventSymbol { AddMethod.IsImplicitlyDeclared: true });
ExtractInterface\AbstractExtractInterfaceService.cs (1)
375case IEventSymbol @event:
FindUsages\AbstractFindUsagesService_FindImplementations.cs (1)
215IEventSymbol ev => ev.PartialImplementationPart,
InheritanceMargin\AbstractInheritanceMarginService_Helpers.cs (3)
74if (symbol is IEventSymbol or IPropertySymbol or IMethodSymbol) 605if (memberSymbol is IMethodSymbol or IEventSymbol or IPropertySymbol) 638if (memberSymbol is IMethodSymbol or IEventSymbol or IPropertySymbol
InheritanceMargin\AbstractInheritanceMarginService.cs (1)
76if (symbol is IEventSymbol or IPropertySymbol
LanguageServices\AnonymousTypeDisplayService\AbstractStructuralTypeDisplayService.StructuralTypeCollectorVisitor.cs (1)
127public override void VisitEvent(IEventSymbol symbol)
MetadataAsSource\AbstractMetadataAsSourceService.WrappedEventSymbol.cs (7)
12private sealed class WrappedEventSymbol(IEventSymbol eventSymbol, bool canImplementImplicitly, IDocumentationCommentFormattingService docCommentFormattingService) : AbstractWrappedSymbol(eventSymbol, canImplementImplicitly, docCommentFormattingService), IEventSymbol 14private readonly IEventSymbol _symbol = eventSymbol; 16public ImmutableArray<IEventSymbol> ExplicitInterfaceImplementations 26public new IEventSymbol OriginalDefinition => this; 30public IEventSymbol? OverriddenEvent => _symbol.OverriddenEvent; 35public IEventSymbol? PartialDefinitionPart => _symbol.PartialDefinitionPart; 36public IEventSymbol? PartialImplementationPart => _symbol.PartialImplementationPart;
MetadataAsSource\AbstractMetadataAsSourceService.WrappedNamedTypeSymbol.cs (1)
48SymbolKind.Event => new WrappedEventSymbol((IEventSymbol)m, canImplementImplicitly, docCommentFormattingService),
PullMemberUp\MemberAndDestinationValidator.cs (1)
48IPropertySymbol or IEventSymbol or IFieldSymbol => true,
PullMemberUp\MembersPuller.cs (5)
182else if (member is IEventSymbol eventSymbol) 205if (member is IEventSymbol eventSymbol) 226IEventSymbol eventSymbol, 246var publicAndNonStaticSymbol = CodeGenerationSymbolFactory.CreateEventSymbol( 458else if (member is IEventSymbol eventSymbol)
QuickInfo\CommonSemanticQuickInfoProvider.ErrorVisitor.cs (1)
29public override bool VisitEvent(IEventSymbol symbol)
RQName\RQNodeBuilder.cs (2)
26IEventSymbol eventSymbol => BuildEvent(eventSymbol), 169private static RQEvent? BuildEvent(IEventSymbol symbol)
Shared\Extensions\ISymbolExtensions_Sorting.cs (5)
121private static int CompareEvents(IEventSymbol xEvent, string[] xTypeNames, IEventSymbol yEvent, string[] yTypeNames) 140if (symbol is IEventSymbol ev) 187? CompareEvents((IEventSymbol)s1, symbol1ParameterTypeNames, (IEventSymbol)s2, symbol2ParameterTypeNames)
Shared\Utilities\ExtractTypeHelpers.cs (2)
206var @event = member as IEventSymbol;
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (1)
1060return ((IEventSymbol)memberSymbol).ExplicitInterfaceImplementations.IsEmpty;
src\roslyn\src\Analyzers\Core\CodeFixes\AddAccessibilityModifiers\AddAccessibilityModifiersHelpers.cs (1)
48if (symbol is IMethodSymbol or IPropertySymbol or IEventSymbol)
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementAbstractClass\ImplementAbstractClassData.cs (4)
167IEventSymbol @event => GenerateEvent(@event, throughMember, accessibility, modifiers), 234private IEventSymbol GenerateEvent( 235IEventSymbol @event, ISymbol? throughMember, Accessibility accessibility, DeclarationModifiers modifiers) 245IEventSymbol @event, IMethodSymbol? accessor, ISymbol? throughMember,
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (1)
163case IEventSymbol eventSymbol:
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator.cs (3)
301IEventSymbol @event => [GenerateEvent(compilation, memberName, generateInvisibly, factory, modifiers, useExplicitInterfaceSymbol, accessibility, @event)], 306private ISymbol GenerateEvent(Compilation compilation, string memberName, bool generateInvisibly, SyntaxGenerator factory, DeclarationModifiers modifiers, bool useExplicitInterfaceSymbol, Accessibility accessibility, IEventSymbol @event) 324IEventSymbol @event, bool generateInvisibly, IMethodSymbol accessor, string memberName,
Microsoft.CodeAnalysis.NetAnalyzers (27)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\IdentifiersShouldHaveCorrectSuffix.cs (2)
190var eventSymbol = (IEventSymbol)context.Symbol;
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\InterfaceMethodsShouldBeCallableByChildTypes.Fixer.cs (1)
201SymbolKind.Event => ((IEventSymbol)symbol).ExplicitInterfaceImplementations,
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\UseGenericEventHandlerInstances.cs (3)
101bool ContainingTypeHasComSourceInterfacesAttribute(IEventSymbol eventSymbol) => 112var eventSymbol = (IEventSymbol)symbolContext.Symbol;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\DoNotDeclareEventFieldsAsVirtual.cs (2)
43var eventSymbol = (IEventSymbol)context.Symbol;
Microsoft.NetCore.Analyzers\InteropServices\DisableRuntimeMarshallingAnalyzer.DisabledRuntimeMarshallingAssemblyAnalyzer.cs (2)
62IEventSymbol property = (IEventSymbol)context.Symbol;
Microsoft.NetCore.Analyzers\InteropServices\DynamicInterfaceCastableImplementation.cs (1)
135if (member is not IMethodSymbol { AssociatedSymbol: IPropertySymbol or IEventSymbol })
Microsoft.NetCore.Analyzers\InteropServices\PlatformCompatibilityAnalyzer.cs (2)
1322private static ISymbol GetEventAccessor(IEventSymbol iEvent, IOperation operation) 1370else if (symbol is IEventSymbol iEvent)
Microsoft.NetCore.Analyzers\Runtime\DetectPreviewFeatureAnalyzer.cs (4)
372IEventSymbol symbol, 448case IEventSymbol: 694else if (symbol is IEventSymbol eventSymbol) 778if (operation is IEventAssignmentOperation eventAssignment && symbol is IEventSymbol eventSymbol)
src\sdk\src\Microsoft.CodeAnalysis.NetAnalyzers\src\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
278SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context), 316SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context),
src\sdk\src\Microsoft.CodeAnalysis.NetAnalyzers\src\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.EventMetricData.cs (3)
14IEventSymbol symbol, 27internal static EventMetricData Compute(IEventSymbol @event, CodeMetricsAnalysisContext context) 54private static IEnumerable<IMethodSymbol> GetAccessors(IEventSymbol @event)
src\sdk\src\Microsoft.CodeAnalysis.NetAnalyzers\src\Utilities\Compiler\Extensions\ISymbolExtensions.cs (5)
49var eventSymbol = (IEventSymbol)symbol; 561IEventSymbol eventSymbol => eventSymbol.OverriddenEvent, 582if (symbol is IEventSymbol eventSymbol && !eventSymbol.ExplicitInterfaceImplementations.IsEmpty) 606IEventSymbol eventSymbol => eventSymbol.Type,
Microsoft.CodeAnalysis.ResxSourceGenerator (39)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context), 317SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.EventMetricData.cs (3)
15IEventSymbol symbol, 28internal static EventMetricData Compute(IEventSymbol @event, CodeMetricsAnalysisContext context) 55private static IEnumerable<IMethodSymbol> GetAccessors(IEventSymbol @event)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (1)
208if (symbol is IEventSymbol eventSymbol && !eventSymbol.ExplicitInterfaceImplementations.IsEmpty)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
30/// <item>Two <see cref="IEventSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.EventSymbolKey.cs (5)
9private sealed class EventSymbolKey : AbstractSymbolKey<IEventSymbol> 13public sealed override void Create(IEventSymbol symbol, SymbolKeyWriter visitor) 23SymbolKeyReader reader, IEventSymbol? contextualSymbol, out string? failureReason) 37using var events = GetMembersOfNamedType<IEventSymbol>(containingTypeResolution, metadataName); 44var candidate = events.Builder[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ParameterSymbolKey.cs (1)
51case IEventSymbol eventSymbol:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
470public override void VisitEvent(IEventSymbol eventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (3)
183IEventSymbol @event => @event.ExplicitInterfaceImplementations.Length > 0, 433case IEventSymbol ev: 650IEventSymbol => true,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (3)
89IEventSymbol @event => @event.OverriddenEvent, 144IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 345IEventSymbol eventSymbol => eventSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
131public override bool VisitEvent(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SignatureComparer.cs (10)
45SymbolKind.Event => HaveSameSignature((IEventSymbol)symbol1, (IEventSymbol)symbol2, caseSensitive), 50private static bool HaveSameSignature(IEventSymbol event1, IEventSymbol event2, bool caseSensitive) 174var ev1 = (IEventSymbol)symbol1; 175var ev2 = (IEventSymbol)symbol2; 251private bool HaveSameReturnType(IEventSymbol ev1, IEventSymbol ev2)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (2)
243private static bool IsPartialEventDefinitionPart(IEventSymbol symbol) 250private static bool IsPartialEventImplementationPart(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (4)
120SymbolKind.Event => EventsAreEquivalent((IEventSymbol)x, (IEventSymbol)y, equivalentTypesWithDifferingAssemblies), 608private bool EventsAreEquivalent(IEventSymbol x, IEventSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
64SymbolKind.Event => CombineHashCodes((IEventSymbol)x, currentHash), 255private int CombineHashCodes(IEventSymbol x, int currentHash)
Microsoft.CodeAnalysis.Workspaces (77)
Editing\DeclarationModifiers.cs (1)
70or IEventSymbol)
Editing\SyntaxGenerator.cs (4)
491public SyntaxNode EventDeclaration(IEventSymbol symbol) 524IEventSymbol symbol, 738var ev = (IEventSymbol)symbol;
FindSymbols\FindReferences\Finders\EventSymbolReferenceFinder.cs (6)
15internal sealed class EventSymbolReferenceFinder : AbstractMethodOrPropertyOrEventSymbolReferenceFinder<IEventSymbol> 17protected override bool CanFind(IEventSymbol symbol) 21IEventSymbol symbol, 38private static ImmutableArray<ISymbol> GetOtherPartsOfPartial(IEventSymbol symbol) 50IEventSymbol symbol, 64IEventSymbol symbol,
FindSymbols\FindReferences\FindReferencesSearchEngine.cs (1)
369=> symbol is IMethodSymbol or IPropertySymbol or IEventSymbol;
FindSymbols\SymbolFinder_Hierarchy.cs (1)
123if (symbol is IMethodSymbol or IPropertySymbol or IEventSymbol)
Shared\Extensions\ITypeSymbolExtensions.cs (1)
130IEventSymbol eventSymbol => typeSymbol.FindImplementations(eventSymbol, services),
Shared\Extensions\SyntaxGeneratorExtensions.cs (3)
179public static IEventSymbol OverrideEvent( 180IEventSymbol overriddenEvent, 213else if (symbol is IEventSymbol ev)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
30/// <item>Two <see cref="IEventSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.EventSymbolKey.cs (5)
9private sealed class EventSymbolKey : AbstractSymbolKey<IEventSymbol> 13public sealed override void Create(IEventSymbol symbol, SymbolKeyWriter visitor) 23SymbolKeyReader reader, IEventSymbol? contextualSymbol, out string? failureReason) 37using var events = GetMembersOfNamedType<IEventSymbol>(containingTypeResolution, metadataName); 44var candidate = events.Builder[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ParameterSymbolKey.cs (1)
51case IEventSymbol eventSymbol:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
470public override void VisitEvent(IEventSymbol eventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (3)
183IEventSymbol @event => @event.ExplicitInterfaceImplementations.Length > 0, 433case IEventSymbol ev: 650IEventSymbol => true,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (3)
89IEventSymbol @event => @event.OverriddenEvent, 144IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 345IEventSymbol eventSymbol => eventSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
131public override bool VisitEvent(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SignatureComparer.cs (10)
45SymbolKind.Event => HaveSameSignature((IEventSymbol)symbol1, (IEventSymbol)symbol2, caseSensitive), 50private static bool HaveSameSignature(IEventSymbol event1, IEventSymbol event2, bool caseSensitive) 174var ev1 = (IEventSymbol)symbol1; 175var ev2 = (IEventSymbol)symbol2; 251private bool HaveSameReturnType(IEventSymbol ev1, IEventSymbol ev2)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (2)
243private static bool IsPartialEventDefinitionPart(IEventSymbol symbol) 250private static bool IsPartialEventImplementationPart(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (4)
120SymbolKind.Event => EventsAreEquivalent((IEventSymbol)x, (IEventSymbol)y, equivalentTypesWithDifferingAssemblies), 608private bool EventsAreEquivalent(IEventSymbol x, IEventSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
64SymbolKind.Event => CombineHashCodes((IEventSymbol)x, currentHash), 255private int CombineHashCodes(IEventSymbol x, int currentHash)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (7)
47public TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 76public SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 123protected abstract TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 143public abstract SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 345IEventSymbol @event => CreateEventDeclaration(@event, codeGenerationDestination, info, cancellationToken), 363IEventSymbol @event => AddEvent(currentDestination, @event, info, availableIndices, cancellationToken), 392CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
28public static IEventSymbol CreateEventSymbol( 31ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 568internal static IEventSymbol CreateEventSymbol( 569IEventSymbol @event, 573ImmutableArray<IEventSymbol> explicitInterfaceImplementations = default,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
30public static Task<Document> AddEventDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
22SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 53TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 133Task<Document> AddEventAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventInfo.cs (4)
13private static readonly ConditionalWeakTable<IEventSymbol, CodeGenerationEventInfo> s_eventToInfoMap = new(); 19public static void Attach(IEventSymbol @event, bool isUnsafe) 25private static CodeGenerationEventInfo GetInfo(IEventSymbol @event) 31public static bool GetIsUnsafe(IEventSymbol @event)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (6)
17ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 26public ImmutableArray<IEventSymbol> ExplicitInterfaceImplementations { get; } = explicitInterfaceImplementations.NullToEmpty(); 52public new IEventSymbol OriginalDefinition => this; 56public IEventSymbol? OverriddenEvent => null; 59public IEventSymbol? PartialImplementationPart => null; 61public IEventSymbol? PartialDefinitionPart => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISymbolExtensions.cs (1)
24return symbol is IEventSymbol @event &&
Microsoft.DotNet.ApiSymbolExtensions (1)
SymbolExtensions.cs (1)
82symbol is IEventSymbol @event && !@event.ExplicitInterfaceImplementations.IsEmpty;
Roslyn.Diagnostics.Analyzers (69)
AbstractDoNotCopyValue.cs (3)
270public override void VisitEvent(IEventSymbol symbol) 1463private void CheckEventSymbolInUnsupportedContext(IOperation operation, IEventSymbol? @event) 1517CheckEventSymbolInUnsupportedContext(operation, (IEventSymbol)symbol);
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context), 317SymbolKind.Event => EventMetricData.Compute((IEventSymbol)symbol, context),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.EventMetricData.cs (3)
15IEventSymbol symbol, 28internal static EventMetricData Compute(IEventSymbol @event, CodeMetricsAnalysisContext context) 55private static IEnumerable<IMethodSymbol> GetAccessors(IEventSymbol @event)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (1)
208if (symbol is IEventSymbol eventSymbol && !eventSymbol.ExplicitInterfaceImplementations.IsEmpty)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
30/// <item>Two <see cref="IEventSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.EventSymbolKey.cs (5)
9private sealed class EventSymbolKey : AbstractSymbolKey<IEventSymbol> 13public sealed override void Create(IEventSymbol symbol, SymbolKeyWriter visitor) 23SymbolKeyReader reader, IEventSymbol? contextualSymbol, out string? failureReason) 37using var events = GetMembersOfNamedType<IEventSymbol>(containingTypeResolution, metadataName); 44var candidate = events.Builder[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.ParameterSymbolKey.cs (1)
51case IEventSymbol eventSymbol:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
470public override void VisitEvent(IEventSymbol eventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (3)
183IEventSymbol @event => @event.ExplicitInterfaceImplementations.Length > 0, 433case IEventSymbol ev: 650IEventSymbol => true,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (3)
89IEventSymbol @event => @event.OverriddenEvent, 144IEventSymbol @event => ImmutableArray<ISymbol>.CastUp(@event.ExplicitInterfaceImplementations), 345IEventSymbol eventSymbol => eventSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
131public override bool VisitEvent(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SignatureComparer.cs (10)
45SymbolKind.Event => HaveSameSignature((IEventSymbol)symbol1, (IEventSymbol)symbol2, caseSensitive), 50private static bool HaveSameSignature(IEventSymbol event1, IEventSymbol event2, bool caseSensitive) 174var ev1 = (IEventSymbol)symbol1; 175var ev2 = (IEventSymbol)symbol2; 251private bool HaveSameReturnType(IEventSymbol ev1, IEventSymbol ev2)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.cs (2)
243private static bool IsPartialEventDefinitionPart(IEventSymbol symbol) 250private static bool IsPartialEventImplementationPart(IEventSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (4)
120SymbolKind.Event => EventsAreEquivalent((IEventSymbol)x, (IEventSymbol)y, equivalentTypesWithDifferingAssemblies), 608private bool EventsAreEquivalent(IEventSymbol x, IEventSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
64SymbolKind.Event => CombineHashCodes((IEventSymbol)x, currentHash), 255private int CombineHashCodes(IEventSymbol x, int currentHash)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (7)
47public TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 76public SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 123protected abstract TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 143public abstract SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 345IEventSymbol @event => CreateEventDeclaration(@event, codeGenerationDestination, info, cancellationToken), 363IEventSymbol @event => AddEvent(currentDestination, @event, info, availableIndices, cancellationToken), 392CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (5)
28public static IEventSymbol CreateEventSymbol( 31ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 568internal static IEventSymbol CreateEventSymbol( 569IEventSymbol @event, 573ImmutableArray<IEventSymbol> explicitInterfaceImplementations = default,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
30public static Task<Document> AddEventDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
22SyntaxNode CreateEventDeclaration(IEventSymbol @event, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 53TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 133Task<Document> AddEventAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventInfo.cs (4)
13private static readonly ConditionalWeakTable<IEventSymbol, CodeGenerationEventInfo> s_eventToInfoMap = new(); 19public static void Attach(IEventSymbol @event, bool isUnsafe) 25private static CodeGenerationEventInfo GetInfo(IEventSymbol @event) 31public static bool GetIsUnsafe(IEventSymbol @event)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationEventSymbol.cs (6)
17ImmutableArray<IEventSymbol> explicitInterfaceImplementations, 26public ImmutableArray<IEventSymbol> ExplicitInterfaceImplementations { get; } = explicitInterfaceImplementations.NullToEmpty(); 52public new IEventSymbol OriginalDefinition => this; 56public IEventSymbol? OverriddenEvent => null; 59public IEventSymbol? PartialImplementationPart => null; 61public IEventSymbol? PartialDefinitionPart => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISymbolExtensions.cs (1)
24return symbol is IEventSymbol @event &&
Roslyn.Diagnostics.CSharp.Analyzers (15)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (5)
63CodeGenerationSolutionContext context, INamedTypeSymbol destination, IEventSymbol @event, CancellationToken cancellationToken) 90protected override TDeclarationNode AddEvent<TDeclarationNode>(TDeclarationNode destination, IEventSymbol @event, CSharpCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) 127if (method.AssociatedSymbol is IEventSymbol) 659IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 677if (method.AssociatedSymbol is IEventSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\EventGenerator.cs (10)
64IEventSymbol @event, 80IEventSymbol @event, 98IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 115IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 128IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 143IEventSymbol @event, bool isExplicit, CSharpCodeGenerationContextInfo info) 160IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info) 172IEventSymbol @event, 201IEventSymbol @event, 212IEventSymbol @event, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info)