Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FloatSerializer ¶
type FloatSerializer[T constraints.Float] struct{}
func (*FloatSerializer[T]) Marshal ¶
func (f *FloatSerializer[T]) Marshal(v T) ([]byte, error)
func (*FloatSerializer[T]) Name ¶
func (f *FloatSerializer[T]) Name() string
func (*FloatSerializer[T]) Unmarshal ¶
func (f *FloatSerializer[T]) Unmarshal(data []byte, v *T) error
type IntegerSerializer ¶
type IntegerSerializer[T constraints.Integer] struct{}
IntegerSerializer implementiert Serializer[T] für alle Standard-Integer-Typen. Verwendet strconv zur Konvertierung nach/von String (Base 10).
func (*IntegerSerializer[T]) Marshal ¶
func (s *IntegerSerializer[T]) Marshal(v T) ([]byte, error)
Marshal konvertiert einen Integer-Wert T in seine String-Repräsentation (Base 10) als []byte.
func (*IntegerSerializer[T]) Name ¶
func (s *IntegerSerializer[T]) Name() string
Name gibt den Namen des Serializers inklusive des spezifischen Integer-Typs zurück.
func (*IntegerSerializer[T]) Unmarshal ¶
func (s *IntegerSerializer[T]) Unmarshal(data []byte, v *T) error
Unmarshal parst eine String-Repräsentation (Base 10) in den Ziel-Integer-Pointer *T. Verlässt sich auf strconv.ParseInt/ParseUint für die Bereichsprüfung mittels bitSize.
type JsonSerializer ¶
type JsonSerializer[T any] struct{}
func (*JsonSerializer[T]) Marshal ¶
func (js *JsonSerializer[T]) Marshal(v T) ([]byte, error)
Marshal implementiert Serializer[T] für JSON.
func (*JsonSerializer[T]) Name ¶
func (js *JsonSerializer[T]) Name() string
Name implementiert Serializer[T].
func (*JsonSerializer[T]) Unmarshal ¶
func (js *JsonSerializer[T]) Unmarshal(data []byte, target *T) error
Unmarshal implementiert Serializer[T] für JSON.
type Serializer ¶
type Serializer[T any] interface { Marshal(v T) ([]byte, error) Unmarshal(data []byte, target *T) error // Nimmt Pointer auf T Name() string // Gibt einen Namen zurück (z.B. für Logging) }
Serializer definiert Methoden zur Konvertierung von Daten des Typs T.
func NewIntegerSerializer ¶
func NewIntegerSerializer[T constraints.Integer]() Serializer[T]
NewIntegerSerializer erstellt einen neuen Serializer für den gegebenen Integer-Typ T.
func NewJsonSerializer ¶
func NewJsonSerializer[T any]() Serializer[T]
NewJsonSerializer erstellt einen neuen JSON Serializer für den Typ T.
type StringSerializer ¶
type StringSerializer struct{}
func (*StringSerializer) Name ¶
func (f *StringSerializer) Name() string