blob: db81bde3deead1449fb1828892f588be9ff14b25 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#import "MGLFoundation.h"
#include <mbgl/util/run_loop.hpp>
void MGLInitializeRunLoop();
/* Using a compound statement (GNU Extension, supported by clang) */
#define MGL_OBJC_DYNAMIC_CAST(object, type) \
({ \
__typeof__( object ) temp##__LINE__ = (object); \
(type *)([temp##__LINE__ isKindOfClass:[type class]] ? temp##__LINE__ : nil); \
})
#define MGL_OBJC_DYNAMIC_CAST_AS_PROTOCOL(object, proto) \
({ \
__typeof__( object ) temp##__LINE__ = (object); \
(id< proto >)([temp##__LINE__ conformsToProtocol:@protocol( proto )] ? temp##__LINE__ : nil); \
})
|