package storage import ( "fmt" "io" "github.com/filecoin-project/lotus/chain/types" cbg "github.com/whyrusleeping/cbor-gen" xerrors "golang.org/x/xerrors" ) /* This file was generated by github.com/whyrusleeping/cbor-gen */ var _ = xerrors.Errorf func (t *SealTicket) MarshalCBOR(w io.Writer) error { if t == nil { _, err := w.Write(cbg.CborNull) return err } if _, err := w.Write([]byte{130}); err != nil { return err } // t.t.BlockHeight (uint64) (uint64) if _, err := w.Write(cbg.CborEncodeMajorType(cbg.MajUnsignedInt, uint64(t.BlockHeight))); err != nil { return err } // t.t.TicketBytes ([]uint8) (slice) if _, err := w.Write(cbg.CborEncodeMajorType(cbg.MajByteString, uint64(len(t.TicketBytes)))); err != nil { return err } if _, err := w.Write(t.TicketBytes); err != nil { return err } return nil } func (t *SealTicket) UnmarshalCBOR(r io.Reader) error { br := cbg.GetPeeker(r) maj, extra, err := cbg.CborReadHeader(br) if err != nil { return err } if maj != cbg.MajArray { return fmt.Errorf("cbor input should be of type array") } if extra != 2 { return fmt.Errorf("cbor input had wrong number of fields") } // t.t.BlockHeight (uint64) (uint64) maj, extra, err = cbg.CborReadHeader(br) if err != nil { return err } if maj != cbg.MajUnsignedInt { return fmt.Errorf("wrong type for uint64 field") } t.BlockHeight = uint64(extra) // t.t.TicketBytes ([]uint8) (slice) maj, extra, err = cbg.CborReadHeader(br) if err != nil { return err } if extra > 8192 { return fmt.Errorf("t.TicketBytes: array too large (%d)", extra) } if maj != cbg.MajByteString { return fmt.Errorf("expected byte array") } t.TicketBytes = make([]byte, extra) if _, err := io.ReadFull(br, t.TicketBytes); err != nil { return err } return nil } func (t *SectorInfo) MarshalCBOR(w io.Writer) error { if t == nil { _, err := w.Write(cbg.CborNull) return err } if _, err := w.Write([]byte{137}); err != nil { return err } // t.t.State (uint64) (uint64) if _, err := w.Write(cbg.CborEncodeMajorType(cbg.MajUnsignedInt, uint64(t.State))); err != nil { return err } // t.t.SectorID (uint64) (uint64) if _, err := w.Write(cbg.CborEncodeMajorType(cbg.MajUnsignedInt, uint64(t.SectorID))); err != nil { return err } // t.t.CommD ([]uint8) (slice) if _, err := w.Write(cbg.CborEncodeMajorType(cbg.MajByteString, uint64(len(t.CommD)))); err != nil { return err } if _, err := w.Write(t.CommD); err != nil { return err } // t.t.CommR ([]uint8) (slice) if _, err := w.Write(cbg.CborEncodeMajorType(cbg.MajByteString, uint64(len(t.CommR)))); err != nil { return err } if _, err := w.Write(t.CommR); err != nil { return err } // t.t.Ticket (storage.SealTicket) (struct) if err := t.Ticket.MarshalCBOR(w); err != nil { return err } // t.t.PreCommitMessage (cid.Cid) (struct) if t.PreCommitMessage == nil { if _, err := w.Write(cbg.CborNull); err != nil { return err } } else { if err := cbg.WriteCid(w, *t.PreCommitMessage); err != nil { return xerrors.Errorf("failed to write cid field t.PreCommitMessage: %w", err) } } // t.t.RandHeight (uint64) (uint64) if _, err := w.Write(cbg.CborEncodeMajorType(cbg.MajUnsignedInt, uint64(t.RandHeight))); err != nil { return err } // t.t.RandTs (types.TipSet) (struct) if err := t.RandTs.MarshalCBOR(w); err != nil { return err } // t.t.CommitMessage (cid.Cid) (struct) if t.CommitMessage == nil { if _, err := w.Write(cbg.CborNull); err != nil { return err } } else { if err := cbg.WriteCid(w, *t.CommitMessage); err != nil { return xerrors.Errorf("failed to write cid field t.CommitMessage: %w", err) } } return nil } func (t *SectorInfo) UnmarshalCBOR(r io.Reader) error { br := cbg.GetPeeker(r) maj, extra, err := cbg.CborReadHeader(br) if err != nil { return err } if maj != cbg.MajArray { return fmt.Errorf("cbor input should be of type array") } if extra != 9 { return fmt.Errorf("cbor input had wrong number of fields") } // t.t.State (uint64) (uint64) maj, extra, err = cbg.CborReadHeader(br) if err != nil { return err } if maj != cbg.MajUnsignedInt { return fmt.Errorf("wrong type for uint64 field") } t.State = uint64(extra) // t.t.SectorID (uint64) (uint64) maj, extra, err = cbg.CborReadHeader(br) if err != nil { return err } if maj != cbg.MajUnsignedInt { return fmt.Errorf("wrong type for uint64 field") } t.SectorID = uint64(extra) // t.t.CommD ([]uint8) (slice) maj, extra, err = cbg.CborReadHeader(br) if err != nil { return err } if extra > 8192 { return fmt.Errorf("t.CommD: array too large (%d)", extra) } if maj != cbg.MajByteString { return fmt.Errorf("expected byte array") } t.CommD = make([]byte, extra) if _, err := io.ReadFull(br, t.CommD); err != nil { return err } // t.t.CommR ([]uint8) (slice) maj, extra, err = cbg.CborReadHeader(br) if err != nil { return err } if extra > 8192 { return fmt.Errorf("t.CommR: array too large (%d)", extra) } if maj != cbg.MajByteString { return fmt.Errorf("expected byte array") } t.CommR = make([]byte, extra) if _, err := io.ReadFull(br, t.CommR); err != nil { return err } // t.t.Ticket (storage.SealTicket) (struct) { if err := t.Ticket.UnmarshalCBOR(br); err != nil { return err } } // t.t.PreCommitMessage (cid.Cid) (struct) { pb, err := br.PeekByte() if err != nil { return err } if pb == cbg.CborNull[0] { var nbuf [1]byte if _, err := br.Read(nbuf[:]); err != nil { return err } } else { c, err := cbg.ReadCid(br) if err != nil { return xerrors.Errorf("failed to read cid field t.PreCommitMessage: %w", err) } t.PreCommitMessage = &c } } // t.t.RandHeight (uint64) (uint64) maj, extra, err = cbg.CborReadHeader(br) if err != nil { return err } if maj != cbg.MajUnsignedInt { return fmt.Errorf("wrong type for uint64 field") } t.RandHeight = uint64(extra) // t.t.RandTs (types.TipSet) (struct) { pb, err := br.PeekByte() if err != nil { return err } if pb == cbg.CborNull[0] { var nbuf [1]byte if _, err := br.Read(nbuf[:]); err != nil { return err } } else { t.RandTs = new(types.TipSet) if err := t.RandTs.UnmarshalCBOR(br); err != nil { return err } } } // t.t.CommitMessage (cid.Cid) (struct) { pb, err := br.PeekByte() if err != nil { return err } if pb == cbg.CborNull[0] { var nbuf [1]byte if _, err := br.Read(nbuf[:]); err != nil { return err } } else { c, err := cbg.ReadCid(br) if err != nil { return xerrors.Errorf("failed to read cid field t.CommitMessage: %w", err) } t.CommitMessage = &c } } return nil }