This repository has been archived by the owner on Jun 30, 2022. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
de.go
66 lines (57 loc) · 1.92 KB
/
de.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package serde
type Deserializable interface {
Deserialize(deserializer Deserializer) (err error)
}
type Deserializer interface {
DeserializeAny(v Visitor) (err error)
DeserializeNil(v Visitor) (err error)
DeserializeBool(v Visitor) (err error)
DeserializeInt(v Visitor) (err error)
DeserializeInt8(v Visitor) (err error)
DeserializeInt16(v Visitor) (err error)
DeserializeInt32(v Visitor) (err error)
DeserializeInt64(v Visitor) (err error)
DeserializeUint(v Visitor) (err error)
DeserializeUint8(v Visitor) (err error)
DeserializeUint16(v Visitor) (err error)
DeserializeUint32(v Visitor) (err error)
DeserializeUint64(v Visitor) (err error)
DeserializeFloat32(v Visitor) (err error)
DeserializeFloat64(v Visitor) (err error)
DeserializeComplex64(v Visitor) (err error)
DeserializeComplex128(v Visitor) (err error)
DeserializeString(v Visitor) (err error)
DeserializeBytes(v Visitor) (err error)
DeserializeSlice(v Visitor) (err error)
DeserializeMap(v Visitor) (err error)
DeserializeStruct(name string, fields []string, v Visitor) (err error)
}
type Visitor interface {
VisitNil() (err error)
VisitBool(v bool) (err error)
VisitInt(v int) (err error)
VisitInt8(v int8) (err error)
VisitInt16(v int16) (err error)
VisitInt32(v int32) (err error)
VisitInt64(v int64) (err error)
VisitUint(v uint) (err error)
VisitUint8(v uint8) (err error)
VisitUint16(v uint16) (err error)
VisitUint32(v uint32) (err error)
VisitUint64(v uint64) (err error)
VisitFloat32(v float32) (err error)
VisitFloat64(v float64) (err error)
VisitComplex64(v complex64) (err error)
VisitComplex128(v complex128) (err error)
VisitString(v string) (err error)
VisitBytes(v []byte) (err error)
VisitSlice(s SliceAccess) (err error)
VisitMap(m MapAccess) (err error)
}
type MapAccess interface {
NextKey(v Visitor) (ok bool, err error)
NextValue(v Visitor) (err error)
}
type SliceAccess interface {
NextElement(v Visitor) (ok bool, err error)
}