diff options
| author | Bobby <[email protected]> | 2026-03-03 16:32:30 +0530 |
|---|---|---|
| committer | Bobby <[email protected]> | 2026-03-03 16:32:30 +0530 |
| commit | 8631dd7420c35ce8c8b7da5f19eb4b516abcddc3 (patch) | |
| tree | 2f4527eda31d5275fb3e38255184de27eee38af4 /shrine/utils/env/functions.go | |
| parent | 471758d1eb63c550c644b9233d04473adde962e8 (diff) | |
| download | pagoda-8631dd7420c35ce8c8b7da5f19eb4b516abcddc3.tar.xz pagoda-8631dd7420c35ce8c8b7da5f19eb4b516abcddc3.zip | |
feat(config): add CORS origins configuration to server struct
refactor(database): remove unused database drivers
fix(middleware): use constant for request context key
refactor(router): clean up import statement for controllers
fix(main): use CORS origins from config
refactor(env): simplify environment variable handling for uint fields
refactor(meta): update request context key to use constant
Diffstat (limited to 'shrine/utils/env/functions.go')
| -rw-r--r-- | shrine/utils/env/functions.go | 32 |
1 files changed, 5 insertions, 27 deletions
diff --git a/shrine/utils/env/functions.go b/shrine/utils/env/functions.go index de03793..12b57e2 100644 --- a/shrine/utils/env/functions.go +++ b/shrine/utils/env/functions.go @@ -2,7 +2,6 @@ package env import ( "os" - "reflect" "strconv" "strings" "time" @@ -66,32 +65,11 @@ func getEnvStringSlice(key string, defaultVal []string) []string { return defaultVal } -func Defaults[T any](config *T) *T { - v := reflect.ValueOf(config) - if v.Kind() != reflect.Ptr || v.Elem().Kind() != reflect.Struct { - return config - } - - elem := v.Elem() - t := elem.Type() - newStruct := reflect.New(t) - newElem := newStruct.Elem() - - for i := range elem.NumField() { - field := newElem.Field(i) - fieldType := t.Field(i) - - if !field.CanSet() { - continue - } - - defaultVal := fieldType.Tag.Get("default") - if defaultVal == "" { - continue +func getEnvUint(key string, defaultVal uint64) uint64 { + if value := os.Getenv(key); value != "" { + if parsed, err := strconv.ParseUint(value, 10, 64); err == nil { + return parsed } - - setFieldDefault(field, defaultVal) } - - return newStruct.Interface().(*T) + return defaultVal } |
