1 /*	NSObjCRuntime.h
2 	Copyright (c) 1994-2012, Apple Inc. All rights reserved.
3 */
4 
5 #ifndef _OBJC_NSOBJCRUNTIME_H_
6 #define _OBJC_NSOBJCRUNTIME_H_
7 
8 #include <TargetConditionals.h>
9 #include <objc/objc.h>
10 
11 #if __LP64__ || TARGET_OS_WIN32 || NS_BUILD_32_LIKE_64
12 typedef long NSInteger;
13 typedef unsigned long NSUInteger;
14 #else
15 typedef int NSInteger;
16 typedef unsigned int NSUInteger;
17 #endif
18 
19 #define NSIntegerMax    LONG_MAX
20 #define NSIntegerMin    LONG_MIN
21 #define NSUIntegerMax   ULONG_MAX
22 
23 #define NSINTEGER_DEFINED 1
24 
25 #ifndef NS_DESIGNATED_INITIALIZER
26 #if __has_attribute(objc_designated_initializer)
27 #define NS_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
28 #else
29 #define NS_DESIGNATED_INITIALIZER
30 #endif
31 #endif
32 
33 #endif