diff options
Diffstat (limited to 'internal/config/settings.go')
| -rw-r--r-- | internal/config/settings.go | 25 |
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 |
