No description
- Go 100%
| defaultvalues.go | ||
| defaultvalues_test.go | ||
| go.mod | ||
| LICENSE | ||
| README.md | ||
Go Default Values
Небольшой Go-модуль для установки значений по умолчанию для полей структур на основе тега default.
Установка
go get git.ymnuktech.ru/ymnuk/go-default-values
Использование
import "git.ymnuktech.ru/ymnuk/go-default-values"
type Config struct {
Host string `default:"localhost"`
Port int `default:"8080"`
Timeout float64 `default:"30.5"`
Debug bool `default:"false"`
Value *int `default:"42"`
}
config := &Config{}
defaultvalues.SetDefaults(config)
Возможности
- Поддержка всех скалярных типов:
int,uint,float,string,bool - Поддержка указателей
- Рекурсивная обработка вложенных структур
- Обработка срезов и карт со структурами
- Устанавливает значения только для нулевых/nil значений
- Сохраняет существующие ненулевые значения
Лицензия
MIT