private static ImmutableDictionary GetNamedTypes()

in src/TemplateRefGenerator/Generators/ChangelogGenerator.cs [330:350]


    private static ImmutableDictionary<string, TypeBase> GetNamedTypes(ResourceType resourceType)
    {
        var referencedTypes = new HashSet<TypeBase>();
        GetReferencedTypes(resourceType.Body.Type, referencedTypes);

        var namedTypes = new Dictionary<string, TypeBase>(StringComparer.OrdinalIgnoreCase);
        foreach (var type in referencedTypes)
        {
            switch (type)
            {
                case ObjectType objectType:
                    namedTypes[objectType.Name] = objectType;
                    break;
                case DiscriminatedObjectType discType:
                    namedTypes[discType.Name] = discType;
                    break;
            }
        }

        return namedTypes.ToImmutableDictionary(StringComparer.OrdinalIgnoreCase);
    }