diff options
author | 2023-08-10 19:46:45 -0700 | |
---|---|---|
committer | 2023-08-10 20:29:34 -0700 | |
commit | 168a870c025bfef6efdeb46e166e79a16093c157 (patch) | |
tree | 4d8ab69c7e3ef03a7ade06e7b5e5053429a64c3b /internal/errors/errors.go | |
parent | c2349032552891745cbbc3d2a9e772845a0239f4 (diff) | |
download | v2-168a870c025bfef6efdeb46e166e79a16093c157.tar.gz v2-168a870c025bfef6efdeb46e166e79a16093c157.tar.zst v2-168a870c025bfef6efdeb46e166e79a16093c157.zip |
Move internal packages to an internal folder
For reference: https://go.dev/doc/go1.4#internalpackages
Diffstat (limited to 'internal/errors/errors.go')
-rw-r--r-- | internal/errors/errors.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/internal/errors/errors.go b/internal/errors/errors.go new file mode 100644 index 00000000..e98ca6f7 --- /dev/null +++ b/internal/errors/errors.go @@ -0,0 +1,31 @@ +// SPDX-FileCopyrightText: Copyright The Miniflux Authors. All rights reserved. +// SPDX-License-Identifier: Apache-2.0 + +package errors // import "miniflux.app/v2/internal/errors" + +import ( + "fmt" + + "miniflux.app/v2/internal/locale" +) + +// LocalizedError represents an error than could be translated to another language. +type LocalizedError struct { + message string + args []interface{} +} + +// Error returns untranslated error message. +func (l LocalizedError) Error() string { + return fmt.Sprintf(l.message, l.args...) +} + +// Localize returns the translated error message. +func (l LocalizedError) Localize(printer *locale.Printer) string { + return printer.Printf(l.message, l.args...) +} + +// NewLocalizedError returns a new LocalizedError. +func NewLocalizedError(message string, args ...interface{}) *LocalizedError { + return &LocalizedError{message: message, args: args} +} |