title: What is nonnull in objective C?
body: <p>Can someone elaborate why is <code>nonnull</code> introduced in iOS 9 ?</p>
  
  <p>For example, the <code>NSArray</code> method <code>+ (instancetype)array;</code> is now <code>+ (instancetype nonnull)array;</code></p>
  
  <p>Refer to :
  <a href="https://developer.apple.com/library/prerelease/ios/releasenotes/General/iOS90APIDiffs/frameworks/Foundation.html">https://developer.apple.com/library/prerelease/ios/releasenotes/General/iOS90APIDiffs/frameworks/Foundation.html</a></p>
  
  <p>Is this an objective-c level feature, and how would this affect the existing apps ?</p>