static id ExtractResult()

in FBControlCore/Async/FBFuture+Sync.m [16:35]


static id ExtractResult(FBFuture *future, NSTimeInterval timeout, BOOL completed, NSError **error)
{
  if (!completed) {
    return [[FBControlCoreError
      describeFormat:@"Timed out waiting for future %@ in %f seconds", future, timeout]
      fail:error];
  }
  if (future.error) {
    if (error) {
      *error = future.error;
    }
    return nil;
  }
  if (future.state == FBFutureStateCancelled) {
    return [[FBControlCoreError
      describeFormat:@"Future %@ was cancelled", future]
      fail:error];
  }
  return future.result;
}