From 351357a8e06b16e3218e9f6c0435748cf4c314c6 Mon Sep 17 00:00:00 2001 From: Him188 Date: Sun, 13 Mar 2022 11:29:34 +0000 Subject: [PATCH] Add ExceptionCollector.compressExceptions --- .../commonMain/kotlin/ExceptionCollector.kt | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/mirai-core-utils/src/commonMain/kotlin/ExceptionCollector.kt b/mirai-core-utils/src/commonMain/kotlin/ExceptionCollector.kt index 43946c1ac..b1f900868 100644 --- a/mirai-core-utils/src/commonMain/kotlin/ExceptionCollector.kt +++ b/mirai-core-utils/src/commonMain/kotlin/ExceptionCollector.kt @@ -1,10 +1,10 @@ /* - * Copyright 2019-2021 Mamoe Technologies and contributors. + * Copyright 2019-2022 Mamoe Technologies and contributors. * - * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. - * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. + * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. + * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. * - * https://github.com/mamoe/mirai/blob/master/LICENSE + * https://github.com/mamoe/mirai/blob/dev/LICENSE */ package net.mamoe.mirai.utils @@ -102,6 +102,16 @@ public open class ExceptionCollector { this.last = null this.hashCodes.clear() } + + public companion object { + public fun compressExceptions(exceptions: Array): Throwable? { + return ExceptionCollector(*exceptions).getLast() + } + + public fun compressExceptions(exception: Throwable, vararg exceptions: Throwable): Throwable { + return ExceptionCollector(exception, *exceptions).getLast()!! + } + } } /**