summaryrefslogtreecommitdiff
path: root/vendor/github.com/spf13/viper/internal/encoding/decoder.go
diff options
context:
space:
mode:
authorLibravatar Terin Stock <terinjokes@gmail.com>2025-03-09 17:47:56 +0100
committerLibravatar Terin Stock <terinjokes@gmail.com>2025-03-10 01:59:49 +0100
commit3ac1ee16f377d31a0fb80c8dae28b6239ac4229e (patch)
treef61faa581feaaeaba2542b9f2b8234a590684413 /vendor/github.com/spf13/viper/internal/encoding/decoder.go
parent[chore] update URLs to forked source (diff)
downloadgotosocial-3ac1ee16f377d31a0fb80c8dae28b6239ac4229e.tar.xz
[chore] remove vendor
Diffstat (limited to 'vendor/github.com/spf13/viper/internal/encoding/decoder.go')
-rw-r--r--vendor/github.com/spf13/viper/internal/encoding/decoder.go61
1 files changed, 0 insertions, 61 deletions
diff --git a/vendor/github.com/spf13/viper/internal/encoding/decoder.go b/vendor/github.com/spf13/viper/internal/encoding/decoder.go
deleted file mode 100644
index 8a7b1dbc9..000000000
--- a/vendor/github.com/spf13/viper/internal/encoding/decoder.go
+++ /dev/null
@@ -1,61 +0,0 @@
-package encoding
-
-import (
- "sync"
-)
-
-// Decoder decodes the contents of b into v.
-// It's primarily used for decoding contents of a file into a map[string]any.
-type Decoder interface {
- Decode(b []byte, v map[string]any) error
-}
-
-const (
- // ErrDecoderNotFound is returned when there is no decoder registered for a format.
- ErrDecoderNotFound = encodingError("decoder not found for this format")
-
- // ErrDecoderFormatAlreadyRegistered is returned when an decoder is already registered for a format.
- ErrDecoderFormatAlreadyRegistered = encodingError("decoder already registered for this format")
-)
-
-// DecoderRegistry can choose an appropriate Decoder based on the provided format.
-type DecoderRegistry struct {
- decoders map[string]Decoder
-
- mu sync.RWMutex
-}
-
-// NewDecoderRegistry returns a new, initialized DecoderRegistry.
-func NewDecoderRegistry() *DecoderRegistry {
- return &DecoderRegistry{
- decoders: make(map[string]Decoder),
- }
-}
-
-// RegisterDecoder registers a Decoder for a format.
-// Registering a Decoder for an already existing format is not supported.
-func (e *DecoderRegistry) RegisterDecoder(format string, enc Decoder) error {
- e.mu.Lock()
- defer e.mu.Unlock()
-
- if _, ok := e.decoders[format]; ok {
- return ErrDecoderFormatAlreadyRegistered
- }
-
- e.decoders[format] = enc
-
- return nil
-}
-
-// Decode calls the underlying Decoder based on the format.
-func (e *DecoderRegistry) Decode(format string, b []byte, v map[string]any) error {
- e.mu.RLock()
- decoder, ok := e.decoders[format]
- e.mu.RUnlock()
-
- if !ok {
- return ErrDecoderNotFound
- }
-
- return decoder.Decode(b, v)
-}