/// <summary>
 /// Second pass that deals with relationships.
 /// </summary>
 /// <param name="type">The <see cref="DocExportedType"/> to process.</param>
 private void ProcessTypePass2(DocBaseType type)
 {
     type.Code = MemberUtils.GenerateCodeFor(type.Type);
     type.ImplementedInterfaces = ProcessImplementedInterfaces(type.Type);
     type.TypeParameters        = ProcessTypeParameters(type.Type);
     type.DerivedTypes          = ProcessDerivedTypes(type.Type);
 }
 /// <summary>
 /// Process type information.
 /// </summary>
 /// <param name="type">The <see cref="Type"/> to process.</param>
 /// <param name="target">The <see cref="DocBaseType"/> to process to.</param>
 private void ProcessType(Type type, DocBaseType target)
 {
     target.Name        = type.FullName ?? $"{type.Namespace}.{type.Name}";
     target.Type        = type;
     target.IsInterface = type.IsInterface;
     target.IsEnum      = type.IsEnum;
     target.XPath       = MemberUtils.GetSelector(type);
     LinkCache.Register(target);
 }