code: func (sk *statCacheKey) marshalBinary() ([]byte, error) {
  	if sk == nil {
  		return nil, errors.New("Can not marshal from a nil stat cache key")
  	}
  	data := make([]byte, 0, len(sk.Filepath)+3)
  	data = append(data, 1) // version number
  	data = append(data, sk.Filepath...)
  	data = append(data, '|')
  	if sk.Permanode {
  		data = append(data, 1)
  	}
  	return data, nil
  }
docs: // marshalBinary returns a more compact binary
  // representation of the contents of sk.