5 instantiations of TypeDefinitionHandle
Microsoft.CodeAnalysis.UnitTests (2)
System.Reflection.Metadata (3)
489 references to TypeDefinitionHandle
BuildValidator (1)
Crossgen2Tasks (1)
Microsoft.Cci.Extensions (2)
Microsoft.CodeAnalysis (131)
MetadataReader\MetadataDecoder.cs (25)
150type = GetTypeOfTypeDef((TypeDefinitionHandle)token, out isNoPiaLocalType, isContainingType: false);
446typeSymbol = GetTypeOfTypeDef((TypeDefinitionHandle)handle, out isNoPiaLocalType, isContainingType: false);
601private TypeSymbol GetTypeOfTypeDef(TypeDefinitionHandle typeDef)
607private TypeSymbol GetTypeOfTypeDef(TypeDefinitionHandle typeDef, out bool isNoPiaLocalType, bool isContainingType)
617ConcurrentDictionary<TypeDefinitionHandle, TypeSymbol> cache = GetTypeHandleToTypeMap();
642TypeDefinitionHandle containerTypeDef = Module.GetContainingTypeOrThrow(typeDef);
782type = GetTypeOfTypeDef((TypeDefinitionHandle)token, out isNoPiaLocalType, isContainingType: false);
932return GetTypeOfTypeDef((TypeDefinitionHandle)token);
1899internal ImmutableArray<MethodSymbol> GetExplicitlyOverriddenMethods(TypeDefinitionHandle implementingTypeDef, MethodDefinitionHandle implementingMethodDef, TypeSymbol implementingTypeSymbol)
1966private MethodSymbol FindMethodSymbolInSuperType(TypeDefinitionHandle searchTypeDef, MethodDefinitionHandle targetMethodDef)
1976Queue<TypeDefinitionHandle> typeDefsToSearch = new Queue<TypeDefinitionHandle>();
1984HashSet<TypeDefinitionHandle> visitedTypeDefTokens = new HashSet<TypeDefinitionHandle>();
1992TypeDefinitionHandle typeDef = typeDefsToSearch.Dequeue();
2035private void EnqueueTypeDefInterfacesAndBaseTypeOrThrow(Queue<TypeDefinitionHandle> typeDefsToSearch, Queue<TypeSymbol> typeSymbolsToSearch, TypeDefinitionHandle searchTypeDef)
2052private void EnqueueTypeToken(Queue<TypeDefinitionHandle> typeDefsToSearch, Queue<TypeSymbol> typeSymbolsToSearch, EntityHandle typeToken)
2058typeDefsToSearch.Enqueue((TypeDefinitionHandle)typeToken);
2073protected abstract void EnqueueTypeSymbolInterfacesAndBaseTypes(Queue<TypeDefinitionHandle> typeDefsToSearch, Queue<TypeSymbol> typeSymbolsToSearch, TypeSymbol typeSymbol);
2081protected abstract void EnqueueTypeSymbol(Queue<TypeDefinitionHandle> typeDefsToSearch, Queue<TypeSymbol> typeSymbolsToSearch, TypeSymbol typeSymbol);
2132protected abstract ConcurrentDictionary<TypeDefinitionHandle, TypeSymbol> GetTypeHandleToTypeMap();
2135protected abstract TypeSymbol SubstituteNoPiaLocalType(TypeDefinitionHandle typeDef, ref MetadataTypeName name, string interfaceGuid, string scope, string identifier);
2185TypeDefinitionHandle typeDef = Module.FindContainingTypeOrThrow((MethodDefinitionHandle)token);
2205TypeDefinitionHandle typeDef = Module.FindContainingTypeOrThrow((FieldDefinitionHandle)token);
MetadataReader\MetadataHelpers.cs (10)
777IEnumerable<IGrouping<string, TypeDefinitionHandle>> typesByNS,
779[NotNull] out IEnumerable<IGrouping<string, TypeDefinitionHandle>>? types,
780[NotNull] out IEnumerable<KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>>? namespaces)
787var nestedTypes = new List<IGrouping<string, TypeDefinitionHandle>>();
794var nestedNamespaces = new List<KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>>();
810List<IGrouping<string, TypeDefinitionHandle>>? typesInLastChildNamespace = null;
866new KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>(
870typesInLastChildNamespace = new List<IGrouping<string, TypeDefinitionHandle>>();
884new KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>(
917nestedNamespaces[i] = default(KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>);
MetadataReader\PEModule.cs (58)
91private ConcurrentDictionary<TypeDefinitionHandle, AttributeInfo> _lazyTypeDefToTypeIdentifierMap;
521public TypeDefinitionHandle GetContainingTypeOrThrow(TypeDefinitionHandle typeDef)
527public string GetTypeDefNameOrThrow(TypeDefinitionHandle typeDef)
559public string GetTypeDefNamespaceOrThrow(TypeDefinitionHandle typeDef)
565public EntityHandle GetTypeDefExtendsOrThrow(TypeDefinitionHandle typeDef)
571public TypeAttributes GetTypeDefFlagsOrThrow(TypeDefinitionHandle typeDef)
577public GenericParameterHandleCollection GetTypeDefGenericParamsOrThrow(TypeDefinitionHandle typeDef)
583public bool HasGenericParametersOrThrow(TypeDefinitionHandle typeDef)
590TypeDefinitionHandle typeDef,
604internal bool IsNestedTypeDefOrThrow(TypeDefinitionHandle typeDef)
610private static bool IsNestedTypeDefOrThrow(MetadataReader metadataReader, TypeDefinitionHandle typeDef)
616internal bool IsInterfaceOrThrow(TypeDefinitionHandle typeDef)
623internal readonly TypeDefinitionHandle TypeDef;
626internal TypeDefToNamespace(TypeDefinitionHandle typeDef, NamespaceDefinitionHandle namespaceHandle)
636foreach (var typeDef in MetadataReader.TypeDefinitions)
667internal IEnumerable<IGrouping<string, TypeDefinitionHandle>> GroupTypesByNamespaceOrThrow(StringComparer nameComparer)
676Dictionary<string, ArrayBuilder<TypeDefinitionHandle>?> namespaces = new Dictionary<string, ArrayBuilder<TypeDefinitionHandle>?>();
683var result = new ArrayBuilder<IGrouping<string, TypeDefinitionHandle>>(namespaces.Count);
687result.Add(new Grouping<string, TypeDefinitionHandle>(pair.Key, pair.Value ?? SpecializedCollections.EmptyEnumerable<TypeDefinitionHandle>()));
694internal sealed class TypesByNamespaceSortComparer : IComparer<IGrouping<string, TypeDefinitionHandle>>
703public int Compare(IGrouping<string, TypeDefinitionHandle>? left, IGrouping<string, TypeDefinitionHandle>? right)
724var fLeft = left.FirstOrDefault();
725var fRight = right.FirstOrDefault();
754private void GetTypeNamespaceNamesOrThrow(Dictionary<string, ArrayBuilder<TypeDefinitionHandle>> namespaces)
757var namespaceHandles = new Dictionary<NamespaceDefinitionHandle, ArrayBuilder<TypeDefinitionHandle>>(NamespaceHandleEqualityComparer.Singleton);
761TypeDefinitionHandle typeDef = pair.TypeDef;
763ArrayBuilder<TypeDefinitionHandle>? builder;
771namespaceHandles.Add(nsHandle, new ArrayBuilder<TypeDefinitionHandle> { typeDef });
779ArrayBuilder<TypeDefinitionHandle>? builder;
834private void GetForwardedTypeNamespaceNamesOrThrow(Dictionary<string, ArrayBuilder<TypeDefinitionHandle>?> namespaces)
894internal ImmutableArray<TypeDefinitionHandle> GetNestedTypeDefsOrThrow(TypeDefinitionHandle container)
900internal MethodImplementationHandleCollection GetMethodImplementationsOrThrow(TypeDefinitionHandle typeDef)
909internal InterfaceImplementationHandleCollection GetInterfaceImplementationsOrThrow(TypeDefinitionHandle typeDef)
915internal MethodDefinitionHandleCollection GetMethodsOfTypeOrThrow(TypeDefinitionHandle typeDef)
921internal PropertyDefinitionHandleCollection GetPropertiesOfTypeOrThrow(TypeDefinitionHandle typeDef)
927internal EventDefinitionHandleCollection GetEventsOfTypeOrThrow(TypeDefinitionHandle typeDef)
933internal FieldDefinitionHandleCollection GetFieldsOfTypeOrThrow(TypeDefinitionHandle typeDef)
939internal EntityHandle GetBaseTypeOfTypeOrThrow(TypeDefinitionHandle typeDef)
944internal TypeLayout GetTypeLayout(TypeDefinitionHandle typeDef)
996internal bool IsNoPiaLocalType(TypeDefinitionHandle typeDef)
1178internal bool HasInlineArrayAttribute(TypeDefinitionHandle token, out int length)
2094TypeDefinitionHandle typeDef,
2612private bool IsNoPiaLocalType(TypeDefinitionHandle typeDef, out AttributeInfo attributeInfo)
2659private void RegisterNoPiaLocalType(TypeDefinitionHandle typeDef, CustomAttributeHandle customAttribute, int signatureIndex)
2673new ConcurrentDictionary<TypeDefinitionHandle, AttributeInfo>(),
2682private void RecordNoPiaLocalTypeCheck(TypeDefinitionHandle typeDef)
2982TypeDefinitionHandle typeHandle = (TypeDefinitionHandle)token;
3160var def = metadataReader.GetTypeDefinition((TypeDefinitionHandle)typeDefOrRef);
3209var parent = (TypeDefinitionHandle)MetadataReader.GetCustomAttribute(attributeHandle).Parent;
3366internal TypeDefinitionHandle FindContainingTypeOrThrow(MethodDefinitionHandle methodDef)
3372internal TypeDefinitionHandle FindContainingTypeOrThrow(FieldDefinitionHandle fieldDef)
Microsoft.CodeAnalysis.CSharp (45)
Symbols\Metadata\PE\PENamedTypeSymbol.cs (11)
37private readonly TypeDefinitionHandle _handle;
197TypeDefinitionHandle handle,
231private static void GetGenericInfo(PEModuleSymbol moduleSymbol, TypeDefinitionHandle handle, out GenericParameterHandleCollection genericParameterHandles, out ushort arity, out BadImageFormatException mrEx)
250TypeDefinitionHandle handle)
294TypeDefinitionHandle handle,
596internal TypeDefinitionHandle Handle
2115ImmutableArray<TypeDefinitionHandle> nestedTypeDefs;
2138foreach (var typeRid in nestedTypeDefs)
2327private PEMethodSymbol GetAccessorMethod(PEModule module, Dictionary<MethodDefinitionHandle, PEMethodSymbol> methodHandleToSymbol, TypeDefinitionHandle typeDef, MethodDefinitionHandle methodDef)
2807TypeDefinitionHandle handle,
2876TypeDefinitionHandle handle,
Symbols\Metadata\PE\PENamespaceSymbol.cs (10)
42private Dictionary<string, TypeDefinitionHandle>? _lazyNoPiaLocalTypes;
211protected void LoadAllMembers(IEnumerable<IGrouping<string, TypeDefinitionHandle>> typesByNS)
216IEnumerable<IGrouping<string, TypeDefinitionHandle>>? nestedTypes = null;
223IEnumerable<KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>>? nestedNamespaces = null;
258IEnumerable<KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>> childNamespaces)
278private void LazyInitializeTypes(IEnumerable<IGrouping<string, TypeDefinitionHandle>> typeGroups)
286Dictionary<string, TypeDefinitionHandle>? noPiaLocalTypes = null;
290foreach (var t in g)
304noPiaLocalTypes = new Dictionary<string, TypeDefinitionHandle>(StringOrdinalComparer.Instance);
337TypeDefinitionHandle typeDef;
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (3)
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (5)
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (8)
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver (5)
Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver.UnitTests (1)
Microsoft.CodeAnalysis.Features (8)
Microsoft.CodeAnalysis.Rebuild (1)
Microsoft.CodeAnalysis.Test.Utilities (6)
Microsoft.CodeAnalysis.UnitTests (10)
MetadataReferences\MetadataHelpersTests.cs (10)
426var result = new ArrayBuilder<IGrouping<string, TypeDefinitionHandle>>();
430result.Add(new Grouping<string, TypeDefinitionHandle>(namespaceName, new[] { new TypeDefinitionHandle() }));
436IEnumerable<IGrouping<string, TypeDefinitionHandle>> typesByNS = result;
440IEnumerable<IGrouping<string, TypeDefinitionHandle>> nestedTypes = null;
441IEnumerable<KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>> nestedNamespaces = null;
466var result = new ArrayBuilder<IGrouping<string, TypeDefinitionHandle>>();
470result.Add(new Grouping<string, TypeDefinitionHandle>(namespaceName, new[] { new TypeDefinitionHandle() }));
476IEnumerable<IGrouping<string, TypeDefinitionHandle>> typesByNS = result;
480IEnumerable<IGrouping<string, TypeDefinitionHandle>> nestedTypes = null;
481IEnumerable<KeyValuePair<string, IEnumerable<IGrouping<string, TypeDefinitionHandle>>>> nestedNamespaces = null;
Microsoft.CodeAnalysis.VisualBasic (36)
Symbols\Metadata\PE\PENamespaceSymbol.vb (9)
39Private _lazyNoPiaLocalTypes As Dictionary(Of String, TypeDefinitionHandle)
165Protected Sub LoadAllMembers(typesByNS As IEnumerable(Of IGrouping(Of String, TypeDefinitionHandle)))
169Dim nestedTypes As IEnumerable(Of IGrouping(Of String, TypeDefinitionHandle)) = Nothing
176Dim nestedNamespaces As IEnumerable(Of KeyValuePair(Of String, IEnumerable(Of IGrouping(Of String, TypeDefinitionHandle)))) = Nothing
197childNamespaces As IEnumerable(Of KeyValuePair(Of String, IEnumerable(Of IGrouping(Of String, TypeDefinitionHandle))))
229Private Sub LazyInitializeTypes(typeGroups As IEnumerable(Of IGrouping(Of String, TypeDefinitionHandle)))
236Dim noPiaLocalTypes As Dictionary(Of String, TypeDefinitionHandle) = Nothing
258noPiaLocalTypes = New Dictionary(Of String, TypeDefinitionHandle)()
311Dim typeDef As TypeDefinitionHandle = Nothing
Microsoft.CodeAnalysis.VisualBasic.Emit.UnitTests (6)
Microsoft.CodeAnalysis.VisualBasic.ExpressionCompiler (2)
Microsoft.CodeAnalysis.Workspaces (7)
Microsoft.DotNet.GenFacades (1)
Microsoft.DotNet.PackageTesting (3)
Microsoft.DotNet.SharedFramework.Sdk (3)
Microsoft.DotNet.SignTool (2)
Roslyn.Test.PdbUtilities (4)
SemanticSearch.BuildTask (1)
System.Reflection.Emit (7)
System\Reflection\Emit\ModuleBuilderImpl.cs (6)
156TypeDefinitionHandle typeHandle = AddTypeDefinition(typeBuilder, parent, typeBuilder._firstMethodToken, typeBuilder._firstFieldToken);
175_metadataBuilder.AddNestedType(typeHandle, (TypeDefinitionHandle)GetTypeHandle(typeBuilder.DeclaringType));
203private void WriteInterfaceImplementations(TypeBuilderImpl typeBuilder, TypeDefinitionHandle typeHandle)
921private void AddEventMap(TypeDefinitionHandle typeHandle, int firstEventToken) =>
926private void AddPropertyMap(TypeDefinitionHandle typeHandle, int firstPropertyToken) =>
937private TypeDefinitionHandle AddTypeDefinition(TypeBuilderImpl type, EntityHandle parent, int methodToken, int fieldToken) =>
System.Reflection.Metadata (168)
System.Reflection.MetadataLoadContext (21)