Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ PopulateNamespaceTable()

void System.Reflection.Metadata.Ecma335.NamespaceCache.PopulateNamespaceTable ( )
inlineprivate

Definition at line 116 of file NamespaceCache.cs.

117 {
119 {
120 if (_namespaceTable != null)
121 {
122 return;
123 }
125 NamespaceDefinitionHandle namespaceDefinitionHandle = NamespaceDefinitionHandle.FromFullNameOffset(0);
126 dictionary.Add(namespaceDefinitionHandle, new NamespaceDataBuilder(namespaceDefinitionHandle, namespaceDefinitionHandle.GetFullName(), string.Empty));
133 {
134 dictionary2.Add(item.Key, item.Value.Freeze());
135 }
136 if (virtualNamespaces != null)
137 {
138 foreach (NamespaceDataBuilder item2 in virtualNamespaces)
139 {
140 dictionary2.Add(item2.Handle, item2.Freeze());
141 }
142 }
145 }
146 }
void Add(TKey key, TValue value)
void ResolveParentChildRelationships(Dictionary< string, NamespaceDataBuilder > namespaces, out List< NamespaceDataBuilder > virtualNamespaces)
volatile Dictionary< NamespaceDefinitionHandle, NamespaceData > _namespaceTable
void MergeDuplicateNamespaces(Dictionary< NamespaceDefinitionHandle, NamespaceDataBuilder > table, out Dictionary< string, NamespaceDataBuilder > stringTable)
void PopulateTableWithExportedTypes(Dictionary< NamespaceDefinitionHandle, NamespaceDataBuilder > table)
void PopulateTableWithTypeDefinitions(Dictionary< NamespaceDefinitionHandle, NamespaceDataBuilder > table)

References System.Reflection.Metadata.Ecma335.NamespaceCache._namespaceTable, System.Reflection.Metadata.Ecma335.NamespaceCache._namespaceTableAndListLock, System.Reflection.Metadata.Ecma335.NamespaceCache._rootNamespace, System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.dictionary, System.Reflection.Metadata.NamespaceDefinitionHandle.FromFullNameOffset(), System.item, System.Reflection.Metadata.Ecma335.NamespaceCache.MergeDuplicateNamespaces(), System.Reflection.Metadata.Ecma335.NamespaceCache.PopulateTableWithExportedTypes(), System.Reflection.Metadata.Ecma335.NamespaceCache.PopulateTableWithTypeDefinitions(), and System.Reflection.Metadata.Ecma335.NamespaceCache.ResolveParentChildRelationships().

Referenced by System.Reflection.Metadata.Ecma335.NamespaceCache.EnsureNamespaceTableIsPopulated().