<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body><div>Hello,<br></div>
<div>&nbsp;</div>
<div>I'm currently reading the updated Swift 3 preview book, and was wondering about the `throws` and `rethrows` keywords.<br></div>
<div>&nbsp;</div>
<div>In a function declaration, all the keywords are at the beginning, except for `throws` and `rethrows`, which are… oddly placed.<br></div>
<div>&nbsp;</div>
<div>In the grammar:<br></div>
<div>&nbsp;</div>
<div>```<br></div>
<div style="border: 0px; font-size: 14px; margin: 0px 0px 12px; outline: 0px; padding: 0px; vertical-align: baseline; background: transparent;" class="syntax-defs-group"><p style="border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;" class="syntax-def"><span class="highlight" style="background-color:transparent"><span class="highlight" style="background-color:transparent"><span class="colour" style="color:rgb(128, 128, 128)"><i><span class="size" style="font-size: 10px">function-declaration</span><span class="Apple-converted-space"><span class="size" style="font-size: 10px">&nbsp;</span></span></i><span class="size" style="font-size: 10px">→</span><span class="Apple-converted-space"><span class="size" style="font-size: 10px">&nbsp;</span></span></span><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/function-head" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/function-head"><span class="size" style="font-size: 10px">function-head</span></a><span class="size" style="font-size: 10px">&nbsp;­</span><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/function-name" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/function-name"><span class="size" style="font-size: 10px">function-name</span></a><span class="size" style="font-size: 10px">­&nbsp;</span></i><span class="highlight" style="background-color:transparent"><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/generic-parameter-clause" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/GenericParametersAndArguments.html#//apple_ref/swift/grammar/generic-parameter-clause"><span class="size" style="font-size: 10px">generic-parameter-clause</span></a><span class="size" style="font-size: 10px">­</span></i></span><sub style="border: 0px; font-size: 0.8em; margin: 0px 0px 0px -2px; outline: 0px; padding: 0px 4px 0px 0px; vertical-align: sub; color: rgb(128, 128, 128); font-style: italic; background: transparent;" class="subscript"><span class="size" style="font-size: 10px">opt</span></sub><span class="size" style="font-size: 10px">­</span><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/function-signature" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/function-signature"><span class="size" style="font-size: 10px">function-signature</span></a><span class="size" style="font-size: 10px">­&nbsp;</span></i><span class="highlight" style="background-color:transparent"><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/function-body" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/function-body"><span class="size" style="font-size: 10px">function-body</span></a><span class="size" style="font-size: 10px">­</span></i></span><sub style="border: 0px; font-size: 0.8em; margin: 0px 0px 0px -2px; outline: 0px; padding: 0px 4px 0px 0px; vertical-align: sub; color: rgb(128, 128, 128); font-style: italic; background: transparent;" class="subscript"><span class="size" style="font-size: 10px">opt</span></sub><span class="size" style="font-size: 10px">­</span></span></span><span class="size" style="font-size: 10px"><br></span></p></div>
<div style="border: 0px; font-size: 14px; margin: 0px 0px 12px; outline: 0px; padding: 0px; vertical-align: baseline; background: transparent;" class="syntax-defs-group"><p style="border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;" class="syntax-def"><span class="highlight" style="background-color:transparent"><span class="highlight" style="background-color:transparent"><span class="colour" style="color:rgb(128, 128, 128)"><i><span class="size" style="font-size: 10px">function-head</span><span class="Apple-converted-space"><span class="size" style="font-size: 10px">&nbsp;</span></span></i><span class="size" style="font-size: 10px">→</span><span class="Apple-converted-space"><span class="size" style="font-size: 10px">&nbsp;</span></span></span><span class="highlight" style="background-color:transparent"><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/attributes" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Attributes.html#//apple_ref/swift/grammar/attributes"><span class="size" style="font-size: 10px">attributes</span></a><span class="size" style="font-size: 10px">­</span></i></span><sub style="border: 0px; font-size: 0.8em; margin: 0px 0px 0px -2px; outline: 0px; padding: 0px 4px 0px 0px; vertical-align: sub; color: rgb(128, 128, 128); font-style: italic; background: transparent;" class="subscript"><span class="size" style="font-size: 10px">opt</span></sub><span class="size" style="font-size: 10px">­</span><span class="highlight" style="background-color:transparent"><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/declaration-modifiers" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/declaration-modifiers"><span class="size" style="font-size: 10px">declaration-modifiers</span></a><span class="size" style="font-size: 10px">­</span></i></span><sub style="border: 0px; font-size: 0.8em; margin: 0px 0px 0px -2px; outline: 0px; padding: 0px 4px 0px 0px; vertical-align: sub; color: rgb(128, 128, 128); font-style: italic; background: transparent;" class="subscript"><span class="size" style="font-size: 10px">opt</span></sub><span class="size" style="font-size: 10px">­</span></span><code style="border: 0px; font-size: 0.86em; margin: 0px; outline: 0px; padding: 0px 4px; vertical-align: baseline; color: rgb(0, 0, 0); font-family: Menlo, monospace; font-weight: 600; word-wrap: break-word; background: transparent;" class="literal"><span class="size" style="font-size: 10px">func­</span></code></span><span class="size" style="font-size: 10px"><br></span></p><p style="border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;" class="syntax-def"><span class="highlight" style="background-color:transparent"><span class="highlight" style="background-color:transparent"><span class="colour" style="color:rgb(128, 128, 128)"><i><span class="size" style="font-size: 10px">function-signature</span><span class="Apple-converted-space"><span class="size" style="font-size: 10px">&nbsp;</span></span></i><span class="size" style="font-size: 10px">→</span><span class="Apple-converted-space"><span class="size" style="font-size: 10px">&nbsp;</span></span></span><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/parameter-clause" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/parameter-clause"><span class="size" style="font-size: 10px">parameter-clause</span></a><span class="size" style="font-size: 10px">­</span></i><code style="border: 0px; font-size: 0.86em; margin: 0px; outline: 0px; padding: 0px 4px; vertical-align: baseline; color: rgb(0, 0, 0); font-family: Menlo, monospace; font-weight: 600; word-wrap: break-word; background: transparent;" class="literal"><span class="size" style="font-size: 10px">throws­</span></code><sub style="border: 0px; font-size: 0.8em; margin: 0px 0px 0px -2px; outline: 0px; padding: 0px 4px 0px 0px; vertical-align: sub; color: rgb(128, 128, 128); font-style: italic; background: transparent;" class="subscript"><span class="size" style="font-size: 10px">opt</span></sub><span class="size" style="font-size: 10px">­</span><span class="highlight" style="background-color:transparent"><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/function-result" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/function-result"><span class="size" style="font-size: 10px">function-result</span></a><span class="size" style="font-size: 10px">­</span></i></span><sub style="border: 0px; font-size: 0.8em; margin: 0px 0px 0px -2px; outline: 0px; padding: 0px 4px 0px 0px; vertical-align: sub; color: rgb(128, 128, 128); font-style: italic; background: transparent;" class="subscript"><span class="size" style="font-size: 10px">opt</span></sub><span class="size" style="font-size: 10px">­</span></span></span><span class="size" style="font-size: 10px"><br></span></p><p style="border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;" class="syntax-def"><span class="highlight" style="background-color:transparent"><span class="highlight" style="background-color:transparent"><span class="colour" style="color:rgb(128, 128, 128)"><i><span class="size" style="font-size: 10px">function-signature</span><span class="Apple-converted-space"><span class="size" style="font-size: 10px">&nbsp;</span></span></i><span class="size" style="font-size: 10px">→</span><span class="Apple-converted-space"><span class="size" style="font-size: 10px">&nbsp;</span></span></span><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/parameter-clause" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/parameter-clause"><span class="size" style="font-size: 10px">parameter-clause</span></a><span class="size" style="font-size: 10px">­</span></i></span><code style="border: 0px; font-size: 0.86em; margin: 0px; outline: 0px; padding: 0px 4px; vertical-align: baseline; color: rgb(0, 0, 0); font-family: Menlo, monospace; font-weight: 600; word-wrap: break-word; background: transparent;" class="literal"><span class="size" style="font-size: 10px">rethrows­</span></code><span class="highlight" style="background-color:transparent"><span class="highlight" style="background-color:transparent"><i><a style="border: 0px; font-size: 14px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: rgb(0, 136, 204); text-decoration: none; background: transparent;" defang_data-id="//apple_ref/swift/grammar/function-result" defang_data-renderer-version="2" href="https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift_Programming_Language/Declarations.html#//apple_ref/swift/grammar/function-result"><span class="size" style="font-size: 10px">function-result</span></a><span class="size" style="font-size: 10px">­</span></i></span><sub style="border: 0px; font-size: 0.8em; margin: 0px 0px 0px -2px; outline: 0px; padding: 0px 4px 0px 0px; vertical-align: sub; color: rgb(128, 128, 128); font-style: italic; background: transparent;" class="subscript"><span class="size" style="font-size: 10px">opt</span></sub><span class="size" style="font-size: 10px">­</span></span></span><br></p><p style="border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 20.3px; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;" class="syntax-def">```<br></p></div>
<div>Is there a reason to have throws and rethrows at this specific position, instead of declaration-modifiers?<br></div>
<div>&nbsp;</div>
<div>ie.:<br></div>
<div>&nbsp;</div>
<div>This:<br></div>
<div>&nbsp;</div>
<div>```<br></div>
<div><span class="highlight" style="background-color:rgb(255, 255, 255)"><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">func</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(121, 93, 163)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">send</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">() throws </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">-&gt;</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(0, 134, 179)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">String</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> {}</span></span></span></span><br></div>
<div>```<br></div>
<div>&nbsp;</div>
<div>Becomes:<br></div>
<div>&nbsp;</div>
<div>```<br></div>
<div><span class="highlight" style="background-color:rgb(255, 255, 255)"><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">throwing </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">func</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(121, 93, 163)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">send</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">() </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">-&gt;</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(0, 134, 179)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">String</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> {}</span></span></span></span><br></div>
<div><span class="highlight" style="background-color:rgb(255, 255, 255)"><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">rethrowing </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">func</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(121, 93, 163)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">send</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">() </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">-&gt;</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(0, 134, 179)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">String</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> {}</span></span></span></span></span></span></span><br></div>
<div>```<br></div>
<div>&nbsp;</div>
<div>Like:<br></div>
<div>&nbsp;</div>
<div>```<br></div>
<div><span class="highlight" style="background-color:rgb(255, 255, 255)"><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">mutating</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">func</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(121, 93, 163)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">send</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">() </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">-&gt;</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(0, 134, 179)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">String</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> {}</span></span></span></span><br></div>
<div>```<br></div>
<div>&nbsp;</div>
<div>Or:<br></div>
<div>&nbsp;</div>
<div>```<br></div>
<div><span class="highlight" style="background-color:rgb(255, 255, 255)"><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">throw&nbsp;</span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">func</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(121, 93, 163)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">send</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">() </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">-&gt;</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(0, 134, 179)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">String</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> {}</span></span></span></span><br></div>
<div><span class="highlight" style="background-color:rgb(255, 255, 255)"><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">rethrow&nbsp;</span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">func</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(121, 93, 163)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">send</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">() </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">-&gt;</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(0, 134, 179)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">String</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> {}</span></span></span></span></span></span></span><br></div>
<div>```<br></div>
<div>&nbsp;</div>
<div>Like:&nbsp;<br></div>
<div>&nbsp;</div>
<div>```<br></div>
<div><span class="highlight" style="background-color:rgb(255, 255, 255)"><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">override</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">func</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(121, 93, 163)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">send</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">() </span></span></span><span class="colour" style="color:rgb(167, 29, 93)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">-&gt;</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> </span></span></span><span class="colour" style="color:rgb(0, 134, 179)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px">String</span></span></span><span class="colour" style="color:rgb(51, 51, 51)"><span class="font" style="font-family:Consolas, &quot;Liberation Mono&quot;, Menlo, Courier, monospace"><span class="size" style="font-size:12px"> {}</span></span></span></span><br></div>
<div>```<br></div>
<div>&nbsp;</div>
<div>(You can also see the weird difference between `override` and `mutating`, one using the -ing suffix, the other being infinitive)&nbsp;<br></div>
<div>&nbsp;</div>
<div>Am I missing something? I find that these keywords break the flow of the function declaration, separating the parameters and the return type, which is never done anywhere else.<br></div>
<div id="sig19227173"><div class="signature">&nbsp;</div>
<div class="signature">Thanks.</div>
<div class="signature">&nbsp;</div>
<div class="signature">--<br></div>
<div class="signature">Matthieu Oger<br></div>
<div class="signature"><a href="http://pixelnest.io/">Pixelnest Studio</a><br></div>
</div>
<div>&nbsp;</div>
</body>
</html>