summaryrefslogtreecommitdiff
path: root/SmartDeviceLink/SDLMacros.h
blob: 0531f25a4533b0a9cd022ad98d29af3514187386 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//
//  SDLMacros.h
//  SmartDeviceLink-iOS
//
//  Created by Muller, Alexander (A.) on 10/17/16.
//  Copyright © 2016 smartdevicelink. All rights reserved.
//

#ifndef SDLMacros_h
#define SDLMacros_h

// Resolves issue of pre-xcode 8 versions due to NS_STRING_ENUM unavailability.
#ifndef SDL_ENUMS_DEFINED
    #define SDL_ENUMS_DEFINED
    #if __has_attribute(swift_wrapper)
        #define SDL_SWIFT_ENUM NS_STRING_ENUM
        #define SDL_TYPED_ENUM NS_TYPED_ENUM
    #else
        #define SDL_SWIFT_ENUM
        #define SDL_TYPED_ENUM
    #endif
#endif

#ifndef SDL_SUPPORTS_CLASS_PROPERTIES
    #if defined(SWIFT_CLASS_EXTRA)
        #define SDL_SUPPORTS_CLASS_PROPERTIES FOUNDATION_SWIFT_SDK_EPOCH_AT_LEAST(8)
    #else
        #define SDL_SUPPORTS_CLASS_PROPERTIES NO
    #endif
#endif

#endif /* SDLMacros_h */