Portability preprocessor macros and utility methods. More...
#include <Availability.h>
A collection of preprocessor macros and utility methods enabling the BlackBerry Dynamics SDK to take advantage of newer features of the macOS SDK, such as nullability, generics and API availability, whilst maintaining backwards compatibility with older versions of the macOS SDK. More comments can be found in the source file.
#define GD_NSKINDOF __kindof |
#define GD_NSNULLABLE_PROP nullable, |
#define GD_NSNULLABLE nullable |
#define GD_NSNON_NULL_PROP nonnull, |
#define GD_NSNON_NULL nonnull |
#define GD_NSNULL_UNSPECIFIED null_unspecified |
#define GD_NSNULLABLE_POINTER _Nullable |
#define GD_NSNON_NULL_POINTER _Nonnull |
#define GD_NSNULL_UNSPECIFIED_POINTER _Null_unspecified |
#define GD_NSNON_NULL_CAST | ( | ObjectType, | |
Expression | |||
) | ((ObjectType __nonnull)(ObjectType)Expression) |
#define GD_NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN |
#define GD_NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END |
#define GD_NSDictionary | ( | KeyType, | |
ObjectType | |||
) | NSDictionary<KeyType, ObjectType> |
#define GD_NSMutableDictionary | ( | KeyType, | |
ObjectType | |||
) | NSMutableDictionary<KeyType, ObjectType> |
#define GD_NSArray | ( | ObjectType | ) | NSArray<ObjectType> |
#define GD_NSMutableArray | ( | ObjectType | ) | NSMutableArray<ObjectType> |
#define GD_NSSet | ( | ObjectType | ) | NSSet<ObjectType> |
#define GD_NSMutableSet | ( | ObjectType | ) | NSMutableSet<ObjectType> |
#define GD_NSDirectoryEnumerator | ( | ObjectType | ) | NSDirectoryEnumerator<ObjectType> |
#define GD_API_AVAILABLE | ( | ... | ) | API_AVAILABLE(__VA_ARGS__) |
#define GD_API_UNAVAILABLE | ( | ... | ) | API_UNAVAILABLE(__VA_ARGS__) |