code: func resourceVSphereDatastoreApplyFolderOrStorageClusterPath(d *schema.ResourceData, meta interface{}) (string, error) {
  	var path string
  	fvalue, fok := d.GetOk("folder")
  	cvalue, cok := d.GetOk("datastore_cluster_id")
  	switch {
  	case fok:
  		path = fvalue.(string)
  	case cok:
  		return resourceVSphereDatastoreStorageClusterPathNormalized(meta, cvalue.(string))
  	}
  	return path, nil
  }
docs: // resourceVSphereDatastoreApplyFolderOrStorageClusterPath returns a path to a
  // folder or a datastore cluster, depending on what has been selected in the
  // resource.