113 references to EditAndContinueCapabilities
Microsoft.CodeAnalysis.Features (113)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (27)
510AsyncLazy<EditAndContinueCapabilities> lazyCapabilities, 593if (!capabilities.Grant(EditAndContinueCapabilities.Baseline)) 3240!capabilities.Grant(EditAndContinueCapabilities.UpdateParameters)) 4282!capabilities.Grant(EditAndContinueCapabilities.NewTypeDefinition | EditAndContinueCapabilities.AddExplicitInterfaceImplementation)) 4292if (!capabilities.Grant(EditAndContinueCapabilities.AddInstanceFieldToExistingType)) 4301!capabilities.Grant(EditAndContinueCapabilities.GenericAddFieldToExistingType)) 4599else if (oldParameter.Name != newParameter.Name && !capabilities.Grant(EditAndContinueCapabilities.UpdateParameters)) 4624!capabilities.Grant(EditAndContinueCapabilities.GenericUpdateMethod)) 4880if (!capabilities.Grant(EditAndContinueCapabilities.ChangeCustomAttributes)) 5051var requiredCapabilities = EditAndContinueCapabilities.None; 5066private static EditAndContinueCapabilities GetRequiredAddMethodCapabilities(ISymbol symbol) 5067=> EditAndContinueCapabilities.AddMethodToExistingType | 5068(InGenericContext(symbol) ? EditAndContinueCapabilities.GenericAddMethodToExistingType : 0); 5070private static EditAndContinueCapabilities GetRequiredAddFieldCapabilities(ISymbol symbol) 5071=> (symbol.IsStatic ? EditAndContinueCapabilities.AddStaticFieldToExistingType : EditAndContinueCapabilities.AddInstanceFieldToExistingType) | 5072(InGenericContext(symbol) ? EditAndContinueCapabilities.GenericAddFieldToExistingType : 0); 5079return capabilities.Grant(EditAndContinueCapabilities.GenericUpdateMethod); 5907!capabilities.Grant(EditAndContinueCapabilities.GenericUpdateMethod)) 6113var requiredCapabilities = EditAndContinueCapabilities.AddMethodToExistingType; 6119requiredCapabilities |= EditAndContinueCapabilities.GenericAddMethodToExistingType; 6132requiredCapabilities |= EditAndContinueCapabilities.AddStaticFieldToExistingType; 6137requiredCapabilities |= EditAndContinueCapabilities.GenericAddFieldToExistingType; 6149requiredCapabilities |= EditAndContinueCapabilities.NewTypeDefinition;
EditAndContinue\DocumentAnalysisResults.cs (8)
83/// <see cref="EditAndContinueCapabilities.None"/> if the document does not have valid changes. 85public EditAndContinueCapabilities RequiredCapabilities { get; } 116EditAndContinueCapabilities requiredCapabilities, 132Debug.Assert(requiredCapabilities == EditAndContinueCapabilities.None); 144Debug.Assert(requiredCapabilities == EditAndContinueCapabilities.None); 160Debug.Assert(requiredCapabilities != EditAndContinueCapabilities.None); 195EditAndContinueCapabilities.None, 214EditAndContinueCapabilities.None,
EditAndContinue\EditAndContinueCapabilities.cs (50)
83public static EditAndContinueCapabilities Parse(ImmutableArray<string> capabilities) 85var caps = EditAndContinueCapabilities.None; 91nameof(EditAndContinueCapabilities.Baseline) => EditAndContinueCapabilities.Baseline, 92nameof(EditAndContinueCapabilities.AddMethodToExistingType) => EditAndContinueCapabilities.AddMethodToExistingType, 93nameof(EditAndContinueCapabilities.AddStaticFieldToExistingType) => EditAndContinueCapabilities.AddStaticFieldToExistingType, 94nameof(EditAndContinueCapabilities.AddInstanceFieldToExistingType) => EditAndContinueCapabilities.AddInstanceFieldToExistingType, 95nameof(EditAndContinueCapabilities.NewTypeDefinition) => EditAndContinueCapabilities.NewTypeDefinition, 96nameof(EditAndContinueCapabilities.ChangeCustomAttributes) => EditAndContinueCapabilities.ChangeCustomAttributes, 97nameof(EditAndContinueCapabilities.UpdateParameters) => EditAndContinueCapabilities.UpdateParameters, 98nameof(EditAndContinueCapabilities.GenericAddMethodToExistingType) => EditAndContinueCapabilities.GenericAddMethodToExistingType, 99nameof(EditAndContinueCapabilities.GenericUpdateMethod) => EditAndContinueCapabilities.GenericUpdateMethod, 100nameof(EditAndContinueCapabilities.GenericAddFieldToExistingType) => EditAndContinueCapabilities.GenericAddFieldToExistingType, 101nameof(EditAndContinueCapabilities.AddExplicitInterfaceImplementation) => EditAndContinueCapabilities.AddExplicitInterfaceImplementation, 102nameof(EditAndContinueCapabilities.AddFieldRva) => EditAndContinueCapabilities.AddFieldRva, 105"AddDefinitionToExistingType" => EditAndContinueCapabilities.AddMethodToExistingType | EditAndContinueCapabilities.AddStaticFieldToExistingType | EditAndContinueCapabilities.AddInstanceFieldToExistingType, 107_ => EditAndContinueCapabilities.None 114public static ImmutableArray<string> ToStringArray(this EditAndContinueCapabilities capabilities) 118if (capabilities.HasFlag(EditAndContinueCapabilities.Baseline)) 119builder.Add(nameof(EditAndContinueCapabilities.Baseline)); 121if (capabilities.HasFlag(EditAndContinueCapabilities.AddMethodToExistingType)) 122builder.Add(nameof(EditAndContinueCapabilities.AddMethodToExistingType)); 124if (capabilities.HasFlag(EditAndContinueCapabilities.AddStaticFieldToExistingType)) 125builder.Add(nameof(EditAndContinueCapabilities.AddStaticFieldToExistingType)); 127if (capabilities.HasFlag(EditAndContinueCapabilities.AddInstanceFieldToExistingType)) 128builder.Add(nameof(EditAndContinueCapabilities.AddInstanceFieldToExistingType)); 130if (capabilities.HasFlag(EditAndContinueCapabilities.NewTypeDefinition)) 131builder.Add(nameof(EditAndContinueCapabilities.NewTypeDefinition)); 133if (capabilities.HasFlag(EditAndContinueCapabilities.ChangeCustomAttributes)) 134builder.Add(nameof(EditAndContinueCapabilities.ChangeCustomAttributes)); 136if (capabilities.HasFlag(EditAndContinueCapabilities.UpdateParameters)) 137builder.Add(nameof(EditAndContinueCapabilities.UpdateParameters)); 139if (capabilities.HasFlag(EditAndContinueCapabilities.AddExplicitInterfaceImplementation)) 140builder.Add(nameof(EditAndContinueCapabilities.AddExplicitInterfaceImplementation)); 142if (capabilities.HasFlag(EditAndContinueCapabilities.AddFieldRva)) 143builder.Add(nameof(EditAndContinueCapabilities.AddFieldRva));
EditAndContinue\EditAndContinueCapabilitiesGrantor.cs (6)
10internal sealed class EditAndContinueCapabilitiesGrantor(EditAndContinueCapabilities availableCapabilities) 12private readonly EditAndContinueCapabilities _availableCapabilities = availableCapabilities; 14public EditAndContinueCapabilities GrantedCapabilities { get; private set; } = 0; 16public bool Grant(EditAndContinueCapabilities capabilities) 24if (!Grant(EditAndContinueCapabilities.NewTypeDefinition)) 29if (type.HasExplicitlyImplementedInterfaceMember() && !Grant(EditAndContinueCapabilities.AddExplicitInterfaceImplementation))
EditAndContinue\EditAndContinueDocumentAnalysesCache.cs (2)
24internal sealed class EditAndContinueDocumentAnalysesCache(AsyncLazy<ActiveStatementsMap> baseActiveStatements, AsyncLazy<EditAndContinueCapabilities> capabilities, TraceLog log) 29private readonly AsyncLazy<EditAndContinueCapabilities> _capabilities = capabilities;
EditAndContinue\EditSession.cs (11)
69internal readonly AsyncLazy<EditAndContinueCapabilities> Capabilities; 133var capabilities = await Capabilities.GetValueAsync(cancellationToken).ConfigureAwait(false); 134if (!capabilities.HasFlag(EditAndContinueCapabilities.NewTypeDefinition)) 227private async Task<EditAndContinueCapabilities> GetCapabilitiesAsync(CancellationToken cancellationToken) 236return EditAndContinueCapabilities.Baseline; 817var requiredCapabilities = EditAndContinueCapabilities.None; 1379var capabilities = await Capabilities.GetValueAsync(cancellationToken).ConfigureAwait(false); 1382var isAddedSymbolPredicate = capabilities.HasFlag(EditAndContinueCapabilities.GenericAddMethodToExistingType) ? 1410EmitFieldRva = capabilities.HasFlag(EditAndContinueCapabilities.AddFieldRva), 1411MethodImplEntriesSupported = capabilities.HasFlag(EditAndContinueCapabilities.AddExplicitInterfaceImplementation)
EditAndContinue\EditSessionTelemetry.cs (5)
22public readonly EditAndContinueCapabilities Capabilities = telemetry._capabilities; 53private EditAndContinueCapabilities _capabilities; 69_capabilities = EditAndContinueCapabilities.None; 154public void LogRuntimeCapabilities(EditAndContinueCapabilities capabilities) 158Debug.Assert(_capabilities == EditAndContinueCapabilities.None || _capabilities == capabilities);
EditAndContinue\IEditAndContinueAnalyzer.cs (1)
24AsyncLazy<EditAndContinueCapabilities> lazyCapabilities,
EditAndContinue\ProjectChanges.cs (3)
37public readonly EditAndContinueCapabilities RequiredCapabilities; 44EditAndContinueCapabilities requiredCapabilities) 49Debug.Assert(requiredCapabilities != EditAndContinueCapabilities.None);