mirror of
https://github.com/spf13/viper
synced 2024-09-08 00:46:20 +00:00
refactor: replace string slice search with slices package
Signed-off-by: Mark Sagi-Kazar <mark.sagikazar@gmail.com>
This commit is contained in:
parent
ebe913cc53
commit
3268cbdcf4
|
@ -5,6 +5,7 @@ import (
|
|||
"fmt"
|
||||
"io"
|
||||
"reflect"
|
||||
"slices"
|
||||
)
|
||||
|
||||
// SupportedRemoteProviders are universally supported remote providers.
|
||||
|
@ -93,7 +94,7 @@ func AddRemoteProvider(provider, endpoint, path string) error {
|
|||
}
|
||||
|
||||
func (v *Viper) AddRemoteProvider(provider, endpoint, path string) error {
|
||||
if !stringInSlice(provider, SupportedRemoteProviders) {
|
||||
if !slices.Contains(SupportedRemoteProviders, provider) {
|
||||
return UnsupportedRemoteProviderError(provider)
|
||||
}
|
||||
if provider != "" && endpoint != "" {
|
||||
|
@ -126,7 +127,7 @@ func AddSecureRemoteProvider(provider, endpoint, path, secretkeyring string) err
|
|||
}
|
||||
|
||||
func (v *Viper) AddSecureRemoteProvider(provider, endpoint, path, secretkeyring string) error {
|
||||
if !stringInSlice(provider, SupportedRemoteProviders) {
|
||||
if !slices.Contains(SupportedRemoteProviders, provider) {
|
||||
return UnsupportedRemoteProviderError(provider)
|
||||
}
|
||||
if provider != "" && endpoint != "" {
|
||||
|
|
9
util.go
9
util.go
|
@ -128,15 +128,6 @@ func absPathify(logger *slog.Logger, inPath string) string {
|
|||
return ""
|
||||
}
|
||||
|
||||
func stringInSlice(a string, list []string) bool {
|
||||
for _, b := range list {
|
||||
if b == a {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func userHomeDir() string {
|
||||
if runtime.GOOS == "windows" {
|
||||
home := os.Getenv("HOMEDRIVE") + os.Getenv("HOMEPATH")
|
||||
|
|
11
viper.go
11
viper.go
|
@ -29,6 +29,7 @@ import (
|
|||
"os"
|
||||
"path/filepath"
|
||||
"reflect"
|
||||
"slices"
|
||||
"strconv"
|
||||
"strings"
|
||||
"sync"
|
||||
|
@ -460,7 +461,7 @@ func (v *Viper) AddConfigPath(in string) {
|
|||
absin := absPathify(v.logger, in)
|
||||
|
||||
v.logger.Info("adding path to search paths", "path", absin)
|
||||
if !stringInSlice(absin, v.configPaths) {
|
||||
if !slices.Contains(v.configPaths, absin) {
|
||||
v.configPaths = append(v.configPaths, absin)
|
||||
}
|
||||
}
|
||||
|
@ -1478,7 +1479,7 @@ func (v *Viper) ReadInConfig() error {
|
|||
return err
|
||||
}
|
||||
|
||||
if !stringInSlice(v.getConfigType(), SupportedExts) {
|
||||
if !slices.Contains(SupportedExts, v.getConfigType()) {
|
||||
return UnsupportedConfigError(v.getConfigType())
|
||||
}
|
||||
|
||||
|
@ -1509,7 +1510,7 @@ func (v *Viper) MergeInConfig() error {
|
|||
return err
|
||||
}
|
||||
|
||||
if !stringInSlice(v.getConfigType(), SupportedExts) {
|
||||
if !slices.Contains(SupportedExts, v.getConfigType()) {
|
||||
return UnsupportedConfigError(v.getConfigType())
|
||||
}
|
||||
|
||||
|
@ -1616,7 +1617,7 @@ func (v *Viper) writeConfig(filename string, force bool) error {
|
|||
return fmt.Errorf("config type could not be determined for %s", filename)
|
||||
}
|
||||
|
||||
if !stringInSlice(configType, SupportedExts) {
|
||||
if !slices.Contains(SupportedExts, configType) {
|
||||
return UnsupportedConfigError(configType)
|
||||
}
|
||||
if v.config == nil {
|
||||
|
@ -1645,7 +1646,7 @@ func (v *Viper) unmarshalReader(in io.Reader, c map[string]any) error {
|
|||
|
||||
format := strings.ToLower(v.getConfigType())
|
||||
|
||||
if !stringInSlice(format, SupportedExts) {
|
||||
if !slices.Contains(SupportedExts, format) {
|
||||
return UnsupportedConfigError(format)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue