Documentation
¶
Index ¶
Constants ¶
const KindQuasarCert zapv1.KindByte = 0x01
KindQuasarCert is the wire discriminator for QuasarCert.
const OffsetQuasarCert_BLSLen = 36
OffsetQuasarCert_BLSLen is the byte offset of the BLSLen field.
const OffsetQuasarCert_BLSOff = 32
OffsetQuasarCert_BLSOff is the byte offset of the BLSOff field.
const OffsetQuasarCert_CoronaLen = 44
OffsetQuasarCert_CoronaLen is the byte offset of the CoronaLen field.
const OffsetQuasarCert_CoronaOff = 40
OffsetQuasarCert_CoronaOff is the byte offset of the CoronaOff field.
const OffsetQuasarCert_Epoch = 8
OffsetQuasarCert_Epoch is the byte offset of the Epoch field.
const OffsetQuasarCert_FinalityUnixNano = 16
OffsetQuasarCert_FinalityUnixNano is the byte offset of the FinalityUnixNano field.
const OffsetQuasarCert_MLDSARollupLen = 68
OffsetQuasarCert_MLDSARollupLen is the byte offset of the MLDSARollupLen field.
const OffsetQuasarCert_MLDSARollupOff = 64
OffsetQuasarCert_MLDSARollupOff is the byte offset of the MLDSARollupOff field.
const OffsetQuasarCert_MagnetarLen = 60
OffsetQuasarCert_MagnetarLen is the byte offset of the MagnetarLen field.
const OffsetQuasarCert_MagnetarOff = 56
OffsetQuasarCert_MagnetarOff is the byte offset of the MagnetarOff field.
const OffsetQuasarCert_PulsarLen = 52
OffsetQuasarCert_PulsarLen is the byte offset of the PulsarLen field.
const OffsetQuasarCert_PulsarOff = 48
OffsetQuasarCert_PulsarOff is the byte offset of the PulsarOff field.
const OffsetQuasarCert_Validators = 24
OffsetQuasarCert_Validators is the byte offset of the Validators field.
const SizeQuasarCert = 72
SizeQuasarCert is the fixed object payload size in bytes.
Variables ¶
var QuasarCertSchemaFields = struct { Epoch zapv1.Field[QuasarCertSchema, uint64] FinalityUnixNano zapv1.Field[QuasarCertSchema, int64] Validators zapv1.Field[QuasarCertSchema, uint32] BLSOff zapv1.Field[QuasarCertSchema, uint32] BLSLen zapv1.Field[QuasarCertSchema, uint32] CoronaOff zapv1.Field[QuasarCertSchema, uint32] CoronaLen zapv1.Field[QuasarCertSchema, uint32] PulsarOff zapv1.Field[QuasarCertSchema, uint32] PulsarLen zapv1.Field[QuasarCertSchema, uint32] MagnetarOff zapv1.Field[QuasarCertSchema, uint32] MagnetarLen zapv1.Field[QuasarCertSchema, uint32] MLDSARollupOff zapv1.Field[QuasarCertSchema, uint32] MLDSARollupLen zapv1.Field[QuasarCertSchema, uint32] }{ Epoch: zapv1.At[QuasarCertSchema, uint64](8), FinalityUnixNano: zapv1.At[QuasarCertSchema, int64](16), Validators: zapv1.At[QuasarCertSchema, uint32](24), BLSOff: zapv1.At[QuasarCertSchema, uint32](32), BLSLen: zapv1.At[QuasarCertSchema, uint32](36), CoronaOff: zapv1.At[QuasarCertSchema, uint32](40), CoronaLen: zapv1.At[QuasarCertSchema, uint32](44), PulsarOff: zapv1.At[QuasarCertSchema, uint32](48), PulsarLen: zapv1.At[QuasarCertSchema, uint32](52), MagnetarOff: zapv1.At[QuasarCertSchema, uint32](56), MagnetarLen: zapv1.At[QuasarCertSchema, uint32](60), MLDSARollupOff: zapv1.At[QuasarCertSchema, uint32](64), MLDSARollupLen: zapv1.At[QuasarCertSchema, uint32](68), }
QuasarCertSchemaFields is the namespace of every scalar field accessor for QuasarCert. Use with zapv1.Read / zapv1.Write for type-safe access. Byte-array fields are emitted as standalone functions, see below.
Functions ¶
func NewQuasarCert ¶
func NewQuasarCert(epoch uint64, finalityUnixNano int64, validators uint32, bLSOff uint32, bLSLen uint32, coronaOff uint32, coronaLen uint32, pulsarOff uint32, pulsarLen uint32, magnetarOff uint32, magnetarLen uint32, mLDSARollupOff uint32, mLDSARollupLen uint32) (zapv1.View[QuasarCertSchema], []byte)
NewQuasarCert builds a fresh QuasarCert in a ZAP buffer.
Hand-rolled fast path: inlines v1 primitives (zap.NewBuilder, [*Builder.StartObject], [*ObjectBuilder.Set*], [*Builder.Finish]) so the entire build expands at the call site. Result: 1 heap alloc (the buffer), zero overhead vs v1.
func WrapQuasarCert ¶
func WrapQuasarCert(b []byte) (zapv1.View[QuasarCertSchema], error)
WrapQuasarCert parses a ZAP buffer into a typed [zapv1.View[QuasarCert]]. Validates the wire frame and the kind discriminator at offset 0; returns *zapv1.SchemaError on kind mismatch.
Hand-rolled fast path: inlines zap.Parse (which is itself inlineable). Zero heap allocs on the happy path; matches v1 hand-rolled performance.
Types ¶
type QuasarCertSchema ¶
type QuasarCertSchema struct{}
QuasarCertSchema is the v2 schema marker for QuasarCert. Methods are constant- returning so concrete-typed [zapv1.Wrap[QuasarCertSchema]] calls fold to literals at the call site.
func (QuasarCertSchema) Kind ¶
func (QuasarCertSchema) Kind() zapv1.KindByte
func (QuasarCertSchema) Name ¶
func (QuasarCertSchema) Name() string
func (QuasarCertSchema) Size ¶
func (QuasarCertSchema) Size() int