mirror of
https://github.com/safing/portbase
synced 2025-09-01 18:19:57 +00:00
Improve naming in config package
This commit is contained in:
parent
0fd5a04e91
commit
4c857f01ce
2 changed files with 18 additions and 7 deletions
|
@ -17,6 +17,17 @@ var (
|
||||||
boolTable map[string]bool
|
boolTable map[string]bool
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type (
|
||||||
|
// StringOption defines the returned function by GetAsString.
|
||||||
|
StringOption func() string
|
||||||
|
// StringArrayOption defines the returned function by GetAsStringArray.
|
||||||
|
StringArrayOption func() []string
|
||||||
|
// IntOption defines the returned function by GetAsInt.
|
||||||
|
IntOption func() int64
|
||||||
|
// BoolOption defines the returned function by GetAsBool.
|
||||||
|
BoolOption func() bool
|
||||||
|
)
|
||||||
|
|
||||||
func getValidityFlag() *abool.AtomicBool {
|
func getValidityFlag() *abool.AtomicBool {
|
||||||
validityFlagLock.RLock()
|
validityFlagLock.RLock()
|
||||||
defer validityFlagLock.RUnlock()
|
defer validityFlagLock.RUnlock()
|
||||||
|
@ -31,7 +42,7 @@ func resetValidityFlag() {
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetAsString returns a function that returns the wanted string with high performance.
|
// GetAsString returns a function that returns the wanted string with high performance.
|
||||||
func GetAsString(name string, fallback string) func() string {
|
func GetAsString(name string, fallback string) StringOption {
|
||||||
valid := getValidityFlag()
|
valid := getValidityFlag()
|
||||||
value := findStringValue(name, fallback)
|
value := findStringValue(name, fallback)
|
||||||
return func() string {
|
return func() string {
|
||||||
|
@ -44,7 +55,7 @@ func GetAsString(name string, fallback string) func() string {
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetAsStringArray returns a function that returns the wanted string with high performance.
|
// GetAsStringArray returns a function that returns the wanted string with high performance.
|
||||||
func GetAsStringArray(name string, fallback []string) func() []string {
|
func GetAsStringArray(name string, fallback []string) StringArrayOption {
|
||||||
valid := getValidityFlag()
|
valid := getValidityFlag()
|
||||||
value := findStringArrayValue(name, fallback)
|
value := findStringArrayValue(name, fallback)
|
||||||
return func() []string {
|
return func() []string {
|
||||||
|
@ -57,7 +68,7 @@ func GetAsStringArray(name string, fallback []string) func() []string {
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetAsInt returns a function that returns the wanted int with high performance.
|
// GetAsInt returns a function that returns the wanted int with high performance.
|
||||||
func GetAsInt(name string, fallback int64) func() int64 {
|
func GetAsInt(name string, fallback int64) IntOption {
|
||||||
valid := getValidityFlag()
|
valid := getValidityFlag()
|
||||||
value := findIntValue(name, fallback)
|
value := findIntValue(name, fallback)
|
||||||
return func() int64 {
|
return func() int64 {
|
||||||
|
@ -70,7 +81,7 @@ func GetAsInt(name string, fallback int64) func() int64 {
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetAsBool returns a function that returns the wanted int with high performance.
|
// GetAsBool returns a function that returns the wanted int with high performance.
|
||||||
func GetAsBool(name string, fallback bool) func() bool {
|
func GetAsBool(name string, fallback bool) BoolOption {
|
||||||
valid := getValidityFlag()
|
valid := getValidityFlag()
|
||||||
value := findBoolValue(name, fallback)
|
value := findBoolValue(name, fallback)
|
||||||
return func() bool {
|
return func() bool {
|
||||||
|
|
|
@ -14,9 +14,9 @@ const (
|
||||||
OptTypeInt uint8 = 3
|
OptTypeInt uint8 = 3
|
||||||
OptTypeBool uint8 = 4
|
OptTypeBool uint8 = 4
|
||||||
|
|
||||||
ExpertiseLevelUser int8 = 1
|
ExpertiseLevelUser uint8 = 1
|
||||||
ExpertiseLevelExpert int8 = 2
|
ExpertiseLevelExpert uint8 = 2
|
||||||
ExpertiseLevelDeveloper int8 = 3
|
ExpertiseLevelDeveloper uint8 = 3
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|
Loading…
Add table
Reference in a new issue