code: func (ns *Namespace) resolveIfFirstArgIsString(args []interface{}) (resource.Resource, string, bool) {
  	if len(args) != 2 {
  		return nil, "", false
  	}
  
  	v1, ok1 := args[0].(string)
  	if !ok1 {
  		return nil, "", false
  	}
  	v2, ok2 := args[1].(resource.Resource)
  
  	return v2, v1, ok2
  }
docs: // We allow string or a map as the first argument in some cases.