Use push raises:[] to avoid raises: [CatchableError]

This commit is contained in:
Eric 2023-12-20 07:25:37 +11:00
parent cbaf3c79c8
commit 7973ce86ce
No known key found for this signature in database
3 changed files with 11 additions and 9 deletions

View File

@ -3,6 +3,8 @@ import ./provider
export basics
{.push raises: [].}
type
Signer* = ref object of RootObj
lastSeenNonce: ?UInt256
@ -19,7 +21,7 @@ template raiseSignerError(message: string, parent: ref ProviderError = nil) =
proc raiseEstimateGasError(
transaction: Transaction,
parent: ref ProviderError = nil
) =
) {.raises: [EstimateGasError] .} =
let e = (ref EstimateGasError)(
msg: "Estimate gas failed",
transaction: transaction,
@ -27,11 +29,11 @@ proc raiseEstimateGasError(
raise e
method provider*(signer: Signer):
Provider {.base, gcsafe, raises: [CatchableError].} =
Provider {.base, gcsafe, raises: [EthersError].} =
doAssert false, "not implemented"
method getAddress*(signer: Signer):
Future[Address] {.base, gcsafe, raises: [CatchableError].} =
Future[Address] {.base, gcsafe.} =
doAssert false, "not implemented"
method signMessage*(signer: Signer,
@ -43,7 +45,7 @@ method sendTransaction*(signer: Signer,
doAssert false, "not implemented"
method getGasPrice*(signer: Signer):
Future[UInt256] {.base, gcsafe, raises: [CatchableError].} =
Future[UInt256] {.base, gcsafe, raises: [EthersError].} =
signer.provider.getGasPrice()
method getTransactionCount*(signer: Signer,
@ -63,7 +65,7 @@ method estimateGas*(signer: Signer,
raiseEstimateGasError transaction, e
method getChainId*(signer: Signer):
Future[UInt256] {.base, gcsafe, raises: [CatchableError].} =
Future[UInt256] {.base, gcsafe, raises: [EthersError].} =
signer.provider.getChainId()
method getNonce(signer: Signer): Future[UInt256] {.base, gcsafe, async.} =
@ -78,7 +80,7 @@ method getNonce(signer: Signer): Future[UInt256] {.base, gcsafe, async.} =
method updateNonce*(
signer: Signer,
nonce: UInt256
) {.base, gcsafe, raises: [CatchableError].} =
) {.base, gcsafe.} =
without lastSeen =? signer.lastSeenNonce:
signer.lastSeenNonce = some nonce
@ -87,7 +89,7 @@ method updateNonce*(
if nonce > lastSeen:
signer.lastSeenNonce = some nonce
method decreaseNonce*(signer: Signer) {.base, gcsafe, raises: [CatchableError].} =
method decreaseNonce*(signer: Signer) {.base, gcsafe.} =
if lastSeen =? signer.lastSeenNonce and lastSeen > 0:
signer.lastSeenNonce = some lastSeen - 1

View File

@ -54,7 +54,7 @@ proc createRandom*(_: type Wallet, provider: Provider): Wallet =
result.address = Address.init(result.publicKey.toCanonicalAddress())
result.provider = some provider
method provider*(wallet: Wallet): Provider {.raises: [CatchableError].} =
method provider*(wallet: Wallet): Provider {.raises: [WalletError].} =
without provider =? wallet.provider:
raiseWalletError "Wallet has no provider"
provider

View File

@ -3,5 +3,5 @@ import ../basics
type
WalletError* = object of EthersError
func raiseWalletError*(message: string) =
func raiseWalletError*(message: string) {.raises: [WalletError].}=
raise newException(WalletError, message)