63 references to ManagedKind
Microsoft.CodeAnalysis.CSharp (42)
Binder\Binder_Expressions.cs (5)
1591var managedKind = type.GetManagedKind(ref useSiteInfo); 1598internal static bool CheckManagedAddr(CSharpCompilation compilation, TypeSymbol type, ManagedKind managedKind, Location location, BindingDiagnosticBag diagnostics, bool errorForManaged = false) 1602case ManagedKind.Managed: 1611case ManagedKind.UnmanagedWithGenerics when MessageID.IDS_FeatureUnmanagedConstructedTypes.GetFeatureAvailabilityDiagnosticInfo(compilation) is CSDiagnosticInfo diagnosticInfo: 1614case ManagedKind.Unknown:
Binder\Binder_Operators.cs (1)
4133ManagedKind managedKind = operandType.GetManagedKind(ref useSiteInfo);
Symbols\ArrayTypeSymbol.cs (2)
239internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed;
Symbols\BaseTypeAnalysis.cs (4)
144internal static ManagedKind GetManagedKind(NamedTypeSymbol type, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 162return ManagedKind.Managed; 166return ManagedKind.UnmanagedWithGenerics; 170return ManagedKind.Unmanaged;
Symbols\ConstraintsHelper.cs (3)
1011var managedKind = typeArgument.Type.GetManagedKind(ref useSiteInfo); 1014if (managedKind == ManagedKind.Managed || !typeArgument.Type.IsNonNullableValueType()) 1020else if (managedKind == ManagedKind.UnmanagedWithGenerics)
Symbols\DynamicTypeSymbol.cs (2)
110internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed;
Symbols\FunctionPointers\FunctionPointerTypeSymbol.cs (2)
89internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Unmanaged;
Symbols\FunctionTypeSymbol.cs (1)
154internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => throw ExceptionUtilities.Unreachable();
Symbols\NamedTypeSymbol.cs (1)
556internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo)
Symbols\PointerTypeSymbol.cs (2)
110internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Unmanaged;
Symbols\Source\SourceMemberContainerSymbol.cs (6)
87public ManagedKind ManagedKind 89get { return (ManagedKind)((_flags >> ManagedKindOffset) & ManagedKindMask); } 143public void SetManagedKind(ManagedKind managedKind) 837internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 839var managedKind = _flags.ManagedKind; 840if (managedKind == ManagedKind.Unknown)
Symbols\Source\SourceMethodSymbolWithAttributes.cs (3)
1428case ManagedKind.Unmanaged: 1429case ManagedKind.UnmanagedWithGenerics: 1435case ManagedKind.Managed:
Symbols\Synthesized\SynthesizedEmbeddedAttributeSymbol.cs (2)
61internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed;
Symbols\Synthesized\SynthesizedHotReloadExceptionSymbol.cs (2)
99internal override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed;
Symbols\TypeParameterSymbol.cs (3)
595internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) 597return HasUnmanagedTypeConstraint ? ManagedKind.Unmanaged : ManagedKind.Managed;
Symbols\TypeSymbol.cs (3)
599internal bool IsManagedType(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => GetManagedKind(ref useSiteInfo) == ManagedKind.Managed; 614internal abstract ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo); 616internal ManagedKind ManagedKindNoUseSiteDiagnostics
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (18)
Semantics\UnsafeTests.cs (18)
5581Assert.Equal(ManagedKind.UnmanagedWithGenerics, type.GetField("f16").Type.ManagedKindNoUseSiteDiagnostics); 5666Assert.Equal(ManagedKind.Unmanaged, globalNamespace.GetMember<NamedTypeSymbol>("S").ManagedKindNoUseSiteDiagnostics); 5668Assert.Equal(ManagedKind.UnmanagedWithGenerics, globalNamespace.GetMember<NamedTypeSymbol>("P").ManagedKindNoUseSiteDiagnostics); 5698Assert.Equal(ManagedKind.UnmanagedWithGenerics, type.GetMember<FieldSymbol>("f1").Type.ManagedKindNoUseSiteDiagnostics); 5700Assert.Equal(ManagedKind.UnmanagedWithGenerics, type.GetMember<FieldSymbol>("f2").Type.ManagedKindNoUseSiteDiagnostics); 5704Assert.Equal(ManagedKind.Managed, type.GetMember<FieldSymbol>("f3").Type.ManagedKindNoUseSiteDiagnostics); 5706Assert.Equal(ManagedKind.Managed, type.GetMember<FieldSymbol>("f4").Type.ManagedKindNoUseSiteDiagnostics); 5709Assert.Equal(ManagedKind.UnmanagedWithGenerics, type.GetMember<FieldSymbol>("f5").Type.ManagedKindNoUseSiteDiagnostics); 5711Assert.Equal(ManagedKind.UnmanagedWithGenerics, type.GetMember<FieldSymbol>("f6").Type.ManagedKindNoUseSiteDiagnostics); 5732Assert.Equal(ManagedKind.Managed, type.GetMember<FieldSymbol>("f1").Type.ManagedKindNoUseSiteDiagnostics); 5734Assert.Equal(ManagedKind.UnmanagedWithGenerics, type.GetMember<FieldSymbol>("f2").Type.ManagedKindNoUseSiteDiagnostics); 5953Assert.Equal(ManagedKind.UnmanagedWithGenerics, globalNamespace.GetMember<NamedTypeSymbol>("W").ManagedKindNoUseSiteDiagnostics); 13636Assert.Equal(ManagedKind.Unmanaged, comp.GlobalNamespace.GetMember<NamedTypeSymbol>("S").ManagedKindNoUseSiteDiagnostics); 13640Assert.Equal(ManagedKind.Unmanaged, comp.GlobalNamespace.GetMember<NamedTypeSymbol>("S").ManagedKindNoUseSiteDiagnostics); 13642Assert.Equal(ManagedKind.Unmanaged, comp.GlobalNamespace.GetMember<NamedTypeSymbol>("S").ManagedKindNoUseSiteDiagnostics); 13673Assert.Equal(ManagedKind.Unmanaged, comp.GlobalNamespace.GetMember<NamedTypeSymbol>("S").ManagedKindNoUseSiteDiagnostics); 13677Assert.Equal(ManagedKind.Unmanaged, comp.GlobalNamespace.GetMember<NamedTypeSymbol>("S").ManagedKindNoUseSiteDiagnostics); 13679Assert.Equal(ManagedKind.Unmanaged, comp.GlobalNamespace.GetMember<NamedTypeSymbol>("S").ManagedKindNoUseSiteDiagnostics);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (2)
Symbols\MockNamedTypeSymbol.cs (2)
276internal sealed override ManagedKind GetManagedKind(ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo) => ManagedKind.Managed;
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\NamedTypeSymbol.vb (1)
1205''' <see cref="ManagedKind"/> is simple for most named types: