pkg binary, const MissingChecksum ideal-string
pkg binary, const MissingSize int64
pkg binary, method (*Description) VDLRead(vdl.Decoder) error
pkg binary, method (*PartInfo) VDLRead(vdl.Decoder) error
pkg binary, method (Description) VDLIsZero() bool
pkg binary, method (Description) VDLWrite(vdl.Encoder) error
pkg binary, method (PartInfo) VDLIsZero() bool
pkg binary, method (PartInfo) VDLWrite(vdl.Encoder) error
pkg binary, type Description struct
pkg binary, type Description struct, Name string
pkg binary, type Description struct, Profiles map[string]bool
pkg binary, type PartInfo struct
pkg binary, type PartInfo struct, Checksum string
pkg binary, type PartInfo struct, Size int64
