Use pointer receiver more offen

This commit is contained in:
nemunaire 2021-11-22 15:35:07 +01:00
parent 6999b4e728
commit c7569b5e54
59 changed files with 688 additions and 672 deletions

View file

@ -19,7 +19,7 @@ func init() {
router.GET("/api/themes/:thid/exercices/:eid", apiHandler(exerciceHandler(showExercice)))
}
func themeHandler(f func(QAUser, fic.Theme, []byte) (interface{}, error)) func(QAUser, httprouter.Params, []byte) (interface{}, error) {
func themeHandler(f func(QAUser, *fic.Theme, []byte) (interface{}, error)) func(QAUser, httprouter.Params, []byte) (interface{}, error) {
return func(u QAUser, ps httprouter.Params, body []byte) (interface{}, error) {
if thid, err := strconv.ParseInt(string(ps.ByName("thid")), 10, 64); err != nil {
return nil, err
@ -31,13 +31,13 @@ func themeHandler(f func(QAUser, fic.Theme, []byte) (interface{}, error)) func(Q
}
}
func getExercice(args []string) (fic.Exercice, error) {
func getExercice(args []string) (*fic.Exercice, error) {
if tid, err := strconv.ParseInt(string(args[0]), 10, 64); err != nil {
return fic.Exercice{}, err
return nil, err
} else if theme, err := fic.GetTheme(tid); err != nil {
return fic.Exercice{}, err
return nil, err
} else if eid, err := strconv.Atoi(string(args[1])); err != nil {
return fic.Exercice{}, err
return nil, err
} else {
return theme.GetExercice(eid)
}
@ -51,14 +51,14 @@ func exportThemes(_ QAUser, _ httprouter.Params, _ []byte) (interface{}, error)
return fic.ExportThemes()
}
func showTheme(_ QAUser, theme fic.Theme, _ []byte) (interface{}, error) {
func showTheme(_ QAUser, theme *fic.Theme, _ []byte) (interface{}, error) {
return theme, nil
}
func listThemedExercices(_ QAUser, theme fic.Theme, _ []byte) (interface{}, error) {
func listThemedExercices(_ QAUser, theme *fic.Theme, _ []byte) (interface{}, error) {
return theme.GetExercices()
}
func showThemedExercice(_ QAUser, theme fic.Theme, exercice fic.Exercice, body []byte) (interface{}, error) {
func showThemedExercice(_ QAUser, theme *fic.Theme, exercice *fic.Exercice, body []byte) (interface{}, error) {
return exercice, nil
}