2024-03-19 09:39:32 +01:00
|
|
|
import ./basics
|
|
|
|
|
|
2024-10-31 10:12:04 +01:00
|
|
|
type
|
|
|
|
|
SolidityError* = object of EthersError
|
|
|
|
|
ContractError* = object of EthersError
|
|
|
|
|
SignerError* = object of EthersError
|
|
|
|
|
SubscriptionError* = object of EthersError
|
|
|
|
|
ProviderError* = object of EthersError
|
|
|
|
|
data*: ?seq[byte]
|
|
|
|
|
|
|
|
|
|
template raiseSignerError*(message: string, parent: ref ProviderError = nil) =
|
|
|
|
|
raise newException(SignerError, message, parent)
|
2024-03-19 09:39:32 +01:00
|
|
|
|
|
|
|
|
{.push raises:[].}
|
|
|
|
|
|
2024-10-31 10:12:04 +01:00
|
|
|
proc toErr*[E1: ref CatchableError, E2: EthersError](
|
|
|
|
|
e1: E1,
|
|
|
|
|
_: type E2,
|
|
|
|
|
msg: string = e1.msg): ref E2 =
|
|
|
|
|
|
|
|
|
|
return newException(E2, msg, e1)
|
|
|
|
|
|
2024-03-19 09:39:32 +01:00
|
|
|
template errors*(types) {.pragma.}
|