diff options
Diffstat (limited to 'SwifTools/Cocoa')
-rw-r--r-- | SwifTools/Cocoa/CocoaUtil.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/SwifTools/Cocoa/CocoaUtil.h b/SwifTools/Cocoa/CocoaUtil.h new file mode 100644 index 0000000..55fc325 --- /dev/null +++ b/SwifTools/Cocoa/CocoaUtil.h @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2011 Remko Tronçon + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + +#pragma once + +// Conversion utilities +#define NS2STDSTRING(a) (a == nil ? std::string() : std::string([a cStringUsingEncoding:NSUTF8StringEncoding])) +#define STD2NSSTRING(a) [NSString stringWithCString:a.c_str() encoding:NSUTF8StringEncoding] + +// Intrusive pointer for NSObjects +#include <boost/intrusive_ptr.hpp> + +namespace boost { + inline void intrusive_ptr_add_ref(NSObject* object) { + [object retain]; + } + + inline void intrusive_ptr_release(NSObject* object) { + [object release]; + } +} |