Add error for unexpected arguments
This commit is contained in:
parent
fbae725040
commit
a12224c997
@ -37,10 +37,11 @@ import (
|
|||||||
type any = interface{}
|
type any = interface{}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
ErrInvalidType = errors.New("type must be struct or pointer to struct")
|
ErrInvalidType = errors.New("type must be struct or pointer to struct")
|
||||||
ErrNoSuchReceiver = errors.New("no such receiver registered")
|
ErrNoSuchReceiver = errors.New("no such receiver registered")
|
||||||
ErrNoSuchMethod = errors.New("no such method was found")
|
ErrNoSuchMethod = errors.New("no such method was found")
|
||||||
ErrInvalidMethod = errors.New("method invalid for lrpc call")
|
ErrInvalidMethod = errors.New("method invalid for lrpc call")
|
||||||
|
ErrUnexpectedArgument = errors.New("argument provided but the function does not accept any arguments")
|
||||||
)
|
)
|
||||||
|
|
||||||
// Server is an lrpc server
|
// Server is an lrpc server
|
||||||
@ -120,7 +121,10 @@ func (s *Server) execute(pCtx context.Context, typ string, name string, arg any,
|
|||||||
// Get method type
|
// Get method type
|
||||||
mtdType := mtd.Type()
|
mtdType := mtd.Type()
|
||||||
|
|
||||||
//TODO: if arg not nil but fn has no arg, err
|
// Return error if argument provided but isn't expected
|
||||||
|
if mtdType.NumIn() == 1 && arg != nil {
|
||||||
|
return nil, nil, ErrUnexpectedArgument
|
||||||
|
}
|
||||||
|
|
||||||
// IF argument is []any
|
// IF argument is []any
|
||||||
anySlice, ok := arg.([]any)
|
anySlice, ok := arg.([]any)
|
||||||
|
Reference in New Issue
Block a user