uint GetUnitRootNamespaceInternId(IUnitReference unitReference) {
Contract.Requires(unitReference != null);
IAssemblyReference/*?*/ assemblyReference = unitReference as IAssemblyReference;
if (assemblyReference != null) {
AssemblyStore assemblyStore = this.GetAssemblyStore(assemblyReference.UnifiedAssemblyIdentity);
return assemblyStore.RootNamespaceInternedId;
}
IModuleReference/*?*/ moduleReference = unitReference as IModuleReference;
if (moduleReference != null) {
ModuleStore moduleStore = this.GetModuleStore(moduleReference.ModuleIdentity);
return moduleStore.RootNamespaceInternedId;
}
return 0;
}