Exactly! It's not an earth-shattering pain, but it would be nice to have clean type safety there.
> On Dec 16, 2016, at 4:01 PM, Charlie Monroe <[email protected]> wrote: > > >>> On Dec 16, 2016, at 10:05 PM, Charles Srstka via swift-evolution >>> <[email protected]> wrote: >>> >>> On Dec 16, 2016, at 2:46 PM, Micah Hainline via swift-evolution >>> <[email protected]> wrote: >>> >>> I would like to be able to create a URL literal that is compile-time >>> checked for correct format. This would help avoid code like this: >>> >>> let url: URL = URL(string: "https://example.com")! >>> >>> The cleanest way I can think of doing that would be to introduce a new >>> macro structure similar to #selector, though I'm open to other ideas. >>> I would think it should take a quoted literal string to avoid >>> problems. That would look like this: >>> >>> let url: URL = #url("https://example.com") >>> >>> What does everyone think of that idea? >>> _______________________________________________ >>> swift-evolution mailing list >>> [email protected] >>> https://lists.swift.org/mailman/listinfo/swift-evolution >> >> >> I’d like to see something like that for file path URLs. For something so >> commonly used, URL(fileURLWithPath:) is obnoxiously verbose. >> >> Charles > > Yes, but it's not a nullable initializer. With URL(string:) the incredible > pain is that even compile-time URLs to your own website are nullable URL? and > you need to force-unwrap them. > >> >> _______________________________________________ >> swift-evolution mailing list >> [email protected] >> https://lists.swift.org/mailman/listinfo/swift-evolution > _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
