1<!doctype html> 2<html lang="en"> 3 <head> 4 <meta charset="utf-8" /> 5 <title> 6 Swift Programming Language 7 </title> 8 9 <meta name="author" content="Apple Inc." /> 10 <meta name="viewport" content="width=device-width initial-scale=1" /> 11 12 <link 13 rel="prefetch" 14 href="/assets/images/landing-page/hero/bird.png" 15 as="image" 16 /> 17 <link 18 rel="prefetch" 19 href="/assets/images/landing-page/hero/orange-swoop-bottom.png" 20 as="image" 21 /> 22 <link 23 rel="prefetch" 24 href="/assets/images/landing-page/hero/orange-swoop-top.png" 25 as="image" 26 /> 27 <link 28 rel="prefetch" 29 href="/assets/images/landing-page/hero/purple-swoop.png" 30 as="image" 31 /> 32 <link 33 rel="prefetch" 34 href="/assets/images/landing-page/hero/white-swoop-1.png" 35 as="image" 36 /> 37 <link 38 rel="prefetch" 39 href="/assets/images/landing-page/hero/white-swoop-2.png" 40 as="image" 41 /> 42 43 <link rel="license" href="/LICENSE.txt" /> 44 <link 45 rel="stylesheet" 46 media="all" 47 href="/assets/stylesheets/new-stylesheets/application.css" 48 /> 49
49<script src="/assets/javascripts/new-javascripts/color-scheme-toggle.js"></script>
49 50 51
51<script src="/assets/javascripts/new-javascripts/vendor/anime.iife.min.js"></script>
51 52
52<script src="/assets/javascripts/new-javascripts/hero.js"></script>
52 53 54 <link 55 rel="shortcut icon" 56 sizes="16x16 24x24 32x32 48x48 64x64" 57 type="image/vnd.microsoft.icon" 58 href="/favicon.ico" 59 /> 60 <link rel="apple-touch-icon" href="/apple-touch-icon.png" /> 61 <link 62 rel="apple-touch-icon" 63 sizes="57x57" 64 href="/apple-touch-icon-57x57.png" 65 /> 66 <link 67 rel="apple-touch-icon" 68 sizes="72x72" 69 href="/apple-touch-icon-72x72.png" 70 /> 71 <link 72 rel="apple-touch-icon" 73 sizes="76x76" 74 href="/apple-touch-icon-76x76.png" 75 /> 76 <link 77 rel="apple-touch-icon" 78 sizes="114x114" 79 href="/apple-touch-icon-114x114.png" 80 /> 81 <link 82 rel="apple-touch-icon" 83 sizes="120x120" 84 href="/apple-touch-icon-120x120.png" 85 /> 86 <link 87 rel="apple-touch-icon" 88 sizes="144x144" 89 href="/apple-touch-icon-144x144.png" 90 /> 91 <link 92 rel="apple-touch-icon" 93 sizes="152x152" 94 href="/apple-touch-icon-152x152.png" 95 /> 96 <link 97 rel="apple-touch-icon" 98 sizes="180x180" 99 href="/apple-touch-icon-180x180.png" 100 /> 101 <link 102 rel="mask-icon" 103 href="/assets/images/icon-swift.svg" 104 color="#F05339" 105 /> 106 <link 107 rel="alternate" 108 type="application/atom+xml" 109 title="Swift.org (Atom Feed)" 110 href="/atom.xml" 111 /> 112 113 114 <link rel="canonical" href="https://swift.org/" /> 115 116 117 <meta name="twitter:card" content="summary" /> 118 <meta name="twitter:site" content="@SwiftLang" /> 119 120 <meta name="twitter:title" content="Swift.org" /> 121 <meta 122 name="twitter:description" 123 content="Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns." 124 /> 125 126 127 <meta property="og:site_name" content="Swift.org" /> 128 <meta 129 property="og:image" 130 content="https://swift.org/apple-touch-icon-180x180.png" 131 /> 132 133 <meta property="og:title" content="Swift.org" /> 134 <meta property="og:url" content="https://swift.org" /> 135 <meta 136 property="og:description" 137 content="Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns." 138 /> 139 140 </head> 141 142 <body> 143
143<script> 144 // Set theme before body content to avoid flash of light styles in dark mode 145 setColorScheme(getStoredScheme()) 146 </script>
146 147 <main> 148 <header class="site-navigation"> 149 <div class="wrapper"> 150 <h1 class="logo"> 151 <a href="/" title="Swift.org"> <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 191.186 59.391"><path fill="#F05138" d="M59.387 16.45a82.463 82.463 0 0 0-.027-1.792c-.035-1.301-.112-2.614-.343-3.9-.234-1.307-.618-2.523-1.222-3.71a12.464 12.464 0 0 0-5.453-5.452C51.156.992 49.941.609 48.635.374c-1.288-.232-2.6-.308-3.902-.343a85.714 85.714 0 0 0-1.792-.027C42.23 0 41.52 0 40.813 0H18.578c-.71 0-1.419 0-2.128.004-.597.004-1.195.01-1.792.027-.325.009-.651.02-.978.036-.978.047-1.959.133-2.924.307-.98.176-1.908.436-2.811.81A12.503 12.503 0 0 0 3.89 3.89a12.46 12.46 0 0 0-2.294 3.158C.992 8.235.61 9.45.374 10.758c-.231 1.286-.308 2.599-.343 3.9a85.767 85.767 0 0 0-.027 1.792C-.001 17.16 0 17.869 0 18.578v22.235c0 .71 0 1.418.004 2.128.004.597.01 1.194.027 1.791.035 1.302.112 2.615.343 3.901.235 1.307.618 2.523 1.222 3.71a12.457 12.457 0 0 0 5.453 5.453c1.186.603 2.401.986 3.707 1.22 1.287.232 2.6.31 3.902.344.597.016 1.195.023 1.793.027.709.005 1.417.004 2.127.004h22.235c.709 0 1.418 0 2.128-.004.597-.004 1.194-.011 1.792-.027 1.302-.035 2.614-.112 3.902-.343 1.306-.235 2.521-.618 3.707-1.222a12.461 12.461 0 0 0 5.453-5.452c.604-1.187.987-2.403 1.222-3.71.231-1.286.308-2.6.343-3.9.016-.598.023-1.194.027-1.792.004-.71.004-1.419.004-2.129V18.578c0-.71 0-1.419-.004-2.128z"/><path fill="#FFF" d="m47.06 36.66-.004-.004c.066-.224.134-.446.191-.675 2.465-9.821-3.55-21.432-13.731-27.546 4.461 6.048 6.434 13.374 4.681 19.78-.156.571-.344 1.12-.552 1.653-.225-.148-.51-.316-.89-.527 0 0-10.127-6.252-21.103-17.312-.288-.29 5.852 8.777 12.822 16.14-3.284-1.843-12.434-8.5-18.227-13.802.712 1.187 1.558 2.33 2.489 3.43C17.573 23.932 23.882 31.5 31.44 37.314c-5.31 3.25-12.814 3.502-20.285.003a30.646 30.646 0 0 1-5.193-3.098c3.162 5.058 8.033 9.423 13.96 11.97 7.07 3.039 14.1 2.833 19.336.05l-.004.007c.024-.016.055-.032.08-.047.214-.116.428-.234.636-.358 2.516-1.306 7.485-2.63 10.152 2.559.654 1.27 2.041-5.46-3.061-11.74z"/><path id="logotype" d="M81.93 38.542c.465 4.12 4.394 6.822 9.852 6.822 5.185 0 8.924-2.701 8.924-6.44 0-3.22-2.265-5.185-7.478-6.495l-5.048-1.282c-7.26-1.801-10.534-5.077-10.534-10.48 0-6.658 5.813-11.27 14.082-11.27 8.022 0 13.726 4.639 13.917 11.325h-5.32c-.41-4.093-3.74-6.604-8.734-6.604-4.94 0-8.378 2.538-8.378 6.249 0 2.892 2.13 4.612 7.369 5.95l4.202 1.09c8.133 1.993 11.462 5.159 11.462 10.863 0 7.259-5.759 11.816-14.928 11.816-8.514 0-14.327-4.53-14.763-11.543h5.376zM140.049 49.43h-5.35l-6.249-21.776h-.109L122.12 49.43h-5.348l-7.914-28.518h5.184l5.513 22.896h.11l6.221-22.896h5.021l6.277 22.896h.11l5.512-22.896h5.13L140.05 49.43zM151.39 13.244c0-1.718 1.419-3.11 3.138-3.11 1.746 0 3.165 1.392 3.165 3.11 0 1.72-1.419 3.139-3.165 3.139a3.157 3.157 0 0 1-3.139-3.139zm.545 7.669h5.213V49.43h-5.213V20.913zM191.186 25.116v-4.204h-5.513v-6.821h-5.185v6.821h-9.964v-2.51c.027-2.538 1.01-3.603 3.357-3.603.764 0 1.528.083 2.156.192v-4.094a18.193 18.193 0 0 0-2.756-.218c-5.568 0-7.915 2.32-7.915 7.642v2.591h-3.983v4.204h3.983V49.43h5.185V25.116H180.488v16.838c0 5.512 2.101 7.64 7.559 7.64 1.174 0 2.51-.082 3.111-.218v-4.257c-.355.055-1.392.137-1.965.137-2.428 0-3.52-1.147-3.52-3.712V25.116h5.513z"/></svg> </a> 152 </h1> 153 154 <!-- desktop-navigation --> 155 <nav class="desktop-navigation" role="navigation"> 156 <ul class="navigation-items"> 157 158 <li class="nav-item "> 159 <a href="https://docs.swift.org/latest/documentation/" data-text="Docs"><span>Docs</span></a> 160 </li> 161 162 <li class="nav-item "> 163 <a href="/community/" data-text="Community"><span>Community</span></a> 164 </li> 165 166 <li class="nav-item "> 167 <a href="/packages/" data-text="Packages"><span>Packages</span></a> 168 </li> 169 170 <li class="nav-item "> 171 <a href="/blog/" data-text="Blog"><span>Blog</span></a> 172 </li> 173 174 <li class="border"> 175 <span /> 176 </li> 177 <li class="nav-item "> 178 <a href="/install" data-text="Install"><span>Install <span>(6.4.0)</span></span></a> 179 </li> 180</ul> 181 </nav> 182 183 <!-- toggle --> 184 <button 185 id="menu-toggle" 186 class="menu-item menu-toggle open" 187 aria-expanded="false" 188 aria-label="Toggle Navigation Menu" 189 /> 190 </div> 191 192 <!-- mobile-navigation --> 193 <nav class="mobile-navigation" role="navigation"> 194 <ul class="navigation-items"> 195 196 <li class="nav-item "> 197 <a href="https://docs.swift.org/latest/documentation/" data-text="Docs"><span>Docs</span></a> 198 </li> 199 200 <li class="nav-item "> 201 <a href="/community/" data-text="Community"><span>Community</span></a> 202 </li> 203 204 <li class="nav-item "> 205 <a href="/packages/" data-text="Packages"><span>Packages</span></a> 206 </li> 207 208 <li class="nav-item "> 209 <a href="/blog/" data-text="Blog"><span>Blog</span></a> 210 </li> 211 212 <li class="border"> 213 <span /> 214 </li> 215 <li class="nav-item "> 216 <a href="/install" data-text="Install"><span>Install <span>(6.4.0)</span></span></a> 217 </li> 218</ul> 219 </nav> 220 </header> 221 <div class="animation-container">
222 <canvas id="purple-swoop" width="1248" height="1116"></canvas> 223 <canvas id="white-swoop-1" width="1248" height="1116"></canvas> 224 <canvas id="orange-swoop-top" width="1248" height="1116"></canvas> 225 <canvas id="orange-swoop-bottom" width="1248" height="1116"></canvas> 226 <canvas id="white-swoop-2" width="1248" height="1116"></canvas> 227 <canvas id="bird" width="1248" height="1116"></canvas> 228</div> 229<section id="what-is-swift" class="section"> 230 <div class="hero-content"> 231 <h1 class="title-0">Swift is the powerful, flexible,<br /> multiplatform programming language.</h1> 232 <div class="sub-text"><h2>Fast. Expressive. Safe.</h2></div> 233 <a href="/install/" data-text="Install">Install</a> 234 <p>Tools for Linux, macOS, and Windows</p> 235 <h2>Create using Swift</h2> 236 </div> 237 <nav aria-label="Get started with Swift"> 238 <ul class="primary-links"> 239 240 <li> 241 <a href="/get-started/cloud-services" data-text="Cloud Services"> 242 <i class="cloud"></i> 243 <div> 244 <h3 class="title">Cloud Services</h3> 245 <p class="subtitle">Run performant services on Linux and deploy to the cloud.</p> 246 </div> 247 </a> 248 </li> 249 250 <li> 251 <a href="/get-started/command-line-tools" data-text="Command Line"> 252 <i class="command-line"></i> 253 <div> 254 <h3 class="title">Command Line</h3> 255 <p class="subtitle">Create powerful CLI tools that are fast and memory safe.</p> 256 </div> 257 </a> 258 </li> 259 260 <li> 261 <a href="/get-started/embedded" data-text="Embedded"> 262 <i class="chip"></i> 263 <div> 264 <h3 class="title">Embedded</h3> 265 <p class="subtitle">Develop efficient, reliable firmware for devices like microcontrollers.</p> 266 </div> 267 </a> 268 </li> 269 270 </ul> 271 <ul class="secondary-links"> 272 273 <li> 274 <a href="/getting-started/swiftui/" data-text="iOS apps"> 275 <h4 class="title">iOS apps</h4> 276 </a> 277 </li> 278 279 <li> 280 <a href="/blog/swift-everywhere-windows-interop/" data-text="Windows apps"> 281 <h4 class="title">Windows apps</h4> 282 </a> 283 </li> 284 285 <li> 286 <a href="/blog/mlx-swift/" data-text="Machine learning and AI"> 287 <h4 class="title">Machine Learning & AI</h4> 288 </a> 289 </li> 290 291 <li> 292 <a href="/getting-started/library-swiftpm/" data-text="Packages"> 293 <h4 class="title">Packages</h4> 294 </a> 295 </li> 296 297 </ul> 298 </nav> 299 <div class="swoop swoop-0 swoop-anim"></div> 300</section> 301 302<section id="pillar-1" class="section pillar"> 303 <div class="pillar-wrapper content-wrapper"> 304 <p class="pillar-intro"> 305 Swift is designed to be the language you reach for at every layer of the software stack. Whether you are building embedded firmware, full-featured mobile apps, or internet-scale services, Swift delivers expressive language features and APIs, performance control when you need it, and strong safety guarantees. 306 </p> 307 </div> 308 309 310<div class="callout with-code"> 311 <div class="text"> 312 313 <h3 class="callout-title title-1">Fast</h3> 314 315 <p class="callout-subtitle title-2">Build with speed and performance.</p> 316 317 <p class="callout-text body">Swift meets the most performance-critical needs, while allowing your code to remain expressive and approachable. Swift compiles directly to native code and provides predictable memory management.</p> 318 319 </div> 320 321 <!-- prettier-ignore --> 322 <div class="code"> 323 <div class="language-swift highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c1">// Vectorized check that a utf8 buffer is all ASCII</span> 324<span class="kd">func</span> <span class="nf">isASCII</span><span class="p">(</span><span class="nv">utf8</span><span class="p">:</span> <span class="kt">Span</span><span class="o"><</span><span class="kt">SIMD16</span><span class="o"><</span><span class="kt">UInt8</span><span class="o">>></span><span class="p">)</span> <span class="o">-></span> <span class="kt">
324Bool</span> <span class="p">{</span> 325 <span class="c1">// combine all the code units into a single entry</span> 326 <span class="n">utf8</span><span class="o">.</span><span class="n">indices</span><span class="o">.</span><span class="nf">reduce</span><span class="p">(</span><span class="nv">into</span><span class="p">:</span> <span class="kt">SIMD16</span><span class="p">())</span> <span class="p">{</span> 327 <span class="c1">// fold each set of code units into the result</span> 328 <span class="nv">$0</span> <span class="o">|=</span> <span class="n">utf8</span><span class="p">[</span><span class="nv">$1</span><span class="p">]</span> 329 <span class="p">}</span> 330 <span class="c1">// check that every entry is in the ASCII range</span> 331 <span class="o">.</span><span class="nf">max</span><span class="p">()</span> <span class="o"><</span> <span class="mh">0x80</span> 332<span class="p">}</span> 333</code></pre></div> </div> 334 </div> 335 336</div> 337 338 339 340<div class="callout reverse with-code"> 341 <div class="text"> 342 343 <h3 class="callout-title title-1">Expressive</h3> 344 345 <p class="callout-subtitle title-2">Concise code. Powerful results.</p> 346 347 <p class="callout-text body">Swift empowers you to write advanced code in a concise, readable syntax that even a beginner can understand. Swift supports object-oriented, functional, and generic programming patterns that experienced developers are familiar with. Its progressive disclosure allows you to pick up the language quickly, taking advantage of power-user features as you need them.</p> 348 349 </div> 350 351 <!-- prettier-ignore --> 352 <div class="code"> 353 <div class="language-swift highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kd">import</span> <span class="kt">ArgumentParser</span> 354 355<span class="c1">// Complete implementation of a command line tool</span> 356<span class="kd">@main</span> <span class="kd">struct</span> <span class="kt">Describe</span><span class="p">:</span> <span class="kt">ParsableCommand</span> <span class="p">{</span> 357 <span class="kd">@Argument</span><span class="p">(</span><span class="nv">help</span><span class="p">:</span> <span class="s">"The values to describe."</span><span class="p">)</span> 358 <span class="k">var</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="kt">Double</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span> 359 360 <span class="k">mutating</span> <span class="kd">func</span> <span class="nf">run</span><span class="p">()</span> <span class="p">{</span> 361 <span class="n">values</span><span class="o">.</span><span class="nf">sort</span><span class="p">()</span> 362 <span class="k">let</span> <span class="nv">total</span> <span class="o">=</span> <span class="n">values</span><span class="o">.</span><span class="nf">reduce</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="o">+</span><span class="p">)</span> 363 364 <span class="nf">print</span><span class="p">(</span> 365 <span class="s">""" 366 Smallest: </span><span class="se">\(</span><span class="n">values</span><span class="o">.</span><span class="n">first</span><span class="p">,</span> <span class="k">default</span><span class="p">:</span> <span class="s">"No value"</span><span class="se">)</span><span class="s"> 367 Total: </span><span class="se">\(</span><span class="n">total</span><span class="se">)</span><span class="s"> 368 Mean: </span><span class="se">\(</span><span class="n">total</span> <span class="o">/</span> <span class="kt">Double</span><span class="p">(</span><span class="n">values</span><span class="o">.</span><span class="n">count</span><span class="p">)</span><span class="se">)</span><span class="s"> 369 """</span><span class="p">)</span> 370 <span class="p">}</span> 371<span class="p">}</span> 372</code></pre></div> </div> 373 </div> 374 375</div> 376 377 378 379<div class="callout with-code"> 380 <div class="text"> 381 382 <h3 class="callout-title title-1">Safe</h3> 383 384 <p class="callout-subtitle title-2">Protect memory safety.</p> 385 386 <p class="callout-text body">Swift prioritizes safety and eliminates entire classes of bugs and vulnerabilities by its design. Memory safety and data race safety are core features of the language, making them straightforward to integrate into your codebase. Safety is required at compile time, before your applications are ever run.</p> 387 388 </div> 389 390 <!-- prettier-ignore --> 391 <div class="code"> 392 <div class="language-swift highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">let</span> <span class="nv">transform</span> <span class="o">=</span> <span class="kt">Affine2DTransformBuilder</span><span class="p">()</span> 393 <span class="o">.</span><span class="nf">translate</span><span class="p">([</span><span class="mf">10.0</span><span class="p">,</span> <span class="mf">20.0</span><span class="p">]</span><span class="o">.</span><span class="n">span</span><span class="p">)</span> 394 <span class="o">.</span><span class="nf">rotate</span><span class="p">(</span><span class="mf">30.0</span><span class="p">)</span> 395 <span class="o">.</span><span class="nf">build</span><span class="p">()</span> 396 397<span class="k">let</span> <span class="nv">v</span> <span class="o">=</span> <span class="p">[</span><span class="mf">11.0</span><span class="p">,</span> <span class="mf">22.0</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">]</span> 398 399<span class="c1">// Call C functions safely with Swift types</span> 400<span class="k">let</span> <span class="nv">u</span> <span class="o">=</span> <span class="nf">mat_vec_mul</span><span class="p">(</span> 401 <span class="n">transform</span><span class="p">,</span> <span class="n">rowCount</span><span class="p">,</span> <span class="n">colCount</span><span class="p">,</span> <span class="n">v</span><span class="o">.</span><span class="n">span</span><span class="p">,</span> <span class="n">allocator</span><span class="p">)</span> 402<span class="k">let</span> <span class="nv">uMagnitude</span> <span class="o">=</span> <span class="nf">vec_mag</span><span class="p">(</span><span class="n">u</span><span class="o">.</span><span class="n">span</span><span class="p">)</span> 403</code></pre></div> </div> 404 </div> 405 406</div> 407 408 409 410 <div class="swoop swoop-1 swoop-anim"></div> 411 412</section> 413 414<section id="pillar-2" class="section pillar"> 415 416 417<div class="callout with-code"> 418 <div class="text"> 419 420 <h3 class="callout-title title-1">Interoperable</h3> 421 422 <p class="callout-subtitle title-2">Adopt Swift in existing code incrementally.</p> 423 424 <p class="callout-text body">
424Swift provides unmatched interoperability, with its combination of natively understanding C and C++ types without the need for foreign function interfaces, and offering bridging for bi-directional access. Swiftâs interoperability features allow you to incrementally adopt the language into existing codebases without requiring a full code rewrite.</p> 425 426 </div> 427 428 <!-- prettier-ignore --> 429 <div class="code"> 430 <div class="language-swift highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kd">import</span> <span class="kt">CxxStdlib</span> 431 432<span class="c1">// Use types from C++, like std::string, directly</span> 433<span class="k">let</span> <span class="nv">beverages</span><span class="p">:</span> <span class="p">[</span><span class="n">std</span><span class="o">.</span><span class="n">string</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span> 434 <span class="s">"apple juice"</span><span class="p">,</span> <span class="s">"grape juice"</span><span class="p">,</span> <span class="s">"green tea"</span> 435<span class="p">]</span> 436 437<span class="k">let</span> <span class="nv">juices</span> <span class="o">=</span> <span class="n">beverages</span><span class="o">.</span><span class="n">filter</span> <span class="p">{</span> <span class="n">cppstring</span> <span class="k">in</span> 438 <span class="c1">// and call methods directly on C++ types</span> 439 <span class="n">cppstring</span><span class="o">.</span><span class="nf">find</span><span class="p">(</span><span class="o">.</span><span class="nf">init</span><span class="p">(</span><span class="s">"juice"</span><span class="p">))</span> <span class="o">!=</span> <span class="n">std</span><span class="o">.</span><span class="n">string</span><span class="o">.</span><span class="n">npos</span> 440<span class="p">}</span> 441</code></pre></div> </div> 442 </div> 443 444</div> 445 446 447 448<div class="callout reverse with-code"> 449 <div class="text"> 450 451 <h3 class="callout-title title-1">Adaptable</h3> 452 453 <p class="callout-subtitle title-2">From microcontrollers to servers.</p> 454 455 <p class="callout-text body">Spanning from embedded and kernel to server and apps, Swift excels no matter where itâs used, from constrained environments like firmware, where every byte counts, to cloud services handling billions of requests a day.</p> 456 457 </div> 458 459 <!-- prettier-ignore --> 460 <div class="code"> 461 <div class="language-swift highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c1">// Configure UART by direct register manipulation</span> 462<span class="c1">// using Swift MMIO. Enables RX and TX, and sets</span> 463<span class="c1">// baud rate to 115,200. Compiles down to an</span> 464<span class="c1">// optimal assembly sequence with no overhead.</span> 465 466<span class="n">usart1</span><span class="o">.</span><span class="n">brr</span><span class="o">.</span><span class="n">modify</span> <span class="p">{</span> <span class="n">rw</span> <span class="k">in</span> 467 <span class="n">rw</span><span class="o">.</span><span class="n">raw</span><span class="o">.</span><span class="n">brr_field</span> <span class="o">=</span> <span class="mi">16_000_000</span> <span class="o">/</span> <span class="mi">115_200</span> 468<span class="p">}</span> 469 470<span class="n">usart1</span><span class="o">.</span><span class="n">cr1</span><span class="o">.</span><span class="n">modify</span> <span class="p">{</span> <span class="n">rw</span> <span class="k">in</span> 471 <span class="n">rw</span><span class="o">.</span><span class="n">ue</span> <span class="o">=</span> <span class="o">.</span><span class="kt">Enabled</span> 472 <span class="n">rw</span><span class="o">.</span><span class="n">re</span> <span class="o">=</span> <span class="o">.</span><span class="kt">Enabled</span> 473 <span class="n">rw</span><span class="o">.</span><span class="n">te</span> <span class="o">=</span> <span class="o">.</span><span class="kt">Enabled</span> 474<span class="p">}</span> 475</code></pre></div> </div> 476 </div> 477 478</div> 479 480 481 <div class="swoop swoop-2 swoop-anim"></div> 482</section> 483 484<section id="pillar-3" class="section pillar"> 485 486 487<div class="callout "> 488 <div class="text"> 489 490 <h3 class="callout-title title-1">Open Source</h3> 491 492 <p class="callout-subtitle title-2">Contribute and get involved.</p> 493 494 </div> 495 496 <div class="links"> 497 498 <a href="https://github.com/swiftlang">View SwiftLang on GitHub</a> 499 500 <a href="https://forums.swift.org">Join the forums</a> 501 502 </div> 503 504</div> 505 506 507</section> 508 <footer class="global-footer"> 509 <div class="container"> 510 <div class="footer-navigation-container"> 511 <nav aria-label="Main"> 512 <a class="logo" href="/" title="Swift.org"> <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 191.186 59.391"><path fill="#F05138" d="M59.387 16.45a82.463 82.463 0 0 0-.027-1.792c-.035-1.301-.112-2.614-.343-3.9-.234-1.307-.618-2.523-1.222-3.71a12.464 12.464 0 0 0-5.453-5.452C51.156.992 49.941.609 48.635.374c-1.288-.232-2.6-.308-3.902-.343a85.714 85.714 0 0 0-1.792-.027C42.23 0 41.52 0 40.813 0H18.578c-.71 0-1.419 0-2.128.004-.597.004-1.195.01-1.792.027-.325.009-.651.02-.978.036-.978.047-1.959.133-2.924.307-.98.176-1.908.436-2.811.81A12.503 12.503 0 0 0 3.89 3.89a12.46 12.46 0 0 0-2.294 3.158C.992 8.235.61 9.45.374 10.758c-.231 1.286-.308 2.599-.343 3.9a85.767 85.767 0 0 0-.027 1.792C-.001 17.16 0 17.869 0 18.578v22.235c0 .71 0 1.418.004 2.128.004.597.01 1.194.027 1.791.035 1.302.112 2.615.343 3.901.235 1.307.618 2.523 1.222 3.71a12.457 12.457 0 0 0 5.453 5.453c1.186.603 2.401.986 3.707 1.22 1.287.232 2.6.31 3.902.344.597.016 1.195.023 1.793.027.709.005 1.417.004 2.127.004h22.235c.709 0 1.418 0 2.128-.004.597-.004 1.194-.011 1.792-.027 1.302-.035 2.614-.112 3.902-.343 1.306-.235 2.521-.618 3.707-1.222a12.461 12.461 0 0 0 5.453-5.452c.604-1.187.987-2.403 1.222-3.71.231-1.286.308-2.6.343-3.9.016-.598.023-1.194.027-1.792.004-.71.004-1.419.004-2.129V18.578c0-.71 0-1.419-.004-2.128z"/><path fill="#FFF" d="m47.06 36.66-.004-.004c.066-.224.134-.446.191-.675 2.465-9.821-3.55-21.432-13.731-27.546 4.461 6.048 6.434 13.374 4.681 19.78-.156.571-.344 1.12-.552 1.653-.225-.148-.51-.316-.89-.527 0 0-10.127-6.252-21.103-17.312-.288-.29 5.852 8.777 12.822 16.14-3.284-1.843-12.434-8.5-18.227-13.802.712 1.187 1.558 2.33 2.489 3.43C17.573 23.932 23.882 31.5 31.44 37.314c-5.31 3.25-12.814 3.502-20.285.003a30.646 30.646 0 0 1-5.193-3.098c3.162 5.058 8.033 9.423 13.96 11.97 7.07 3.039 14.1 2.833 19.336.05l-.004.007c.024-.016.055-.032.08-.047.214-.116.428-.234.636-.358 2.516-1.306 7.485-2.63 10.152 2.559.654 1.27 2.041-5.46-3.061-11.74z"/><path id="logotype" d="M81.93 38.542c.465 4.12 4.394 6.822 9.852 6.822 5.185 0 8.924-2.701 8.924-6.44 0-3.22-2.265-5.185-7.478-6.495l-5.048-1.282c-7.26-1.801-10.534-5.077-10.534-10.48 0-6.658 5.813
512-11.27 14.082-11.27 8.022 0 13.726 4.639 13.917 11.325h-5.32c-.41-4.093-3.74-6.604-8.734-6.604-4.94 0-8.378 2.538-8.378 6.249 0 2.892 2.13 4.612 7.369 5.95l4.202 1.09c8.133 1.993 11.462 5.159 11.462 10.863 0 7.259-5.759 11.816-14.928 11.816-8.514 0-14.327-4.53-14.763-11.543h5.376zM140.049 49.43h-5.35l-6.249-21.776h-.109L122.12 49.43h-5.348l-7.914-28.518h5.184l5.513 22.896h.11l6.221-22.896h5.021l6.277 22.896h.11l5.512-22.896h5.13L140.05 49.43zM151.39 13.244c0-1.718 1.419-3.11 3.138-3.11 1.746 0 3.165 1.392 3.165 3.11 0 1.72-1.419 3.139-3.165 3.139a3.157 3.157 0 0 1-3.139-3.139zm.545 7.669h5.213V49.43h-5.213V20.913zM191.186 25.116v-4.204h-5.513v-6.821h-5.185v6.821h-9.964v-2.51c.027-2.538 1.01-3.603 3.357-3.603.764 0 1.528.083 2.156.192v-4.094a18.193 18.193 0 0 0-2.756-.218c-5.568 0-7.915 2.32-7.915 7.642v2.591h-3.983v4.204h3.983V49.43h5.185V25.116H180.488v16.838c0 5.512 2.101 7.64 7.559 7.64 1.174 0 2.51-.082 3.111-.218v-4.257c-.355.055-1.392.137-1.965.137-2.428 0-3.52-1.147-3.52-3.712V25.116h5.513z"/></svg> </a> 513 514 <ul> 515 516 <li class="item "> 517 <a href="/documentation/" data-text="Docs">Docs</a> 518 </li> 519 520 <li class="item "> 521 <a href="/community/" data-text="Community">Community</a> 522 </li> 523 524 <li class="item "> 525 <a href="/packages/" data-text="Packages">Packages</a> 526 </li> 527 528 <li class="item "> 529 <a href="/blog/" data-text="Blog">Blog</a> 530 </li> 531 532 <li class="item "> 533 <a href="/install/" data-text="Install">Install</a> 534 </li> 535 536 </ul> 537</nav> 538 539 <nav aria-label="Tools"> 540 <h3>Tools</h3> 541 <ul> 542 543 <li class="item "> 544 <a href="https://developer.apple.com/xcode/" data-text="Xcode">Xcode</a> 545 </li> 546 547 <li class="item "> 548 <a href="/documentation/articles/getting-started-with-vscode-swift.html" data-text="Visual Studio Code">Visual Studio Code</a> 549 </li> 550 551 <li class="item "> 552 <a href="/documentation/articles/zero-to-swift-emacs.html" data-text="Emacs">Emacs</a> 553 </li> 554 555 <li class="item "> 556 <a href="/documentation/articles/zero-to-swift-nvim.html" data-text="Neovim">Neovim</a> 557 </li> 558 559 <li class="item "> 560 <a href="/documentation/articles/getting-started-with-cursor-swift.html" data-text="Cursor">Cursor</a> 561 </li> 562 563 <li class="item "> 564 <a href="https://github.com/swiftlang/sourcekit-lsp/tree/main/Documentation/Editor%20Integration.md" data-text="Other Editors">Other Editors</a> 565 </li> 566 567 </ul> 568</nav> 569 570 <nav aria-label="Community"> 571 <h3>Community</h3> 572 <ul> 573 574 <li class="item "> 575 <a href="/community/" data-text="Overview">Overview</a> 576 </li> 577 578 <li class="item "> 579 <a href="/swift-evolution/" data-text="Swift Evolution">Swift Evolution</a> 580 </li> 581 582 <li class="item "> 583 <a href="/diversity/" data-text="Diversity">Diversity</a> 584 </li> 585 586 <li class="item "> 587 <a href="/mentorship/" data-text="Mentorship">Mentorship</a> 588 </li> 589 590 <li class="item "> 591 <a href="/contributing/" data-text="Contributing">Contributing</a> 592 </li> 593 594 </ul> 595</nav> 596 597 <nav class="governance" aria-label="Governance"> 598 <h3>Governance</h3> 599 <ul> 600 601 <li class="item "> 602 <a href="/code-of-conduct/" data-text="Code of Conduct">Code of Conduct</a> 603 </li> 604 605 <li class="item "> 606 <a href="/legal/license.html" data-text="License">License</a> 607 </li> 608 609 <li class="item "> 610 <a href="/security/" data-text="Security">Security</a> 611 </li> 612 613 </ul> 614 615 <form 616 class="color-scheme-toggle" 617 role="radiogroup" 618 tabindex="0" 619 id="color-scheme-toggle" 620> 621 <legend class="visuallyhidden">Color scheme preference</legend> 622 <label class="scheme-light" for="scheme-light"> 623 <input 624 id="scheme-light" 625 type="radio" 626 name="color-scheme-preference" 627 value="light" 628 /> 629 <span class="color-scheme-toggle-label">Light</span> 630 </label> 631 <label class="scheme-dark" for="scheme-dark"> 632 <input 633 id="scheme-dark" 634 type="radio" 635 name="color-scheme-preference" 636 value="dark" 637 /> 638 <span class="color-scheme-toggle-label">Dark</span> 639 </label> 640 <label class="scheme-auto-wrapper" for="scheme-auto" id="scheme-auto-wrapper"> 641 <input 642 id="scheme-auto" 643 type="radio" 644 name="color-scheme-preference" 645 value="auto" 646 /> 647 <span class="color-scheme-toggle-label">Auto</span> 648 </label> 649</form> 650</nav> 651 </div> 652 653 <div class="sub-navigation"> 654 <div class="legals"> 655 <div class="copyright"> 656 657 <p> 658 Copyright © 2026 Apple Inc. All rights reserved. 659 </p> 660 <p> 661 Swift and the Swift logo are trademarks of Apple Inc. 662 </p> 663 664</div> 665 <nav aria-label="Legals"> 666 <ul> 667 668 <li class="item "> 669 <a href="//www.apple.com/privacy/privacy-policy/">Privacy Policy</a> 670 </li> 671 672 <li class="item "> 673 <a href="//www.apple.com/legal/privacy/en-ww/cookies/">Cookies</a> 674 </li> 675 676 <li class="item "> 677 <a href="/openapi">API</a> 678 </li> 679 680 </ul> 681</nav> 682 </div> 683 684 <nav class="socials" aria-label="Socials"> 685 <ul> 686 687 <li class="item "> 688 <a href="https://x.com/swiftlang" rel="me" title="Follow @SwiftLang on X"><i class="x"></i></a> 689 </li> 690 691 <li class="item "> 692 <a href="https://bsky.app/profile/swift.org" rel="me" title="Follow @swift.org on Bluesky"><i class="bluesky"></i></a> 693 </li> 694 695 <li class="item "> 696 <a href="https://mastodon.social/@swiftlang" rel="me" title="Follow @swiftLang on Mastodon"><i class="mastodon"></i></a> 697 </li> 698 699 <li class="item "> 700 <a href="/atom.xml" rel="me" title="Subscribe to Site Updates"><i class="feed"></i></a> 701 </li> 702 703 </ul> 704</nav> 705 706 </div> 707 </div> 708</footer> 709 710 </main> 711 712
712<script src="/assets/javascripts/new-javascripts/application.js"></script>
712 713 714
714<script src="/assets/javascripts/new-javascripts/landing.js"></script>
714 715 716 <!-- metrics --> 717
717<script> 718 /* RSID: */ 719 var s_account = 'awdswiftorg' 720 </script>
720 721 722
722<script src="https://developer.apple.com/assets/metrics/scripts/analytics.js"></script>
722 723
723<script> 724 s.pageName = AC && AC.Tracking && AC.Tracking.pageName() 725 726 /************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/ 727 var s_code = s.t() 728 if (s_code) document.write(s_code) 729 </script>
729 730 731 <!-- /metrics --> 732 </body> 733</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.