A vibe coded tangled fork which supports pijul.
1// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
2
3package tangled
4
5// schema: sh.tangled.pijul.refUpdate
6
7import (
8 "fmt"
9 "io"
10
11 cid "github.com/ipfs/go-cid"
12 cbg "github.com/whyrusleeping/cbor-gen"
13
14 "github.com/bluesky-social/indigo/lex/util"
15)
16
17const (
18 PijulRefUpdateNSID = "sh.tangled.pijul.refUpdate"
19)
20
21func init() {
22 util.RegisterType("sh.tangled.pijul.refUpdate", &PijulRefUpdate{})
23} //
24// RECORDTYPE: PijulRefUpdate
25type PijulRefUpdate struct {
26 LexiconTypeID string `json:"$type,const=sh.tangled.pijul.refUpdate" cborgen:"$type,const=sh.tangled.pijul.refUpdate"`
27 // changes: List of change hashes that were applied
28 Changes []string `json:"changes" cborgen:"changes"`
29 // channel: Channel that was updated
30 Channel string `json:"channel" cborgen:"channel"`
31 // languages: Map of language name to lines of code
32 Languages *PijulRefUpdate_Languages `json:"languages,omitempty" cborgen:"languages,omitempty"`
33 // newState: New Merkle hash after update
34 NewState string `json:"newState" cborgen:"newState"`
35 // oldState: Previous Merkle hash (empty for new channels)
36 OldState *string `json:"oldState,omitempty" cborgen:"oldState,omitempty"`
37 // repo: Repository identifier
38 Repo string `json:"repo" cborgen:"repo"`
39}
40
41// Map of language name to lines of code
42type PijulRefUpdate_Languages struct {
43}
44
45func (t *PijulRefUpdate_Languages) MarshalCBOR(w io.Writer) error {
46 if t == nil {
47 _, err := w.Write(cbg.CborNull)
48 return err
49 }
50 cw := cbg.NewCborWriter(w)
51 if err := cw.WriteMajorTypeHeader(cbg.MajMap, 0); err != nil {
52 return err
53 }
54 return nil
55}
56
57func (t *PijulRefUpdate_Languages) UnmarshalCBOR(r io.Reader) error {
58 *t = PijulRefUpdate_Languages{}
59 cr := cbg.NewCborReader(r)
60 maj, extra, err := cr.ReadHeader()
61 if err != nil {
62 return err
63 }
64 if maj != cbg.MajMap {
65 return fmt.Errorf("expected cbor map for PijulRefUpdate_Languages")
66 }
67 // skip all entries
68 for i := uint64(0); i < extra; i++ {
69 // skip key
70 if err := cbg.ScanForLinks(cr, func(_ cid.Cid) {}); err != nil {
71 return err
72 }
73 // skip value
74 if err := cbg.ScanForLinks(cr, func(_ cid.Cid) {}); err != nil {
75 return err
76 }
77 }
78 return nil
79}