12
12
#import < AsyncDisplayKit/ASConfigurationDelegate.h>
13
13
#import < stdatomic.h>
14
14
15
- #define ASGetSharedConfigMgr () (__bridge ASConfigurationManager *)ASConfigurationManager.sharedInstance
15
+ NS_INLINE ASConfigurationManager *ASConfigurationManagerGet () {
16
+ static ASConfigurationManager *inst;
17
+ static dispatch_once_t onceToken;
18
+ dispatch_once (&onceToken, ^{
19
+ inst = [[ASConfigurationManager alloc ] init ];
20
+ });
21
+ return inst;
22
+ }
16
23
17
24
@implementation ASConfigurationManager {
18
25
ASConfiguration *_config;
@@ -21,17 +28,6 @@ @implementation ASConfigurationManager {
21
28
_Atomic (ASExperimentalFeatures) _activatedExperiments;
22
29
}
23
30
24
- // / Return CFTypeRef to avoid retain/release on this singleton.
25
- + (CFTypeRef )sharedInstance
26
- {
27
- static CFTypeRef inst;
28
- static dispatch_once_t onceToken;
29
- dispatch_once (&onceToken, ^{
30
- inst = (__bridge_retained CFTypeRef )[[ASConfigurationManager alloc ] init ];
31
- });
32
- return inst;
33
- }
34
-
35
31
+ (ASConfiguration *)defaultConfiguration NS_RETURNS_RETAINED
36
32
{
37
33
ASConfiguration *config = [[ASConfiguration alloc ] init ];
@@ -103,12 +99,12 @@ + (void)test_resetWithConfiguration:(ASConfiguration *)configuration
103
99
104
100
@end
105
101
106
- BOOL ASActivateExperimentalFeature (ASExperimentalFeatures feature)
102
+ BOOL _ASActivateExperimentalFeature (ASExperimentalFeatures feature)
107
103
{
108
- return [ASGetSharedConfigMgr () activateExperimentalFeature: feature];
104
+ return [ASConfigurationManagerGet () activateExperimentalFeature: feature];
109
105
}
110
106
111
107
void ASNotifyInitialized ()
112
108
{
113
- [ASGetSharedConfigMgr () frameworkDidInitialize ];
109
+ [ASConfigurationManagerGet () frameworkDidInitialize ];
114
110
}
0 commit comments