[swift-evolution] [Pich] allow embed type declaration in protocol & allow throw in property getter/setter
Benjamin Spratling
bspratling at mac.com
Fri Oct 7 12:59:12 CDT 2016
+1 nested types in protocols
And nested protocols in types.
-1 on throwing properties.
> On Oct 7, 2016, at 10:30 AM, Cao Jiannan via swift-evolution <swift-evolution at swift.org> wrote:
>
> 1. allow embed type declaration in protocol
> e.g.:
>
> protocol URLProvider {
> fun url() throws -> URL
> }
>
> extension URLProvider {
> enum Error: Swift.Error {
> invalidBaseURL
> invalidPath
> invalidQuery
> invalidFragment
> }
> }
>
>
> func parseURL() throws -> URL {
> throw URLProvider.Error.invalidBaseURL
> }
>
> 2. allow throw in property getter/setter
>
> e.g.:
>
> struct myURLProvider: URLProvider {
> var url: throws -> URL {
> try URL(baseURL: baseURL, path: path, query: query, fragment: fragment)
> }
> }
>
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
More information about the swift-evolution
mailing list