title: Map function to recast an array
body: <p>Below is the code that works:</p>
  
  <pre><code>let aProvider: () -&gt; [aParticipant] = {
      let results = fetchRequestController.fetchedObjects as! [ParticipantFetchResultsProtocol]
  
      var newArray: Array&lt;aParticipant&gt; = Array()
      for result in results {
          let obj = result as aParticipant
          newArray.append(obj)
      }
  
      return newArray
  }
  </code></pre>
  
  <p>With map I tried:</p>
  
  <pre><code>var newArray = results.map({aParticipant($0)})
  </code></pre>
  
  <p>I get an error: <code>aParticipant cannot be constructed because it has no accessible initializers</code></p>
  
  <p>Is there a way to accomplish this with <code>map</code>?</p>