public static INamespace CoalescedNamespaceFor(INamespace parent, string name, List<INamespace> namespaces) { switch (namespaces.Count) { case 0: return null; case 1: return namespaces.First(); default: return new ResolvedNamespaces(name, parent, namespaces.ToArray()); } }