serde

package
v0.0.123 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 5, 2024 License: BSD-3-Clause Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetSerdeType

func GetSerdeType[T any]() reflect.Type

func IsTypePtr

func IsTypePtr[T any]() bool

Types

type ArraySerde

type ArraySerde[T any] struct {
	// contains filtered or unexported fields
}

func MakeTypedArraySerde

func MakeTypedArraySerde[T any](valueSerde Serializer) *ArraySerde[T]

func (*ArraySerde[T]) Deserialize

func (s *ArraySerde[T]) Deserialize(data []byte) (T, error)

func (*ArraySerde) DeserializeObj

func (s *ArraySerde) DeserializeObj(data []byte) (interface{}, error)

func (*ArraySerde[T]) Serialize

func (s *ArraySerde[T]) Serialize(value T) ([]byte, error)

func (*ArraySerde) SerializeObj

func (s *ArraySerde) SerializeObj(value interface{}) ([]byte, error)

type BoolSerde

type BoolSerde struct {
}

func (*BoolSerde) Deserialize

func (s *BoolSerde) Deserialize(data []byte) (bool, error)

func (*BoolSerde) DeserializeObj

func (s *BoolSerde) DeserializeObj(data []byte) (interface{}, error)

func (*BoolSerde) Serialize

func (s *BoolSerde) Serialize(value bool) ([]byte, error)

func (*BoolSerde) SerializeObj

func (s *BoolSerde) SerializeObj(value interface{}) ([]byte, error)

type Float32Serde

type Float32Serde struct {
}

func (*Float32Serde) Deserialize

func (s *Float32Serde) Deserialize(data []byte) (float32, error)

func (*Float32Serde) DeserializeObj

func (s *Float32Serde) DeserializeObj(data []byte) (interface{}, error)

func (*Float32Serde) Serialize

func (s *Float32Serde) Serialize(value float32) ([]byte, error)

func (*Float32Serde) SerializeObj

func (s *Float32Serde) SerializeObj(value interface{}) ([]byte, error)

type Float64Serde

type Float64Serde struct {
}

func (*Float64Serde) Deserialize

func (s *Float64Serde) Deserialize(data []byte) (float64, error)

func (*Float64Serde) DeserializeObj

func (s *Float64Serde) DeserializeObj(data []byte) (interface{}, error)

func (*Float64Serde) Serialize

func (s *Float64Serde) Serialize(value float64) ([]byte, error)

func (*Float64Serde) SerializeObj

func (s *Float64Serde) SerializeObj(value interface{}) ([]byte, error)

type Int16Serde

type Int16Serde struct {
}

func (*Int16Serde) Deserialize

func (s *Int16Serde) Deserialize(data []byte) (int16, error)

func (*Int16Serde) DeserializeObj

func (s *Int16Serde) DeserializeObj(data []byte) (interface{}, error)

func (*Int16Serde) Serialize

func (s *Int16Serde) Serialize(value int16) ([]byte, error)

func (*Int16Serde) SerializeObj

func (s *Int16Serde) SerializeObj(value interface{}) ([]byte, error)

type Int32Serde

type Int32Serde struct {
}

func (*Int32Serde) Deserialize

func (s *Int32Serde) Deserialize(data []byte) (int32, error)

func (*Int32Serde) DeserializeObj

func (s *Int32Serde) DeserializeObj(data []byte) (interface{}, error)

func (*Int32Serde) Serialize

func (s *Int32Serde) Serialize(value int32) ([]byte, error)

func (*Int32Serde) SerializeObj

func (s *Int32Serde) SerializeObj(value interface{}) ([]byte, error)

type Int64Serde

type Int64Serde struct {
}

func (*Int64Serde) Deserialize

func (s *Int64Serde) Deserialize(data []byte) (int64, error)

func (*Int64Serde) DeserializeObj

func (s *Int64Serde) DeserializeObj(data []byte) (interface{}, error)

func (*Int64Serde) Serialize

func (s *Int64Serde) Serialize(value int64) ([]byte, error)

func (*Int64Serde) SerializeObj

func (s *Int64Serde) SerializeObj(value interface{}) ([]byte, error)

type Int8Serde

type Int8Serde struct {
}

func (*Int8Serde) Deserialize

func (s *Int8Serde) Deserialize(data []byte) (int8, error)

func (*Int8Serde) DeserializeObj

func (s *Int8Serde) DeserializeObj(data []byte) (interface{}, error)

func (*Int8Serde) Serialize

func (s *Int8Serde) Serialize(value int8) ([]byte, error)

func (*Int8Serde) SerializeObj

func (s *Int8Serde) SerializeObj(value interface{}) ([]byte, error)

type IntSerde

type IntSerde struct {
}

func (*IntSerde) Deserialize

func (s *IntSerde) Deserialize(data []byte) (int, error)

func (*IntSerde) DeserializeObj

func (s *IntSerde) DeserializeObj(data []byte) (interface{}, error)

func (*IntSerde) Serialize

func (s *IntSerde) Serialize(value int) ([]byte, error)

func (*IntSerde) SerializeObj

func (s *IntSerde) SerializeObj(value interface{}) ([]byte, error)

type MapSerde

type MapSerde[T any] struct {
	// contains filtered or unexported fields
}

func (*MapSerde[T]) Deserialize

func (s *MapSerde[T]) Deserialize(data []byte) (T, error)

func (*MapSerde) DeserializeObj

func (s *MapSerde) DeserializeObj(data []byte) (interface{}, error)

func (*MapSerde[T]) Serialize

func (s *MapSerde[T]) Serialize(value T) ([]byte, error)

func (*MapSerde) SerializeObj

func (s *MapSerde) SerializeObj(value interface{}) ([]byte, error)

type RuneSerde

type RuneSerde struct {
}

func (*RuneSerde) Deserialize

func (s *RuneSerde) Deserialize(data []byte) (rune, error)

func (*RuneSerde) DeserializeObj

func (s *RuneSerde) DeserializeObj(data []byte) (interface{}, error)

func (*RuneSerde) Serialize

func (s *RuneSerde) Serialize(value rune) ([]byte, error)

func (*RuneSerde) SerializeObj

func (s *RuneSerde) SerializeObj(value interface{}) ([]byte, error)

type Serde

type Serde[T any] interface {
	Serializer
	Serialize(T) ([]byte, error)
	Deserialize([]byte) (T, error)
}

func MakeTypedMapSerde

func MakeTypedMapSerde[T any](keySerde Serializer, valueSerde Serializer) Serde[T]

type SerdeStub

type SerdeStub[T any] struct {
}

func MakeStubSerde

func MakeStubSerde[T any]() *SerdeStub[T]

func (*SerdeStub[T]) Deserialize

func (s *SerdeStub[T]) Deserialize([]byte) (T, error)

func (*SerdeStub[T]) DeserializeObj

func (s *SerdeStub[T]) DeserializeObj(data []byte) (interface{}, error)

func (*SerdeStub[T]) Serialize

func (s *SerdeStub[T]) Serialize(T) ([]byte, error)

func (*SerdeStub[T]) SerializeObj

func (s *SerdeStub[T]) SerializeObj(value interface{}) ([]byte, error)

type Serializer

type Serializer interface {
	SerializeObj(interface{}) ([]byte, error)
	DeserializeObj([]byte) (interface{}, error)
}

func MakeArraySerde

func MakeArraySerde(arrayType reflect.Type, valueSerde Serializer) Serializer

func MakeDefaultSerde

func MakeDefaultSerde(valueType reflect.Type) (Serializer, error)

func MakeMapSerde

func MakeMapSerde(mapType reflect.Type, keySerde Serializer, valueSerde Serializer) Serializer

type StreamKeyValueSerde

type StreamKeyValueSerde[T any] interface {
	StreamSerde[T]
	SerializeKey(T) ([]byte, error)
	SerializeValue(T) ([]byte, error)
	KeySerializer() Serializer
	ValueSerializer() Serializer
	DeserializeKeyValue([]byte, []byte) (T, error)
}

func MakeStreamKeyValueSerde

func MakeStreamKeyValueSerde[K comparable, V any](serdeKey Serde[K], serdeValue Serde[V]) StreamKeyValueSerde[datastruct.KeyValue[K, V]]

type StreamSerde

type StreamSerde[T any] interface {
	StreamSerializer
	Serialize(T) ([]byte, error)
	Deserialize([]byte) (T, error)
}

func MakeStreamSerde

func MakeStreamSerde[T any](serde Serde[T]) StreamSerde[T]

type StreamSerializer

type StreamSerializer interface {
	IsKeyValue() bool
}

type StringSerde

type StringSerde struct {
}

func (*StringSerde) Deserialize

func (s *StringSerde) Deserialize(data []byte) (string, error)

func (*StringSerde) DeserializeObj

func (s *StringSerde) DeserializeObj(data []byte) (interface{}, error)

func (*StringSerde) Serialize

func (s *StringSerde) Serialize(value string) ([]byte, error)

func (*StringSerde) SerializeObj

func (s *StringSerde) SerializeObj(value interface{}) ([]byte, error)

type UInt16Serde

type UInt16Serde struct {
}

func (*UInt16Serde) Deserialize

func (s *UInt16Serde) Deserialize(data []byte) (uint16, error)

func (*UInt16Serde) DeserializeObj

func (s *UInt16Serde) DeserializeObj(data []byte) (interface{}, error)

func (*UInt16Serde) Serialize

func (s *UInt16Serde) Serialize(value uint16) ([]byte, error)

func (*UInt16Serde) SerializeObj

func (s *UInt16Serde) SerializeObj(value interface{}) ([]byte, error)

type UInt32Serde

type UInt32Serde struct {
}

func (*UInt32Serde) Deserialize

func (s *UInt32Serde) Deserialize(data []byte) (uint32, error)

func (*UInt32Serde) DeserializeObj

func (s *UInt32Serde) DeserializeObj(data []byte) (interface{}, error)

func (*UInt32Serde) Serialize

func (s *UInt32Serde) Serialize(value uint32) ([]byte, error)

func (*UInt32Serde) SerializeObj

func (s *UInt32Serde) SerializeObj(value interface{}) ([]byte, error)

type UInt64Serde

type UInt64Serde struct {
}

func (*UInt64Serde) Deserialize

func (s *UInt64Serde) Deserialize(data []byte) (uint64, error)

func (*UInt64Serde) DeserializeObj

func (s *UInt64Serde) DeserializeObj(data []byte) (interface{}, error)

func (*UInt64Serde) Serialize

func (s *UInt64Serde) Serialize(value uint64) ([]byte, error)

func (*UInt64Serde) SerializeObj

func (s *UInt64Serde) SerializeObj(value interface{}) ([]byte, error)

type UInt8Serde

type UInt8Serde struct {
}

func (*UInt8Serde) Deserialize

func (s *UInt8Serde) Deserialize(data []byte) (uint8, error)

func (*UInt8Serde) DeserializeObj

func (s *UInt8Serde) DeserializeObj(data []byte) (interface{}, error)

func (*UInt8Serde) Serialize

func (s *UInt8Serde) Serialize(value uint8) ([]byte, error)

func (*UInt8Serde) SerializeObj

func (s *UInt8Serde) SerializeObj(value interface{}) ([]byte, error)

type UIntSerde

type UIntSerde struct {
}

func (*UIntSerde) Deserialize

func (s *UIntSerde) Deserialize(data []byte) (uint, error)

func (*UIntSerde) DeserializeObj

func (s *UIntSerde) DeserializeObj(data []byte) (interface{}, error)

func (*UIntSerde) Serialize

func (s *UIntSerde) Serialize(value uint) ([]byte, error)

func (*UIntSerde) SerializeObj

func (s *UIntSerde) SerializeObj(value interface{}) ([]byte, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL