aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/dbx/db.go100
-rw-r--r--src/http.go33
2 files changed, 0 insertions, 133 deletions
diff --git a/src/dbx/db.go b/src/dbx/db.go
index b8ec7f9..b839531 100644
--- a/src/dbx/db.go
+++ b/src/dbx/db.go
@@ -131,103 +131,3 @@ func applyMigrations(dir fs.FS) error {
return nil
}
-
-/* func scanToStruct[T any](rs *sql.Rows) (T, error) {
- return scanToStruct2[T](rs, true)
- }
-
- func scanToStructs[T any](rs *sql.Rows) ([]T, error) {
- xs := []T{}
- for rs.Next() {
- x, err := scanToStruct2[T](rs, false)
- if err != nil {
- return nil, err
- }
- xs = append(xs, x)
- }
- return xs, rs.Err()
- }
-
- func scanToStruct2[T any](rs *sql.Rows, callNextP bool) (T, error) {
- var t, zero T
-
- cols, err := rs.Columns()
- if err != nil {
- return zero, err
- }
-
- v := reflect.ValueOf(&t).Elem()
- tType := v.Type()
-
- rawValues := make([]any, len(cols))
- for i := range rawValues {
- var zero any
- rawValues[i] = &zero
- }
-
- if callNextP {
- rs.Next()
- if err := rs.Err(); err != nil {
- return zero, err
- }
- }
- if err := rs.Scan(rawValues...); err != nil {
- return zero, err
- }
-
- /\* col idx → [field idx, array idx] *\/
- arrayTargets := make(map[int][2]int)
- colToField := make(map[string]int)
-
- for i := 0; i < tType.NumField(); i++ {
- field := tType.Field(i)
- tag := field.Tag.Get("db")
- if tag == "" {
- continue
- }
-
- if strings.Contains(tag, ";") {
- dbcols := strings.Split(tag, ";")
- fv := v.Field(i)
- if fv.Kind() != reflect.Array {
- return zero, fmt.Errorf("field ‘%s’ is not array",
- field.Name)
- }
- if len(dbcols) != fv.Len() {
- return zero, fmt.Errorf("field ‘%s’ array length mismatch",
- field.Name)
- }
- for j, colName := range cols {
- for k, dbColName := range dbcols {
- if colName == dbColName {
- arrayTargets[j] = [2]int{i, k}
- }
- }
- }
- } else {
- colToField[tag] = i
- }
- }
-
- for i, col := range cols {
- vp := rawValues[i].(*any)
- if fieldIdx, ok := colToField[col]; ok {
- assignValue(v.Field(fieldIdx), *vp)
- } else if target, ok := arrayTargets[i]; ok {
- assignValue(v.Field(target[0]).Index(target[1]), *vp)
- }
- }
-
- return t, nil
- } */
-
-/* func assignValue(fv reflect.Value, val any) {
- if val == nil {
- fv.Set(reflect.Zero(fv.Type()))
- return
- }
- v := reflect.ValueOf(val)
- if v.Type().ConvertibleTo(fv.Type()) {
- fv.Set(v.Convert(fv.Type()))
- }
-} */
diff --git a/src/http.go b/src/http.go
index 097b8f8..ce31372 100644
--- a/src/http.go
+++ b/src/http.go
@@ -147,7 +147,6 @@ func mintageHandler(next http.Handler) http.Handler {
return
}
- /* processMintages(&td.Mintages, td.Type) */
next.ServeHTTP(w, r)
})
}
@@ -192,35 +191,3 @@ func throwError(status int, err error, w http.ResponseWriter, r *http.Request) {
Msg: http.StatusText(status),
})
}
-
-/* func processMintages(md *dbx.MintageData, typeStr string) {
- var typ int
- switch typeStr {
- case "nifc":
- typ = dbx.TypeNifc
- case "proof":
- typ = dbx.TypeProof
- default:
- typ = dbx.TypeCirc
- }
-
- md.Standard = slices.DeleteFunc(md.Standard,
- func(x dbx.MSRow) bool { return x.Type != typ })
- md.Commemorative = slices.DeleteFunc(md.Commemorative,
- func(x dbx.MCRow) bool { return x.Type != typ })
- slices.SortFunc(md.Standard, func(x, y dbx.MSRow) int {
- if x.Year != y.Year {
- return x.Year - y.Year
- }
- return strings.Compare(x.Mintmark, y.Mintmark)
- })
- slices.SortFunc(md.Commemorative, func(x, y dbx.MCRow) int {
- if x.Year != y.Year {
- return x.Year - y.Year
- }
- if x.Number != y.Number {
- return x.Number - y.Number
- }
- return strings.Compare(x.Mintmark, y.Mintmark)
- })
-} */