feat: support typed errors over RPC

This commit is contained in:
Aayush
2022-09-22 11:44:19 -04:00
parent 37be57610c
commit 93f94d4ee9
16 changed files with 127 additions and 24 deletions
+29
View File
@@ -0,0 +1,29 @@
package api
import (
"github.com/filecoin-project/go-jsonrpc"
)
const (
EOutOfGas = iota + jsonrpc.FirstUserCode
EActorNotFound
)
type ErrOutOfGas struct{}
func (e ErrOutOfGas) Error() string {
return "call ran out of gas"
}
type ErrActorNotFound struct{}
func (e ErrActorNotFound) Error() string {
return "actor not found"
}
var RPCErrors = jsonrpc.NewErrors()
func init() {
RPCErrors.Register(EOutOfGas, new(ErrOutOfGas))
RPCErrors.Register(EActorNotFound, new(ErrActorNotFound))
}