title: Synchronizing Async Stuff in Swift
body: <p>I'm not sure why Apple designs so many things in blocks... 
  At least the problem in "<a href="https://stackoverflow.com/questions/30812057/phasset-to-uiimage">PHAsset to UIImage</a>" was able to be resolved due to a provided option. However, some of the other things I need are not provided by options.</p>
  
  <p>For example:</p>
  
  <pre><code>func getAssetUrl(asset: PHAsset) -&gt; NSURL {
      var option = PHContentEditingInputRequestOptions()
      asset.requestContentEditingInputWithOptions(option, completionHandler: {(contentEditingInput, info) -&gt; Void in
              var imageURL = contentEditingInput.fullSizeImageURL
          println(imageURL)
          })
      return NSURL()
  }
  </code></pre>
  
  <p>In these cases, I just want functions that take a block (such as requestContentEditingInputWithOptions to synchronically execute so I can return the imageURL). Is there any way to do this? (I've tried using some dispatch commands, but have not reached success yet).</p>
  
  <p>Please note that I NEED to return the imageURL. Do not attempt to give me a solution in which I write stuff inside the block and don't return the imageURL.</p>