|  | /* | 
|  | *  Copyright 2016 The WebRTC project authors. All Rights Reserved. | 
|  | * | 
|  | *  Use of this source code is governed by a BSD-style license | 
|  | *  that can be found in the LICENSE file in the root of the source | 
|  | *  tree. An additional intellectual property rights grant can be found | 
|  | *  in the file PATENTS.  All contributing project authors may | 
|  | *  be found in the AUTHORS file in the root of the source tree. | 
|  | */ | 
|  |  | 
|  | #ifdef __OBJC__ | 
|  |  | 
|  | #if !defined(__has_feature) || !__has_feature(objc_arc) | 
|  | #error "This file requires ARC support." | 
|  | #endif | 
|  |  | 
|  | #if !defined(__has_feature) || !__has_feature(nullability) | 
|  | #error "This file requires nullability support." | 
|  | #endif | 
|  |  | 
|  | #import <Foundation/Foundation.h> | 
|  |  | 
|  | // The following nonnull macros were introduced in OSX SDK 10.10.3. However, | 
|  | // the bots appear to be running something older. We define them here if they | 
|  | // aren't already defined in NSObjCRuntime.h, which is included by | 
|  | // Foundation/Foundation.h. | 
|  |  | 
|  | #if !defined(NS_ASSUME_NONNULL_BEGIN) | 
|  | #define NS_ASSUME_NONNULL_BEGIN | 
|  | #endif | 
|  |  | 
|  | #if !defined(NS_ASSUME_NONNULL_END) | 
|  | #define NS_ASSUME_NONNULL_END | 
|  | #endif | 
|  |  | 
|  | #endif  // __OBJC__ |