On 02/11/2009, at 4:19 PM, John Joyce wrote:
Is it possible to create an NSCharacterSet constant?
Attempting to do so with the methods for creating an NSCharacterSet
naturally fails to compile with "initializer element is not constant"
I would ideally like to be able to do this.
Is it best just to declare a global constant string, then initialize
an NSCharacterSet during app initialization? It certainly seems that
is the only real option.
Am I missing something?
If I am correct in what I am seeing, would there not be a valid use
case for this as an extension of NSCharacterSet?
You can't create any non-scalar constant (except nil) using a static
initializer.
However, what you want to do is super-easy, and yes, it's a case for
an extension to NSCharacterSet. Just add a class method as a category:
@interface NSCharacterSet (MyCharacterSetConstant)
+ (NSCharacterSet*) theConstantCharacterSet;
@end
@implementation NSCharacterSet (MyCharacterSetConstant)
+ (NSCharacterSet*) theConstantCharacterSet
{
static NSCharacterSet* s_tccs = nil;
if( s_tccs == nil )
s_tccs = [[self characterSetWithCharactersInString:@"..."]
retain];
return s_tccs;
}
@end
--Graham
_______________________________________________
Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to arch...@mail-archive.com