code: func (ns *Namespace) Concat(targetPathIn interface{}, r interface{}) (resource.Resource, error) {
  	targetPath, err := cast.ToStringE(targetPathIn)
  	if err != nil {
  		return nil, err
  	}
  
  	var rr resource.Resources
  
  	switch v := r.(type) {
  	case resource.Resources:
  		rr = v
  	case resource.ResourcesConverter:
  		rr = v.ToResources()
  	default:
  		return nil, fmt.Errorf("slice %T not supported in concat", r)
  	}
  
  	if len(rr) == 0 {
  		return nil, errors.New("must provide one or more Resource objects to concat")
  	}
  
  	return ns.bundlerClient.Concat(targetPath, rr)
  }
docs: // Concat concatenates a slice of Resource objects. These resources must
  // (currently) be of the same Media Type.