1// Code generated by github.com/whyrusleeping/cbor-gen. DO NOT EDIT.
2
3package chat
4
5import (
6 "fmt"
7 "io"
8 "math"
9 "sort"
10
11 cid "github.com/ipfs/go-cid"
12 cbg "github.com/whyrusleeping/cbor-gen"
13 xerrors "golang.org/x/xerrors"
14)
15
16var _ = xerrors.Errorf
17var _ = cid.Undef
18var _ = math.E
19var _ = sort.Sort
20
21func (t *ActorDeclaration) MarshalCBOR(w io.Writer) error {
22 if t == nil {
23 _, err := w.Write(cbg.CborNull)
24 return err
25 }
26
27 cw := cbg.NewCborWriter(w)
28
29 if _, err := cw.Write([]byte{162}); err != nil {
30 return err
31 }
32
33 // t.LexiconTypeID (string) (string)
34 if len("$type") > 1000000 {
35 return xerrors.Errorf("Value in field \"$type\" was too long")
36 }
37
38 if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("$type"))); err != nil {
39 return err
40 }
41 if _, err := cw.WriteString(string("$type")); err != nil {
42 return err
43 }
44
45 if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("chat.bsky.actor.declaration"))); err != nil {
46 return err
47 }
48 if _, err := cw.WriteString(string("chat.bsky.actor.declaration")); err != nil {
49 return err
50 }
51
52 // t.AllowIncoming (string) (string)
53 if len("allowIncoming") > 1000000 {
54 return xerrors.Errorf("Value in field \"allowIncoming\" was too long")
55 }
56
57 if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("allowIncoming"))); err != nil {
58 return err
59 }
60 if _, err := cw.WriteString(string("allowIncoming")); err != nil {
61 return err
62 }
63
64 if len(t.AllowIncoming) > 1000000 {
65 return xerrors.Errorf("Value in field t.AllowIncoming was too long")
66 }
67
68 if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.AllowIncoming))); err != nil {
69 return err
70 }
71 if _, err := cw.WriteString(string(t.AllowIncoming)); err != nil {
72 return err
73 }
74 return nil
75}
76
77func (t *ActorDeclaration) UnmarshalCBOR(r io.Reader) (err error) {
78 *t = ActorDeclaration{}
79
80 cr := cbg.NewCborReader(r)
81
82 maj, extra, err := cr.ReadHeader()
83 if err != nil {
84 return err
85 }
86 defer func() {
87 if err == io.EOF {
88 err = io.ErrUnexpectedEOF
89 }
90 }()
91
92 if maj != cbg.MajMap {
93 return fmt.Errorf("cbor input should be of type map")
94 }
95
96 if extra > cbg.MaxLength {
97 return fmt.Errorf("ActorDeclaration: map struct too large (%d)", extra)
98 }
99
100 n := extra
101
102 nameBuf := make([]byte, 13)
103 for i := uint64(0); i < n; i++ {
104 nameLen, ok, err := cbg.ReadFullStringIntoBuf(cr, nameBuf, 1000000)
105 if err != nil {
106 return err
107 }
108
109 if !ok {
110 // Field doesn't exist on this type, so ignore it
111 if err := cbg.ScanForLinks(cr, func(cid.Cid) {}); err != nil {
112 return err
113 }
114 continue
115 }
116
117 switch string(nameBuf[:nameLen]) {
118 // t.LexiconTypeID (string) (string)
119 case "$type":
120
121 {
122 sval, err := cbg.ReadStringWithMax(cr, 1000000)
123 if err != nil {
124 return err
125 }
126
127 t.LexiconTypeID = string(sval)
128 }
129 // t.AllowIncoming (string) (string)
130 case "allowIncoming":
131
132 {
133 sval, err := cbg.ReadStringWithMax(cr, 1000000)
134 if err != nil {
135 return err
136 }
137
138 t.AllowIncoming = string(sval)
139 }
140
141 default:
142 // Field doesn't exist on this type, so ignore it
143 if err := cbg.ScanForLinks(r, func(cid.Cid) {}); err != nil {
144 return err
145 }
146 }
147 }
148
149 return nil
150}