2 writes to _lazyExtensionInfo
Microsoft.CodeAnalysis.CSharp (2)
Symbols\Source\SourceNamedTypeSymbol_Extension.cs (2)
1078
Interlocked.CompareExchange(ref
_lazyExtensionInfo
, new ExtensionInfo(), null);
1107
Interlocked.CompareExchange(ref
_lazyExtensionInfo
, new ExtensionInfo(), null);
12 references to _lazyExtensionInfo
Microsoft.CodeAnalysis.CSharp (12)
Symbols\Source\SourceNamedTypeSymbol_Extension.cs (12)
1054
if (
_lazyExtensionInfo
.LazyExtensionParameter == null && markerMethod is { Parameters: [var parameter, ..] })
1056
Interlocked.CompareExchange(ref
_lazyExtensionInfo
.LazyExtensionParameter, new ReceiverParameterSymbol(this, parameter), null);
1059
return
_lazyExtensionInfo
.LazyExtensionParameter;
1076
if (
_lazyExtensionInfo
is null)
1081
if (
_lazyExtensionInfo
.LazyImplementationMap is null)
1089
Interlocked.CompareExchange(ref
_lazyExtensionInfo
.LazyImplementationMap, builder.ToImmutable(), null);
1092
return
_lazyExtensionInfo
.LazyImplementationMap.GetValueOrDefault(method);
1100
[MemberNotNull(nameof(
_lazyExtensionInfo
))]
1105
if (
_lazyExtensionInfo
is null)
1110
if (
_lazyExtensionInfo
.LazyExtensionMarker == (object)ErrorMethodSymbol.UnknownMethod)
1112
Interlocked.CompareExchange(ref
_lazyExtensionInfo
.LazyExtensionMarker, tryCreateExtensionMarker(), ErrorMethodSymbol.UnknownMethod);
1115
return
_lazyExtensionInfo
.LazyExtensionMarker;