···1961196119621962 return nil
19631963}
19641964+func (t *LabelDefs_Label) MarshalCBOR(w io.Writer) error {
19651965+ if t == nil {
19661966+ _, err := w.Write(cbg.CborNull)
19671967+ return err
19681968+ }
19691969+19701970+ cw := cbg.NewCborWriter(w)
19711971+ fieldCount := 6
19721972+19731973+ if t.Cid == nil {
19741974+ fieldCount--
19751975+ }
19761976+19771977+ if t.Neg == nil {
19781978+ fieldCount--
19791979+ }
19801980+19811981+ if _, err := cw.Write(cbg.CborEncodeMajorType(cbg.MajMap, uint64(fieldCount))); err != nil {
19821982+ return err
19831983+ }
19841984+19851985+ // t.Cid (string) (string)
19861986+ if t.Cid != nil {
19871987+19881988+ if len("cid") > cbg.MaxLength {
19891989+ return xerrors.Errorf("Value in field \"cid\" was too long")
19901990+ }
19911991+19921992+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("cid"))); err != nil {
19931993+ return err
19941994+ }
19951995+ if _, err := cw.WriteString(string("cid")); err != nil {
19961996+ return err
19971997+ }
19981998+19991999+ if t.Cid == nil {
20002000+ if _, err := cw.Write(cbg.CborNull); err != nil {
20012001+ return err
20022002+ }
20032003+ } else {
20042004+ if len(*t.Cid) > cbg.MaxLength {
20052005+ return xerrors.Errorf("Value in field t.Cid was too long")
20062006+ }
20072007+20082008+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(*t.Cid))); err != nil {
20092009+ return err
20102010+ }
20112011+ if _, err := cw.WriteString(string(*t.Cid)); err != nil {
20122012+ return err
20132013+ }
20142014+ }
20152015+ }
20162016+20172017+ // t.Cts (string) (string)
20182018+ if len("cts") > cbg.MaxLength {
20192019+ return xerrors.Errorf("Value in field \"cts\" was too long")
20202020+ }
20212021+20222022+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("cts"))); err != nil {
20232023+ return err
20242024+ }
20252025+ if _, err := cw.WriteString(string("cts")); err != nil {
20262026+ return err
20272027+ }
20282028+20292029+ if len(t.Cts) > cbg.MaxLength {
20302030+ return xerrors.Errorf("Value in field t.Cts was too long")
20312031+ }
20322032+20332033+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Cts))); err != nil {
20342034+ return err
20352035+ }
20362036+ if _, err := cw.WriteString(string(t.Cts)); err != nil {
20372037+ return err
20382038+ }
20392039+20402040+ // t.Neg (bool) (bool)
20412041+ if t.Neg != nil {
20422042+20432043+ if len("neg") > cbg.MaxLength {
20442044+ return xerrors.Errorf("Value in field \"neg\" was too long")
20452045+ }
20462046+20472047+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("neg"))); err != nil {
20482048+ return err
20492049+ }
20502050+ if _, err := cw.WriteString(string("neg")); err != nil {
20512051+ return err
20522052+ }
20532053+20542054+ if t.Neg == nil {
20552055+ if _, err := cw.Write(cbg.CborNull); err != nil {
20562056+ return err
20572057+ }
20582058+ } else {
20592059+ if err := cbg.WriteBool(w, *t.Neg); err != nil {
20602060+ return err
20612061+ }
20622062+ }
20632063+ }
20642064+20652065+ // t.Src (string) (string)
20662066+ if len("src") > cbg.MaxLength {
20672067+ return xerrors.Errorf("Value in field \"src\" was too long")
20682068+ }
20692069+20702070+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("src"))); err != nil {
20712071+ return err
20722072+ }
20732073+ if _, err := cw.WriteString(string("src")); err != nil {
20742074+ return err
20752075+ }
20762076+20772077+ if len(t.Src) > cbg.MaxLength {
20782078+ return xerrors.Errorf("Value in field t.Src was too long")
20792079+ }
20802080+20812081+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Src))); err != nil {
20822082+ return err
20832083+ }
20842084+ if _, err := cw.WriteString(string(t.Src)); err != nil {
20852085+ return err
20862086+ }
20872087+20882088+ // t.Uri (string) (string)
20892089+ if len("uri") > cbg.MaxLength {
20902090+ return xerrors.Errorf("Value in field \"uri\" was too long")
20912091+ }
20922092+20932093+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("uri"))); err != nil {
20942094+ return err
20952095+ }
20962096+ if _, err := cw.WriteString(string("uri")); err != nil {
20972097+ return err
20982098+ }
20992099+21002100+ if len(t.Uri) > cbg.MaxLength {
21012101+ return xerrors.Errorf("Value in field t.Uri was too long")
21022102+ }
21032103+21042104+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Uri))); err != nil {
21052105+ return err
21062106+ }
21072107+ if _, err := cw.WriteString(string(t.Uri)); err != nil {
21082108+ return err
21092109+ }
21102110+21112111+ // t.Val (string) (string)
21122112+ if len("val") > cbg.MaxLength {
21132113+ return xerrors.Errorf("Value in field \"val\" was too long")
21142114+ }
21152115+21162116+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("val"))); err != nil {
21172117+ return err
21182118+ }
21192119+ if _, err := cw.WriteString(string("val")); err != nil {
21202120+ return err
21212121+ }
21222122+21232123+ if len(t.Val) > cbg.MaxLength {
21242124+ return xerrors.Errorf("Value in field t.Val was too long")
21252125+ }
21262126+21272127+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Val))); err != nil {
21282128+ return err
21292129+ }
21302130+ if _, err := cw.WriteString(string(t.Val)); err != nil {
21312131+ return err
21322132+ }
21332133+ return nil
21342134+}
21352135+21362136+func (t *LabelDefs_Label) UnmarshalCBOR(r io.Reader) (err error) {
21372137+ *t = LabelDefs_Label{}
21382138+21392139+ cr := cbg.NewCborReader(r)
21402140+21412141+ maj, extra, err := cr.ReadHeader()
21422142+ if err != nil {
21432143+ return err
21442144+ }
21452145+ defer func() {
21462146+ if err == io.EOF {
21472147+ err = io.ErrUnexpectedEOF
21482148+ }
21492149+ }()
21502150+21512151+ if maj != cbg.MajMap {
21522152+ return fmt.Errorf("cbor input should be of type map")
21532153+ }
21542154+21552155+ if extra > cbg.MaxLength {
21562156+ return fmt.Errorf("LabelDefs_Label: map struct too large (%d)", extra)
21572157+ }
21582158+21592159+ var name string
21602160+ n := extra
21612161+21622162+ for i := uint64(0); i < n; i++ {
21632163+21642164+ {
21652165+ sval, err := cbg.ReadString(cr)
21662166+ if err != nil {
21672167+ return err
21682168+ }
21692169+21702170+ name = string(sval)
21712171+ }
21722172+21732173+ switch name {
21742174+ // t.Cid (string) (string)
21752175+ case "cid":
21762176+21772177+ {
21782178+ b, err := cr.ReadByte()
21792179+ if err != nil {
21802180+ return err
21812181+ }
21822182+ if b != cbg.CborNull[0] {
21832183+ if err := cr.UnreadByte(); err != nil {
21842184+ return err
21852185+ }
21862186+21872187+ sval, err := cbg.ReadString(cr)
21882188+ if err != nil {
21892189+ return err
21902190+ }
21912191+21922192+ t.Cid = (*string)(&sval)
21932193+ }
21942194+ }
21952195+ // t.Cts (string) (string)
21962196+ case "cts":
21972197+21982198+ {
21992199+ sval, err := cbg.ReadString(cr)
22002200+ if err != nil {
22012201+ return err
22022202+ }
22032203+22042204+ t.Cts = string(sval)
22052205+ }
22062206+ // t.Neg (bool) (bool)
22072207+ case "neg":
22082208+22092209+ {
22102210+ b, err := cr.ReadByte()
22112211+ if err != nil {
22122212+ return err
22132213+ }
22142214+ if b != cbg.CborNull[0] {
22152215+ if err := cr.UnreadByte(); err != nil {
22162216+ return err
22172217+ }
22182218+22192219+ maj, extra, err = cr.ReadHeader()
22202220+ if err != nil {
22212221+ return err
22222222+ }
22232223+ if maj != cbg.MajOther {
22242224+ return fmt.Errorf("booleans must be major type 7")
22252225+ }
22262226+22272227+ var val bool
22282228+ switch extra {
22292229+ case 20:
22302230+ val = false
22312231+ case 21:
22322232+ val = true
22332233+ default:
22342234+ return fmt.Errorf("booleans are either major type 7, value 20 or 21 (got %d)", extra)
22352235+ }
22362236+ t.Neg = &val
22372237+ }
22382238+ }
22392239+ // t.Src (string) (string)
22402240+ case "src":
22412241+22422242+ {
22432243+ sval, err := cbg.ReadString(cr)
22442244+ if err != nil {
22452245+ return err
22462246+ }
22472247+22482248+ t.Src = string(sval)
22492249+ }
22502250+ // t.Uri (string) (string)
22512251+ case "uri":
22522252+22532253+ {
22542254+ sval, err := cbg.ReadString(cr)
22552255+ if err != nil {
22562256+ return err
22572257+ }
22582258+22592259+ t.Uri = string(sval)
22602260+ }
22612261+ // t.Val (string) (string)
22622262+ case "val":
22632263+22642264+ {
22652265+ sval, err := cbg.ReadString(cr)
22662266+ if err != nil {
22672267+ return err
22682268+ }
22692269+22702270+ t.Val = string(sval)
22712271+ }
22722272+22732273+ default:
22742274+ // Field doesn't exist on this type, so ignore it
22752275+ cbg.ScanForLinks(r, func(cid.Cid) {})
22762276+ }
22772277+ }
22782278+22792279+ return nil
22802280+}
22812281+func (t *LabelSubscribeLabels_Labels) MarshalCBOR(w io.Writer) error {
22822282+ if t == nil {
22832283+ _, err := w.Write(cbg.CborNull)
22842284+ return err
22852285+ }
22862286+22872287+ cw := cbg.NewCborWriter(w)
22882288+22892289+ if _, err := cw.Write([]byte{162}); err != nil {
22902290+ return err
22912291+ }
22922292+22932293+ // t.Seq (int64) (int64)
22942294+ if len("seq") > cbg.MaxLength {
22952295+ return xerrors.Errorf("Value in field \"seq\" was too long")
22962296+ }
22972297+22982298+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("seq"))); err != nil {
22992299+ return err
23002300+ }
23012301+ if _, err := cw.WriteString(string("seq")); err != nil {
23022302+ return err
23032303+ }
23042304+23052305+ if t.Seq >= 0 {
23062306+ if err := cw.WriteMajorTypeHeader(cbg.MajUnsignedInt, uint64(t.Seq)); err != nil {
23072307+ return err
23082308+ }
23092309+ } else {
23102310+ if err := cw.WriteMajorTypeHeader(cbg.MajNegativeInt, uint64(-t.Seq-1)); err != nil {
23112311+ return err
23122312+ }
23132313+ }
23142314+23152315+ // t.Labels ([]*atproto.LabelDefs_Label) (slice)
23162316+ if len("labels") > cbg.MaxLength {
23172317+ return xerrors.Errorf("Value in field \"labels\" was too long")
23182318+ }
23192319+23202320+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("labels"))); err != nil {
23212321+ return err
23222322+ }
23232323+ if _, err := cw.WriteString(string("labels")); err != nil {
23242324+ return err
23252325+ }
23262326+23272327+ if len(t.Labels) > cbg.MaxLength {
23282328+ return xerrors.Errorf("Slice value in field t.Labels was too long")
23292329+ }
23302330+23312331+ if err := cw.WriteMajorTypeHeader(cbg.MajArray, uint64(len(t.Labels))); err != nil {
23322332+ return err
23332333+ }
23342334+ for _, v := range t.Labels {
23352335+ if err := v.MarshalCBOR(cw); err != nil {
23362336+ return err
23372337+ }
23382338+ }
23392339+ return nil
23402340+}
23412341+23422342+func (t *LabelSubscribeLabels_Labels) UnmarshalCBOR(r io.Reader) (err error) {
23432343+ *t = LabelSubscribeLabels_Labels{}
23442344+23452345+ cr := cbg.NewCborReader(r)
23462346+23472347+ maj, extra, err := cr.ReadHeader()
23482348+ if err != nil {
23492349+ return err
23502350+ }
23512351+ defer func() {
23522352+ if err == io.EOF {
23532353+ err = io.ErrUnexpectedEOF
23542354+ }
23552355+ }()
23562356+23572357+ if maj != cbg.MajMap {
23582358+ return fmt.Errorf("cbor input should be of type map")
23592359+ }
23602360+23612361+ if extra > cbg.MaxLength {
23622362+ return fmt.Errorf("LabelSubscribeLabels_Labels: map struct too large (%d)", extra)
23632363+ }
23642364+23652365+ var name string
23662366+ n := extra
23672367+23682368+ for i := uint64(0); i < n; i++ {
23692369+23702370+ {
23712371+ sval, err := cbg.ReadString(cr)
23722372+ if err != nil {
23732373+ return err
23742374+ }
23752375+23762376+ name = string(sval)
23772377+ }
23782378+23792379+ switch name {
23802380+ // t.Seq (int64) (int64)
23812381+ case "seq":
23822382+ {
23832383+ maj, extra, err := cr.ReadHeader()
23842384+ var extraI int64
23852385+ if err != nil {
23862386+ return err
23872387+ }
23882388+ switch maj {
23892389+ case cbg.MajUnsignedInt:
23902390+ extraI = int64(extra)
23912391+ if extraI < 0 {
23922392+ return fmt.Errorf("int64 positive overflow")
23932393+ }
23942394+ case cbg.MajNegativeInt:
23952395+ extraI = int64(extra)
23962396+ if extraI < 0 {
23972397+ return fmt.Errorf("int64 negative overflow")
23982398+ }
23992399+ extraI = -1 - extraI
24002400+ default:
24012401+ return fmt.Errorf("wrong type for int64 field: %d", maj)
24022402+ }
24032403+24042404+ t.Seq = int64(extraI)
24052405+ }
24062406+ // t.Labels ([]*atproto.LabelDefs_Label) (slice)
24072407+ case "labels":
24082408+24092409+ maj, extra, err = cr.ReadHeader()
24102410+ if err != nil {
24112411+ return err
24122412+ }
24132413+24142414+ if extra > cbg.MaxLength {
24152415+ return fmt.Errorf("t.Labels: array too large (%d)", extra)
24162416+ }
24172417+24182418+ if maj != cbg.MajArray {
24192419+ return fmt.Errorf("expected cbor array")
24202420+ }
24212421+24222422+ if extra > 0 {
24232423+ t.Labels = make([]*LabelDefs_Label, extra)
24242424+ }
24252425+24262426+ for i := 0; i < int(extra); i++ {
24272427+ {
24282428+ var maj byte
24292429+ var extra uint64
24302430+ var err error
24312431+ _ = maj
24322432+ _ = extra
24332433+ _ = err
24342434+24352435+ {
24362436+24372437+ b, err := cr.ReadByte()
24382438+ if err != nil {
24392439+ return err
24402440+ }
24412441+ if b != cbg.CborNull[0] {
24422442+ if err := cr.UnreadByte(); err != nil {
24432443+ return err
24442444+ }
24452445+ t.Labels[i] = new(LabelDefs_Label)
24462446+ if err := t.Labels[i].UnmarshalCBOR(cr); err != nil {
24472447+ return xerrors.Errorf("unmarshaling t.Labels[i] pointer: %w", err)
24482448+ }
24492449+ }
24502450+24512451+ }
24522452+ }
24532453+ }
24542454+24552455+ default:
24562456+ // Field doesn't exist on this type, so ignore it
24572457+ cbg.ScanForLinks(r, func(cid.Cid) {})
24582458+ }
24592459+ }
24602460+24612461+ return nil
24622462+}
24632463+func (t *LabelSubscribeLabels_Info) MarshalCBOR(w io.Writer) error {
24642464+ if t == nil {
24652465+ _, err := w.Write(cbg.CborNull)
24662466+ return err
24672467+ }
24682468+24692469+ cw := cbg.NewCborWriter(w)
24702470+ fieldCount := 2
24712471+24722472+ if t.Message == nil {
24732473+ fieldCount--
24742474+ }
24752475+24762476+ if _, err := cw.Write(cbg.CborEncodeMajorType(cbg.MajMap, uint64(fieldCount))); err != nil {
24772477+ return err
24782478+ }
24792479+24802480+ // t.Name (string) (string)
24812481+ if len("name") > cbg.MaxLength {
24822482+ return xerrors.Errorf("Value in field \"name\" was too long")
24832483+ }
24842484+24852485+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("name"))); err != nil {
24862486+ return err
24872487+ }
24882488+ if _, err := cw.WriteString(string("name")); err != nil {
24892489+ return err
24902490+ }
24912491+24922492+ if len(t.Name) > cbg.MaxLength {
24932493+ return xerrors.Errorf("Value in field t.Name was too long")
24942494+ }
24952495+24962496+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Name))); err != nil {
24972497+ return err
24982498+ }
24992499+ if _, err := cw.WriteString(string(t.Name)); err != nil {
25002500+ return err
25012501+ }
25022502+25032503+ // t.Message (string) (string)
25042504+ if t.Message != nil {
25052505+25062506+ if len("message") > cbg.MaxLength {
25072507+ return xerrors.Errorf("Value in field \"message\" was too long")
25082508+ }
25092509+25102510+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("message"))); err != nil {
25112511+ return err
25122512+ }
25132513+ if _, err := cw.WriteString(string("message")); err != nil {
25142514+ return err
25152515+ }
25162516+25172517+ if t.Message == nil {
25182518+ if _, err := cw.Write(cbg.CborNull); err != nil {
25192519+ return err
25202520+ }
25212521+ } else {
25222522+ if len(*t.Message) > cbg.MaxLength {
25232523+ return xerrors.Errorf("Value in field t.Message was too long")
25242524+ }
25252525+25262526+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(*t.Message))); err != nil {
25272527+ return err
25282528+ }
25292529+ if _, err := cw.WriteString(string(*t.Message)); err != nil {
25302530+ return err
25312531+ }
25322532+ }
25332533+ }
25342534+ return nil
25352535+}
25362536+25372537+func (t *LabelSubscribeLabels_Info) UnmarshalCBOR(r io.Reader) (err error) {
25382538+ *t = LabelSubscribeLabels_Info{}
25392539+25402540+ cr := cbg.NewCborReader(r)
25412541+25422542+ maj, extra, err := cr.ReadHeader()
25432543+ if err != nil {
25442544+ return err
25452545+ }
25462546+ defer func() {
25472547+ if err == io.EOF {
25482548+ err = io.ErrUnexpectedEOF
25492549+ }
25502550+ }()
25512551+25522552+ if maj != cbg.MajMap {
25532553+ return fmt.Errorf("cbor input should be of type map")
25542554+ }
25552555+25562556+ if extra > cbg.MaxLength {
25572557+ return fmt.Errorf("LabelSubscribeLabels_Info: map struct too large (%d)", extra)
25582558+ }
25592559+25602560+ var name string
25612561+ n := extra
25622562+25632563+ for i := uint64(0); i < n; i++ {
25642564+25652565+ {
25662566+ sval, err := cbg.ReadString(cr)
25672567+ if err != nil {
25682568+ return err
25692569+ }
25702570+25712571+ name = string(sval)
25722572+ }
25732573+25742574+ switch name {
25752575+ // t.Name (string) (string)
25762576+ case "name":
25772577+25782578+ {
25792579+ sval, err := cbg.ReadString(cr)
25802580+ if err != nil {
25812581+ return err
25822582+ }
25832583+25842584+ t.Name = string(sval)
25852585+ }
25862586+ // t.Message (string) (string)
25872587+ case "message":
25882588+25892589+ {
25902590+ b, err := cr.ReadByte()
25912591+ if err != nil {
25922592+ return err
25932593+ }
25942594+ if b != cbg.CborNull[0] {
25952595+ if err := cr.UnreadByte(); err != nil {
25962596+ return err
25972597+ }
25982598+25992599+ sval, err := cbg.ReadString(cr)
26002600+ if err != nil {
26012601+ return err
26022602+ }
26032603+26042604+ t.Message = (*string)(&sval)
26052605+ }
26062606+ }
26072607+26082608+ default:
26092609+ // Field doesn't exist on this type, so ignore it
26102610+ cbg.ScanForLinks(r, func(cid.Cid) {})
26112611+ }
26122612+ }
26132613+26142614+ return nil
26152615+}
-2
api/label/README.md
···11-22-NOTE: these lexicons are actually part of com.atproto.label.* and should end up under the package api/atproto. They are living here temporarily until the lexicons are formally merged upstream in the atproto repo.
-757
api/label/cbor_gen.go
···11-// Code generated by github.com/whyrusleeping/cbor-gen. DO NOT EDIT.
22-33-package label
44-55-import (
66- "fmt"
77- "io"
88- "math"
99- "sort"
1010-1111- cid "github.com/ipfs/go-cid"
1212- cbg "github.com/whyrusleeping/cbor-gen"
1313- xerrors "golang.org/x/xerrors"
1414-)
1515-1616-var _ = xerrors.Errorf
1717-var _ = cid.Undef
1818-var _ = math.E
1919-var _ = sort.Sort
2020-2121-func (t *Label) MarshalCBOR(w io.Writer) error {
2222- if t == nil {
2323- _, err := w.Write(cbg.CborNull)
2424- return err
2525- }
2626-2727- cw := cbg.NewCborWriter(w)
2828- fieldCount := 7
2929-3030- if t.Cid == nil {
3131- fieldCount--
3232- }
3333-3434- if _, err := cw.Write(cbg.CborEncodeMajorType(cbg.MajMap, uint64(fieldCount))); err != nil {
3535- return err
3636- }
3737-3838- // t.Cid (string) (string)
3939- if t.Cid != nil {
4040-4141- if len("cid") > cbg.MaxLength {
4242- return xerrors.Errorf("Value in field \"cid\" was too long")
4343- }
4444-4545- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("cid"))); err != nil {
4646- return err
4747- }
4848- if _, err := cw.WriteString(string("cid")); err != nil {
4949- return err
5050- }
5151-5252- if t.Cid == nil {
5353- if _, err := cw.Write(cbg.CborNull); err != nil {
5454- return err
5555- }
5656- } else {
5757- if len(*t.Cid) > cbg.MaxLength {
5858- return xerrors.Errorf("Value in field t.Cid was too long")
5959- }
6060-6161- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(*t.Cid))); err != nil {
6262- return err
6363- }
6464- if _, err := cw.WriteString(string(*t.Cid)); err != nil {
6565- return err
6666- }
6767- }
6868- }
6969-7070- // t.Cts (string) (string)
7171- if len("cts") > cbg.MaxLength {
7272- return xerrors.Errorf("Value in field \"cts\" was too long")
7373- }
7474-7575- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("cts"))); err != nil {
7676- return err
7777- }
7878- if _, err := cw.WriteString(string("cts")); err != nil {
7979- return err
8080- }
8181-8282- if len(t.Cts) > cbg.MaxLength {
8383- return xerrors.Errorf("Value in field t.Cts was too long")
8484- }
8585-8686- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Cts))); err != nil {
8787- return err
8888- }
8989- if _, err := cw.WriteString(string(t.Cts)); err != nil {
9090- return err
9191- }
9292-9393- // t.Neg (bool) (bool)
9494- if len("neg") > cbg.MaxLength {
9595- return xerrors.Errorf("Value in field \"neg\" was too long")
9696- }
9797-9898- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("neg"))); err != nil {
9999- return err
100100- }
101101- if _, err := cw.WriteString(string("neg")); err != nil {
102102- return err
103103- }
104104-105105- if err := cbg.WriteBool(w, t.Neg); err != nil {
106106- return err
107107- }
108108-109109- // t.Src (string) (string)
110110- if len("src") > cbg.MaxLength {
111111- return xerrors.Errorf("Value in field \"src\" was too long")
112112- }
113113-114114- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("src"))); err != nil {
115115- return err
116116- }
117117- if _, err := cw.WriteString(string("src")); err != nil {
118118- return err
119119- }
120120-121121- if len(t.Src) > cbg.MaxLength {
122122- return xerrors.Errorf("Value in field t.Src was too long")
123123- }
124124-125125- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Src))); err != nil {
126126- return err
127127- }
128128- if _, err := cw.WriteString(string(t.Src)); err != nil {
129129- return err
130130- }
131131-132132- // t.Uri (string) (string)
133133- if len("uri") > cbg.MaxLength {
134134- return xerrors.Errorf("Value in field \"uri\" was too long")
135135- }
136136-137137- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("uri"))); err != nil {
138138- return err
139139- }
140140- if _, err := cw.WriteString(string("uri")); err != nil {
141141- return err
142142- }
143143-144144- if len(t.Uri) > cbg.MaxLength {
145145- return xerrors.Errorf("Value in field t.Uri was too long")
146146- }
147147-148148- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Uri))); err != nil {
149149- return err
150150- }
151151- if _, err := cw.WriteString(string(t.Uri)); err != nil {
152152- return err
153153- }
154154-155155- // t.Val (string) (string)
156156- if len("val") > cbg.MaxLength {
157157- return xerrors.Errorf("Value in field \"val\" was too long")
158158- }
159159-160160- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("val"))); err != nil {
161161- return err
162162- }
163163- if _, err := cw.WriteString(string("val")); err != nil {
164164- return err
165165- }
166166-167167- if len(t.Val) > cbg.MaxLength {
168168- return xerrors.Errorf("Value in field t.Val was too long")
169169- }
170170-171171- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Val))); err != nil {
172172- return err
173173- }
174174- if _, err := cw.WriteString(string(t.Val)); err != nil {
175175- return err
176176- }
177177-178178- // t.LexiconTypeID (string) (string)
179179- if len("$type") > cbg.MaxLength {
180180- return xerrors.Errorf("Value in field \"$type\" was too long")
181181- }
182182-183183- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("$type"))); err != nil {
184184- return err
185185- }
186186- if _, err := cw.WriteString(string("$type")); err != nil {
187187- return err
188188- }
189189-190190- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("com.atproto.label.label"))); err != nil {
191191- return err
192192- }
193193- if _, err := cw.WriteString(string("com.atproto.label.label")); err != nil {
194194- return err
195195- }
196196- return nil
197197-}
198198-199199-func (t *Label) UnmarshalCBOR(r io.Reader) (err error) {
200200- *t = Label{}
201201-202202- cr := cbg.NewCborReader(r)
203203-204204- maj, extra, err := cr.ReadHeader()
205205- if err != nil {
206206- return err
207207- }
208208- defer func() {
209209- if err == io.EOF {
210210- err = io.ErrUnexpectedEOF
211211- }
212212- }()
213213-214214- if maj != cbg.MajMap {
215215- return fmt.Errorf("cbor input should be of type map")
216216- }
217217-218218- if extra > cbg.MaxLength {
219219- return fmt.Errorf("Label: map struct too large (%d)", extra)
220220- }
221221-222222- var name string
223223- n := extra
224224-225225- for i := uint64(0); i < n; i++ {
226226-227227- {
228228- sval, err := cbg.ReadString(cr)
229229- if err != nil {
230230- return err
231231- }
232232-233233- name = string(sval)
234234- }
235235-236236- switch name {
237237- // t.Cid (string) (string)
238238- case "cid":
239239-240240- {
241241- b, err := cr.ReadByte()
242242- if err != nil {
243243- return err
244244- }
245245- if b != cbg.CborNull[0] {
246246- if err := cr.UnreadByte(); err != nil {
247247- return err
248248- }
249249-250250- sval, err := cbg.ReadString(cr)
251251- if err != nil {
252252- return err
253253- }
254254-255255- t.Cid = (*string)(&sval)
256256- }
257257- }
258258- // t.Cts (string) (string)
259259- case "cts":
260260-261261- {
262262- sval, err := cbg.ReadString(cr)
263263- if err != nil {
264264- return err
265265- }
266266-267267- t.Cts = string(sval)
268268- }
269269- // t.Neg (bool) (bool)
270270- case "neg":
271271-272272- maj, extra, err = cr.ReadHeader()
273273- if err != nil {
274274- return err
275275- }
276276- if maj != cbg.MajOther {
277277- return fmt.Errorf("booleans must be major type 7")
278278- }
279279- switch extra {
280280- case 20:
281281- t.Neg = false
282282- case 21:
283283- t.Neg = true
284284- default:
285285- return fmt.Errorf("booleans are either major type 7, value 20 or 21 (got %d)", extra)
286286- }
287287- // t.Src (string) (string)
288288- case "src":
289289-290290- {
291291- sval, err := cbg.ReadString(cr)
292292- if err != nil {
293293- return err
294294- }
295295-296296- t.Src = string(sval)
297297- }
298298- // t.Uri (string) (string)
299299- case "uri":
300300-301301- {
302302- sval, err := cbg.ReadString(cr)
303303- if err != nil {
304304- return err
305305- }
306306-307307- t.Uri = string(sval)
308308- }
309309- // t.Val (string) (string)
310310- case "val":
311311-312312- {
313313- sval, err := cbg.ReadString(cr)
314314- if err != nil {
315315- return err
316316- }
317317-318318- t.Val = string(sval)
319319- }
320320- // t.LexiconTypeID (string) (string)
321321- case "$type":
322322-323323- {
324324- sval, err := cbg.ReadString(cr)
325325- if err != nil {
326326- return err
327327- }
328328-329329- t.LexiconTypeID = string(sval)
330330- }
331331-332332- default:
333333- // Field doesn't exist on this type, so ignore it
334334- cbg.ScanForLinks(r, func(cid.Cid) {})
335335- }
336336- }
337337-338338- return nil
339339-}
340340-func (t *SubscribeLabels_Info) MarshalCBOR(w io.Writer) error {
341341- if t == nil {
342342- _, err := w.Write(cbg.CborNull)
343343- return err
344344- }
345345-346346- cw := cbg.NewCborWriter(w)
347347- fieldCount := 3
348348-349349- if t.LexiconTypeID == "" {
350350- fieldCount--
351351- }
352352-353353- if t.Message == nil {
354354- fieldCount--
355355- }
356356-357357- if _, err := cw.Write(cbg.CborEncodeMajorType(cbg.MajMap, uint64(fieldCount))); err != nil {
358358- return err
359359- }
360360-361361- // t.Name (string) (string)
362362- if len("name") > cbg.MaxLength {
363363- return xerrors.Errorf("Value in field \"name\" was too long")
364364- }
365365-366366- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("name"))); err != nil {
367367- return err
368368- }
369369- if _, err := cw.WriteString(string("name")); err != nil {
370370- return err
371371- }
372372-373373- if len(t.Name) > cbg.MaxLength {
374374- return xerrors.Errorf("Value in field t.Name was too long")
375375- }
376376-377377- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.Name))); err != nil {
378378- return err
379379- }
380380- if _, err := cw.WriteString(string(t.Name)); err != nil {
381381- return err
382382- }
383383-384384- // t.LexiconTypeID (string) (string)
385385- if t.LexiconTypeID != "" {
386386-387387- if len("$type") > cbg.MaxLength {
388388- return xerrors.Errorf("Value in field \"$type\" was too long")
389389- }
390390-391391- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("$type"))); err != nil {
392392- return err
393393- }
394394- if _, err := cw.WriteString(string("$type")); err != nil {
395395- return err
396396- }
397397-398398- if len(t.LexiconTypeID) > cbg.MaxLength {
399399- return xerrors.Errorf("Value in field t.LexiconTypeID was too long")
400400- }
401401-402402- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.LexiconTypeID))); err != nil {
403403- return err
404404- }
405405- if _, err := cw.WriteString(string(t.LexiconTypeID)); err != nil {
406406- return err
407407- }
408408- }
409409-410410- // t.Message (string) (string)
411411- if t.Message != nil {
412412-413413- if len("message") > cbg.MaxLength {
414414- return xerrors.Errorf("Value in field \"message\" was too long")
415415- }
416416-417417- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("message"))); err != nil {
418418- return err
419419- }
420420- if _, err := cw.WriteString(string("message")); err != nil {
421421- return err
422422- }
423423-424424- if t.Message == nil {
425425- if _, err := cw.Write(cbg.CborNull); err != nil {
426426- return err
427427- }
428428- } else {
429429- if len(*t.Message) > cbg.MaxLength {
430430- return xerrors.Errorf("Value in field t.Message was too long")
431431- }
432432-433433- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(*t.Message))); err != nil {
434434- return err
435435- }
436436- if _, err := cw.WriteString(string(*t.Message)); err != nil {
437437- return err
438438- }
439439- }
440440- }
441441- return nil
442442-}
443443-444444-func (t *SubscribeLabels_Info) UnmarshalCBOR(r io.Reader) (err error) {
445445- *t = SubscribeLabels_Info{}
446446-447447- cr := cbg.NewCborReader(r)
448448-449449- maj, extra, err := cr.ReadHeader()
450450- if err != nil {
451451- return err
452452- }
453453- defer func() {
454454- if err == io.EOF {
455455- err = io.ErrUnexpectedEOF
456456- }
457457- }()
458458-459459- if maj != cbg.MajMap {
460460- return fmt.Errorf("cbor input should be of type map")
461461- }
462462-463463- if extra > cbg.MaxLength {
464464- return fmt.Errorf("SubscribeLabels_Info: map struct too large (%d)", extra)
465465- }
466466-467467- var name string
468468- n := extra
469469-470470- for i := uint64(0); i < n; i++ {
471471-472472- {
473473- sval, err := cbg.ReadString(cr)
474474- if err != nil {
475475- return err
476476- }
477477-478478- name = string(sval)
479479- }
480480-481481- switch name {
482482- // t.Name (string) (string)
483483- case "name":
484484-485485- {
486486- sval, err := cbg.ReadString(cr)
487487- if err != nil {
488488- return err
489489- }
490490-491491- t.Name = string(sval)
492492- }
493493- // t.LexiconTypeID (string) (string)
494494- case "$type":
495495-496496- {
497497- sval, err := cbg.ReadString(cr)
498498- if err != nil {
499499- return err
500500- }
501501-502502- t.LexiconTypeID = string(sval)
503503- }
504504- // t.Message (string) (string)
505505- case "message":
506506-507507- {
508508- b, err := cr.ReadByte()
509509- if err != nil {
510510- return err
511511- }
512512- if b != cbg.CborNull[0] {
513513- if err := cr.UnreadByte(); err != nil {
514514- return err
515515- }
516516-517517- sval, err := cbg.ReadString(cr)
518518- if err != nil {
519519- return err
520520- }
521521-522522- t.Message = (*string)(&sval)
523523- }
524524- }
525525-526526- default:
527527- // Field doesn't exist on this type, so ignore it
528528- cbg.ScanForLinks(r, func(cid.Cid) {})
529529- }
530530- }
531531-532532- return nil
533533-}
534534-func (t *SubscribeLabels_Labels) MarshalCBOR(w io.Writer) error {
535535- if t == nil {
536536- _, err := w.Write(cbg.CborNull)
537537- return err
538538- }
539539-540540- cw := cbg.NewCborWriter(w)
541541- fieldCount := 3
542542-543543- if t.LexiconTypeID == "" {
544544- fieldCount--
545545- }
546546-547547- if _, err := cw.Write(cbg.CborEncodeMajorType(cbg.MajMap, uint64(fieldCount))); err != nil {
548548- return err
549549- }
550550-551551- // t.Seq (int64) (int64)
552552- if len("seq") > cbg.MaxLength {
553553- return xerrors.Errorf("Value in field \"seq\" was too long")
554554- }
555555-556556- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("seq"))); err != nil {
557557- return err
558558- }
559559- if _, err := cw.WriteString(string("seq")); err != nil {
560560- return err
561561- }
562562-563563- if t.Seq >= 0 {
564564- if err := cw.WriteMajorTypeHeader(cbg.MajUnsignedInt, uint64(t.Seq)); err != nil {
565565- return err
566566- }
567567- } else {
568568- if err := cw.WriteMajorTypeHeader(cbg.MajNegativeInt, uint64(-t.Seq-1)); err != nil {
569569- return err
570570- }
571571- }
572572-573573- // t.LexiconTypeID (string) (string)
574574- if t.LexiconTypeID != "" {
575575-576576- if len("$type") > cbg.MaxLength {
577577- return xerrors.Errorf("Value in field \"$type\" was too long")
578578- }
579579-580580- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("$type"))); err != nil {
581581- return err
582582- }
583583- if _, err := cw.WriteString(string("$type")); err != nil {
584584- return err
585585- }
586586-587587- if len(t.LexiconTypeID) > cbg.MaxLength {
588588- return xerrors.Errorf("Value in field t.LexiconTypeID was too long")
589589- }
590590-591591- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(t.LexiconTypeID))); err != nil {
592592- return err
593593- }
594594- if _, err := cw.WriteString(string(t.LexiconTypeID)); err != nil {
595595- return err
596596- }
597597- }
598598-599599- // t.Labels ([]*label.Label) (slice)
600600- if len("labels") > cbg.MaxLength {
601601- return xerrors.Errorf("Value in field \"labels\" was too long")
602602- }
603603-604604- if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("labels"))); err != nil {
605605- return err
606606- }
607607- if _, err := cw.WriteString(string("labels")); err != nil {
608608- return err
609609- }
610610-611611- if len(t.Labels) > cbg.MaxLength {
612612- return xerrors.Errorf("Slice value in field t.Labels was too long")
613613- }
614614-615615- if err := cw.WriteMajorTypeHeader(cbg.MajArray, uint64(len(t.Labels))); err != nil {
616616- return err
617617- }
618618- for _, v := range t.Labels {
619619- if err := v.MarshalCBOR(cw); err != nil {
620620- return err
621621- }
622622- }
623623- return nil
624624-}
625625-626626-func (t *SubscribeLabels_Labels) UnmarshalCBOR(r io.Reader) (err error) {
627627- *t = SubscribeLabels_Labels{}
628628-629629- cr := cbg.NewCborReader(r)
630630-631631- maj, extra, err := cr.ReadHeader()
632632- if err != nil {
633633- return err
634634- }
635635- defer func() {
636636- if err == io.EOF {
637637- err = io.ErrUnexpectedEOF
638638- }
639639- }()
640640-641641- if maj != cbg.MajMap {
642642- return fmt.Errorf("cbor input should be of type map")
643643- }
644644-645645- if extra > cbg.MaxLength {
646646- return fmt.Errorf("SubscribeLabels_Labels: map struct too large (%d)", extra)
647647- }
648648-649649- var name string
650650- n := extra
651651-652652- for i := uint64(0); i < n; i++ {
653653-654654- {
655655- sval, err := cbg.ReadString(cr)
656656- if err != nil {
657657- return err
658658- }
659659-660660- name = string(sval)
661661- }
662662-663663- switch name {
664664- // t.Seq (int64) (int64)
665665- case "seq":
666666- {
667667- maj, extra, err := cr.ReadHeader()
668668- var extraI int64
669669- if err != nil {
670670- return err
671671- }
672672- switch maj {
673673- case cbg.MajUnsignedInt:
674674- extraI = int64(extra)
675675- if extraI < 0 {
676676- return fmt.Errorf("int64 positive overflow")
677677- }
678678- case cbg.MajNegativeInt:
679679- extraI = int64(extra)
680680- if extraI < 0 {
681681- return fmt.Errorf("int64 negative overflow")
682682- }
683683- extraI = -1 - extraI
684684- default:
685685- return fmt.Errorf("wrong type for int64 field: %d", maj)
686686- }
687687-688688- t.Seq = int64(extraI)
689689- }
690690- // t.LexiconTypeID (string) (string)
691691- case "$type":
692692-693693- {
694694- sval, err := cbg.ReadString(cr)
695695- if err != nil {
696696- return err
697697- }
698698-699699- t.LexiconTypeID = string(sval)
700700- }
701701- // t.Labels ([]*label.Label) (slice)
702702- case "labels":
703703-704704- maj, extra, err = cr.ReadHeader()
705705- if err != nil {
706706- return err
707707- }
708708-709709- if extra > cbg.MaxLength {
710710- return fmt.Errorf("t.Labels: array too large (%d)", extra)
711711- }
712712-713713- if maj != cbg.MajArray {
714714- return fmt.Errorf("expected cbor array")
715715- }
716716-717717- if extra > 0 {
718718- t.Labels = make([]*Label, extra)
719719- }
720720-721721- for i := 0; i < int(extra); i++ {
722722- {
723723- var maj byte
724724- var extra uint64
725725- var err error
726726- _ = maj
727727- _ = extra
728728- _ = err
729729-730730- {
731731-732732- b, err := cr.ReadByte()
733733- if err != nil {
734734- return err
735735- }
736736- if b != cbg.CborNull[0] {
737737- if err := cr.UnreadByte(); err != nil {
738738- return err
739739- }
740740- t.Labels[i] = new(Label)
741741- if err := t.Labels[i].UnmarshalCBOR(cr); err != nil {
742742- return xerrors.Errorf("unmarshaling t.Labels[i] pointer: %w", err)
743743- }
744744- }
745745-746746- }
747747- }
748748- }
749749-750750- default:
751751- // Field doesn't exist on this type, so ignore it
752752- cbg.ScanForLinks(r, func(cid.Cid) {})
753753- }
754754- }
755755-756756- return nil
757757-}