Adding category to NSString that provides the functionality previously
[ITFoundation.git] / ITCategory-NSString.m
diff --git a/ITCategory-NSString.m b/ITCategory-NSString.m
new file mode 100644 (file)
index 0000000..fd036ae
--- /dev/null
@@ -0,0 +1,24 @@
+#import "ITCategory-NSString.h"
+
+@implementation NSString (ITFoundationCategory)
+
++ (id)stringWithFourCharCode:(unsigned long)fourCharCode {
+       return [[[self alloc] initWithFourCharCode:fourCharCode] autorelease];
+}
+
+- (id)initWithFourCharCode:(unsigned long)fourCharCode {
+       return [self initWithFormat:@"%.4s", &fourCharCode];
+}
+
+- (unsigned long)fourCharCode {
+       const unsigned char *c_s = [self UTF8String];
+       unsigned long tmp = *c_s++;
+       tmp <<= 8;
+       tmp |= *c_s++;
+       tmp <<= 8;
+       tmp |= *c_s++;
+       tmp <<= 8;
+       return tmp |= *c_s++;
+}
+
+@end
\ No newline at end of file