118 references to EditAndContinueCapabilities
Microsoft.CodeAnalysis.Features (112)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (27)
510
AsyncLazy<
EditAndContinueCapabilities
> lazyCapabilities,
579
if (!capabilities.Grant(
EditAndContinueCapabilities
.Baseline))
3067
!capabilities.Grant(
EditAndContinueCapabilities
.UpdateParameters))
4069
!capabilities.Grant(
EditAndContinueCapabilities
.NewTypeDefinition |
EditAndContinueCapabilities
.AddExplicitInterfaceImplementation))
4079
if (!capabilities.Grant(
EditAndContinueCapabilities
.AddInstanceFieldToExistingType))
4088
!capabilities.Grant(
EditAndContinueCapabilities
.GenericAddFieldToExistingType))
4379
else if (oldParameter.Name != newParameter.Name && !capabilities.Grant(
EditAndContinueCapabilities
.UpdateParameters))
4404
!capabilities.Grant(
EditAndContinueCapabilities
.GenericUpdateMethod))
4643
if (!capabilities.Grant(
EditAndContinueCapabilities
.ChangeCustomAttributes))
4814
var
requiredCapabilities =
EditAndContinueCapabilities
.None;
4829
private static
EditAndContinueCapabilities
GetRequiredAddMethodCapabilities(ISymbol symbol)
4830
=>
EditAndContinueCapabilities
.AddMethodToExistingType |
4831
(InGenericContext(symbol) ?
EditAndContinueCapabilities
.GenericAddMethodToExistingType : 0);
4833
private static
EditAndContinueCapabilities
GetRequiredAddFieldCapabilities(ISymbol symbol)
4834
=> (symbol.IsStatic ?
EditAndContinueCapabilities
.AddStaticFieldToExistingType :
EditAndContinueCapabilities
.AddInstanceFieldToExistingType) |
4835
(InGenericContext(symbol) ?
EditAndContinueCapabilities
.GenericAddFieldToExistingType : 0);
4842
return capabilities.Grant(
EditAndContinueCapabilities
.GenericUpdateMethod);
5670
!capabilities.Grant(
EditAndContinueCapabilities
.GenericUpdateMethod))
5876
var
requiredCapabilities =
EditAndContinueCapabilities
.AddMethodToExistingType;
5882
requiredCapabilities |=
EditAndContinueCapabilities
.GenericAddMethodToExistingType;
5895
requiredCapabilities |=
EditAndContinueCapabilities
.AddStaticFieldToExistingType;
5900
requiredCapabilities |=
EditAndContinueCapabilities
.GenericAddFieldToExistingType;
5912
requiredCapabilities |=
EditAndContinueCapabilities
.NewTypeDefinition;
EditAndContinue\DocumentAnalysisResults.cs (8)
83
/// <see cref="
EditAndContinueCapabilities
.None"/> if the document does not have valid changes.
85
public
EditAndContinueCapabilities
RequiredCapabilities { get; }
116
EditAndContinueCapabilities
requiredCapabilities,
132
Debug.Assert(requiredCapabilities ==
EditAndContinueCapabilities
.None);
144
Debug.Assert(requiredCapabilities ==
EditAndContinueCapabilities
.None);
160
Debug.Assert(requiredCapabilities !=
EditAndContinueCapabilities
.None);
201
EditAndContinueCapabilities
.None,
220
EditAndContinueCapabilities
.None,
EditAndContinue\EditAndContinueCapabilities.cs (50)
83
public static
EditAndContinueCapabilities
Parse(ImmutableArray<string> capabilities)
85
var
caps =
EditAndContinueCapabilities
.None;
91
nameof(
EditAndContinueCapabilities
.Baseline) =>
EditAndContinueCapabilities
.Baseline,
92
nameof(
EditAndContinueCapabilities
.AddMethodToExistingType) =>
EditAndContinueCapabilities
.AddMethodToExistingType,
93
nameof(
EditAndContinueCapabilities
.AddStaticFieldToExistingType) =>
EditAndContinueCapabilities
.AddStaticFieldToExistingType,
94
nameof(
EditAndContinueCapabilities
.AddInstanceFieldToExistingType) =>
EditAndContinueCapabilities
.AddInstanceFieldToExistingType,
95
nameof(
EditAndContinueCapabilities
.NewTypeDefinition) =>
EditAndContinueCapabilities
.NewTypeDefinition,
96
nameof(
EditAndContinueCapabilities
.ChangeCustomAttributes) =>
EditAndContinueCapabilities
.ChangeCustomAttributes,
97
nameof(
EditAndContinueCapabilities
.UpdateParameters) =>
EditAndContinueCapabilities
.UpdateParameters,
98
nameof(
EditAndContinueCapabilities
.GenericAddMethodToExistingType) =>
EditAndContinueCapabilities
.GenericAddMethodToExistingType,
99
nameof(
EditAndContinueCapabilities
.GenericUpdateMethod) =>
EditAndContinueCapabilities
.GenericUpdateMethod,
100
nameof(
EditAndContinueCapabilities
.GenericAddFieldToExistingType) =>
EditAndContinueCapabilities
.GenericAddFieldToExistingType,
101
nameof(
EditAndContinueCapabilities
.AddExplicitInterfaceImplementation) =>
EditAndContinueCapabilities
.AddExplicitInterfaceImplementation,
102
nameof(
EditAndContinueCapabilities
.AddFieldRva) =>
EditAndContinueCapabilities
.AddFieldRva,
105
"AddDefinitionToExistingType" =>
EditAndContinueCapabilities
.AddMethodToExistingType |
EditAndContinueCapabilities
.AddStaticFieldToExistingType |
EditAndContinueCapabilities
.AddInstanceFieldToExistingType,
107
_ =>
EditAndContinueCapabilities
.None
114
public static ImmutableArray<string> ToStringArray(this
EditAndContinueCapabilities
capabilities)
118
if (capabilities.HasFlag(
EditAndContinueCapabilities
.Baseline))
119
builder.Add(nameof(
EditAndContinueCapabilities
.Baseline));
121
if (capabilities.HasFlag(
EditAndContinueCapabilities
.AddMethodToExistingType))
122
builder.Add(nameof(
EditAndContinueCapabilities
.AddMethodToExistingType));
124
if (capabilities.HasFlag(
EditAndContinueCapabilities
.AddStaticFieldToExistingType))
125
builder.Add(nameof(
EditAndContinueCapabilities
.AddStaticFieldToExistingType));
127
if (capabilities.HasFlag(
EditAndContinueCapabilities
.AddInstanceFieldToExistingType))
128
builder.Add(nameof(
EditAndContinueCapabilities
.AddInstanceFieldToExistingType));
130
if (capabilities.HasFlag(
EditAndContinueCapabilities
.NewTypeDefinition))
131
builder.Add(nameof(
EditAndContinueCapabilities
.NewTypeDefinition));
133
if (capabilities.HasFlag(
EditAndContinueCapabilities
.ChangeCustomAttributes))
134
builder.Add(nameof(
EditAndContinueCapabilities
.ChangeCustomAttributes));
136
if (capabilities.HasFlag(
EditAndContinueCapabilities
.UpdateParameters))
137
builder.Add(nameof(
EditAndContinueCapabilities
.UpdateParameters));
139
if (capabilities.HasFlag(
EditAndContinueCapabilities
.AddExplicitInterfaceImplementation))
140
builder.Add(nameof(
EditAndContinueCapabilities
.AddExplicitInterfaceImplementation));
142
if (capabilities.HasFlag(
EditAndContinueCapabilities
.AddFieldRva))
143
builder.Add(nameof(
EditAndContinueCapabilities
.AddFieldRva));
EditAndContinue\EditAndContinueCapabilitiesGrantor.cs (6)
10
internal sealed class EditAndContinueCapabilitiesGrantor(
EditAndContinueCapabilities
availableCapabilities)
12
private readonly
EditAndContinueCapabilities
_availableCapabilities = availableCapabilities;
14
public
EditAndContinueCapabilities
GrantedCapabilities { get; private set; } = 0;
16
public bool Grant(
EditAndContinueCapabilities
capabilities)
24
if (!Grant(
EditAndContinueCapabilities
.NewTypeDefinition))
29
if (type.HasExplicitlyImplementedInterfaceMember() && !Grant(
EditAndContinueCapabilities
.AddExplicitInterfaceImplementation))
EditAndContinue\EditAndContinueDocumentAnalysesCache.cs (2)
24
internal sealed class EditAndContinueDocumentAnalysesCache(AsyncLazy<ActiveStatementsMap> baseActiveStatements, AsyncLazy<
EditAndContinueCapabilities
> capabilities, TraceLog log)
29
private readonly AsyncLazy<
EditAndContinueCapabilities
> _capabilities = capabilities;
EditAndContinue\EditSession.cs (8)
69
internal readonly AsyncLazy<
EditAndContinueCapabilities
> Capabilities;
134
if (!capabilities.HasFlag(
EditAndContinueCapabilities
.NewTypeDefinition))
236
private async Task<
EditAndContinueCapabilities
> GetCapabilitiesAsync(CancellationToken cancellationToken)
245
return
EditAndContinueCapabilities
.Baseline;
674
var
requiredCapabilities =
EditAndContinueCapabilities
.None;
1101
var isAddedSymbolPredicate = capabilities.HasFlag(
EditAndContinueCapabilities
.GenericAddMethodToExistingType) ?
1131
new EmitDifferenceOptions() { EmitFieldRva = capabilities.HasFlag(
EditAndContinueCapabilities
.AddFieldRva) },
EditAndContinue\EditSessionTelemetry.cs (5)
22
public readonly
EditAndContinueCapabilities
Capabilities = telemetry._capabilities;
53
private
EditAndContinueCapabilities
_capabilities;
69
_capabilities =
EditAndContinueCapabilities
.None;
140
public void LogRuntimeCapabilities(
EditAndContinueCapabilities
capabilities)
144
Debug.Assert(_capabilities ==
EditAndContinueCapabilities
.None || _capabilities == capabilities);
EditAndContinue\IEditAndContinueAnalyzer.cs (1)
22
AsyncLazy<
EditAndContinueCapabilities
> lazyCapabilities,
EditAndContinue\ProjectChanges.cs (3)
37
public readonly
EditAndContinueCapabilities
RequiredCapabilities;
44
EditAndContinueCapabilities
requiredCapabilities)
49
Debug.Assert(requiredCapabilities !=
EditAndContinueCapabilities
.None);
ExternalAccess\Watch\Api\WatchHotReloadService.cs (2)
196
/// and not on .NET Framework (they are not in <see cref="
EditAndContinueCapabilities
.Baseline"/>.
199
=> capabilities.Add(nameof(
EditAndContinueCapabilities
.AddExplicitInterfaceImplementation));
Microsoft.CodeAnalysis.Features.Test.Utilities (1)
EditAndContinue\EditAndContinueTestVerifier.cs (1)
163
var
actualRequiredCapabilities = EditAndContinueCapabilities.None;
Microsoft.CodeAnalysis.Features.UnitTests (5)
EditAndContinue\EditAndContinueCapabilitiesTests.cs (5)
18
var
service = EditAndContinueCapabilitiesParser.Parse(capabilities);
29
var
service = EditAndContinueCapabilitiesParser.Parse(capabilities);
39
var
service = EditAndContinueCapabilitiesParser.Parse(capabilities);
50
var
service = EditAndContinueCapabilitiesParser.Parse(capabilities);
63
var
service = EditAndContinueCapabilitiesParser.Parse(capabilities);