[swift-evolution] NSRange and Range

Douglas Gregor dgregor at apple.com
Mon May 9 22:49:17 CDT 2016


> On May 8, 2016, at 2:10 PM, David Hart via swift-evolution <swift-evolution at swift.org> wrote:
> 
> Hello Swift-Evolution,
> 
> I spent some time coding on Linux with Swift 3 (latest developement snapshot) and corelibs-foundation and I’ve hit one major hurdle: passing and converting NSRange and Range around between the different stdlib and Foundation APIs - specifically in regards to String.
> 
> Is there a plan to simplify those pain points by converting all corelibs-foundation APIs to accept/return Range on String instead of NSRange? In that case, can’t we get rid of NSRange completely?


One idea that had come up before was to bridge NSRange to Range<Int>, although it wouldn’t completely eliminate NSRange because the two types are not representationally identical.

	- Doug



More information about the swift-evolution mailing list