@Nonnull
	public String toPrettyString() {
		String extendedTypes;
		if (superTypes.isEmpty())
			extendedTypes = "Object";
		else
			extendedTypes = superTypes.stream().map(KtType::toString).collect(Collectors.joining(", "));
		StringBuilder body = new StringBuilder();
		if (!properties.isEmpty())
			body.append("\n  // ==== Properties");
		for (KtProperty property : properties)
			body.append("\n    ").append(property).append(';');
		if (!constructors.isEmpty())
			body.append("\n  // ==== Constructors");
		for (KtConstructor property : constructors)
			body.append("\n    ").append(property).append(';');
		if (!functions.isEmpty())
			body.append("\n  // ==== Functions");
		for (KtFunction function : functions)
			body.append("\n    ").append(function).append(';');
		if (!body.isEmpty())
			body.append('\n');
		return "class " + StringUtil.shortenPath(Objects.requireNonNullElse(name, "?")) + " extends " + extendedTypes + " {" + body + "}";
	}
@return Human legible string displaying the content of this class.
recaf-core/src/main/java/software/coley/recaf/util/kotlin/model/KtClass.java