private String normalizeTypeName()

in src/main/java/org/adoptopenjdk/jitwatch/ui/code/languages/JitWatchKotlinSupport.java [149:188]


    private String normalizeTypeName(KotlinType kotlinType)
    {
        if (kotlinType == null)
        {
            return Void.class.getName();
        }

        ClassifierDescriptor classifierDescriptor = kotlinType.getConstructor().getDeclarationDescriptor();
        if (classifierDescriptor == null)
        {
            return null;
        }

        String fqName = DescriptorUtils.getFqName(classifierDescriptor).toSafe().asString();
        boolean isNullable = kotlinType.isMarkedNullable();

        switch (fqName)
        {
            case "kotlin.String":
                return "java.lang.String";
            case "kotlin.Boolean":
                return isNullable ? "java.lang.Boolean" : "boolean";
            case "kotlin.Char":
                return isNullable ? "java.lang.Character" : "char";
            case "kotlin.Byte":
                return isNullable ? "java.lang.Byte" : "byte";
            case "kotlin.Short":
                return isNullable ? "java.lang.Short" : "short";
            case "kotlin.Int":
                return isNullable ? "java.lang.Integer" : "int";
            case "kotlin.Long":
                return isNullable ? "java.lang.Long" : "long";
            case "kotlin.Float":
                return isNullable ? "java.lang.Float" : "float";
            case "kotlin.Double":
                return isNullable ? "java.lang.Double" : "double";
            default:
                return fqName;
        }
    }