code: func emitLiteral(dst, lit []byte) int {
  	i, n := 0, uint(len(lit)-1)
  	switch {
  	case n < 60:
  		dst[0] = uint8(n)<<2 | tagLiteral
  		i = 1
  	case n < 1<<8:
  		dst[0] = 60<<2 | tagLiteral
  		dst[1] = uint8(n)
  		i = 2
  	case n < 1<<16:
  		dst[0] = 61<<2 | tagLiteral
  		dst[1] = uint8(n)
  		dst[2] = uint8(n >> 8)
  		i = 3
  	case n < 1<<24:
  		dst[0] = 62<<2 | tagLiteral
  		dst[1] = uint8(n)
  		dst[2] = uint8(n >> 8)
  		dst[3] = uint8(n >> 16)
  		i = 4
  	case int64(n) < 1<<32:
  		dst[0] = 63<<2 | tagLiteral
  		dst[1] = uint8(n)
  		dst[2] = uint8(n >> 8)
  		dst[3] = uint8(n >> 16)
  		dst[4] = uint8(n >> 24)
  		i = 5
  	default:
  		panic("snappy: source buffer is too long")
  	}
  	if copy(dst[i:], lit) != len(lit) {
  		panic("snappy: destination buffer is too short")
  	}
  	return i + len(lit)
  }
docs: // emitLiteral writes a literal chunk and returns the number of bytes written.