code: func PackToFunc(srcPath, destPath string, fn func(fullName string, fi os.FileInfo) error, includeDir ...bool) error {
  	isIncludeDir := false
  	if len(includeDir) > 0 && includeDir[0] {
  		isIncludeDir = true
  	}
  
  	return packTo(srcPath, destPath, fn, isIncludeDir)
  }
docs: // PackToFunc packs the complete archive to the specified destination.
  // It accepts a function as a middleware for custom operations.