diff options
Diffstat (limited to 'formats/config')
-rw-r--r-- | formats/config/common.go | 1 | ||||
-rw-r--r-- | formats/config/doc.go | 3 | ||||
-rw-r--r-- | formats/config/section.go | 47 |
3 files changed, 26 insertions, 25 deletions
diff --git a/formats/config/common.go b/formats/config/common.go index e7292e9..d2f1e5c 100644 --- a/formats/config/common.go +++ b/formats/config/common.go @@ -32,6 +32,7 @@ func (c *Config) Section(name string) *Section { return s } } + s := &Section{Name: name} c.Sections = append(c.Sections, s) return s diff --git a/formats/config/doc.go b/formats/config/doc.go index 1f7eb78..dd77fbc 100644 --- a/formats/config/doc.go +++ b/formats/config/doc.go @@ -1,5 +1,4 @@ -// Package config implements decoding, encoding and manipulation -// of git config files. +// Package config implements decoding/encoding of git config files. package config /* diff --git a/formats/config/section.go b/formats/config/section.go index 552ce74..1844913 100644 --- a/formats/config/section.go +++ b/formats/config/section.go @@ -21,28 +21,15 @@ func (s *Section) IsName(name string) bool { return strings.ToLower(s.Name) == strings.ToLower(name) } -func (s *Subsection) IsName(name string) bool { - return s.Name == name -} - func (s *Section) Option(key string) string { return s.Options.Get(key) } -func (s *Subsection) Option(key string) string { - return s.Options.Get(key) -} - func (s *Section) AddOption(key string, value string) *Section { s.Options = s.Options.withAddedOption(key, value) return s } -func (s *Subsection) AddOption(key string, value string) *Subsection { - s.Options = s.Options.withAddedOption(key, value) - return s -} - func (s *Section) SetOption(key string, value string) *Section { s.Options = s.Options.withSettedOption(key, value) return s @@ -53,16 +40,6 @@ func (s *Section) RemoveOption(key string) *Section { return s } -func (s *Subsection) SetOption(key string, value string) *Subsection { - s.Options = s.Options.withSettedOption(key, value) - return s -} - -func (s *Subsection) RemoveOption(key string) *Subsection { - s.Options = s.Options.withoutOption(key) - return s -} - func (s *Section) Subsection(name string) *Subsection { for i := len(s.Subsections) - 1; i >= 0; i-- { ss := s.Subsections[i] @@ -70,6 +47,7 @@ func (s *Section) Subsection(name string) *Subsection { return ss } } + ss := &Subsection{Name: name} s.Subsections = append(s.Subsections, ss) return ss @@ -84,3 +62,26 @@ func (s *Section) HasSubsection(name string) bool { return false } + +func (s *Subsection) IsName(name string) bool { + return s.Name == name +} + +func (s *Subsection) Option(key string) string { + return s.Options.Get(key) +} + +func (s *Subsection) AddOption(key string, value string) *Subsection { + s.Options = s.Options.withAddedOption(key, value) + return s +} + +func (s *Subsection) SetOption(key string, value string) *Subsection { + s.Options = s.Options.withSettedOption(key, value) + return s +} + +func (s *Subsection) RemoveOption(key string) *Subsection { + s.Options = s.Options.withoutOption(key) + return s +} |