Beispiel #1
0
        /// <inheritdoc/>
        internal override string GetDisplayName(bool fullyQualify, bool includeGenericInfo, GenericTypeArgumentCollection genericArguments)
        {
            if (IsNullable(out TypeData underlyingType))
            {
                return(underlyingType.GetDisplayName(fullyQualify: false, includeGenericInfo: includeGenericInfo) + '?');
            }

            var genericArgumentsResolved = genericArguments ?? GenericArguments;

            var rootName = GenericTypeDefinition.GetDisplayName(fullyQualify: false, includeGenericInfo: false);

            if (includeGenericInfo)
            {
                var parentGenericArgumentCount = ContainingType == null ? 0 : ContainingType.GenericArity;
                rootName += genericArgumentsResolved.GetGenericArgumentListDisplayText(includeGenericInfo, parentGenericArgumentCount, GenericArguments.Count - parentGenericArgumentCount);
            }

            return(PostProcessUnqualifiedName(rootName, fullyQualify, includeGenericInfo, genericArgumentsResolved));
        }