Perhaps you could write up a proposal to outline the missing functionality :-)
Slava > On Oct 24, 2017, at 3:09 PM, Jonathan Hull <jh...@gbis.com> wrote: > > I would feel better about it if String gained a lot of the utility of > NSString (so that we don’t have to go to NSString all the time for methods) > > Thanks, > Jon > >> On Oct 24, 2017, at 3:00 PM, Slava Pestov via swift-evolution >> <swift-evolution@swift.org> wrote: >> >> Hi, >> >> Members of NSString, except those defined in Foundation, are available on >> values of type String. For example, >> >> extension NSString { >> @objc func foo() {} >> } >> >> let s: String = “hello” >> >> s.foo() >> >> We don’t do this for any other bridged types, for instance NSArray methods >> are not imported as Array methods. It’s literally a special case in the type >> checker for member lookup on String. >> >> This behavior doesn’t really much sense conceptually and it was put in as a >> stop-gap in Swift 1 to beef up the String API. I would like to phase it out >> as follows: >> >> - Unconditional warning in Swift 4.1, with a fixit to insert an ‘as >> NSString’ cast >> - Error in Swift 5 with -swift-version 5 >> >> What does everyone think about this? >> >> Slava >> _______________________________________________ >> swift-evolution mailing list >> swift-evolution@swift.org >> https://lists.swift.org/mailman/listinfo/swift-evolution > _______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution