4 instantiations of UnmanagedCallersOnlyAttributeData
Microsoft.CodeAnalysis (4)
Symbols\Attributes\UnmanagedCallersOnlyAttributeData.cs (4)
13internal static readonly UnmanagedCallersOnlyAttributeData Uninitialized = new UnmanagedCallersOnlyAttributeData(callingConventionTypes: ImmutableHashSet<INamedTypeSymbolInternal>.Empty); 14internal static readonly UnmanagedCallersOnlyAttributeData AttributePresentDataNotBound = new UnmanagedCallersOnlyAttributeData(callingConventionTypes: ImmutableHashSet<INamedTypeSymbolInternal>.Empty); 15private static readonly UnmanagedCallersOnlyAttributeData PlatformDefault = new UnmanagedCallersOnlyAttributeData(callingConventionTypes: ImmutableHashSet<INamedTypeSymbolInternal>.Empty); 23_ => new UnmanagedCallersOnlyAttributeData(callingConventionTypes)
68 references to UnmanagedCallersOnlyAttributeData
Microsoft.CodeAnalysis (6)
MetadataReader\PEModule.cs (2)
1417internal UnmanagedCallersOnlyAttributeData? TryGetUnmanagedCallersOnlyAttribute( 1459return UnmanagedCallersOnlyAttributeData.Create(unmanagedConventionTypes);
Symbols\Attributes\UnmanagedCallersOnlyAttributeData.cs (4)
13internal static readonly UnmanagedCallersOnlyAttributeData Uninitialized = new UnmanagedCallersOnlyAttributeData(callingConventionTypes: ImmutableHashSet<INamedTypeSymbolInternal>.Empty); 14internal static readonly UnmanagedCallersOnlyAttributeData AttributePresentDataNotBound = new UnmanagedCallersOnlyAttributeData(callingConventionTypes: ImmutableHashSet<INamedTypeSymbolInternal>.Empty); 15private static readonly UnmanagedCallersOnlyAttributeData PlatformDefault = new UnmanagedCallersOnlyAttributeData(callingConventionTypes: ImmutableHashSet<INamedTypeSymbolInternal>.Empty); 19internal static UnmanagedCallersOnlyAttributeData Create(ImmutableHashSet<INamedTypeSymbolInternal>? callingConventionTypes)
Microsoft.CodeAnalysis.CSharp (55)
Binder\Binder.cs (2)
767var unmanagedCallersOnlyAttributeData = symbol.GetUnmanagedCallersOnlyAttributeData(forceComplete: false); 774diagnostics.Add(unmanagedCallersOnlyAttributeData == UnmanagedCallersOnlyAttributeData.Uninitialized
Binder\Semantics\OverloadResolution\OverloadResolution.cs (3)
690var unmanagedCallersOnlyData = member.GetUnmanagedCallersOnlyAttributeData(forceComplete: true); 692Debug.Assert(!ReferenceEquals(unmanagedCallersOnlyData, UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound) 693&& !ReferenceEquals(unmanagedCallersOnlyData, UnmanagedCallersOnlyAttributeData.Uninitialized));
Compilation\CSharpCompilation.cs (2)
2128Debug.Assert(!ReferenceEquals(data, UnmanagedCallersOnlyAttributeData.Uninitialized)); 2129Debug.Assert(!ReferenceEquals(data, UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound));
Errors\LazyUnmanagedCallersOnlyMethodCalledDiagnosticInfo.cs (3)
35UnmanagedCallersOnlyAttributeData? unmanagedCallersOnlyAttributeData = _method.GetUnmanagedCallersOnlyAttributeData(forceComplete: true); 36Debug.Assert(!ReferenceEquals(unmanagedCallersOnlyAttributeData, UnmanagedCallersOnlyAttributeData.Uninitialized)); 37Debug.Assert(!ReferenceEquals(unmanagedCallersOnlyAttributeData, UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound));
Symbols\Attributes\WellKnownAttributeData\MethodWellKnownAttributeData.cs (2)
137private UnmanagedCallersOnlyAttributeData? _unmanagedCallersOnlyAttributeData; 138public UnmanagedCallersOnlyAttributeData? UnmanagedCallersOnlyAttributeData
Symbols\ErrorMethodSymbol.cs (1)
84internal sealed override UnmanagedCallersOnlyAttributeData GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => null;
Symbols\Extensions\RewrittenMethodSymbol.cs (1)
76internal sealed override UnmanagedCallersOnlyAttributeData? GetUnmanagedCallersOnlyAttributeData(bool forceComplete)
Symbols\FunctionPointers\FunctionPointerMethodSymbol.cs (1)
850internal sealed override UnmanagedCallersOnlyAttributeData? GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => null;
Symbols\Metadata\PE\PEMethodSymbol.cs (11)
311public UnmanagedCallersOnlyAttributeData _lazyUnmanagedCallersOnlyAttributeData; 335retVal._lazyUnmanagedCallersOnlyAttributeData = UnmanagedCallersOnlyAttributeData.Uninitialized; 1496if (diagnosticInfo == null && GetUnmanagedCallersOnlyAttributeData(forceComplete: true) is UnmanagedCallersOnlyAttributeData data) 1498Debug.Assert(!ReferenceEquals(data, UnmanagedCallersOnlyAttributeData.Uninitialized)); 1499Debug.Assert(!ReferenceEquals(data, UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound)); 1664internal override UnmanagedCallersOnlyAttributeData? GetUnmanagedCallersOnlyAttributeData(bool forceComplete) 1669var unmanagedCallersOnlyData = containingModule.Module.TryGetUnmanagedCallersOnlyAttribute(_handle, new MetadataDecoder(containingModule), 1672Debug.Assert(!ReferenceEquals(unmanagedCallersOnlyData, UnmanagedCallersOnlyAttributeData.Uninitialized) 1673&& !ReferenceEquals(unmanagedCallersOnlyData, UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound)); 1675var result = InterlockedOperations.Initialize(ref AccessUncommonFields()._lazyUnmanagedCallersOnlyAttributeData, 1677UnmanagedCallersOnlyAttributeData.Uninitialized);
Symbols\MethodSymbol.cs (5)
114/// Returns the <see cref="UnmanagedCallersOnlyAttributeData"/> data for this method, if there is any. If forceComplete 116/// <see cref="UnmanagedCallersOnlyAttributeData.Uninitialized"/> or 117/// <see cref="UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound"/> will be returned, respectively. 121internal abstract UnmanagedCallersOnlyAttributeData? GetUnmanagedCallersOnlyAttributeData(bool forceComplete); 1002if (!UnmanagedCallersOnlyAttributeData.IsCallConvsTypedConstant(key, isField, in value))
Symbols\NativeIntegerTypeSymbol.cs (1)
375internal override UnmanagedCallersOnlyAttributeData? GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => UnderlyingMethod.GetUnmanagedCallersOnlyAttributeData(forceComplete);
Symbols\ReducedExtensionMethodSymbol.cs (1)
444internal sealed override UnmanagedCallersOnlyAttributeData GetUnmanagedCallersOnlyAttributeData(bool forceComplete)
Symbols\Retargeting\RetargetingMethodSymbol.cs (9)
57private UnmanagedCallersOnlyAttributeData _lazyUnmanagedAttributeData = UnmanagedCallersOnlyAttributeData.Uninitialized; 228internal override UnmanagedCallersOnlyAttributeData? GetUnmanagedCallersOnlyAttributeData(bool forceComplete) 230if (ReferenceEquals(_lazyUnmanagedAttributeData, UnmanagedCallersOnlyAttributeData.Uninitialized)) 232var data = _underlyingMethod.GetUnmanagedCallersOnlyAttributeData(forceComplete); 233if (ReferenceEquals(data, UnmanagedCallersOnlyAttributeData.Uninitialized) 234|| ReferenceEquals(data, UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound)) 249data = UnmanagedCallersOnlyAttributeData.Create(builder.ToImmutableHashSet()); 253Interlocked.CompareExchange(ref _lazyUnmanagedAttributeData, data, UnmanagedCallersOnlyAttributeData.Uninitialized);
Symbols\SignatureOnlyMethodSymbol.cs (1)
125internal sealed override UnmanagedCallersOnlyAttributeData GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => throw ExceptionUtilities.Unreachable();
Symbols\Source\SourceMethodSymbolWithAttributes.cs (6)
447internal sealed override UnmanagedCallersOnlyAttributeData? GetUnmanagedCallersOnlyAttributeData(bool forceComplete) 464return UnmanagedCallersOnlyAttributeData.Uninitialized; 481? UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound 1363var unmanagedCallersOnly = this.GetUnmanagedCallersOnlyAttributeData(forceComplete: false); 1429static UnmanagedCallersOnlyAttributeData DecodeUnmanagedCallersOnlyAttributeData(SourceMethodSymbol @this, CSharpAttributeData attribute, Location location, BindingDiagnosticBag diagnostics) 1455return UnmanagedCallersOnlyAttributeData.Create(callingConventionTypes);
Symbols\SubstitutedMethodSymbol.cs (1)
216internal sealed override UnmanagedCallersOnlyAttributeData GetUnmanagedCallersOnlyAttributeData(bool forceComplete)
Symbols\Synthesized\SynthesizedEntryPointSymbol.cs (1)
206internal sealed override UnmanagedCallersOnlyAttributeData GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => null;
Symbols\Synthesized\SynthesizedGlobalMethodSymbol.cs (1)
146internal sealed override UnmanagedCallersOnlyAttributeData GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => null;
Symbols\Synthesized\SynthesizedIntrinsicOperatorSymbol.cs (1)
409internal sealed override UnmanagedCallersOnlyAttributeData GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => null;
Symbols\Synthesized\SynthesizedMethodSymbol.cs (1)
73internal sealed override UnmanagedCallersOnlyAttributeData GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => null;
Symbols\Synthesized\SynthesizedStaticConstructor.cs (1)
368internal sealed override UnmanagedCallersOnlyAttributeData? GetUnmanagedCallersOnlyAttributeData(bool forceComplete) => null;
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (6)
CodeGen\CodeGenFunctionPointersTests.cs (6)
8066var unmanagedData = m1.GetUnmanagedCallersOnlyAttributeData(forceComplete: true); 8067Assert.NotSame(unmanagedData, UnmanagedCallersOnlyAttributeData.Uninitialized); 8068Assert.NotSame(unmanagedData, UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound); 8742var unmanagedData = m1.GetUnmanagedCallersOnlyAttributeData(forceComplete: true); 8743Assert.NotSame(unmanagedData, UnmanagedCallersOnlyAttributeData.Uninitialized); 8744Assert.NotSame(unmanagedData, UnmanagedCallersOnlyAttributeData.AttributePresentDataNotBound);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (1)
Symbols\Retargeting\RetargetingTests.cs (1)
1073var unmanagedCallersOnlyData = m.GetUnmanagedCallersOnlyAttributeData(forceComplete: true);