config

package
v0.3.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 4, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const TagName = "scfg"

TagName is the tag name used in config struct. The Tag contains two value. "config_key,default=def_value(optional)"

Variables

This section is empty.

Functions

func GetBoolOrDefault added in v0.3.7

func GetBoolOrDefault(provider ConfigProvider, key string, defaultValue bool) bool

func GetIntOrDefault added in v0.3.7

func GetIntOrDefault(provider ConfigProvider, key string, defaultValue int64) int64

func GetStringOrDefault added in v0.3.7

func GetStringOrDefault(provider ConfigProvider, key, defaultValue string) string

func UnmarshalWithOptions added in v0.3.7

func UnmarshalWithOptions(provider ConfigProvider, val interface{}, opts ...UnmarshalOption) error

Types

type ConfigProvider

type ConfigProvider interface {
	Init() error
	GetString(key string) string
	GetInt(key string) int64
	GetBool(key string) bool
	GetStringE(key string) (string, bool)
	GetIntE(key string) (int64, bool)
	GetBoolE(key string) (bool, bool)
}

type ConfigProviderWithDefault added in v0.3.7

type ConfigProviderWithDefault interface {
	ConfigProvider
	GetStringOrDefault(key, defaultValue string) string
	GetIntOrDefault(key string, defaultValue int64) int64
	GetBoolOrDefault(key string, defaultValue bool) bool
}

type ConfigUnmarshaler

type ConfigUnmarshaler interface {
	ConfigProvider
	Unmarshal(val interface{}) error
	UnmarshalWithPrefix(prefix string, val interface{}) error
}

type DefaultBehavior added in v0.3.7

type DefaultBehavior int
const (
	DefaultBehaviorUseTag DefaultBehavior = iota
	DefaultBehaviorZeroValue
)

type IConfig added in v0.3.7

type IConfig interface {
	ConfigUnmarshaler
	ConfigProviderWithDefault
}

func NewConfigUnmarshaler added in v0.3.7

func NewConfigUnmarshaler(provider ConfigProvider) IConfig

type UnmarshalOption added in v0.3.7

type UnmarshalOption func(*UnmarshalOptions)

func WithDefaultBehavior added in v0.3.7

func WithDefaultBehavior(behavior DefaultBehavior) UnmarshalOption

func WithPrefix added in v0.3.7

func WithPrefix(prefix string) UnmarshalOption

func WithTagName added in v0.3.7

func WithTagName(tagName string) UnmarshalOption

type UnmarshalOptions added in v0.3.7

type UnmarshalOptions struct {
	TagName         string
	Prefix          string
	DefaultBehavior DefaultBehavior
}

func DefaultUnmarshalOptions added in v0.3.7

func DefaultUnmarshalOptions() UnmarshalOptions

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL