aboutsummaryrefslogtreecommitdiff
path: root/internal/config/settings.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/config/settings.go')
-rw-r--r--internal/config/settings.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/internal/config/settings.go b/internal/config/settings.go
index efc935b..22b2f91 100644
--- a/internal/config/settings.go
+++ b/internal/config/settings.go
@@ -3,6 +3,7 @@
package config
import (
+ "fmt"
"slices"
"time"
@@ -26,6 +27,30 @@ const (
ConflictOverwrite
)
+// String is the word a CaseMode is written as in a configuration.
+func (m CaseMode) String() string {
+ switch m {
+ case CaseIgnore:
+ return "ignore"
+ case CaseStrict:
+ return "strict"
+ }
+ return fmt.Sprintf("CaseMode(%d)", int(m))
+}
+
+// String is the word a Conflict policy is written as in a configuration.
+func (c Conflict) String() string {
+ switch c {
+ case ConflictSuffix:
+ return "suffix"
+ case ConflictSkip:
+ return "skip"
+ case ConflictOverwrite:
+ return "overwrite"
+ }
+ return fmt.Sprintf("Conflict(%d)", int(c))
+}
+
// Settings holds what one level of config sets; nil means not set there.
type Settings struct {
Case *CaseMode