defensive-coding-guide/modules/ROOT/examples/Go-Error_Handling-Regular.adoc
2022-01-13 20:42:40 +01:00

19 lines
345 B
Text

type Processor interface {
Process(buf []byte) (message string, err error)
}
type ErrorHandler interface {
Handle(err error)
}
func RegularError(buf []byte, processor Processor,
handler ErrorHandler) (message string, err error) {
message, err = processor.Process(buf)
if err != nil {
handler.Handle(err)
return "", err
}
return
}