On Aug 5, 2015, at 6:22 PM, Rick Mann <[email protected]> wrote: > > I'd like to be able to write code like this: > > enum MyNotifications : String { > case Note1 = "note1" > case Note2 = "note2" > } > > let nc = NSNotificationCenter.defaultCenter() > nc.postNotificationName(MyNotifications.Note1, nil) > > But Swift (2.0) doesn't let me do that. Is it possible to write an extension > method to NSNotificationCenter that accepts "any enum derived from String" > (or that's convertible to String, or something like that)? e.g.: > > func postNotification(inName : enum:String) > > I tried doing this: http://pastebin.com/kXLEHu8f > <http://pastebin.com/kXLEHu8f> > > But it gets multiple errors, as you can see. > > Is there an elegant way to do this? Seems counter-intuitive that I can't pass > a derived enum in place of an ancestral type.
AFAIK there’s no way to do exactly what you’re asking for, but you could put a post() method on the enum itself. Charles _______________________________________________ Cocoa-dev mailing list ([email protected]) 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: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
