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