feat: remove un-necessary dependencies

This commit is contained in:
sujit
2024-10-14 22:21:53 +05:45
parent fb3be07d6b
commit aa0cecf1fe
10 changed files with 185 additions and 42 deletions

37
codec/serializer.go Normal file
View File

@@ -0,0 +1,37 @@
package codec
import (
"encoding/json"
)
type MarshallerFunc func(v any) ([]byte, error)
type UnmarshallerFunc func(data []byte, v any) error
func (f MarshallerFunc) Marshal(v any) ([]byte, error) {
return f(v)
}
func (f UnmarshallerFunc) Unmarshal(data []byte, v any) error {
return f(data, v)
}
var defaultMarshaller MarshallerFunc = json.Marshal
var defaultUnmarshaller UnmarshallerFunc = json.Unmarshal
func SetMarshaller(marshaller MarshallerFunc) {
defaultMarshaller = marshaller
}
func SetUnmarshaller(unmarshaller UnmarshallerFunc) {
defaultUnmarshaller = unmarshaller
}
func Marshal(v any) ([]byte, error) {
return defaultMarshaller(v)
}
func Unmarshal(data []byte, v any) error {
return defaultUnmarshaller(data, v)
}