Files
SwiftLint/opening_brace.html
2025-06-22 14:27:57 +00:00

648 lines
38 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en">
<head>
<title>opening_brace Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset="utf-8">
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
<script src="js/lunr.min.js" defer></script>
<script src="js/typeahead.jquery.js" defer></script>
<script src="js/jazzy.search.js" defer></script>
</head>
<body>
<a title="opening_brace Reference"></a>
<header class="header">
<p class="header-col header-col--primary">
<a class="header-link" href="index.html">
SwiftLintCore 0.59.1 Docs
</a>
(100% documented)
</p>
<div class="header-col--secondary">
<form role="search" action="search.json">
<input type="text" placeholder="Search documentation" data-typeahead>
</form>
</div>
<p class="header-col header-col--secondary">
<a class="header-link" href="https://github.com/realm/SwiftLint">
<img class="header-icon" src="img/gh.png" alt="GitHub"/>
View on GitHub
</a>
</p>
<p class="header-col header-col--secondary">
<a class="header-link" href="dash-feed://https%3A%2F%2Frealm.github.io%2FSwiftLint%2Fdocsets%2FSwiftLintCore.xml">
<img class="header-icon" src="img/dash.png" alt="Dash"/>
Install in Dash
</a>
</p>
</header>
<p class="breadcrumbs">
<a class="breadcrumb" href="index.html">SwiftLintCore</a>
<img class="carat" src="img/carat.png" alt=""/>
<a class="breadcrumb" href="Guides.html">Guides</a>
<img class="carat" src="img/carat.png" alt=""/>
opening_brace Reference
</p>
<div class="content-wrapper">
<nav class="navigation">
<ul class="nav-groups">
<li class="nav-group-name">
<a class="nav-group-name-link" href="Rules.html">Rules</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a class="nav-group-task-link" href="rule-directory.html">Rule Directory</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a class="nav-group-name-link" href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/BodyLengthVisitor.html">BodyLengthVisitor</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/CodeBlockVisitor.html">CodeBlockVisitor</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/CodeIndentingRewriter.html">CodeIndentingRewriter</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/CodeIndentingRewriter/IndentationStyle.html"> IndentationStyle</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/DeclaredIdentifiersTrackingVisitor.html">DeclaredIdentifiersTrackingVisitor</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/RuleRegistry.html">RuleRegistry</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/RuleStorage.html">RuleStorage</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/SwiftLintFile.html">SwiftLintFile</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/ViolationsSyntaxRewriter.html">ViolationsSyntaxRewriter</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Classes/ViolationsSyntaxVisitor.html">ViolationsSyntaxVisitor</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a class="nav-group-name-link" href="Enums.html">Enumerations</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/AccessControlLevel.html">AccessControlLevel</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/CurrentRule.html">CurrentRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/IdentifierDeclaration.html">IdentifierDeclaration</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/Issue.html">Issue</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/OptionType.html">OptionType</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/RuleIdentifier.html">RuleIdentifier</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/RuleKind.html">RuleKind</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/RuleListError.html">RuleListError</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/SwiftExpressionKind.html">SwiftExpressionKind</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/SwiftSyntaxKindBridge.html">SwiftSyntaxKindBridge</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Enums/ViolationSeverity.html">ViolationSeverity</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a class="nav-group-name-link" href="Extensions.html">Extensions</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a class="nav-group-task-link" href="Extensions/Array.html">Array</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Extensions/Bool.html">Bool</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Extensions/Double.html">Double</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Extensions/Int.html">Int</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Extensions/Optional.html">Optional</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Extensions/Set.html">Set</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Extensions/String.html">String</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a class="nav-group-name-link" href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/ASTRule.html">ASTRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/AcceptableByConfigurationElement.html">AcceptableByConfigurationElement</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/AnalyzerRule.html">AnalyzerRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols.html#/s:13SwiftLintCore17AnyCollectingRuleP">AnyCollectingRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/CacheDescriptionProvider.html">CacheDescriptionProvider</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/CollectingRule.html">CollectingRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/ConditionallySourceKitFree.html">ConditionallySourceKitFree</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/CorrectableRule.html">CorrectableRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/Documentable.html">Documentable</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols.html#/s:13SwiftLintCore19InlinableOptionTypeP">InlinableOptionType</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols.html#/s:13SwiftLintCore9OptInRuleP">OptInRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/Rule.html">Rule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/RuleConfiguration.html">RuleConfiguration</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/SeverityBasedRuleConfiguration.html">SeverityBasedRuleConfiguration</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols.html#/s:13SwiftLintCore17SourceKitFreeRuleP">SourceKitFreeRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/SubstitutionCorrectableRule.html">SubstitutionCorrectableRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/SwiftSyntaxCorrectableRule.html">SwiftSyntaxCorrectableRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/SwiftSyntaxRule.html">SwiftSyntaxRule</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Protocols/VersionComparable.html">VersionComparable</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a class="nav-group-name-link" href="Structs.html">Structures</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Baseline.html">Baseline</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/ChildOptionSeverityConfiguration.html">ChildOptionSeverityConfiguration</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Command.html">Command</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Command/Action.html"> Action</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Command/Modifier.html"> Modifier</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/ConfigurationElement.html">ConfigurationElement</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/ConfigurationElement/DeprecationNotice.html"> DeprecationNotice</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Correction.html">Correction</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Example.html">Example</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Location.html">Location</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/ReasonedRuleViolation.html">ReasonedRuleViolation</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/ReasonedRuleViolation/ViolationCorrection.html"> ViolationCorrection</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/RegexConfiguration.html">RegexConfiguration</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/RegexConfiguration/ExecutionMode.html"> ExecutionMode</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Region.html">Region</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/RuleConfigurationDescription.html">RuleConfigurationDescription</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs.html#/s:13SwiftLintCore35RuleConfigurationDescriptionBuilderV">RuleConfigurationDescriptionBuilder</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/RuleConfigurationOption.html">RuleConfigurationOption</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/RuleDescription.html">RuleDescription</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/RuleList.html">RuleList</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/RuleParameter.html">RuleParameter</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/SeverityConfiguration.html">SeverityConfiguration</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/SeverityLevelsConfiguration.html">SeverityLevelsConfiguration</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/Stack.html">Stack</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/StyleViolation.html">StyleViolation</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/SwiftLintSyntaxMap.html">SwiftLintSyntaxMap</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/SwiftLintSyntaxToken.html">SwiftLintSyntaxToken</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Structs/SwiftVersion.html">SwiftVersion</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a class="nav-group-name-link" href="Macros.html">Macros</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a class="nav-group-task-link" href="Macros.html#/s:13SwiftLintCore32AcceptableByConfigurationElementyycfm">AcceptableByConfigurationElement()</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Macros.html#/s:13SwiftLintCore16AutoConfigParseryycfm">AutoConfigParser()</a>
</li>
<li class="nav-group-task">
<a class="nav-group-task-link" href="Macros.html#/s:13SwiftLintCore0A10SyntaxRule15foldExpressions16explicitRewriter11correctable5optInySb_S3btcfm">SwiftSyntaxRule(foldExpressions:explicitRewriter:correctable:optIn:)</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section class="section">
<div class="section-content top-matter">
<h1 id='opening-brace-spacing' class='heading'>Opening Brace Spacing</h1>
<p>The correct positioning of braces that introduce a block of code or member list is highly controversial. No matter which style is preferred, consistency is key. Apart from different tastes, the positioning of braces can also have a significant impact on the readability of the code, especially for visually impaired developers. This rule ensures that braces are preceded by a single space and on the same line as the declaration. Comments between the declaration and the opening brace are respected. Check out the <code><a href="contrasted_opening_brace.html">contrasted_opening_brace</a></code> rule for a different style.</p>
<ul>
<li><strong>Identifier:</strong> <code>opening_brace</code></li>
<li><strong>Enabled by default:</strong> Yes</li>
<li><strong>Supports autocorrection:</strong> Yes</li>
<li><strong>Kind:</strong> style</li>
<li><strong>Analyzer rule:</strong> No</li>
<li><strong>Minimum Swift compiler version:</strong> 5.0.0</li>
<li><strong>Default configuration:</strong>
<table>
<thead>
<tr><th>Key</th><th>Value</th></tr>
</thead>
<tbody>
<tr>
<td>
severity
</td>
<td>
warning
</td>
</tr>
<tr>
<td>
ignore_multiline_type_headers
</td>
<td>
false
</td>
</tr>
<tr>
<td>
ignore_multiline_statement_conditions
</td>
<td>
false
</td>
</tr>
<tr>
<td>
ignore_multiline_function_signatures
</td>
<td>
false
</td>
</tr>
<tr>
<td>
allow_multiline_func
</td>
<td>
false
</td>
</tr>
</tbody>
</table></li>
</ul>
<h2 id='non-triggering-examples' class='heading'>Non Triggering Examples</h2>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">abc</span><span class="p">()</span> <span class="p">{</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="p">[]</span><span class="o">.</span><span class="nf">map</span><span class="p">()</span> <span class="p">{</span> <span class="nv">$0</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="p">[]</span><span class="o">.</span><span class="nf">map</span><span class="p">({</span> <span class="p">})</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">if</span> <span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span> <span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">while</span> <span class="n">a</span> <span class="o">==</span> <span class="n">b</span> <span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">guard</span> <span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span> <span class="k">else</span> <span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">Rule</span> <span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">Parent</span> <span class="p">{</span>
<span class="kd">struct</span> <span class="kt">Child</span> <span class="p">{</span>
<span class="k">let</span> <span class="nv">foo</span><span class="p">:</span> <span class="kt">Int</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">f</span><span class="p">(</span><span class="nv">rect</span><span class="p">:</span> <span class="kt">CGRect</span><span class="p">)</span> <span class="p">{</span>
<span class="p">{</span>
<span class="k">let</span> <span class="nv">centre</span> <span class="o">=</span> <span class="kt">CGPoint</span><span class="p">(</span><span class="nv">x</span><span class="p">:</span> <span class="n">rect</span><span class="o">.</span><span class="n">midX</span><span class="p">,</span> <span class="nv">y</span><span class="p">:</span> <span class="n">rect</span><span class="o">.</span><span class="n">midY</span><span class="p">)</span>
<span class="nf">print</span><span class="p">(</span><span class="n">centre</span><span class="p">)</span>
<span class="p">}()</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">f</span><span class="p">(</span><span class="nv">rect</span><span class="p">:</span> <span class="kt">CGRect</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Void</span> <span class="p">{</span>
<span class="p">{</span>
<span class="k">let</span> <span class="nv">centre</span> <span class="o">=</span> <span class="kt">CGPoint</span><span class="p">(</span><span class="nv">x</span><span class="p">:</span> <span class="n">rect</span><span class="o">.</span><span class="n">midX</span><span class="p">,</span> <span class="nv">y</span><span class="p">:</span> <span class="n">rect</span><span class="o">.</span><span class="n">midY</span><span class="p">)</span>
<span class="nf">print</span><span class="p">(</span><span class="n">centre</span><span class="p">)</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">f</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Void</span> <span class="p">{</span>
<span class="p">{}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">Rule</span><span class="p">:</span>
<span class="kt">NSObject</span> <span class="p">{</span>
<span class="k">var</span> <span class="nv">a</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span>
<span class="k">return</span> <span class="s">""</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">self</span><span class="o">.</span><span class="nf">foo</span><span class="p">(</span>
<span class="p">(</span>
<span class="s">"String parameter"</span><span class="p">,</span>
<span class="p">{</span> <span class="s">"Do something here"</span> <span class="p">}</span>
<span class="p">)</span>
<span class="p">)</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">let</span> <span class="nv">pattern</span> <span class="o">=</span> <span class="sr">#/(\{(?&lt;key&gt;\w+)\})/#</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">if</span> <span class="n">c</span> <span class="p">{}</span>
<span class="k">else</span> <span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code> <span class="k">if</span> <span class="n">c</span> <span class="cm">/* comment */</span> <span class="p">{</span>
<span class="k">return</span>
<span class="p">}</span>
</code></pre>
<h2 id='triggering-examples' class='heading'>Triggering Examples</h2>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">abc</span><span class="p">()</span><span class="err"></span><span class="p">{</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">abc</span><span class="p">()</span>
<span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">abc</span><span class="p">(</span><span class="nv">a</span><span class="p">:</span> <span class="kt">A</span><span class="p">,</span>
<span class="nv">b</span><span class="p">:</span> <span class="kt">B</span><span class="p">)</span>
<span class="err"></span><span class="p">{</span>
</code></pre>
<pre class="highlight swift"><code><span class="p">[]</span><span class="o">.</span><span class="nf">map</span><span class="p">()</span><span class="err"></span><span class="p">{</span> <span class="nv">$0</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">OldContentView</span><span class="p">:</span> <span class="kt">View</span> <span class="p">{</span>
<span class="kd">@State</span> <span class="kd">private</span> <span class="k">var</span> <span class="nv">showOptions</span> <span class="o">=</span> <span class="kc">false</span>
<span class="k">var</span> <span class="nv">body</span><span class="p">:</span> <span class="kd">some</span> <span class="kt">View</span> <span class="p">{</span>
<span class="kt">Button</span><span class="p">(</span><span class="nv">action</span><span class="p">:</span> <span class="p">{</span>
<span class="k">self</span><span class="o">.</span><span class="n">showOptions</span><span class="o">.</span><span class="nf">toggle</span><span class="p">()</span>
<span class="p">})</span><span class="err"></span><span class="p">{</span>
<span class="kt">Image</span><span class="p">(</span><span class="nv">systemName</span><span class="p">:</span> <span class="s">"gear"</span><span class="p">)</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">OldContentView</span><span class="p">:</span> <span class="kt">View</span> <span class="p">{</span>
<span class="kd">@State</span> <span class="kd">private</span> <span class="k">var</span> <span class="nv">showOptions</span> <span class="o">=</span> <span class="kc">false</span>
<span class="k">var</span> <span class="nv">body</span><span class="p">:</span> <span class="kd">some</span> <span class="kt">View</span> <span class="p">{</span>
<span class="kt">Button</span><span class="p">(</span><span class="nv">action</span><span class="p">:</span> <span class="p">{</span>
<span class="k">self</span><span class="o">.</span><span class="n">showOptions</span><span class="o">.</span><span class="nf">toggle</span><span class="p">()</span>
<span class="p">})</span>
<span class="err"></span><span class="p">{</span>
<span class="kt">Image</span><span class="p">(</span><span class="nv">systemName</span><span class="p">:</span> <span class="s">"gear"</span><span class="p">)</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">OldContentView</span><span class="p">:</span> <span class="kt">View</span> <span class="p">{</span>
<span class="kd">@State</span> <span class="kd">private</span> <span class="k">var</span> <span class="nv">showOptions</span> <span class="o">=</span> <span class="kc">false</span>
<span class="k">var</span> <span class="nv">body</span><span class="p">:</span> <span class="kd">some</span> <span class="kt">View</span> <span class="p">{</span>
<span class="kt">Button</span> <span class="p">{</span>
<span class="k">self</span><span class="o">.</span><span class="n">showOptions</span><span class="o">.</span><span class="nf">toggle</span><span class="p">()</span>
<span class="p">}</span> <span class="nv">label</span><span class="p">:</span><span class="err"></span><span class="p">{</span>
<span class="kt">Image</span><span class="p">(</span><span class="nv">systemName</span><span class="p">:</span> <span class="s">"gear"</span><span class="p">)</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">if</span> <span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span><span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">while</span> <span class="n">a</span> <span class="o">==</span> <span class="n">b</span><span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">guard</span> <span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span> <span class="k">else</span><span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">if</span>
<span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span><span class="p">,</span>
<span class="k">let</span> <span class="nv">c</span> <span class="o">=</span> <span class="n">d</span>
<span class="k">where</span> <span class="n">a</span> <span class="o">==</span> <span class="n">c</span><span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">while</span>
<span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span><span class="p">,</span>
<span class="k">let</span> <span class="nv">c</span> <span class="o">=</span> <span class="n">d</span>
<span class="k">where</span> <span class="n">a</span> <span class="o">==</span> <span class="n">c</span><span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">guard</span>
<span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span><span class="p">,</span>
<span class="k">let</span> <span class="nv">c</span> <span class="o">=</span> <span class="n">d</span>
<span class="k">where</span> <span class="n">a</span> <span class="o">==</span> <span class="n">c</span> <span class="k">else</span><span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">Rule</span><span class="err"></span><span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">Rule</span>
<span class="err"></span><span class="p">{</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">Rule</span>
<span class="err"></span><span class="p">{</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">struct</span> <span class="kt">Parent</span> <span class="p">{</span>
<span class="kd">struct</span> <span class="kt">Child</span>
<span class="err"></span><span class="p">{</span>
<span class="k">let</span> <span class="nv">foo</span><span class="p">:</span> <span class="kt">Int</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">switch</span> <span class="n">a</span><span class="err"></span><span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">if</span>
<span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span><span class="p">,</span>
<span class="k">let</span> <span class="nv">c</span> <span class="o">=</span> <span class="n">d</span><span class="p">,</span>
<span class="n">a</span> <span class="o">==</span> <span class="n">c</span>
<span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">while</span>
<span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span><span class="p">,</span>
<span class="k">let</span> <span class="nv">c</span> <span class="o">=</span> <span class="n">d</span><span class="p">,</span>
<span class="n">a</span> <span class="o">==</span> <span class="n">c</span>
<span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">guard</span>
<span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="n">b</span><span class="p">,</span>
<span class="k">let</span> <span class="nv">c</span> <span class="o">=</span> <span class="n">d</span><span class="p">,</span>
<span class="n">a</span> <span class="o">==</span> <span class="n">c</span> <span class="k">else</span>
<span class="err"></span><span class="p">{</span> <span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">Rule</span><span class="err"></span><span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">actor</span> <span class="kt">Rule</span><span class="err"></span><span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">enum</span> <span class="kt">Rule</span><span class="err"></span><span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">protocol</span> <span class="kt">Rule</span><span class="err"></span><span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">extension</span> <span class="kt">Rule</span><span class="err"></span><span class="p">{}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">Rule</span> <span class="p">{</span>
<span class="k">var</span> <span class="nv">a</span><span class="p">:</span> <span class="kt">String</span><span class="err"></span><span class="p">{</span>
<span class="k">return</span> <span class="s">""</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">Rule</span> <span class="p">{</span>
<span class="k">var</span> <span class="nv">a</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span>
<span class="k">willSet</span><span class="err"></span><span class="p">{</span>
<span class="p">}</span>
<span class="k">didSet</span> <span class="err"></span><span class="p">{</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">precedencegroup</span> <span class="kt">Group</span><span class="err"></span><span class="p">{</span>
<span class="nv">assignment</span><span class="p">:</span> <span class="kc">true</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">if</span>
<span class="s">"test"</span><span class="o">.</span><span class="n">isEmpty</span>
<span class="err"></span><span class="p">{</span>
<span class="c1">// code here</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">fooFun</span><span class="p">()</span> <span class="p">{</span>
<span class="k">let</span> <span class="nv">foo</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="o">=</span> <span class="s">"foo"</span>
<span class="k">let</span> <span class="nv">bar</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="o">=</span> <span class="s">"bar"</span>
<span class="k">if</span>
<span class="k">let</span> <span class="nv">foo</span> <span class="o">=</span> <span class="n">foo</span><span class="p">,</span>
<span class="k">let</span> <span class="nv">bar</span> <span class="o">=</span> <span class="n">bar</span>
<span class="err"></span><span class="p">{</span>
<span class="nf">print</span><span class="p">(</span><span class="n">foo</span> <span class="o">+</span> <span class="n">bar</span><span class="p">)</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">if</span>
<span class="k">let</span> <span class="nv">a</span> <span class="o">=</span> <span class="p">[</span><span class="s">"A"</span><span class="p">,</span> <span class="s">"B"</span><span class="p">]</span><span class="o">.</span><span class="n">first</span><span class="p">,</span>
<span class="k">let</span> <span class="nv">b</span> <span class="o">=</span> <span class="p">[</span><span class="s">"B"</span><span class="p">]</span><span class="o">.</span><span class="n">first</span>
<span class="err"></span><span class="p">{</span>
<span class="nf">print</span><span class="p">(</span><span class="n">a</span><span class="p">)</span>
<span class="p">}</span>
</code></pre>
<pre class="highlight swift"><code><span class="k">if</span> <span class="n">c</span> <span class="err"></span><span class="p">{}</span>
<span class="k">else</span> <span class="cm">/* comment */</span> <span class="err"></span><span class="p">{}</span>
</code></pre>
</div>
</section>
</article>
</div>
<section class="footer">
<p>© 2023 <a class="link" href="https://jpsim.com" target="_blank" rel="external noopener">JP Simard</a> under MIT.</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external noopener">jazzy ♪♫ v0.15.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external noopener">Realm</a> project.</p>
</section>
</body>
</html>