text: //
  // Copyright 2016 Google Inc.
  //
  // Licensed under the Apache License, Version 2.0 (the "License");
  // you may not use this file except in compliance with the License.
  // You may obtain a copy of the License at
  //
  //      http://www.apache.org/licenses/LICENSE-2.0
  //
  // Unless required by applicable law or agreed to in writing, software
  // distributed under the License is distributed on an "AS IS" BASIS,
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  // See the License for the specific language governing permissions and
  // limitations under the License.
  //
  
  #import <Foundation/Foundation.h>
  
  #import "GREYDefines.h"
  
  /**
   * @file
   * @brief Alternative methods for dispatch_sync and dispatch_async that should be used in places
   *        where dispatch_async and sync lead to unnecessary tracking.
   */
  
  /**
   *  Executes a block containing EarlGrey statements on the main thread and waits for it to
   *  complete. @c block is retained until execution completes.
   *
   *  @note  Can be called from any thread.
   *  @param block Block that will be executed.
   */
  GREY_EXPORT void grey_dispatch_sync_on_main_thread(void (^block)(void));
  