Add ExceptionCollector.compressExceptions

This commit is contained in:
Him188 2022-03-13 11:29:34 +00:00
parent d3c230ad12
commit 351357a8e0

View File

@ -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 许可证的约束, 可以在以下链接找到该许可证. * 此源代码的使用受 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. * 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 package net.mamoe.mirai.utils
@ -102,6 +102,16 @@ public open class ExceptionCollector {
this.last = null this.last = null
this.hashCodes.clear() this.hashCodes.clear()
} }
public companion object {
public fun compressExceptions(exceptions: Array<Throwable>): Throwable? {
return ExceptionCollector(*exceptions).getLast()
}
public fun compressExceptions(exception: Throwable, vararg exceptions: Throwable): Throwable {
return ExceptionCollector(exception, *exceptions).getLast()!!
}
}
} }
/** /**