in mfg/meta.go [204:226]
func (meta *Meta) WritePlusOffsets(w io.Writer) (MetaOffsets, error) {
mo := MetaOffsets{}
sz := 0
for _, tlv := range meta.Tlvs {
tlvSz, err := tlv.Write(w)
if err != nil {
return mo, err
}
mo.Tlvs = append(mo.Tlvs, sz)
sz += tlvSz
}
if err := writeElem(meta.Footer, w); err != nil {
return mo, err
}
mo.Footer = sz
sz += META_FOOTER_SZ
mo.TotalSize = sz
return mo, nil
}