|
1
|
1 #pragma once
|
|
|
2
|
|
|
3 // Mitigation for Objective-C class name clashes
|
|
|
4 // Your component must have its own foobar2000-mac-class-suffix.h, with a single line:
|
|
|
5 // #define FOOBAR2000_MAC_CLASS_SUFFIX _foo_mycomponentname
|
|
|
6 // This suffixes all common class names with _foo_mycomponentname preventing clashes
|
|
|
7
|
|
|
8 #include "foobar2000-mac-class-suffix.h"
|
|
|
9
|
|
|
10 #ifndef FOOBAR2000_MAC_CLASS_SUFFIX
|
|
|
11 #error PLEASE DECLARE FOOBAR2000_MAC_CLASS_SUFFIX PROPERLY
|
|
|
12 #endif
|
|
|
13
|
|
|
14 #define FB2K_OBJC_CLASS(X) _FB2K_OBJC_CONCAT(X, FOOBAR2000_MAC_CLASS_SUFFIX)
|
|
|
15 #define _FB2K_OBJC_CONCAT(a, b) _FB2K_OBJC_CONCAT_INNER(a, b)
|
|
|
16 #define _FB2K_OBJC_CONCAT_INNER(a, b) a ## b
|