Documentation ¶
Index ¶
- Constants
- func AllowEmptyLines(o *options)
- func AllowNoValue(o *options)
- func CommentPrefixes(pr Prefixes) optFunc
- func Converters(conv Converter) optFunc
- func DefaultSection(n string) optFunc
- func Delimiters(d string) optFunc
- func InlineCommentPrefixes(pr Prefixes) optFunc
- func Interpolation(i Interpolator) optFunc
- func MultilinePrefixes(pr Prefixes) optFunc
- func Strict(o *options)
- type Config
- type ConfigParser
- func New() *ConfigParser
- func NewConfigParserFromFile(filename string) (*ConfigParser, error)
- func NewWithDefaults(defaults Dict) (*ConfigParser, error)
- func NewWithOptions(opts ...optFunc) *ConfigParser
- func Parse(filename string) (*ConfigParser, error)
- func ParseReader(in io.Reader) (*ConfigParser, error)
- func ParseReaderWithOptions(in io.Reader, opts ...optFunc) (*ConfigParser, error)
- func ParseWithOptions(filename string, opts ...optFunc) (*ConfigParser, error)
- func (p *ConfigParser) AddSection(section string) error
- func (p *ConfigParser) Defaults() Dict
- func (p *ConfigParser) Get(section, option string) (string, error)
- func (p *ConfigParser) GetBool(section, option string) (bool, error)
- func (p *ConfigParser) GetFloat64(section, option string) (float64, error)
- func (p *ConfigParser) GetInt64(section, option string) (int64, error)
- func (p *ConfigParser) GetInterpolated(section, option string) (string, error)
- func (p *ConfigParser) GetInterpolatedWithVars(section, option string, v Dict) (string, error)
- func (p *ConfigParser) HasOption(section, option string) (bool, error)
- func (p *ConfigParser) HasSection(section string) bool
- func (p *ConfigParser) Items(section string) (Dict, error)
- func (p *ConfigParser) ItemsWithDefaults(section string) (Dict, error)
- func (p *ConfigParser) ItemsWithDefaultsInterpolated(section string) (Dict, error)
- func (p *ConfigParser) Options(section string) ([]string, error)
- func (p *ConfigParser) ParseReader(in io.Reader) error
- func (p *ConfigParser) RemoveOption(section, option string) error
- func (p *ConfigParser) RemoveSection(section string) error
- func (p *ConfigParser) SaveWithDelimiter(filename, delimiter string) error
- func (p *ConfigParser) Sections() []string
- func (p *ConfigParser) Set(section, option, value string) error
- type ConvertFunc
- type Converter
- type Dict
- type Interpolator
- type Prefixes
- type Section
Constants ¶
const ( StringConv = iota IntConv FloatConv BoolConv )
Predefined types for Converter.
Variables ¶
This section is empty.
Functions ¶
func AllowEmptyLines ¶
func AllowEmptyLines(o *options)
AllowEmptyLines allows empty lines in multiline values.
func AllowNoValue ¶
func AllowNoValue(o *options)
AllowNoValue allows option with no value to be saved as empty line.
func CommentPrefixes ¶
func CommentPrefixes(pr Prefixes) optFunc
CommentPrefixes sets a slice of comment prefixes. Lines of configuration file which starts with the first match in this slice will be skipped.
func Converters ¶
func Converters(conv Converter) optFunc
Converters sets custom convertion functions. Will apply to return value of the Get* methods instead of the default convertion.
NOTE: the caller should guarantee type assetion to the requested type after custom processing or the method will panic.
func DefaultSection ¶
func DefaultSection(n string) optFunc
DefaultSection sets the name of the default section.
func Delimiters ¶
func Delimiters(d string) optFunc
Delimiters sets a string of delimiters for option-value pairs.
func InlineCommentPrefixes ¶
func InlineCommentPrefixes(pr Prefixes) optFunc
InlineCommentPrefixes sets a slice of inline comment delimiters. When parsing a value, it will be split with the first match in this slice.
func Interpolation ¶
func Interpolation(i Interpolator) optFunc
Interpolation sets custom interpolator.
func MultilinePrefixes ¶
func MultilinePrefixes(pr Prefixes) optFunc
MultilinePrefixes sets a slice of prefixes, which will define multiline value.
Types ¶
type ConfigParser ¶
type ConfigParser struct {
// contains filtered or unexported fields
}
ConfigParser ties together a Config and default values for use in interpolated configuration values.
func NewConfigParserFromFile ¶
func NewConfigParserFromFile(filename string) (*ConfigParser, error)
NewConfigParserFromFile creates a new ConfigParser struct populated from the supplied filename.
func NewWithDefaults ¶
func NewWithDefaults(defaults Dict) (*ConfigParser, error)
NewWithDefaults allows creation of a new ConfigParser with a pre-existing Dict.
func NewWithOptions ¶
func NewWithOptions(opts ...optFunc) *ConfigParser
NewWithOptions creates a new ConfigParser with options.
func Parse ¶
func Parse(filename string) (*ConfigParser, error)
Parse takes a filename and parses it into a ConfigParser value.
func ParseReader ¶
func ParseReader(in io.Reader) (*ConfigParser, error)
ParseReader parses a ConfigParser from the provided input.
func ParseReaderWithOptions ¶
func ParseReaderWithOptions(in io.Reader, opts ...optFunc) (*ConfigParser, error)
ParseReaderWithOptions parses a ConfigParser from the provided input with given options.
func ParseWithOptions ¶
func ParseWithOptions(filename string, opts ...optFunc) (*ConfigParser, error)
ParseWithOptions takes a filename and parses it into a ConfigParser value with given options.
func (*ConfigParser) AddSection ¶
func (p *ConfigParser) AddSection(section string) error
AddSection creates a new section in the configuration.
Returns an error if a section by the specified name already exists. Returns an error if the specified name DEFAULT or any of its case-insensitive variants. Returns nil if no error and the section is created
func (*ConfigParser) Defaults ¶
func (p *ConfigParser) Defaults() Dict
Defaults returns the items in the map used for default values.
func (*ConfigParser) Get ¶
func (p *ConfigParser) Get(section, option string) (string, error)
Get returns string value for the named option.
Returns an error if a section does not exist. Returns an error if the option does not exist either in the section or in the defaults.
func (*ConfigParser) GetBool ¶
func (p *ConfigParser) GetBool(section, option string) (bool, error)
GetBool returns bool representation of the named option.
Returns an error if a section does not exist. Returns an error if the option does not exist either in the section or in the defaults.
func (*ConfigParser) GetFloat64 ¶
func (p *ConfigParser) GetFloat64(section, option string) (float64, error)
GetFloat64 returns float64 representation of the named option.
Returns an error if a section does not exist. Returns an error if the option does not exist either in the section or in the defaults.
func (*ConfigParser) GetInt64 ¶
func (p *ConfigParser) GetInt64(section, option string) (int64, error)
GetInt64 returns int64 representation of the named option.
Returns an error if a section does not exist. Returns an error if the option does not exist either in the section or in the defaults.
func (*ConfigParser) GetInterpolated ¶
func (p *ConfigParser) GetInterpolated(section, option string) (string, error)
GetInterpolated returns a string value for the named option.
All % interpolations are expanded in the return values, based on the defaults passed into the constructor and the DEFAULT section.
func (*ConfigParser) GetInterpolatedWithVars ¶
func (p *ConfigParser) GetInterpolatedWithVars(section, option string, v Dict) (string, error)
GetInterpolatedWithVars returns a string value for the named option.
All % interpolations are expanded in the return values, based on the defaults passed into the constructor and the DEFAULT section. Additional substitutions may be provided using the 'v' argument, which must be a Dict whose contents contents override any pre-existing defaults.
func (*ConfigParser) HasOption ¶
func (p *ConfigParser) HasOption(section, option string) (bool, error)
HasOption checks if section contains option.
func (*ConfigParser) HasSection ¶
func (p *ConfigParser) HasSection(section string) bool
HasSection returns true if the named section is present in the configuration.
The DEFAULT section is not acknowledged.
func (*ConfigParser) Items ¶
func (p *ConfigParser) Items(section string) (Dict, error)
Items returns a copy of the section Dict not including the Defaults.
NOTE: This is different from the Python version which returns a list of tuples.
func (*ConfigParser) ItemsWithDefaults ¶
func (p *ConfigParser) ItemsWithDefaults(section string) (Dict, error)
ItemsWithDefaults returns a copy of the named section Dict including any values from the Defaults.
NOTE: This is different from the Python version which returns a list of tuples
func (*ConfigParser) ItemsWithDefaultsInterpolated ¶
func (p *ConfigParser) ItemsWithDefaultsInterpolated(section string) (Dict, error)
ItemsWithDefaultsInterpolated returns a copy of the dict for the section.
func (*ConfigParser) Options ¶
func (p *ConfigParser) Options(section string) ([]string, error)
Options returns a list of option mames for the given section name.
Returns an error if the section does not exist.
func (*ConfigParser) ParseReader ¶
func (p *ConfigParser) ParseReader(in io.Reader) error
ParseReader parses data into ConfigParser from provided reader.
func (*ConfigParser) RemoveOption ¶
func (p *ConfigParser) RemoveOption(section, option string) error
RemoveOption removes option from the section.
func (*ConfigParser) RemoveSection ¶
func (p *ConfigParser) RemoveSection(section string) error
RemoveSection removes given section from the ConfigParser.
func (*ConfigParser) SaveWithDelimiter ¶
func (p *ConfigParser) SaveWithDelimiter(filename, delimiter string) error
SaveWithDelimiter writes the current state of the ConfigParser to the named file with the specified delimiter.
func (*ConfigParser) Sections ¶
func (p *ConfigParser) Sections() []string
Sections returns a list of section names, excluding [DEFAULT].
func (*ConfigParser) Set ¶
func (p *ConfigParser) Set(section, option, value string) error
Set puts the given option into the named section.
Returns an error if the section does not exist.
type ConvertFunc ¶
ConvertFunc is a custom datatype converter.
type Converter ¶
type Converter map[int]ConvertFunc
Converter contains custom convert functions for available types. The caller should guarantee type assertion to the requested type after custom processing!
type Interpolator ¶
Interpolator defines interpolation instance. For more details, check chainmap.ChainMap realisation.
type Prefixes ¶
type Prefixes []string
Prefixes stores available prefixes for comments.
type Section ¶
type Section struct { Name string // contains filtered or unexported fields }
Section represent each section of the configuration file.
func (*Section) Get ¶
Get returns value of an option with the given key.
Returns an error if the option does not exist either in the section or in the defaults.