// PLUGIN_PREFIX can also defined in your preprocessor macros build settings.
#ifndef PLUGIN_PREFIX
#define PLUGIN_PREFIX MT
#endif
#define PLUGIN_NAMESPACE_impl2(prefix, symbol) prefix ## symbol
#define PLUGIN_NAMESPACE_impl(prefix, symbol) PLUGIN_NAMESPACE_impl2(prefix, symbol)
#define PLUGIN_NAMESPACE(symbol) PLUGIN_NAMESPACE_impl(PLUGIN_PREFIX, symbol)
——
USAGE:
in your .h files for declaring classes, define the className to use the PLUGIN_NAMESPACE macro prior to class interface.
For example: MyClass.h
#import "NameSpace.h"
#define MyClass PLUGIN_NAMESPACE(MyClass)
// if PLUGIN_PREFIX is MT then
// preprocessor will expand this (and every usage of MyClass) to MTMyClass
//
@interface MyClass : NSObject
@end
Have fun not colliding your ClassNames.