3 Commits
v1.0.0 ... main

Author SHA1 Message Date
jdl
b665ab59b1 WIP 2026-06-25 13:55:11 +02:00
jdl
0451e18c81 WIP 2026-06-25 13:52:41 +02:00
jdl
6788b76bfc Cleanup 2026-06-25 13:47:38 +02:00

View File

@@ -5,7 +5,7 @@ import (
"iter" "iter"
) )
type TX interface { type dbConn interface {
Exec(query string, args ...any) (sql.Result, error) Exec(query string, args ...any) (sql.Result, error)
Query(query string, args ...any) (*sql.Rows, error) Query(query string, args ...any) (*sql.Rows, error)
QueryRow(query string, args ...any) *sql.Row QueryRow(query string, args ...any) *sql.Row
@@ -27,16 +27,16 @@ const {{.LowerType}}_SelectQuery = "{{.SelectQuery}}"
{{if not .NoInsert -}} {{if not .NoInsert -}}
func {{.LowerType}}_Insert( func {{.LowerType}}_Insert(
tx TX, tx dbConn,
row *{{.Type}}, row {{.Type}},
) (err error) { ) ({{.Type}}, error) {
{{.LowerType}}_Sanitize(row) row = {{.LowerType}}_Sanitize(row)
if err = {{.LowerType}}_Validate(row); err != nil { if err := {{.LowerType}}_Validate(row); err != nil {
return err return row, err
} }
_, err = tx.Exec("{{.InsertQuery}}", {{.InsertArgs}}) _, err := tx.Exec("{{.InsertQuery}}", {{.InsertArgs}})
return err return row, err
} }
{{- end}} {{/* if not .NoInsert */}} {{- end}} {{/* if not .NoInsert */}}
@@ -46,28 +46,28 @@ func {{.LowerType}}_Insert(
{{if .UpdateCols -}} {{if .UpdateCols -}}
func {{.LowerType}}_Update( func {{.LowerType}}_Update(
tx TX, tx dbConn,
row *{{.Type}}, row {{.Type}},
) (err error) { ) ({{.Type}}, error) {
{{.LowerType}}_Sanitize(row) row = {{.LowerType}}_Sanitize(row)
if err = {{.LowerType}}_Validate(row); err != nil { if err := {{.LowerType}}_Validate(row); err != nil {
return err return row, err
} }
result, err := tx.Exec("{{.UpdateQuery}}", {{.UpdateArgs}}) result, err := tx.Exec("{{.UpdateQuery}}", {{.UpdateArgs}})
if err != nil { if err != nil {
return err return row, err
} }
n, err := result.RowsAffected() n, err := result.RowsAffected()
if err != nil { if err != nil {
return err return row, err
} }
switch n { switch n {
case 0: case 0:
return sql.ErrNoRows return row, sql.ErrNoRows
case 1: case 1:
return nil return row, nil
default: default:
panic("multiple rows updated") panic("multiple rows updated")
} }
@@ -77,28 +77,28 @@ func {{.LowerType}}_Update(
{{if .UpdateFullCols -}} {{if .UpdateFullCols -}}
func {{.LowerType}}_UpdateFull( func {{.LowerType}}_UpdateFull(
tx TX, tx dbConn,
row *{{.Type}}, row {{.Type}},
) (err error) { ) ({{.Type}}, error) {
{{.LowerType}}_Sanitize(row) row = {{.LowerType}}_Sanitize(row)
if err = {{.LowerType}}_Validate(row); err != nil { if err := {{.LowerType}}_Validate(row); err != nil {
return err return row, err
} }
result, err := tx.Exec("{{.UpdateFullQuery}}", {{.UpdateFullArgs}}) result, err := tx.Exec("{{.UpdateFullQuery}}", {{.UpdateFullArgs}})
if err != nil { if err != nil {
return err return row, err
} }
n, err := result.RowsAffected() n, err := result.RowsAffected()
if err != nil { if err != nil {
return err return row, err
} }
switch n { switch n {
case 0: case 0:
return sql.ErrNoRows return row, sql.ErrNoRows
case 1: case 1:
return nil return row, nil
default: default:
panic("multiple rows updated") panic("multiple rows updated")
} }
@@ -111,7 +111,7 @@ func {{.LowerType}}_UpdateFull(
{{if not .NoDelete -}} {{if not .NoDelete -}}
func {{.LowerType}}_Delete( func {{.LowerType}}_Delete(
tx TX, tx dbConn,
{{.PKFunctionArgs -}} {{.PKFunctionArgs -}}
) (err error) { ) (err error) {
result, err := tx.Exec("{{.DeleteQuery}}", {{.DeleteArgs}}) result, err := tx.Exec("{{.DeleteQuery}}", {{.DeleteArgs}})
@@ -136,7 +136,7 @@ func {{.LowerType}}_Delete(
{{- end}} {{- end}}
func {{.LowerType}}_Get( func {{.LowerType}}_Get(
tx TX, tx dbConn,
{{.PKFunctionArgs -}} {{.PKFunctionArgs -}}
) ( ) (
row {{.Type}}, row {{.Type}},
@@ -148,7 +148,7 @@ func {{.LowerType}}_Get(
} }
func {{.LowerType}}_GetWhere( func {{.LowerType}}_GetWhere(
tx TX, tx dbConn,
query string, query string,
args ...any, args ...any,
) ( ) (
@@ -161,7 +161,7 @@ func {{.LowerType}}_GetWhere(
} }
func {{.LowerType}}_Iterate( func {{.LowerType}}_Iterate(
tx TX, tx dbConn,
query string, query string,
args ...any, args ...any,
) ( ) (
@@ -190,7 +190,7 @@ func {{.LowerType}}_Iterate(
} }
func {{.LowerType}}_List( func {{.LowerType}}_List(
tx TX, tx dbConn,
query string, query string,
args ...any, args ...any,
) ( ) (