Simplify error handling in generator.
This commit is contained in:
parent
f5287628aa
commit
50bda95da2
10 changed files with 92 additions and 208 deletions
|
|
@ -2,6 +2,7 @@ package utils
|
|||
|
||||
import (
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"github.com/go-jet/jet/internal/3rdparty/snaker"
|
||||
"go/format"
|
||||
"os"
|
||||
|
|
@ -146,3 +147,20 @@ func PanicOnError(err error) {
|
|||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
// ErrorCatch is used in defer to recover from panics and to set err
|
||||
func ErrorCatch(err *error) {
|
||||
recovered := recover()
|
||||
|
||||
if recovered == nil {
|
||||
return
|
||||
}
|
||||
|
||||
recoveredErr, isError := recovered.(error)
|
||||
|
||||
if isError {
|
||||
*err = recoveredErr
|
||||
} else {
|
||||
*err = fmt.Errorf("%v", recovered)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue