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