Documentation ¶
Overview ¶
Package rpcutil provides utility methods to perform go-libp2p-gorpc calls, particularly gorpc.MultiCall().
Index ¶
- func CheckErrs(errs []error) error
- func CopyEmptyStructToIfaces(in []struct{}) []interface{}
- func CopyIDSerialSliceToIfaces(in [][]api.IDSerial) []interface{}
- func CopyIDSerialsToIfaces(in []api.IDSerial) []interface{}
- func CopyPIDsToIfaces(in []peer.ID) []interface{}
- func CopyPinInfoSerialSliceToIfaces(in [][]api.PinInfoSerial) []interface{}
- func CopyPinInfoSerialToIfaces(in []api.PinInfoSerial) []interface{}
- func CtxsWithCancel(parent context.Context, n int) ([]context.Context, []context.CancelFunc)
- func CtxsWithTimeout(parent context.Context, n int, timeout time.Duration) ([]context.Context, []context.CancelFunc)
- func MultiCancel(cancels []context.CancelFunc)
- func RPCDiscardReplies(n int) []interface{}
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckErrs ¶ added in v0.5.0
CheckErrs returns nil if all the errors in a slice are nil, otherwise it returns a single error formed by joining the error messages existing in the slice with a line-break.
func CopyEmptyStructToIfaces ¶
func CopyEmptyStructToIfaces(in []struct{}) []interface{}
CopyEmptyStructToIfaces converts an empty struct slice to an empty interface slice using pointers to each elements of the original slice. Useful to handle gorpc.MultiCall() replies.
func CopyIDSerialSliceToIfaces ¶
CopyIDSerialSliceToIfaces converts an api.IDSerial slice of slices to an empty interface slice using pointers to each elements of the original slice. Useful to handle gorpc.MultiCall() replies.
func CopyIDSerialsToIfaces ¶
CopyIDSerialsToIfaces converts an api.IDSerial slice to an empty interface slice using pointers to each elements of the original slice. Useful to handle gorpc.MultiCall() replies.
func CopyPIDsToIfaces ¶
CopyPIDsToIfaces converts a peer.ID slice to an empty interface slice using pointers to each elements of the original slice. Useful to handle gorpc.MultiCall() replies.
func CopyPinInfoSerialSliceToIfaces ¶
func CopyPinInfoSerialSliceToIfaces(in [][]api.PinInfoSerial) []interface{}
CopyPinInfoSerialSliceToIfaces converts an api.PinInfoSerial slice of slices to an empty interface slice using pointers to each elements of the original slice. Useful to handle gorpc.MultiCall() replies.
func CopyPinInfoSerialToIfaces ¶
func CopyPinInfoSerialToIfaces(in []api.PinInfoSerial) []interface{}
CopyPinInfoSerialToIfaces converts an api.PinInfoSerial slice to an empty interface slice using pointers to each elements of the original slice. Useful to handle gorpc.MultiCall() replies.
func CtxsWithCancel ¶
CtxsWithCancel returns n cancellable contexts, derived from the given parent.
func CtxsWithTimeout ¶
func CtxsWithTimeout( parent context.Context, n int, timeout time.Duration, ) ([]context.Context, []context.CancelFunc)
CtxsWithTimeout returns n contexts, derived from the given parent using the given timeout.
func MultiCancel ¶
func MultiCancel(cancels []context.CancelFunc)
MultiCancel calls all the provided CancelFuncs. It is useful with "defer Multicancel()"
func RPCDiscardReplies ¶
func RPCDiscardReplies(n int) []interface{}
RPCDiscardReplies returns a []interface{} slice made from a []struct{} slice of then given length. Useful for RPC methods which have no response types (so they use empty structs).
Types ¶
This section is empty.