8 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.VisualBasic (1)
Symbols\EventSymbol.vb (1)
24Implements IEventSymbol, IEventSymbolInternal
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
719 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 (11)
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>())
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; } 5565internal EventReferenceOperation(IEventSymbol @event, ITypeSymbol? constrainedToType, IOperation? instance, SemanticModel? semanticModel, SyntaxNode syntax, ITypeSymbol? type, bool isImplicit) 5572public 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)
172/// <see cref="IEventSymbol"/>. 186/// <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)
169IEventSymbol @event => GenerateEvent(@event, throughMember, accessibility, modifiers), 236private IEventSymbol GenerateEvent( 237IEventSymbol @event, ISymbol? throughMember, Accessibility accessibility, DeclarationModifiers modifiers) 247IEventSymbol @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)
302IEventSymbol @event => [GenerateEvent(compilation, memberName, generateInvisibly, factory, modifiers, useExplicitInterfaceSymbol, accessibility, @event)], 307private ISymbol GenerateEvent(Compilation compilation, string memberName, bool generateInvisibly, SyntaxGenerator factory, DeclarationModifiers modifiers, bool useExplicitInterfaceSymbol, Accessibility accessibility, IEventSymbol @event) 325IEventSymbol @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)
663public 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)
1469public static IEventSymbol? GetDeclaredSymbol(this SemanticModel? semanticModel, EventDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Operations\CSharpOperationFactory.cs (1)
652IEventSymbol @event = boundEventAccess.EventSymbol.GetPublicSymbol();
Operations\CSharpOperationFactory_Methods.cs (1)
132IEventSymbol @event = boundEventAssignmentOperator.Event.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), 152IEventSymbol evt,
Microsoft.CodeAnalysis.CSharp.Workspaces (17)
Classification\SyntaxClassification\NameSyntaxClassifier.cs (1)
206case IEventSymbol:
Recommendations\CSharpRecommendationServiceRunner.cs (1)
794if (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)
311SymbolKind.Event => GetDisplayName((IEventSymbol)symbol), 322internal virtual string GetDisplayName(IEventSymbol symbol) 2574protected static bool ReturnTypesEquivalent(IEventSymbol oldEvent, IEventSymbol newEvent, bool exact) 2640return ReturnTypesEquivalent((IEventSymbol)oldMember, (IEventSymbol)newMember, exact); 3466IEventSymbol) 3878IEventSymbol { AddMethod.IsImplicitlyDeclared: false, RemoveMethod.IsImplicitlyDeclared: false }; 3898case IEventSymbol eventSymbol: 3936case IEventSymbol eventSymbol: 3998case IEventSymbol oldEventSymbol: 4011var newEventSymbol = (IEventSymbol)newSymbol; 4137Contract.ThrowIfFalse(oldMember is IFieldSymbol or IPropertySymbol or IEventSymbol); 4389else if (oldSymbol is IEventSymbol oldEvent && newSymbol is IEventSymbol newEvent) 4568else if (oldSymbol is IEventSymbol oldEvent && newSymbol is IEventSymbol newEvent) 5053if (newSymbol is IMethodSymbol or IEventSymbol or IPropertySymbol) 5401if (HasBackingField((IEventSymbol)newSymbol) && 5425private static bool HasBackingField(IEventSymbol @event) 7084IEventSymbol { AddMethod.IsImplicitlyDeclared: true });
ExtractInterface\AbstractExtractInterfaceService.cs (1)
375case IEventSymbol @event:
FindUsages\AbstractFindUsagesService_FindImplementations.cs (1)
215IEventSymbol ev => ev.PartialImplementationPart,
InheritanceMargin\AbstractInheritanceMarginService.cs (1)
76if (symbol is IEventSymbol or IPropertySymbol
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
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)
47SymbolKind.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)
169IEventSymbol @event => GenerateEvent(@event, throughMember, accessibility, modifiers), 236private IEventSymbol GenerateEvent( 237IEventSymbol @event, ISymbol? throughMember, Accessibility accessibility, DeclarationModifiers modifiers) 247IEventSymbol @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)
302IEventSymbol @event => [GenerateEvent(compilation, memberName, generateInvisibly, factory, modifiers, useExplicitInterfaceSymbol, accessibility, @event)], 307private ISymbol GenerateEvent(Compilation compilation, string memberName, bool generateInvisibly, SyntaxGenerator factory, DeclarationModifiers modifiers, bool useExplicitInterfaceSymbol, Accessibility accessibility, IEventSymbol @event) 325IEventSymbol @event, bool generateInvisibly, IMethodSymbol accessor, string memberName,
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.VisualBasic (30)
Compilation\SemanticModel.vb (3)
2681Public Overloads Function GetDeclaredSymbol(declarationSyntax As EventStatementSyntax, Optional cancellationToken As CancellationToken = Nothing) As IEventSymbol 2699Public Overloads Function GetDeclaredSymbol(declarationSyntax As EventBlockSyntax, Optional cancellationToken As CancellationToken = Nothing) As IEventSymbol 3510Protected NotOverridable Overrides Function IsEventUsableAsFieldCore(position As Integer, symbol As IEventSymbol) As Boolean
Operations\VisualBasicOperationFactory.vb (1)
909Dim [event] As IEventSymbol = boundEventAccess.EventSymbol
SymbolDisplay\SymbolDisplayVisitor.Members.vb (1)
124Public Overrides Sub VisitEvent(symbol As IEventSymbol)
Symbols\EventSymbol.vb (18)
53Public MustOverride ReadOnly Property IsWindowsRuntimeEvent As Boolean Implements IEventSymbol.IsWindowsRuntimeEvent 279Private ReadOnly Property IEventSymbol_Type As ITypeSymbol Implements IEventSymbol.Type 285Private ReadOnly Property IEventSymbol_NullableAnnotation As NullableAnnotation Implements IEventSymbol.NullableAnnotation 291Private ReadOnly Property IEventSymbol_AddMethod As IMethodSymbol Implements IEventSymbol.AddMethod 297Private ReadOnly Property IEventSymbol_RemoveMethod As IMethodSymbol Implements IEventSymbol.RemoveMethod 303Private ReadOnly Property IEventSymbol_RaiseMethod As IMethodSymbol Implements IEventSymbol.RaiseMethod 309Private ReadOnly Property IEventSymbol_OriginalDefinition As IEventSymbol Implements IEventSymbol.OriginalDefinition 315Private ReadOnly Property IEventSymbol_OverriddenEvent As IEventSymbol Implements IEventSymbol.OverriddenEvent 321Private ReadOnly Property IEventSymbol_ExplicitInterfaceImplementations As ImmutableArray(Of IEventSymbol) Implements IEventSymbol.ExplicitInterfaceImplementations 323Return StaticCast(Of IEventSymbol).From(Me.ExplicitInterfaceImplementations) 327Private ReadOnly Property IEventSymbol_PartialDefinitionPart As IEventSymbol Implements IEventSymbol.PartialDefinitionPart 334Private ReadOnly Property IEventSymbol_PartialImplementationPart As IEventSymbol Implements IEventSymbol.PartialImplementationPart 341Private ReadOnly Property IEventSymbol_IsPartialDefinition As Boolean Implements IEventSymbol.IsPartialDefinition
Symbols\HandledEvent.vb (1)
64Public ReadOnly Property EventSymbol As IEventSymbol
VisualBasicExtensions.vb (6)
599Public Function AssociatedField(eventSymbol As IEventSymbol) As IFieldSymbol 605Public Function HasAssociatedField(eventSymbol As IEventSymbol) As Boolean 611Public Function GetFieldAttributes(eventSymbol As IEventSymbol) As ImmutableArray(Of AttributeData) 621Public Function IsImplicitlyDeclared(eventSymbol As IEventSymbol) As Boolean 1162Public Function GetDeclaredSymbol(semanticModel As SemanticModel, declarationSyntax As EventStatementSyntax, Optional cancellationToken As CancellationToken = Nothing) As IEventSymbol 1188Public Function GetDeclaredSymbol(semanticModel As SemanticModel, declarationSyntax As EventBlockSyntax, Optional cancellationToken As CancellationToken = Nothing) As IEventSymbol
Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes (11)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\EventGenerator.vb (7)
49[event] As IEventSymbol, 64[event] As IEventSymbol, 78[event] As IEventSymbol, 91[event] As IEventSymbol, 137[event] As IEventSymbol, 163Private Function GenerateModifiers([event] As IEventSymbol, 185Private Function GenerateAsClause([event] As IEventSymbol) As SimpleAsClauseSyntax
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicCodeGenerationService.vb (2)
93[event] As IEventSymbol, 547Public Overrides Function CreateEventDeclaration([event] As IEventSymbol,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\ContextQuery\VisualBasicSyntaxContextExtensions.vb (2)
27Return container.BaseType.GetAccessibleMembersInThisAndBaseTypes(Of IEventSymbol)(container).Any() 30Return container.GetAccessibleMembersInThisAndBaseTypes(Of IEventSymbol)(container).Any()
Microsoft.CodeAnalysis.VisualBasic.Features (15)
ChangeSignature\VisualBasicChangeSignatureService.vb (1)
338Dim delegateInvokeMethod = DirectCast(DirectCast(semanticModel.GetSymbolInfo(raiseEventStatement.Name, cancellationToken).Symbol, IEventSymbol).Type, INamedTypeSymbol).DelegateInvokeMethod
CodeFixes\GenerateEvent\GenerateEventCodeFixProvider.CodeAction.vb (2)
16Private ReadOnly _generatedEvent As IEventSymbol 21generatedEvent As IEventSymbol,
CodeFixes\GenerateEvent\GenerateEventCodeFixProvider.vb (1)
264Dim boundEvent = TryCast(semanticModel.GetDeclaredSymbol(node.Parent.Parent, cancellationToken), IEventSymbol)
Completion\CompletionProviders\HandlesClauseCompletionProvider.vb (4)
115Dim result = ImmutableArray(Of IEventSymbol).Empty 121OfType(Of IEventSymbol)(). 125OfType(Of IEventSymbol)(). 134OfType(Of IEventSymbol)().
EditAndContinue\VisualBasicEditAndContinueAnalyzer.vb (2)
823Dim oldEventSymbol = TryCast(oldSymbol, IEventSymbol) 824Dim newEventSymbol = TryCast(newSymbol, IEventSymbol)
NavigationBar\VisualBasicNavigationBarItemService.vb (2)
321Dim accessibleEvents = semanticModel.LookupSymbols(position, eventType).OfType(Of IEventSymbol).OrderBy(Function(e) e.Name) 326Dim eventToImplementingMethods As New Dictionary(Of IEventSymbol, List(Of IMethodSymbol))
SignatureHelp\RaiseEventStatementSignatureHelpProvider.vb (3)
85OfType(Of IEventSymbol)(). 101eventSymbol As IEventSymbol, 126eventSymbol As IEventSymbol,
Microsoft.CodeAnalysis.VisualBasic.Workspaces (12)
Recommendations\VisualBasicRecommendationServiceRunner.vb (1)
371Return TypeOf DirectCast(s, INamedTypeSymbol).AssociatedSymbol IsNot IEventSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\EventGenerator.vb (7)
49[event] As IEventSymbol, 64[event] As IEventSymbol, 78[event] As IEventSymbol, 91[event] As IEventSymbol, 137[event] As IEventSymbol, 163Private Function GenerateModifiers([event] As IEventSymbol, 185Private Function GenerateAsClause([event] As IEventSymbol) As SimpleAsClauseSyntax
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicCodeGenerationService.vb (2)
93[event] As IEventSymbol, 547Public Overrides Function CreateEventDeclaration([event] As IEventSymbol,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\ContextQuery\VisualBasicSyntaxContextExtensions.vb (2)
27Return container.BaseType.GetAccessibleMembersInThisAndBaseTypes(Of IEventSymbol)(container).Any() 30Return container.GetAccessibleMembersInThisAndBaseTypes(Of IEventSymbol)(container).Any()
Microsoft.CodeAnalysis.Workspaces (77)
Editing\DeclarationModifiers.cs (1)
68or 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)
Roslyn.Diagnostics.VisualBasic.Analyzers (2)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicCodeGenerationService.vb (2)
93[event] As IEventSymbol, 547Public Overrides Function CreateEventDeclaration([event] As IEventSymbol,