code: func (p *Property) MarshalBinary() ([]byte, error) {
  	buf := new(bytes.Buffer)
  
  	// #nosec: Errors unhandled
  	_ = binary.Write(buf, binary.LittleEndian, &p.header)
  
  	switch p.header.Kind {
  	case vixPropertyTypeBool:
  		// #nosec: Errors unhandled
  		_ = binary.Write(buf, binary.LittleEndian, p.data.Bool)
  	case vixPropertyTypeInt32:
  		// #nosec: Errors unhandled
  		_ = binary.Write(buf, binary.LittleEndian, p.data.Int32)
  	case vixPropertyTypeInt64:
  		// #nosec: Errors unhandled
  		_ = binary.Write(buf, binary.LittleEndian, p.data.Int64)
  	case vixPropertyTypeString:
  		// #nosec: Errors unhandled
  		_, _ = buf.WriteString(p.data.String)
  		// #nosec: Errors unhandled
  		_ = buf.WriteByte(0)
  	case vixPropertyTypeBlob:
  		// #nosec: Errors unhandled
  		_, _ = buf.Write(p.data.Blob)
  	}
  
  	return buf.Bytes(), nil
  }
docs: // MarshalBinary implements the encoding.BinaryMarshaler interface