From 6f429ec07234907793eb6dce14cf062dff323843 Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Fri, 30 Jun 2023 13:17:20 +0200 Subject: [PATCH] [Analysis] migrate ExceptionAttachmentBuilder to use SmartPrinter So it can be moved to a compiler module --- .../utils/errors/ExceptionAttachmentBuilder.kt | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/analysis/analysis-internal-utils/src/org/jetbrains/kotlin/analysis/utils/errors/ExceptionAttachmentBuilder.kt b/analysis/analysis-internal-utils/src/org/jetbrains/kotlin/analysis/utils/errors/ExceptionAttachmentBuilder.kt index 7406db8db1e..7455222b473 100644 --- a/analysis/analysis-internal-utils/src/org/jetbrains/kotlin/analysis/utils/errors/ExceptionAttachmentBuilder.kt +++ b/analysis/analysis-internal-utils/src/org/jetbrains/kotlin/analysis/utils/errors/ExceptionAttachmentBuilder.kt @@ -9,14 +9,16 @@ import com.intellij.openapi.diagnostic.Attachment import com.intellij.openapi.diagnostic.Logger import org.jetbrains.kotlin.analysis.utils.printer.PrettyPrinter import org.jetbrains.kotlin.analysis.utils.printer.prettyPrint +import org.jetbrains.kotlin.util.SmartPrinter import org.jetbrains.kotlin.util.SourceCodeAnalysisException import org.jetbrains.kotlin.util.shouldIjPlatformExceptionBeRethrown +import org.jetbrains.kotlin.util.withIndent import org.jetbrains.kotlin.utils.KotlinExceptionWithAttachments import kotlin.contracts.ExperimentalContracts import kotlin.contracts.contract public class ExceptionAttachmentBuilder { - private val printer = PrettyPrinter() + private val printer = SmartPrinter(StringBuilder()) public fun withEntry(name: String, value: T, render: (T & Any) -> String) { withEntry(name) { @@ -30,11 +32,11 @@ public class ExceptionAttachmentBuilder { public fun withEntry(name: String, value: String?) { with(printer) { - appendLine("- $name:") + println("- $name:") withIndent { - appendLine(value ?: "") + println(value ?: "") } - appendLine(separator) + println(separator) } }