| ofs | hex dump | ascii |
|---|
| 0000 | 50 4b 03 04 14 00 00 00 00 00 00 00 21 52 6f 61 ab 2c 14 00 00 00 14 00 00 00 08 00 00 00 6d 69 | PK..........!Roa.,............mi |
| 0020 | 6d 65 74 79 70 65 61 70 70 6c 69 63 61 74 69 6f 6e 2f 65 70 75 62 2b 7a 69 70 50 4b 03 04 14 00 | metypeapplication/epub+zipPK.... |
| 0040 | 00 00 00 00 00 00 21 52 6f 92 d0 0a fc 00 00 00 fc 00 00 00 16 00 00 00 4d 45 54 41 2d 49 4e 46 | ......!Ro...............META-INF |
| 0060 | 2f 63 6f 6e 74 61 69 6e 65 72 2e 78 6d 6c 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 22 31 2e 30 | /container.xml<?xml.version="1.0 |
| 0080 | 22 20 65 6e 63 6f 64 69 6e 67 3d 22 75 74 66 2d 38 22 3f 3e 0a 3c 63 6f 6e 74 61 69 6e 65 72 20 | ".encoding="utf-8"?>.<container. |
| 00a0 | 76 65 72 73 69 6f 6e 3d 22 31 2e 30 22 20 78 6d 6c 6e 73 3d 22 75 72 6e 3a 6f 61 73 69 73 3a 6e | version="1.0".xmlns="urn:oasis:n |
| 00c0 | 61 6d 65 73 3a 74 63 3a 6f 70 65 6e 64 6f 63 75 6d 65 6e 74 3a 78 6d 6c 6e 73 3a 63 6f 6e 74 61 | ames:tc:opendocument:xmlns:conta |
| 00e0 | 69 6e 65 72 22 3e 0a 20 20 3c 72 6f 6f 74 66 69 6c 65 73 3e 0a 20 20 20 20 3c 72 6f 6f 74 66 69 | iner">...<rootfiles>.....<rootfi |
| 0100 | 6c 65 20 66 75 6c 6c 2d 70 61 74 68 3d 22 4f 45 42 50 53 2f 63 6f 6e 74 65 6e 74 2e 6f 70 66 22 | le.full-path="OEBPS/content.opf" |
| 0120 | 20 6d 65 64 69 61 2d 74 79 70 65 3d 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6f 65 62 70 73 2d 70 | .media-type="application/oebps-p |
| 0140 | 61 63 6b 61 67 65 2b 78 6d 6c 22 2f 3e 0a 20 20 3c 2f 72 6f 6f 74 66 69 6c 65 73 3e 0a 3c 2f 63 | ackage+xml"/>...</rootfiles>.</c |
| 0160 | 6f 6e 74 61 69 6e 65 72 3e 0a 50 4b 03 04 14 00 00 00 00 00 00 00 21 52 4c 15 6a cd a7 02 00 00 | ontainer>.PK..........!RL.j..... |
| 0180 | a7 02 00 00 11 00 00 00 4f 45 42 50 53 2f 63 6f 6e 74 65 6e 74 2e 6f 70 66 3c 3f 78 6d 6c 20 76 | ........OEBPS/content.opf<?xml.v |
| 01a0 | 65 72 73 69 6f 6e 3d 22 31 2e 30 22 20 65 6e 63 6f 64 69 6e 67 3d 22 75 74 66 2d 38 22 3f 3e 0a | ersion="1.0".encoding="utf-8"?>. |
| 01c0 | 3c 70 61 63 6b 61 67 65 20 78 6d 6c 6e 73 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e 69 64 70 66 2e | <package.xmlns="http://www.idpf. |
| 01e0 | 6f 72 67 2f 32 30 30 37 2f 6f 70 66 22 20 76 65 72 73 69 6f 6e 3d 22 33 2e 30 22 20 75 6e 69 71 | org/2007/opf".version="3.0".uniq |
| 0200 | 75 65 2d 69 64 65 6e 74 69 66 69 65 72 3d 22 70 75 62 2d 69 64 22 3e 0a 20 20 3c 6d 65 74 61 64 | ue-identifier="pub-id">...<metad |
| 0220 | 61 74 61 20 78 6d 6c 6e 73 3a 64 63 3d 22 68 74 74 70 3a 2f 2f 70 75 72 6c 2e 6f 72 67 2f 64 63 | ata.xmlns:dc="http://purl.org/dc |
| 0240 | 2f 65 6c 65 6d 65 6e 74 73 2f 31 2e 31 2f 22 3e 0a 20 20 20 20 3c 64 63 3a 69 64 65 6e 74 69 66 | /elements/1.1/">.....<dc:identif |
| 0260 | 69 65 72 20 69 64 3d 22 70 75 62 2d 69 64 22 3e 75 72 6e 3a 7a 69 67 6c 61 6e 67 2d 64 6f 63 73 | ier.id="pub-id">urn:ziglang-docs |
| 0280 | 3a 30 2e 38 2e 31 3c 2f 64 63 3a 69 64 65 6e 74 69 66 69 65 72 3e 0a 20 20 20 20 3c 64 63 3a 74 | :0.8.1</dc:identifier>.....<dc:t |
| 02a0 | 69 74 6c 65 3e 5a 69 67 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 20 28 30 2e 38 | itle>Zig.Language.Reference.(0.8 |
| 02c0 | 2e 31 29 3c 2f 64 63 3a 74 69 74 6c 65 3e 0a 20 20 20 20 3c 64 63 3a 6c 61 6e 67 75 61 67 65 3e | .1)</dc:title>.....<dc:language> |
| 02e0 | 65 6e 3c 2f 64 63 3a 6c 61 6e 67 75 61 67 65 3e 0a 20 20 20 20 3c 6d 65 74 61 20 70 72 6f 70 65 | en</dc:language>.....<meta.prope |
| 0300 | 72 74 79 3d 22 64 63 74 65 72 6d 73 3a 6d 6f 64 69 66 69 65 64 22 3e 32 30 32 31 2d 30 31 2d 30 | rty="dcterms:modified">2021-01-0 |
| 0320 | 31 54 30 30 3a 30 30 3a 30 30 5a 3c 2f 6d 65 74 61 3e 0a 20 20 3c 2f 6d 65 74 61 64 61 74 61 3e | 1T00:00:00Z</meta>...</metadata> |
| 0340 | 0a 20 20 3c 6d 61 6e 69 66 65 73 74 3e 0a 20 20 20 20 3c 69 74 65 6d 20 69 64 3d 22 6e 61 76 22 | ...<manifest>.....<item.id="nav" |
| 0360 | 20 68 72 65 66 3d 22 6e 61 76 2e 78 68 74 6d 6c 22 20 6d 65 64 69 61 2d 74 79 70 65 3d 22 61 70 | .href="nav.xhtml".media-type="ap |
| 0380 | 70 6c 69 63 61 74 69 6f 6e 2f 78 68 74 6d 6c 2b 78 6d 6c 22 20 70 72 6f 70 65 72 74 69 65 73 3d | plication/xhtml+xml".properties= |
| 03a0 | 22 6e 61 76 22 2f 3e 0a 20 20 20 20 3c 69 74 65 6d 20 69 64 3d 22 69 6e 64 65 78 22 20 68 72 65 | "nav"/>.....<item.id="index".hre |
| 03c0 | 66 3d 22 69 6e 64 65 78 2e 78 68 74 6d 6c 22 20 6d 65 64 69 61 2d 74 79 70 65 3d 22 61 70 70 6c | f="index.xhtml".media-type="appl |
| 03e0 | 69 63 61 74 69 6f 6e 2f 78 68 74 6d 6c 2b 78 6d 6c 22 2f 3e 0a 20 20 3c 2f 6d 61 6e 69 66 65 73 | ication/xhtml+xml"/>...</manifes |
| 0400 | 74 3e 0a 20 20 3c 73 70 69 6e 65 3e 0a 20 20 20 20 3c 69 74 65 6d 72 65 66 20 69 64 72 65 66 3d | t>...<spine>.....<itemref.idref= |
| 0420 | 22 69 6e 64 65 78 22 2f 3e 0a 20 20 3c 2f 73 70 69 6e 65 3e 0a 3c 2f 70 61 63 6b 61 67 65 3e 0a | "index"/>...</spine>.</package>. |
| 0440 | 50 4b 03 04 14 00 00 00 00 00 00 00 21 52 23 54 71 8d 86 01 00 00 86 01 00 00 0f 00 00 00 4f 45 | PK..........!R#Tq.............OE |
| 0460 | 42 50 53 2f 6e 61 76 2e 78 68 74 6d 6c 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 22 31 2e 30 22 | BPS/nav.xhtml<?xml.version="1.0" |
| 0480 | 20 65 6e 63 6f 64 69 6e 67 3d 22 75 74 66 2d 38 22 3f 3e 0a 3c 68 74 6d 6c 20 78 6d 6c 6e 73 3d | .encoding="utf-8"?>.<html.xmlns= |
| 04a0 | 22 68 74 74 70 3a 2f 2f 77 77 77 2e 77 33 2e 6f 72 67 2f 31 39 39 39 2f 78 68 74 6d 6c 22 20 78 | "http://www.w3.org/1999/xhtml".x |
| 04c0 | 6d 6c 6e 73 3a 65 70 75 62 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e 69 64 70 66 2e 6f 72 67 2f 32 | mlns:epub="http://www.idpf.org/2 |
| 04e0 | 30 30 37 2f 6f 70 73 22 20 6c 61 6e 67 3d 22 65 6e 22 3e 0a 20 20 3c 68 65 61 64 3e 3c 74 69 74 | 007/ops".lang="en">...<head><tit |
| 0500 | 6c 65 3e 5a 69 67 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 20 28 30 2e 38 2e 31 | le>Zig.Language.Reference.(0.8.1 |
| 0520 | 29 3c 2f 74 69 74 6c 65 3e 3c 2f 68 65 61 64 3e 0a 20 20 3c 62 6f 64 79 3e 0a 20 20 20 20 3c 6e | )</title></head>...<body>.....<n |
| 0540 | 61 76 20 65 70 75 62 3a 74 79 70 65 3d 22 74 6f 63 22 20 69 64 3d 22 74 6f 63 22 3e 0a 20 20 20 | av.epub:type="toc".id="toc">.... |
| 0560 | 20 20 20 3c 68 31 3e 43 6f 6e 74 65 6e 74 73 3c 2f 68 31 3e 0a 20 20 20 20 20 20 3c 6f 6c 3e 0a | ...<h1>Contents</h1>.......<ol>. |
| 0580 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 69 6e 64 65 78 2e 78 68 74 6d 6c | ........<li><a.href="index.xhtml |
| 05a0 | 22 3e 5a 69 67 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 20 28 30 2e 38 2e 31 29 | ">Zig.Language.Reference.(0.8.1) |
| 05c0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 6f 6c 3e 0a 20 20 20 20 3c 2f 6e 61 76 3e | </a></li>.......</ol>.....</nav> |
| 05e0 | 0a 20 20 3c 2f 62 6f 64 79 3e 0a 3c 2f 68 74 6d 6c 3e 0a 50 4b 03 04 14 00 00 00 00 00 00 00 21 | ...</body>.</html>.PK..........! |
| 0600 | 52 48 cc 38 b3 06 36 0c 00 06 36 0c 00 11 00 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 2e 78 68 74 | RH.8..6...6......OEBPS/index.xht |
| 0620 | 6d 6c 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 22 31 2e 30 22 20 65 6e 63 6f 64 69 6e 67 3d 22 | ml<?xml.version="1.0".encoding=" |
| 0640 | 75 74 66 2d 38 22 3f 3e 0a 0a 3c 68 74 6d 6c 20 78 6d 6c 6e 73 3d 22 68 74 74 70 3a 2f 2f 77 77 | utf-8"?>..<html.xmlns="http://ww |
| 0660 | 77 2e 77 33 2e 6f 72 67 2f 31 39 39 39 2f 78 68 74 6d 6c 22 20 6c 61 6e 67 3d 22 65 6e 22 3e 0a | w.w3.org/1999/xhtml".lang="en">. |
| 0680 | 20 20 3c 68 65 61 64 3e 0a 20 20 20 20 3c 6d 65 74 61 20 63 68 61 72 73 65 74 3d 22 75 74 66 2d | ..<head>.....<meta.charset="utf- |
| 06a0 | 38 22 2f 3e 0a 20 20 20 20 3c 6d 65 74 61 20 6e 61 6d 65 3d 22 76 69 65 77 70 6f 72 74 22 20 63 | 8"/>.....<meta.name="viewport".c |
| 06c0 | 6f 6e 74 65 6e 74 3d 22 77 69 64 74 68 3d 64 65 76 69 63 65 2d 77 69 64 74 68 2c 20 69 6e 69 74 | ontent="width=device-width,.init |
| 06e0 | 69 61 6c 2d 73 63 61 6c 65 3d 31 2e 30 22 2f 3e 0a 20 20 20 20 3c 74 69 74 6c 65 3e 44 6f 63 75 | ial-scale=1.0"/>.....<title>Docu |
| 0700 | 6d 65 6e 74 61 74 69 6f 6e 20 2d 20 54 68 65 20 5a 69 67 20 50 72 6f 67 72 61 6d 6d 69 6e 67 20 | mentation.-.The.Zig.Programming. |
| 0720 | 4c 61 6e 67 75 61 67 65 3c 2f 74 69 74 6c 65 3e 0a 20 20 20 20 3c 6c 69 6e 6b 20 72 65 6c 3d 22 | Language</title>.....<link.rel=" |
| 0740 | 69 63 6f 6e 22 20 68 72 65 66 3d 22 64 61 74 61 3a 69 6d 61 67 65 2f 70 6e 67 3b 62 61 73 65 36 | icon".href="data:image/png;base6 |
| 0760 | 34 2c 69 56 42 4f 52 77 30 4b 47 67 6f 41 41 41 41 4e 53 55 68 45 55 67 41 41 41 42 41 41 41 41 | 4,iVBORw0KGgoAAAANSUhEUgAAABAAAA |
| 0780 | 41 51 43 41 59 41 41 41 41 66 38 2f 39 68 41 41 41 41 67 6b 6c 45 51 56 52 34 41 57 4d 59 57 75 | AQCAYAAAAf8/9hAAAAgklEQVR4AWMYWu |
| 07a0 | 44 37 45 6c 6c 4a 49 4d 34 47 34 67 34 67 35 6f 49 4a 2f 6f 64 68 4f 4a 38 77 54 6f 4f 78 53 54 | D7EllJIM4G4g4g5oIJ/odhOJ8wToOxST |
| 07c0 | 58 67 4e 78 44 48 6f 65 69 42 4d 66 41 34 2b 77 47 53 68 6a 79 59 4f 43 6b 47 2f 49 47 71 57 51 | XgNxDHoeiBMfA4+wGShjyYOCkG/IGqWQ |
| 07e0 | 7a 69 45 7a 59 41 6f 55 41 65 69 46 39 44 35 55 2b 44 78 45 67 31 34 44 52 55 37 6a 57 49 54 35 | ziEzYAoUAeiF9D5U+DxEg14DRU7jWIT5 |
| 0800 | 49 42 49 4f 64 43 78 66 2b 41 2b 43 51 5a 41 41 6f 6f 70 45 42 37 51 4a 77 42 43 42 77 48 69 69 | IBIOdCxf+A+CQZAAoopEB7QJwBCBwHii |
| 0820 | 70 38 55 59 6d 52 64 72 41 6c 44 70 49 4d 67 41 70 77 51 5a 4e 6e 4e 69 69 35 44 71 30 4d 42 67 | p8UYmRdrAlDpIMgApwQZNnNii5Dq0MBg |
| 0840 | 43 78 78 79 63 42 6e 77 45 64 2b 77 41 41 41 41 42 4a 52 55 35 45 72 6b 4a 67 67 67 3d 3d 22 2f | CxxycBnwEd+wAAAABJRU5ErkJggg=="/ |
| 0860 | 3e 0a 20 20 20 20 3c 73 74 79 6c 65 3e 0a 20 20 20 20 20 20 62 6f 64 79 7b 0a 20 20 20 20 20 20 | >.....<style>.......body{....... |
| 0880 | 20 20 66 6f 6e 74 2d 66 61 6d 69 6c 79 3a 20 73 79 73 74 65 6d 2d 75 69 2c 20 2d 61 70 70 6c 65 | ..font-family:.system-ui,.-apple |
| 08a0 | 2d 73 79 73 74 65 6d 2c 20 52 6f 62 6f 74 6f 2c 20 22 53 65 67 6f 65 20 55 49 22 2c 20 73 61 6e | -system,.Roboto,."Segoe.UI",.san |
| 08c0 | 73 2d 73 65 72 69 66 3b 0a 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 30 3b 0a 20 20 20 20 | s-serif;.........margin:.0;..... |
| 08e0 | 20 20 7d 0a 20 20 20 20 20 20 61 3a 6e 6f 74 28 3a 68 6f 76 65 72 29 20 7b 0a 20 20 20 20 20 20 | ..}.......a:not(:hover).{....... |
| 0900 | 20 20 74 65 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e 3a 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 7d | ..text-decoration:.none;.......} |
| 0920 | 0a 20 20 20 20 20 20 74 61 62 6c 65 2c 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 62 | .......table,.th,.td.{.........b |
| 0940 | 6f 72 64 65 72 2d 63 6f 6c 6c 61 70 73 65 3a 20 63 6f 6c 6c 61 70 73 65 3b 0a 20 20 20 20 20 20 | order-collapse:.collapse;....... |
| 0960 | 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 73 6f 6c 69 64 20 67 72 65 79 3b 0a 20 20 20 20 20 20 | ..border:.1px.solid.grey;....... |
| 0980 | 7d 0a 20 20 20 20 20 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 | }.......th,.td.{.........padding |
| 09a0 | 3a 20 30 2e 31 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 30 5f 31 2c 20 2e 74 | :.0.1em;.......}........t0_1,..t |
| 09c0 | 33 37 2c 20 2e 74 33 37 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 | 37,..t37_1.{.........font-weight |
| 09e0 | 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 32 5f 30 20 7b 0a 20 20 | :.bold;.......}........t2_0.{... |
| 0a00 | 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 67 72 65 79 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 | ......color:.grey;.......}...... |
| 0a20 | 20 2e 74 33 31 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 72 65 64 3b 0a 20 20 | ..t31_1.{.........color:.red;... |
| 0a40 | 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 33 32 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c | ....}........t32_1.{.........col |
| 0a60 | 6f 72 3a 20 67 72 65 65 6e 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 33 36 5f 31 20 | or:.green;.......}........t36_1. |
| 0a80 | 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 36 62 33 3b 0a 20 20 20 20 20 20 | {.........color:.#0086b3;....... |
| 0aa0 | 7d 0a 20 20 20 20 20 20 2e 66 69 6c 65 20 7b 0a 20 20 20 20 20 20 20 20 74 65 78 74 2d 64 65 63 | }........file.{.........text-dec |
| 0ac0 | 6f 72 61 74 69 6f 6e 3a 20 75 6e 64 65 72 6c 69 6e 65 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 | oration:.underline;.......}..... |
| 0ae0 | 20 20 70 72 65 2c 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 | ..pre,code.{.........font-size:. |
| 0b00 | 31 32 70 74 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 70 72 65 20 3e 20 63 6f 64 65 20 7b | 12pt;.......}.......pre.>.code.{ |
| 0b20 | 0a 20 20 20 20 20 20 20 20 64 69 73 70 6c 61 79 3a 20 62 6c 6f 63 6b 3b 0a 20 20 20 20 20 20 20 | .........display:.block;........ |
| 0b40 | 20 6f 76 65 72 66 6c 6f 77 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 | .overflow:.auto;.........padding |
| 0b60 | 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 | :.0.5em;.........color:.#333;... |
| 0b80 | 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 38 66 38 66 38 3b 0a 20 20 20 20 20 | ......background:.#f8f8f8;...... |
| 0ba0 | 20 7d 0a 20 20 20 20 20 20 2e 74 61 62 6c 65 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 20 20 | .}........table-wrapper.{....... |
| 0bc0 | 20 20 77 69 64 74 68 3a 20 31 30 30 25 3b 0a 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 2d | ..width:.100%;.........overflow- |
| 0be0 | 79 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 6b 77 20 | y:.auto;.......}.........tok-kw. |
| 0c00 | 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 20 20 20 20 20 | {...........color:.#333;........ |
| 0c20 | 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 | ...font-weight:.bold;.......}... |
| 0c40 | 20 20 20 20 2e 74 6f 6b 2d 73 74 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 | .....tok-str.{...........color:. |
| 0c60 | 23 64 31 34 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 62 75 69 6c 74 69 6e | #d14;.......}........tok-builtin |
| 0c80 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 36 62 33 3b 0a 20 20 20 | .{...........color:.#0086b3;.... |
| 0ca0 | 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 20 7b 0a 20 20 20 20 20 20 | ...}........tok-comment.{....... |
| 0cc0 | 20 20 20 20 63 6f 6c 6f 72 3a 20 23 37 37 37 3b 0a 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 2d | ....color:.#777;...........font- |
| 0ce0 | 73 74 79 6c 65 3a 20 69 74 61 6c 69 63 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f | style:.italic;.......}........to |
| 0d00 | 6b 2d 66 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 39 30 30 3b 0a 20 20 | k-fn.{...........color:.#900;... |
| 0d20 | 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 | ........font-weight:.bold;...... |
| 0d40 | 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6c 6c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 | .}........tok-null.{...........c |
| 0d60 | 6f 6c 6f 72 3a 20 23 30 30 38 30 38 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f | olor:.#008080;.......}........to |
| 0d80 | 6b 2d 6e 75 6d 62 65 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 | k-number.{...........color:.#008 |
| 0da0 | 30 38 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 74 79 70 65 20 7b 0a 20 | 080;.......}........tok-type.{.. |
| 0dc0 | 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 34 35 38 3b 0a 20 20 20 20 20 20 20 20 20 20 | .........color:.#458;........... |
| 0de0 | 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 | font-weight:.bold;.......}...... |
| 0e00 | 20 20 23 6d 61 69 6e 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 20 20 20 20 64 69 73 70 6c 61 | ..#main-wrapper.{.........displa |
| 0e20 | 79 3a 20 66 6c 65 78 3b 0a 20 20 20 20 20 20 20 20 66 6c 65 78 2d 64 69 72 65 63 74 69 6f 6e 3a | y:.flex;.........flex-direction: |
| 0e40 | 20 63 6f 6c 75 6d 6e 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 23 63 6f 6e 74 65 6e 74 | .column;.......}........#content |
| 0e60 | 73 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 20 20 20 20 66 6c 65 78 2d 67 72 6f 77 3a 20 31 | s-wrapper.{.........flex-grow:.1 |
| 0e80 | 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 20 32 65 6d 3b 0a 20 20 20 20 20 20 | ;.........padding:.0.2em;....... |
| 0ea0 | 7d 0a 0a 20 20 20 20 20 20 23 63 6f 6e 74 65 6e 74 73 20 7b 0a 20 20 20 20 20 20 20 20 6d 61 78 | }........#contents.{.........max |
| 0ec0 | 2d 77 69 64 74 68 3a 20 36 30 65 6d 3b 0a 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 61 75 | -width:.60em;.........margin:.au |
| 0ee0 | 74 6f 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 23 74 6f 63 20 7b 0a 20 20 20 20 20 20 | to;.......}........#toc.{....... |
| 0f00 | 20 20 70 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 | ..padding:.0.1em;.......}....... |
| 0f20 | 20 40 6d 65 64 69 61 20 73 63 72 65 65 6e 20 61 6e 64 20 28 6d 69 6e 2d 77 69 64 74 68 3a 20 31 | .@media.screen.and.(min-width:.1 |
| 0f40 | 30 32 35 70 78 29 20 7b 0a 20 20 20 20 20 20 20 20 23 6d 61 69 6e 2d 77 72 61 70 70 65 72 20 7b | 025px).{.........#main-wrapper.{ |
| 0f60 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 65 78 2d 64 69 72 65 63 74 69 6f 6e 3a 20 72 6f 77 | .............flex-direction:.row |
| 0f80 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 23 74 6f 63 20 7b 0a 20 20 20 20 20 | ;.........}.........#toc.{...... |
| 0fa0 | 20 20 20 20 20 20 20 68 65 69 67 68 74 3a 20 31 30 30 76 68 3b 0a 20 20 20 20 20 20 20 20 20 20 | .......height:.100vh;........... |
| 0fc0 | 20 20 70 6f 73 69 74 69 6f 6e 3a 20 73 74 69 63 6b 79 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ..position:.sticky;............. |
| 0fe0 | 74 6f 70 3a 20 30 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 23 63 6f 6e 74 65 | top:.0;.........}.........#conte |
| 1000 | 6e 74 73 2d 77 72 61 70 70 65 72 2c 20 23 74 6f 63 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | nts-wrapper,.#toc.{............. |
| 1020 | 6f 76 65 72 66 6c 6f 77 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | overflow:.auto;.........}....... |
| 1040 | 7d 0a 0a 20 20 20 20 20 20 68 31 20 61 2c 20 68 32 20 61 2c 20 68 33 20 61 2c 20 68 34 20 61 2c | }........h1.a,.h2.a,.h3.a,.h4.a, |
| 1060 | 20 68 35 20 61 20 7b 0a 20 20 20 20 20 20 20 20 74 65 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e 3a | .h5.a.{.........text-decoration: |
| 1080 | 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 20 20 | .none;.........color:.#333;..... |
| 10a0 | 20 20 7d 0a 0a 20 20 20 20 20 20 61 2e 68 64 72 20 7b 0a 20 20 20 20 20 20 20 20 76 69 73 69 62 | ..}........a.hdr.{.........visib |
| 10c0 | 69 6c 69 74 79 3a 20 68 69 64 64 65 6e 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 68 31 3a | ility:.hidden;.......}.......h1: |
| 10e0 | 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 2c 20 68 32 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 2c | hover.>.a.hdr,.h2:hover.>.a.hdr, |
| 1100 | 20 68 33 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 2c 20 68 34 3a 68 6f 76 65 72 20 3e 20 61 2e | .h3:hover.>.a.hdr,.h4:hover.>.a. |
| 1120 | 68 64 72 2c 20 68 35 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 20 7b 0a 20 20 20 20 20 20 20 20 | hdr,.h5:hover.>.a.hdr.{......... |
| 1140 | 76 69 73 69 62 69 6c 69 74 79 3a 20 76 69 73 69 62 6c 65 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 | visibility:.visible;.......}.... |
| 1160 | 20 20 20 20 40 6d 65 64 69 61 20 28 70 72 65 66 65 72 73 2d 63 6f 6c 6f 72 2d 73 63 68 65 6d 65 | ....@media.(prefers-color-scheme |
| 1180 | 3a 20 64 61 72 6b 29 20 7b 0a 20 20 20 20 20 20 20 20 62 6f 64 79 7b 0a 20 20 20 20 20 20 20 20 | :.dark).{.........body{......... |
| 11a0 | 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 23 31 31 31 3b 0a 20 20 20 20 20 | ....background-color:#111;...... |
| 11c0 | 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 62 62 62 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 | .......color:.#bbb;.........}... |
| 11e0 | 20 20 20 20 20 20 61 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 38 38 | ......a.{.............color:.#88 |
| 1200 | 66 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 74 61 62 6c 65 2c 20 74 68 2c 20 | f;.........}.........table,.th,. |
| 1220 | 74 64 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 2d 63 6f 6c 6f 72 3a 20 67 | td.{.............border-color:.g |
| 1240 | 72 65 79 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 32 5f 30 20 7b 0a 20 | rey;.........}..........t2_0.{.. |
| 1260 | 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 67 72 65 79 3b 0a 20 20 20 20 20 20 20 20 | ...........color:.grey;......... |
| 1280 | 7d 0a 20 20 20 20 20 20 20 20 2e 74 33 31 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 | }..........t31_1.{.............c |
| 12a0 | 6f 6c 6f 72 3a 20 72 65 64 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 33 | olor:.red;.........}..........t3 |
| 12c0 | 32 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 67 72 65 65 6e 3b 0a | 2_1.{.............color:.green;. |
| 12e0 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 33 36 5f 31 20 7b 0a 20 20 20 20 20 | ........}..........t36_1.{...... |
| 1300 | 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 36 62 33 3b 0a 20 20 20 20 20 20 20 20 7d | .......color:.#0086b3;.........} |
| 1320 | 0a 20 20 20 20 20 20 20 20 70 72 65 20 3e 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | .........pre.>.code.{........... |
| 1340 | 20 20 63 6f 6c 6f 72 3a 20 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 63 6b 67 | ..color:.#ccc;.............backg |
| 1360 | 72 6f 75 6e 64 3a 20 23 32 32 32 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e | round:.#222;.........}.......... |
| 1380 | 74 6f 6b 2d 6b 77 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 65 65 65 | tok-kw.{.............color:.#eee |
| 13a0 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 73 74 72 20 7b 0a 20 | ;.........}..........tok-str.{.. |
| 13c0 | 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 32 65 35 3b 0a 20 20 20 20 20 20 20 20 | ...........color:.#2e5;......... |
| 13e0 | 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 62 75 69 6c 74 69 6e 20 7b 0a 20 20 20 20 20 20 20 | }..........tok-builtin.{........ |
| 1400 | 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 66 66 38 39 34 63 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 | .....color:.#ff894c;.........}.. |
| 1420 | 20 20 20 20 20 20 20 2e 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | ........tok-comment.{........... |
| 1440 | 20 20 63 6f 6c 6f 72 3a 20 23 61 61 37 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 | ..color:.#aa7;.........}........ |
| 1460 | 20 2e 74 6f 6b 2d 66 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 65 | ..tok-fn.{.............color:.#e |
| 1480 | 33 33 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6c 6c 20 | 33;.........}..........tok-null. |
| 14a0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 66 66 38 30 38 30 3b 0a 20 20 | {.............color:.#ff8080;... |
| 14c0 | 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6d 62 65 72 20 7b 0a 20 20 | ......}..........tok-number.{... |
| 14e0 | 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 66 66 38 30 38 30 3b 0a 20 20 20 20 20 20 | ..........color:.#ff8080;....... |
| 1500 | 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 74 79 70 65 20 7b 0a 20 20 20 20 20 20 20 20 | ..}..........tok-type.{......... |
| 1520 | 20 20 20 20 63 6f 6c 6f 72 3a 20 23 36 38 66 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 | ....color:.#68f;.........}...... |
| 1540 | 20 20 20 68 31 20 61 2c 20 68 32 20 61 2c 20 68 33 20 61 2c 20 68 34 20 61 2c 20 68 35 20 61 20 | ...h1.a,.h2.a,.h3.a,.h4.a,.h5.a. |
| 1560 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 61 61 61 3b 0a 20 20 20 20 20 | {.............color:.#aaa;...... |
| 1580 | 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 3c 2f 73 74 79 6c 65 3e 0a 20 20 3c 2f 68 65 | ...}.......}.....</style>...</he |
| 15a0 | 61 64 3e 0a 20 20 3c 62 6f 64 79 3e 0a 20 20 20 20 3c 64 69 76 20 69 64 3d 22 6d 61 69 6e 2d 77 | ad>...<body>.....<div.id="main-w |
| 15c0 | 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 64 69 76 20 69 64 3d 22 74 6f 63 22 3e 0a 20 20 | rapper">.......<div.id="toc">... |
| 15e0 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f | ......<a.href="https://ziglang.o |
| 1600 | 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 2e 31 2f 22 3e 30 2e 31 2e 31 3c 2f | rg/documentation/0.1.1/">0.1.1</ |
| 1620 | 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 | a>.|.<a.href="https://ziglang.or |
| 1640 | 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 32 2e 30 2f 22 3e 30 2e 32 2e 30 3c 2f 61 | g/documentation/0.2.0/">0.2.0</a |
| 1660 | 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 | >.|.<a.href="https://ziglang.org |
| 1680 | 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 33 2e 30 2f 22 3e 30 2e 33 2e 30 3c 2f 61 3e | /documentation/0.3.0/">0.3.0</a> |
| 16a0 | 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f | .|.<a.href="https://ziglang.org/ |
| 16c0 | 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 34 2e 30 2f 22 3e 30 2e 34 2e 30 3c 2f 61 3e 20 | documentation/0.4.0/">0.4.0</a>. |
| 16e0 | 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 | |.<a.href="https://ziglang.org/d |
| 1700 | 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 35 2e 30 2f 22 3e 30 2e 35 2e 30 3c 2f 61 3e 20 7c | ocumentation/0.5.0/">0.5.0</a>.| |
| 1720 | 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f | .<a.href="https://ziglang.org/do |
| 1740 | 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 36 2e 30 2f 22 3e 30 2e 36 2e 30 3c 2f 61 3e 20 7c 0a | cumentation/0.6.0/">0.6.0</a>.|. |
| 1760 | 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 | <a.href="https://ziglang.org/doc |
| 1780 | 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 37 2e 31 2f 22 3e 30 2e 37 2e 31 3c 2f 61 3e 20 7c 0a 30 | umentation/0.7.1/">0.7.1</a>.|.0 |
| 17a0 | 2e 38 2e 31 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e | .8.1.|.<a.href="https://ziglang. |
| 17c0 | 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 39 2e 31 2f 22 3e 30 2e 39 2e 31 3c | org/documentation/0.9.1/">0.9.1< |
| 17e0 | 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f | /a>.|.<a.href="https://ziglang.o |
| 1800 | 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 30 2e 31 2f 22 3e 30 2e 31 30 2e 31 | rg/documentation/0.10.1/">0.10.1 |
| 1820 | 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e | </a>.|.<a.href="https://ziglang. |
| 1840 | 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 31 2e 30 2f 22 3e 30 2e 31 31 2e | org/documentation/0.11.0/">0.11. |
| 1860 | 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 | 0</a>.|.<a.href="https://ziglang |
| 1880 | 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 32 2e 31 2f 22 3e 30 2e 31 32 | .org/documentation/0.12.1/">0.12 |
| 18a0 | 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e | .1</a>.|.<a.href="https://ziglan |
| 18c0 | 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 33 2e 30 2f 22 3e 30 2e 31 | g.org/documentation/0.13.0/">0.1 |
| 18e0 | 33 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 | 3.0</a>.|.<a.href="https://zigla |
| 1900 | 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 34 2e 31 2f 22 3e 30 2e | ng.org/documentation/0.14.1/">0. |
| 1920 | 31 34 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c | 14.1</a>.|.<a.href="https://zigl |
| 1940 | 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 35 2e 32 2f 22 3e 30 | ang.org/documentation/0.15.2/">0 |
| 1960 | 2e 31 35 2e 32 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 | .15.2</a>.|.<a.href="https://zig |
| 1980 | 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 36 2e 30 2f 22 3e | lang.org/documentation/0.16.0/"> |
| 19a0 | 30 2e 31 36 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 | 0.16.0</a>.|.<a.href="https://zi |
| 19c0 | 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 6d 61 73 74 65 72 2f 22 | glang.org/documentation/master/" |
| 19e0 | 3e 6d 61 73 74 65 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 68 31 3e 43 6f 6e 74 65 6e 74 73 | >master</a>.........<h1>Contents |
| 1a00 | 3c 2f 68 31 3e 0a 20 20 20 20 20 20 20 20 0a 0a 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | </h1>...............<ul>........ |
| 1a20 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 20 68 72 | .<li><a.id="toc-Introduction".hr |
| 1a40 | 65 66 3d 22 23 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3c | ef="#Introduction">Introduction< |
| 1a60 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /a></li>.........<li><a.id="toc- |
| 1a80 | 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 20 68 72 65 66 3d 22 23 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 | Hello-World".href="#Hello-World" |
| 1aa0 | 3e 48 65 6c 6c 6f 20 57 6f 72 6c 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | >Hello.World</a></li>.........<l |
| 1ac0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 20 68 72 65 66 3d 22 23 43 6f | i><a.id="toc-Comments".href="#Co |
| 1ae0 | 6d 6d 65 6e 74 73 22 3e 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c | mments">Comments</a>.........<ul |
| 1b00 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 6f 63 | >.............<li><a.id="toc-Doc |
| 1b20 | 2d 63 6f 6d 6d 65 6e 74 73 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 63 6f 6d 6d 65 6e 74 73 22 3e | -comments".href="#Doc-comments"> |
| 1b40 | 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | Doc.comments</a></li>........... |
| 1b60 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 | ..<li><a.id="toc-Top-Level-Doc-C |
| 1b80 | 6f 6d 6d 65 6e 74 73 22 20 68 72 65 66 3d 22 23 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f | omments".href="#Top-Level-Doc-Co |
| 1ba0 | 6d 6d 65 6e 74 73 22 3e 54 6f 70 2d 4c 65 76 65 6c 20 44 6f 63 20 43 6f 6d 6d 65 6e 74 73 3c 2f | mments">Top-Level.Doc.Comments</ |
| 1bc0 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | a></li>.........</ul></li>...... |
| 1be0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 | ...<li><a.id="toc-Values".href=" |
| 1c00 | 23 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e | #Values">Values</a>.........<ul> |
| 1c20 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 72 69 6d | .............<li><a.id="toc-Prim |
| 1c40 | 69 74 69 76 65 2d 54 79 70 65 73 22 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 | itive-Types".href="#Primitive-Ty |
| 1c60 | 70 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | pes">Primitive.Types</a></li>... |
| 1c80 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 72 69 6d 69 74 69 | ..........<li><a.id="toc-Primiti |
| 1ca0 | 76 65 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 | ve-Values".href="#Primitive-Valu |
| 1cc0 | 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | es">Primitive.Values</a></li>... |
| 1ce0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 74 72 69 6e 67 2d | ..........<li><a.id="toc-String- |
| 1d00 | 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d | Literals-and-Unicode-Code-Point- |
| 1d20 | 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 | Literals".href="#String-Literals |
| 1d40 | 2d 61 6e 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 | -and-Unicode-Code-Point-Literals |
| 1d60 | 22 3e 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 20 61 6e 64 20 55 6e 69 63 6f 64 65 20 43 6f | ">String.Literals.and.Unicode.Co |
| 1d80 | 64 65 20 50 6f 69 6e 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 | de.Point.Literals</a>........... |
| 1da0 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ..<ul>.................<li><a.id |
| 1dc0 | 3d 22 74 6f 63 2d 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 20 68 72 65 66 3d 22 23 45 | ="toc-Escape-Sequences".href="#E |
| 1de0 | 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 | scape-Sequences">Escape.Sequence |
| 1e00 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | s</a></li>.................<li>< |
| 1e20 | 61 20 69 64 3d 22 74 6f 63 2d 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 | a.id="toc-Multiline-String-Liter |
| 1e40 | 61 6c 73 22 20 68 72 65 66 3d 22 23 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 | als".href="#Multiline-String-Lit |
| 1e60 | 65 72 61 6c 73 22 3e 4d 75 6c 74 69 6c 69 6e 65 20 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 | erals">Multiline.String.Literals |
| 1e80 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | </a></li>.............</ul></li> |
| 1ea0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 73 69 | .............<li><a.id="toc-Assi |
| 1ec0 | 67 6e 6d 65 6e 74 22 20 68 72 65 66 3d 22 23 41 73 73 69 67 6e 6d 65 6e 74 22 3e 41 73 73 69 67 | gnment".href="#Assignment">Assig |
| 1ee0 | 6e 6d 65 6e 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | nment</a>.............<ul>...... |
| 1f00 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 64 65 66 69 | ...........<li><a.id="toc-undefi |
| 1f20 | 6e 65 64 22 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 | ned".href="#undefined">undefined |
| 1f40 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | </a></li>.............</ul></li> |
| 1f60 | 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | .........</ul></li>.........<li> |
| 1f80 | 3c 61 20 69 64 3d 22 74 6f 63 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 56 61 72 | <a.id="toc-Variables".href="#Var |
| 1fa0 | 69 61 62 6c 65 73 22 3e 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 | iables">Variables</a>.........<u |
| 1fc0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f | l>.............<li><a.id="toc-Co |
| 1fe0 | 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 | ntainer-Level-Variables".href="# |
| 2000 | 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6e 74 61 | Container-Level-Variables">Conta |
| 2020 | 69 6e 65 72 20 4c 65 76 65 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | iner.Level.Variables</a></li>... |
| 2040 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 74 61 74 69 63 2d | ..........<li><a.id="toc-Static- |
| 2060 | 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 53 74 61 74 69 63 2d 4c | Local-Variables".href="#Static-L |
| 2080 | 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 53 74 61 74 69 63 20 4c 6f 63 61 6c 20 56 61 72 | ocal-Variables">Static.Local.Var |
| 20a0 | 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | iables</a></li>.............<li> |
| 20c0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 | <a.id="toc-Thread-Local-Variable |
| 20e0 | 73 22 20 68 72 65 66 3d 22 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 | s".href="#Thread-Local-Variables |
| 2100 | 22 3e 54 68 72 65 61 64 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 | ">Thread.Local.Variables</a></li |
| 2120 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4c 6f 63 | >.............<li><a.id="toc-Loc |
| 2140 | 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 4c 6f 63 61 6c 2d 56 61 72 69 61 | al-Variables".href="#Local-Varia |
| 2160 | 62 6c 65 73 22 3e 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | bles">Local.Variables</a></li>.. |
| 2180 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .......</ul></li>.........<li><a |
| 21a0 | 20 69 64 3d 22 74 6f 63 2d 49 6e 74 65 67 65 72 73 22 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 | .id="toc-Integers".href="#Intege |
| 21c0 | 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | rs">Integers</a>.........<ul>... |
| 21e0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 65 67 65 72 | ..........<li><a.id="toc-Integer |
| 2200 | 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 | -Literals".href="#Integer-Litera |
| 2220 | 6c 73 22 3e 49 6e 74 65 67 65 72 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ls">Integer.Literals</a></li>... |
| 2240 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 75 6e 74 69 6d 65 | ..........<li><a.id="toc-Runtime |
| 2260 | 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 52 75 6e 74 69 6d 65 2d | -Integer-Values".href="#Runtime- |
| 2280 | 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 3e 52 75 6e 74 69 6d 65 20 49 6e 74 65 67 65 72 20 | Integer-Values">Runtime.Integer. |
| 22a0 | 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c | Values</a></li>.........</ul></l |
| 22c0 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 6c 6f 61 74 73 | i>.........<li><a.id="toc-Floats |
| 22e0 | 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 0a 20 20 20 20 | ".href="#Floats">Floats</a>..... |
| 2300 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ....<ul>.............<li><a.id=" |
| 2320 | 74 6f 63 2d 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | toc-Float-Literals".href="#Float |
| 2340 | 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c | -Literals">Float.Literals</a></l |
| 2360 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 6c | i>.............<li><a.id="toc-Fl |
| 2380 | 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 | oating-Point-Operations".href="# |
| 23a0 | 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 | Floating-Point-Operations">Float |
| 23c0 | 69 6e 67 20 50 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ing.Point.Operations</a></li>... |
| 23e0 | 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ......</ul></li>.........<li><a. |
| 2400 | 69 64 3d 22 74 6f 63 2d 4f 70 65 72 61 74 6f 72 73 22 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 | id="toc-Operators".href="#Operat |
| 2420 | 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | ors">Operators</a>.........<ul>. |
| 2440 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 61 62 6c 65 | ............<li><a.id="toc-Table |
| 2460 | 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 20 68 72 65 66 3d 22 23 54 61 62 6c 65 2d 6f 66 2d 4f | -of-Operators".href="#Table-of-O |
| 2480 | 70 65 72 61 74 6f 72 73 22 3e 54 61 62 6c 65 20 6f 66 20 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e | perators">Table.of.Operators</a> |
| 24a0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </li>.............<li><a.id="toc |
| 24c0 | 2d 50 72 65 63 65 64 65 6e 63 65 22 20 68 72 65 66 3d 22 23 50 72 65 63 65 64 65 6e 63 65 22 3e | -Precedence".href="#Precedence"> |
| 24e0 | 50 72 65 63 65 64 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c | Precedence</a></li>.........</ul |
| 2500 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 72 | ></li>.........<li><a.id="toc-Ar |
| 2520 | 72 61 79 73 22 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 0a | rays".href="#Arrays">Arrays</a>. |
| 2540 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ........<ul>.............<li><a. |
| 2560 | 69 64 3d 22 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 4c 69 73 74 2d 4c 69 74 65 72 61 6c 73 22 | id="toc-Anonymous-List-Literals" |
| 2580 | 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 4c 69 73 74 2d 4c 69 74 65 72 61 6c 73 22 | .href="#Anonymous-List-Literals" |
| 25a0 | 3e 41 6e 6f 6e 79 6d 6f 75 73 20 4c 69 73 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 | >Anonymous.List.Literals</a></li |
| 25c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4d 75 6c | >.............<li><a.id="toc-Mul |
| 25e0 | 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 4d 75 6c | tidimensional-Arrays".href="#Mul |
| 2600 | 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 3e 4d 75 6c 74 69 64 69 6d 65 6e | tidimensional-Arrays">Multidimen |
| 2620 | 73 69 6f 6e 61 6c 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | sional.Arrays</a></li>.......... |
| 2640 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 | ...<li><a.id="toc-Sentinel-Termi |
| 2660 | 6e 61 74 65 64 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 | nated-Arrays".href="#Sentinel-Te |
| 2680 | 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e | rminated-Arrays">Sentinel-Termin |
| 26a0 | 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 | ated.Arrays</a></li>.........</u |
| 26c0 | 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 56 | l></li>.........<li><a.id="toc-V |
| 26e0 | 65 63 74 6f 72 73 22 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c | ectors".href="#Vectors">Vectors< |
| 2700 | 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | /a>.........<ul>.............<li |
| 2720 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 49 4d 44 22 20 68 72 65 66 3d 22 23 53 49 4d 44 22 3e 53 | ><a.id="toc-SIMD".href="#SIMD">S |
| 2740 | 49 4d 44 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a | IMD</a></li>.........</ul></li>. |
| 2760 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 6f 69 6e 74 65 72 73 22 | ........<li><a.id="toc-Pointers" |
| 2780 | 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 0a 20 | .href="#Pointers">Pointers</a>.. |
| 27a0 | 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | .......<ul>.............<li><a.i |
| 27c0 | 64 3d 22 74 6f 63 2d 76 6f 6c 61 74 69 6c 65 22 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 | d="toc-volatile".href="#volatile |
| 27e0 | 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ">volatile</a></li>............. |
| 2800 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6c 69 67 6e 6d 65 6e 74 22 20 68 72 65 66 3d 22 | <li><a.id="toc-Alignment".href=" |
| 2820 | 23 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | #Alignment">Alignment</a></li>.. |
| 2840 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 6c 6f 77 7a | ...........<li><a.id="toc-allowz |
| 2860 | 65 72 6f 22 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c 6c 6f 77 7a 65 72 6f | ero".href="#allowzero">allowzero |
| 2880 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | </a></li>.............<li><a.id= |
| 28a0 | 22 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 | "toc-Sentinel-Terminated-Pointer |
| 28c0 | 73 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f | s".href="#Sentinel-Terminated-Po |
| 28e0 | 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e | inters">Sentinel-Terminated.Poin |
| 2900 | 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | ters</a></li>.........</ul></li> |
| 2920 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 6c 69 63 65 73 22 20 | .........<li><a.id="toc-Slices". |
| 2940 | 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 | href="#Slices">Slices</a>....... |
| 2960 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | ..<ul>.............<li><a.id="to |
| 2980 | 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 20 68 72 | c-Sentinel-Terminated-Slices".hr |
| 29a0 | 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 | ef="#Sentinel-Terminated-Slices" |
| 29c0 | 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 6c 69 63 65 73 3c 2f 61 3e 3c | >Sentinel-Terminated.Slices</a>< |
| 29e0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | /li>.........</ul></li>......... |
| 2a00 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 74 72 75 63 74 22 20 68 72 65 66 3d 22 23 73 74 | <li><a.id="toc-struct".href="#st |
| 2a20 | 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | ruct">struct</a>.........<ul>... |
| 2a40 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 66 61 75 6c 74 | ..........<li><a.id="toc-Default |
| 2a60 | 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 46 69 | -Field-Values".href="#Default-Fi |
| 2a80 | 65 6c 64 2d 56 61 6c 75 65 73 22 3e 44 65 66 61 75 6c 74 20 46 69 65 6c 64 20 56 61 6c 75 65 73 | eld-Values">Default.Field.Values |
| 2aa0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | </a></li>.............<li><a.id= |
| 2ac0 | 22 74 6f 63 2d 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 | "toc-extern-struct".href="#exter |
| 2ae0 | 6e 2d 73 74 72 75 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e | n-struct">extern.struct</a></li> |
| 2b00 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 61 63 6b | .............<li><a.id="toc-pack |
| 2b20 | 65 64 2d 73 74 72 75 63 74 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 | ed-struct".href="#packed-struct" |
| 2b40 | 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | >packed.struct</a></li>......... |
| 2b60 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 | ....<li><a.id="toc-Struct-Naming |
| 2b80 | 22 20 68 72 65 66 3d 22 23 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 3e 53 74 72 75 63 74 20 4e | ".href="#Struct-Naming">Struct.N |
| 2ba0 | 61 6d 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | aming</a></li>.............<li>< |
| 2bc0 | 61 20 69 64 3d 22 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 | a.id="toc-Anonymous-Struct-Liter |
| 2be0 | 61 6c 73 22 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 | als".href="#Anonymous-Struct-Lit |
| 2c00 | 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 74 72 75 63 74 20 4c 69 74 65 72 61 6c 73 | erals">Anonymous.Struct.Literals |
| 2c20 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 | </a></li>.........</ul></li>.... |
| 2c40 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 | .....<li><a.id="toc-enum".href=" |
| 2c60 | 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | #enum">enum</a>.........<ul>.... |
| 2c80 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e 2d 65 | .........<li><a.id="toc-extern-e |
| 2ca0 | 6e 75 6d 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 72 6e 20 | num".href="#extern-enum">extern. |
| 2cc0 | 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | enum</a></li>.............<li><a |
| 2ce0 | 20 69 64 3d 22 74 6f 63 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 45 | .id="toc-Enum-Literals".href="#E |
| 2d00 | 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c | num-Literals">Enum.Literals</a>< |
| 2d20 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /li>.............<li><a.id="toc- |
| 2d40 | 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 4e 6f 6e 2d | Non-exhaustive-enum".href="#Non- |
| 2d60 | 65 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 | exhaustive-enum">Non-exhaustive. |
| 2d80 | 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | enum</a></li>.........</ul></li> |
| 2da0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 69 6f 6e 22 20 68 | .........<li><a.id="toc-union".h |
| 2dc0 | 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c | ref="#union">union</a>.........< |
| 2de0 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 | ul>.............<li><a.id="toc-T |
| 2e00 | 61 67 67 65 64 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e | agged-union".href="#Tagged-union |
| 2e20 | 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ">Tagged.union</a></li>......... |
| 2e40 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 | ....<li><a.id="toc-extern-union" |
| 2e60 | 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 | .href="#extern-union">extern.uni |
| 2e80 | 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | on</a></li>.............<li><a.i |
| 2ea0 | 64 3d 22 74 6f 63 2d 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 70 61 63 6b | d="toc-packed-union".href="#pack |
| 2ec0 | 65 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a | ed-union">packed.union</a></li>. |
| 2ee0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6e 6f 6e 79 | ............<li><a.id="toc-Anony |
| 2f00 | 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 41 6e 6f 6e | mous-Union-Literals".href="#Anon |
| 2f20 | 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 | ymous-Union-Literals">Anonymous. |
| 2f40 | 55 6e 69 6f 6e 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | Union.Literals</a></li>......... |
| 2f60 | 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | </ul></li>.........<li><a.id="to |
| 2f80 | 63 2d 6f 70 61 71 75 65 22 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c | c-opaque".href="#opaque">opaque< |
| 2fa0 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /a></li>.........<li><a.id="toc- |
| 2fc0 | 62 6c 6f 63 6b 73 22 20 68 72 65 66 3d 22 23 62 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 73 3c 2f 61 | blocks".href="#blocks">blocks</a |
| 2fe0 | 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | >.........<ul>.............<li>< |
| 3000 | 61 20 69 64 3d 22 74 6f 63 2d 53 68 61 64 6f 77 69 6e 67 22 20 68 72 65 66 3d 22 23 53 68 61 64 | a.id="toc-Shadowing".href="#Shad |
| 3020 | 6f 77 69 6e 67 22 3e 53 68 61 64 6f 77 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | owing">Shadowing</a></li>....... |
| 3040 | 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ..</ul></li>.........<li><a.id=" |
| 3060 | 74 6f 63 2d 73 77 69 74 63 68 22 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 | toc-switch".href="#switch">switc |
| 3080 | 68 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | h</a>.........<ul>.............< |
| 30a0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 | li><a.id="toc-Exhaustive-Switchi |
| 30c0 | 6e 67 22 20 68 72 65 66 3d 22 23 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 | ng".href="#Exhaustive-Switching" |
| 30e0 | 3e 45 78 68 61 75 73 74 69 76 65 20 53 77 69 74 63 68 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | >Exhaustive.Switching</a></li>.. |
| 3100 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 77 69 74 63 68 | ...........<li><a.id="toc-Switch |
| 3120 | 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 53 | ing-with-Enum-Literals".href="#S |
| 3140 | 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 53 77 69 | witching-with-Enum-Literals">Swi |
| 3160 | 74 63 68 69 6e 67 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c | tching.with.Enum.Literals</a></l |
| 3180 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | i>.........</ul></li>.........<l |
| 31a0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 77 68 69 6c 65 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 | i><a.id="toc-while".href="#while |
| 31c0 | 22 3e 77 68 69 6c 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | ">while</a>.........<ul>........ |
| 31e0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 77 68 69 6c | .....<li><a.id="toc-Labeled-whil |
| 3200 | 65 22 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 | e".href="#Labeled-while">Labeled |
| 3220 | 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | .while</a></li>.............<li> |
| 3240 | 3c 61 20 69 64 3d 22 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 | <a.id="toc-while-with-Optionals" |
| 3260 | 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 77 68 | .href="#while-with-Optionals">wh |
| 3280 | 69 6c 65 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ile.with.Optionals</a></li>..... |
| 32a0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 | ........<li><a.id="toc-while-wit |
| 32c0 | 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 | h-Error-Unions".href="#while-wit |
| 32e0 | 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 45 72 72 6f 72 | h-Error-Unions">while.with.Error |
| 3300 | 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | .Unions</a></li>.............<li |
| 3320 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 20 68 72 65 66 3d 22 | ><a.id="toc-inline-while".href=" |
| 3340 | 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 3c | #inline-while">inline.while</a>< |
| 3360 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | /li>.........</ul></li>......... |
| 3380 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 66 6f 72 22 3e | <li><a.id="toc-for".href="#for"> |
| 33a0 | 66 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | for</a>.........<ul>............ |
| 33c0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 66 6f 72 22 20 68 72 65 | .<li><a.id="toc-Labeled-for".hre |
| 33e0 | 66 3d 22 23 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e | f="#Labeled-for">Labeled.for</a> |
| 3400 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </li>.............<li><a.id="toc |
| 3420 | 2d 69 6e 6c 69 6e 65 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e | -inline-for".href="#inline-for"> |
| 3440 | 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c | inline.for</a></li>.........</ul |
| 3460 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 66 | ></li>.........<li><a.id="toc-if |
| 3480 | 22 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ".href="#if">if</a></li>........ |
| 34a0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 64 65 66 65 72 22 20 68 72 65 66 3d 22 23 64 65 | .<li><a.id="toc-defer".href="#de |
| 34c0 | 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | fer">defer</a></li>.........<li> |
| 34e0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 72 65 61 63 68 61 62 6c 65 22 20 68 72 65 66 3d 22 23 75 | <a.id="toc-unreachable".href="#u |
| 3500 | 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 0a 20 20 20 20 | nreachable">unreachable</a>..... |
| 3520 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ....<ul>.............<li><a.id=" |
| 3540 | 74 6f 63 2d 42 61 73 69 63 73 22 20 68 72 65 66 3d 22 23 42 61 73 69 63 73 22 3e 42 61 73 69 63 | toc-Basics".href="#Basics">Basic |
| 3560 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | s</a></li>.............<li><a.id |
| 3580 | 3d 22 74 6f 63 2d 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 20 68 72 65 66 3d 22 23 41 74 | ="toc-At-Compile-Time".href="#At |
| 35a0 | 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 41 74 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 3c 2f | -Compile-Time">At.Compile-Time</ |
| 35c0 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | a></li>.........</ul></li>...... |
| 35e0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6e 6f 72 65 74 75 72 6e 22 20 68 72 65 66 | ...<li><a.id="toc-noreturn".href |
| 3600 | 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ="#noreturn">noreturn</a></li>.. |
| 3620 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 73 22 | .......<li><a.id="toc-Functions" |
| 3640 | 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e | .href="#Functions">Functions</a> |
| 3660 | 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .........<ul>.............<li><a |
| 3680 | 20 69 64 3d 22 74 6f 63 2d 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 | .id="toc-Pass-by-value-Parameter |
| 36a0 | 73 22 20 68 72 65 66 3d 22 23 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 | s".href="#Pass-by-value-Paramete |
| 36c0 | 72 73 22 3e 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e | rs">Pass-by-value.Parameters</a> |
| 36e0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </li>.............<li><a.id="toc |
| 3700 | 2d 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e | -Function-Parameter-Type-Inferen |
| 3720 | 63 65 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 | ce".href="#Function-Parameter-Ty |
| 3740 | 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e 46 75 6e 63 74 69 6f 6e 20 50 61 72 61 6d 65 74 65 72 | pe-Inference">Function.Parameter |
| 3760 | 20 54 79 70 65 20 49 6e 66 65 72 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .Type.Inference</a></li>........ |
| 3780 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 52 65 66 | .....<li><a.id="toc-Function-Ref |
| 37a0 | 6c 65 63 74 69 6f 6e 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 | lection".href="#Function-Reflect |
| 37c0 | 69 6f 6e 22 3e 46 75 6e 63 74 69 6f 6e 20 52 65 66 6c 65 63 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 | ion">Function.Reflection</a></li |
| 37e0 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | >.........</ul></li>.........<li |
| 3800 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 72 72 6f 72 73 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 | ><a.id="toc-Errors".href="#Error |
| 3820 | 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | s">Errors</a>.........<ul>...... |
| 3840 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 72 72 6f 72 2d 53 65 74 2d | .......<li><a.id="toc-Error-Set- |
| 3860 | 54 79 70 65 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 | Type".href="#Error-Set-Type">Err |
| 3880 | 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | or.Set.Type</a>.............<ul> |
| 38a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | .................<li><a.id="toc- |
| 38c0 | 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 20 68 72 65 66 3d 22 23 54 68 65 | The-Global-Error-Set".href="#The |
| 38e0 | 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 | -Global-Error-Set">The.Global.Er |
| 3900 | 72 6f 72 20 53 65 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | ror.Set</a></li>.............</u |
| 3920 | 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | l></li>.............<li><a.id="t |
| 3940 | 6f 63 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 45 72 72 6f | oc-Error-Union-Type".href="#Erro |
| 3960 | 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f | r-Union-Type">Error.Union.Type</ |
| 3980 | 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | a>.............<ul>............. |
| 39a0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 61 74 63 68 22 20 68 72 65 66 3d 22 | ....<li><a.id="toc-catch".href=" |
| 39c0 | 23 63 61 74 63 68 22 3e 63 61 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | #catch">catch</a></li>.......... |
| 39e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 72 79 22 20 68 72 65 66 3d | .......<li><a.id="toc-try".href= |
| 3a00 | 22 23 74 72 79 22 3e 74 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | "#try">try</a></li>............. |
| 3a20 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 64 65 66 65 72 22 20 68 72 65 | ....<li><a.id="toc-errdefer".hre |
| 3a40 | 66 3d 22 23 65 72 72 64 65 66 65 72 22 3e 65 72 72 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a | f="#errdefer">errdefer</a></li>. |
| 3a60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4d | ................<li><a.id="toc-M |
| 3a80 | 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e | erging-Error-Sets".href="#Mergin |
| 3aa0 | 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 73 | g-Error-Sets">Merging.Error.Sets |
| 3ac0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | </a></li>.................<li><a |
| 3ae0 | 20 69 64 3d 22 74 6f 63 2d 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 20 68 72 | .id="toc-Inferred-Error-Sets".hr |
| 3b00 | 65 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 | ef="#Inferred-Error-Sets">Inferr |
| 3b20 | 65 64 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ed.Error.Sets</a></li>.......... |
| 3b40 | 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | ...</ul></li>.............<li><a |
| 3b60 | 20 69 64 3d 22 74 6f 63 2d 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 20 68 72 | .id="toc-Error-Return-Traces".hr |
| 3b80 | 65 66 3d 22 23 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 3e 45 72 72 6f 72 20 | ef="#Error-Return-Traces">Error. |
| 3ba0 | 52 65 74 75 72 6e 20 54 72 61 63 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | Return.Traces</a>.............<u |
| 3bc0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | l>.................<li><a.id="to |
| 3be0 | 63 2d 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 20 68 72 65 66 3d 22 | c-Implementation-Details".href=" |
| 3c00 | 23 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 49 6d 70 6c 65 6d 65 | #Implementation-Details">Impleme |
| 3c20 | 6e 74 61 74 69 6f 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ntation.Details</a></li>........ |
| 3c40 | 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c | .....</ul></li>.........</ul></l |
| 3c60 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 70 74 69 6f 6e | i>.........<li><a.id="toc-Option |
| 3c80 | 61 6c 73 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 | als".href="#Optionals">Optionals |
| 3ca0 | 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | </a>.........<ul>.............<l |
| 3cc0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 20 68 72 65 66 | i><a.id="toc-Optional-Type".href |
| 3ce0 | 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 70 65 3c | ="#Optional-Type">Optional.Type< |
| 3d00 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | /a></li>.............<li><a.id=" |
| 3d20 | 74 6f 63 2d 6e 75 6c 6c 22 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 3c | toc-null".href="#null">null</a>< |
| 3d40 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /li>.............<li><a.id="toc- |
| 3d60 | 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e | Optional-Pointers".href="#Option |
| 3d80 | 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f | al-Pointers">Optional.Pointers</ |
| 3da0 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | a></li>.........</ul></li>...... |
| 3dc0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 74 69 6e 67 22 20 68 72 65 66 3d | ...<li><a.id="toc-Casting".href= |
| 3de0 | 22 23 43 61 73 74 69 6e 67 22 3e 43 61 73 74 69 6e 67 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c | "#Casting">Casting</a>.........< |
| 3e00 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 | ul>.............<li><a.id="toc-T |
| 3e20 | 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 | ype-Coercion".href="#Type-Coerci |
| 3e40 | 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 | on">Type.Coercion</a>........... |
| 3e60 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ..<ul>.................<li><a.id |
| 3e80 | 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 | ="toc-Type-Coercion-Stricter-Qua |
| 3ea0 | 6c 69 66 69 63 61 74 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e | lification".href="#Type-Coercion |
| 3ec0 | 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e 54 79 70 65 20 43 6f | -Stricter-Qualification">Type.Co |
| 3ee0 | 65 72 63 69 6f 6e 3a 20 53 74 72 69 63 74 65 72 20 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 3c 2f | ercion:.Stricter.Qualification</ |
| 3f00 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | a></li>.................<li><a.i |
| 3f20 | 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 | d="toc-Type-Coercion-Integer-and |
| 3f40 | 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 | -Float-Widening".href="#Type-Coe |
| 3f60 | 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 | rcion-Integer-and-Float-Widening |
| 3f80 | 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 49 6e 74 65 67 65 72 20 61 6e 64 20 46 6c 6f | ">Type.Coercion:.Integer.and.Flo |
| 3fa0 | 61 74 20 57 69 64 65 6e 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | at.Widening</a></li>............ |
| 3fc0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f | .....<li><a.id="toc-Type-Coercio |
| 3fe0 | 6e 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 20 68 72 65 66 3d 22 23 | n-Coercion-Float-to-Int".href="# |
| 4000 | 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d | Type-Coercion-Coercion-Float-to- |
| 4020 | 49 6e 74 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 43 6f 65 72 63 69 6f 6e 20 46 6c 6f | Int">Type.Coercion:.Coercion.Flo |
| 4040 | 61 74 20 74 6f 20 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | at.to.Int</a></li>.............. |
| 4060 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d | ...<li><a.id="toc-Type-Coercion- |
| 4080 | 53 6c 69 63 65 73 2d 41 72 72 61 79 73 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 | Slices-Arrays-and-Pointers".href |
| 40a0 | 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 6c 69 63 65 73 2d 41 72 72 61 79 73 2d 61 | ="#Type-Coercion-Slices-Arrays-a |
| 40c0 | 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 6c 69 63 | nd-Pointers">Type.Coercion:.Slic |
| 40e0 | 65 73 2c 20 41 72 72 61 79 73 20 61 6e 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e | es,.Arrays.and.Pointers</a></li> |
| 4100 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | .................<li><a.id="toc- |
| 4120 | 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 72 65 66 3d 22 23 | Type-Coercion-Optionals".href="# |
| 4140 | 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 54 79 70 65 20 43 6f | Type-Coercion-Optionals">Type.Co |
| 4160 | 65 72 63 69 6f 6e 3a 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ercion:.Optionals</a></li>...... |
| 4180 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 | ...........<li><a.id="toc-Type-C |
| 41a0 | 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 54 79 70 | oercion-Error-Unions".href="#Typ |
| 41c0 | 65 2d 43 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 54 79 70 65 20 43 6f | e-Coercion-Error-Unions">Type.Co |
| 41e0 | 65 72 63 69 6f 6e 3a 20 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ercion:.Error.Unions</a></li>... |
| 4200 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 | ..............<li><a.id="toc-Typ |
| 4220 | 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 | e-Coercion-Compile-Time-Known-Nu |
| 4240 | 6d 62 65 72 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 6d 70 | mbers".href="#Type-Coercion-Comp |
| 4260 | 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e 54 79 70 65 20 43 6f 65 | ile-Time-Known-Numbers">Type.Coe |
| 4280 | 72 63 69 6f 6e 3a 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 4b 6e 6f 77 6e 20 4e 75 6d 62 65 72 | rcion:.Compile-Time.Known.Number |
| 42a0 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | s</a></li>.................<li>< |
| 42c0 | 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 69 6f 6e 73 2d 61 | a.id="toc-Type-Coercion-unions-a |
| 42e0 | 6e 64 2d 65 6e 75 6d 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 | nd-enums".href="#Type-Coercion-u |
| 4300 | 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 | nions-and-enums">Type.Coercion:. |
| 4320 | 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | unions.and.enums</a></li>....... |
| 4340 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f | ..........<li><a.id="toc-Type-Co |
| 4360 | 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 20 68 72 65 66 3d 22 23 54 79 | ercion-Zero-Bit-Types".href="#Ty |
| 4380 | 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 54 79 70 65 | pe-Coercion-Zero-Bit-Types">Type |
| 43a0 | 20 43 6f 65 72 63 69 6f 6e 3a 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 3c 2f 6c | .Coercion:.Zero.Bit.Types</a></l |
| 43c0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | i>.................<li><a.id="to |
| 43e0 | 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 20 68 72 65 66 3d | c-Type-Coercion-undefined".href= |
| 4400 | 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e 54 79 70 65 20 | "#Type-Coercion-undefined">Type. |
| 4420 | 43 6f 65 72 63 69 6f 6e 3a 20 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | Coercion:.undefined</a></li>.... |
| 4440 | 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .........</ul></li>............. |
| 4460 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 20 68 | <li><a.id="toc-Explicit-Casts".h |
| 4480 | 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 | ref="#Explicit-Casts">Explicit.C |
| 44a0 | 61 73 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | asts</a></li>.............<li><a |
| 44c0 | 20 69 64 3d 22 74 6f 63 2d 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 20 68 | .id="toc-Peer-Type-Resolution".h |
| 44e0 | 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 | ref="#Peer-Type-Resolution">Peer |
| 4500 | 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | .Type.Resolution</a></li>....... |
| 4520 | 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ..</ul></li>.........<li><a.id=" |
| 4540 | 74 6f 63 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 20 68 72 65 66 3d 22 23 5a 65 72 6f 2d | toc-Zero-Bit-Types".href="#Zero- |
| 4560 | 42 69 74 2d 54 79 70 65 73 22 3e 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 0a 20 20 | Bit-Types">Zero.Bit.Types</a>... |
| 4580 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ......<ul>.............<li><a.id |
| 45a0 | 3d 22 74 6f 63 2d 76 6f 69 64 22 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 | ="toc-void".href="#void">void</a |
| 45c0 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | ></li>.............<li><a.id="to |
| 45e0 | 63 2d 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 20 68 72 | c-Pointers-to-Zero-Bit-Types".hr |
| 4600 | 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 | ef="#Pointers-to-Zero-Bit-Types" |
| 4620 | 3e 50 6f 69 6e 74 65 72 73 20 74 6f 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 3c | >Pointers.to.Zero.Bit.Types</a>< |
| 4640 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | /li>.........</ul></li>......... |
| 4660 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 | <li><a.id="toc-Result-Location-S |
| 4680 | 65 6d 61 6e 74 69 63 73 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e | emantics".href="#Result-Location |
| 46a0 | 2d 53 65 6d 61 6e 74 69 63 73 22 3e 52 65 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 20 53 65 6d 61 | -Semantics">Result.Location.Sema |
| 46c0 | 6e 74 69 63 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ntics</a></li>.........<li><a.id |
| 46e0 | 3d 22 74 6f 63 2d 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 20 68 72 65 66 3d 22 23 75 73 69 | ="toc-usingnamespace".href="#usi |
| 4700 | 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 61 3e 3c | ngnamespace">usingnamespace</a>< |
| 4720 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6f 6d 70 | /li>.........<li><a.id="toc-comp |
| 4740 | 74 69 6d 65 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c | time".href="#comptime">comptime< |
| 4760 | 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | /a>.........<ul>.............<li |
| 4780 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 72 6f 64 75 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 | ><a.id="toc-Introducing-the-Comp |
| 47a0 | 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 20 68 72 65 66 3d 22 23 49 6e 74 72 6f 64 75 | ile-Time-Concept".href="#Introdu |
| 47c0 | 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 3e 49 | cing-the-Compile-Time-Concept">I |
| 47e0 | 6e 74 72 6f 64 75 63 69 6e 67 20 74 68 65 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 43 6f 6e 63 | ntroducing.the.Compile-Time.Conc |
| 4800 | 65 70 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | ept</a>.............<ul>........ |
| 4820 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d | .........<li><a.id="toc-Compile- |
| 4840 | 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d | Time-Parameters".href="#Compile- |
| 4860 | 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 50 61 | Time-Parameters">Compile-Time.Pa |
| 4880 | 72 61 6d 65 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rameters</a></li>............... |
| 48a0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 | ..<li><a.id="toc-Compile-Time-Va |
| 48c0 | 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 | riables".href="#Compile-Time-Var |
| 48e0 | 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 56 61 72 69 61 62 6c 65 73 3c 2f | iables">Compile-Time.Variables</ |
| 4900 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | a></li>.................<li><a.i |
| 4920 | 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e 73 22 | d="toc-Compile-Time-Expressions" |
| 4940 | 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e 73 | .href="#Compile-Time-Expressions |
| 4960 | 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 45 78 70 72 65 73 73 69 6f 6e 73 3c 2f 61 3e 3c 2f | ">Compile-Time.Expressions</a></ |
| 4980 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | li>.............</ul></li>...... |
| 49a0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 47 65 6e 65 72 69 63 2d 44 61 | .......<li><a.id="toc-Generic-Da |
| 49c0 | 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 20 68 72 65 66 3d 22 23 47 65 6e 65 72 69 63 2d 44 61 | ta-Structures".href="#Generic-Da |
| 49e0 | 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 47 65 6e 65 72 69 63 20 44 61 74 61 20 53 74 72 75 | ta-Structures">Generic.Data.Stru |
| 4a00 | 63 74 75 72 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | ctures</a></li>.............<li> |
| 4a20 | 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 66 2d 69 6e 2d | <a.id="toc-Case-Study-printf-in- |
| 4a40 | 5a 69 67 22 20 68 72 65 66 3d 22 23 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 66 2d 69 6e | Zig".href="#Case-Study-printf-in |
| 4a60 | 2d 5a 69 67 22 3e 43 61 73 65 20 53 74 75 64 79 3a 20 70 72 69 6e 74 66 20 69 6e 20 5a 69 67 3c | -Zig">Case.Study:.printf.in.Zig< |
| 4a80 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | /a></li>.........</ul></li>..... |
| 4aa0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 73 65 6d 62 6c 79 22 20 68 72 65 | ....<li><a.id="toc-Assembly".hre |
| 4ac0 | 66 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 0a 20 20 20 20 20 | f="#Assembly">Assembly</a>...... |
| 4ae0 | 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | ...<ul>.............<li><a.id="t |
| 4b00 | 6f 63 2d 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 20 68 72 65 66 3d 22 23 4f 75 | oc-Output-Constraints".href="#Ou |
| 4b20 | 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 4f 75 74 70 75 74 20 43 6f 6e 73 74 72 61 | tput-Constraints">Output.Constra |
| 4b40 | 69 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | ints</a></li>.............<li><a |
| 4b60 | 20 69 64 3d 22 74 6f 63 2d 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 20 68 72 65 66 | .id="toc-Input-Constraints".href |
| 4b80 | 3d 22 23 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 49 6e 70 75 74 20 43 6f 6e 73 | ="#Input-Constraints">Input.Cons |
| 4ba0 | 74 72 61 69 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | traints</a></li>.............<li |
| 4bc0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6c 6f 62 62 65 72 73 22 20 68 72 65 66 3d 22 23 43 6c 6f | ><a.id="toc-Clobbers".href="#Clo |
| 4be0 | 62 62 65 72 73 22 3e 43 6c 6f 62 62 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | bbers">Clobbers</a></li>........ |
| 4c00 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 47 6c 6f 62 61 6c 2d 41 73 73 65 6d | .....<li><a.id="toc-Global-Assem |
| 4c20 | 62 6c 79 22 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 3e 47 6c 6f | bly".href="#Global-Assembly">Glo |
| 4c40 | 62 61 6c 20 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | bal.Assembly</a></li>.........</ |
| 4c60 | 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | ul></li>.........<li><a.id="toc- |
| 4c80 | 41 74 6f 6d 69 63 73 22 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 | Atomics".href="#Atomics">Atomics |
| 4ca0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </a></li>.........<li><a.id="toc |
| 4cc0 | 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 | -Async-Functions".href="#Async-F |
| 4ce0 | 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 | unctions">Async.Functions</a>... |
| 4d00 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ......<ul>.............<li><a.id |
| 4d20 | 3d 22 74 6f 63 2d 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 20 68 72 65 66 3d 22 | ="toc-Suspend-and-Resume".href=" |
| 4d40 | 23 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 3e 53 75 73 70 65 6e 64 20 61 6e 64 | #Suspend-and-Resume">Suspend.and |
| 4d60 | 20 52 65 73 75 6d 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | .Resume</a>.............<ul>.... |
| 4d80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 73 75 | .............<li><a.id="toc-Resu |
| 4da0 | 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b 73 22 20 68 72 65 66 3d 22 | ming-from-Suspend-Blocks".href=" |
| 4dc0 | 23 52 65 73 75 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b 73 22 3e 52 | #Resuming-from-Suspend-Blocks">R |
| 4de0 | 65 73 75 6d 69 6e 67 20 66 72 6f 6d 20 53 75 73 70 65 6e 64 20 42 6c 6f 63 6b 73 3c 2f 61 3e 3c | esuming.from.Suspend.Blocks</a>< |
| 4e00 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | /li>.............</ul></li>..... |
| 4e20 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 79 6e 63 2d 61 6e 64 | ........<li><a.id="toc-Async-and |
| 4e40 | 2d 41 77 61 69 74 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 69 74 22 3e | -Await".href="#Async-and-Await"> |
| 4e60 | 41 73 79 6e 63 20 61 6e 64 20 41 77 61 69 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | Async.and.Await</a></li>........ |
| 4e80 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 | .....<li><a.id="toc-Async-Functi |
| 4ea0 | 6f 6e 2d 45 78 61 6d 70 6c 65 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f | on-Example".href="#Async-Functio |
| 4ec0 | 6e 2d 45 78 61 6d 70 6c 65 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 20 45 78 61 6d 70 6c | n-Example">Async.Function.Exampl |
| 4ee0 | 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 | e</a></li>.........</ul></li>... |
| 4f00 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 46 75 6e | ......<li><a.id="toc-Builtin-Fun |
| 4f20 | 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 | ctions".href="#Builtin-Functions |
| 4f40 | 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 | ">Builtin.Functions</a>......... |
| 4f60 | 3c 75 6c 20 73 74 79 6c 65 3d 22 63 6f 6c 75 6d 6e 73 3a 20 32 22 3e 0a 20 20 20 20 20 20 20 20 | <ul.style="columns:.2">......... |
| 4f80 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 64 64 57 69 74 68 4f 76 65 72 66 6c | ....<li><a.id="toc-addWithOverfl |
| 4fa0 | 6f 77 22 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 64 | ow".href="#addWithOverflow">@add |
| 4fc0 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | WithOverflow</a></li>........... |
| 4fe0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 69 67 6e 43 61 73 74 22 20 68 72 65 66 | ..<li><a.id="toc-alignCast".href |
| 5000 | 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 | ="#alignCast">@alignCast</a></li |
| 5020 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 69 | >.............<li><a.id="toc-ali |
| 5040 | 67 6e 4f 66 22 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f | gnOf".href="#alignOf">@alignOf</ |
| 5060 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | a></li>.............<li><a.id="t |
| 5080 | 6f 63 2d 61 73 22 20 68 72 65 66 3d 22 23 61 73 22 3e 40 61 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | oc-as".href="#as">@as</a></li>.. |
| 50a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 73 79 6e 63 43 | ...........<li><a.id="toc-asyncC |
| 50c0 | 61 6c 6c 22 20 68 72 65 66 3d 22 23 61 73 79 6e 63 43 61 6c 6c 22 3e 40 61 73 79 6e 63 43 61 6c | all".href="#asyncCall">@asyncCal |
| 50e0 | 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | l</a></li>.............<li><a.id |
| 5100 | 3d 22 74 6f 63 2d 61 74 6f 6d 69 63 4c 6f 61 64 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c | ="toc-atomicLoad".href="#atomicL |
| 5120 | 6f 61 64 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | oad">@atomicLoad</a></li>....... |
| 5140 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 74 6f 6d 69 63 52 6d 77 22 20 | ......<li><a.id="toc-atomicRmw". |
| 5160 | 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e | href="#atomicRmw">@atomicRmw</a> |
| 5180 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </li>.............<li><a.id="toc |
| 51a0 | 2d 61 74 6f 6d 69 63 53 74 6f 72 65 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 53 74 6f 72 65 | -atomicStore".href="#atomicStore |
| 51c0 | 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ">@atomicStore</a></li>......... |
| 51e0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 69 74 43 61 73 74 22 20 68 72 65 66 | ....<li><a.id="toc-bitCast".href |
| 5200 | 3d 22 23 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ="#bitCast">@bitCast</a></li>... |
| 5220 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 69 74 4f 66 66 73 | ..........<li><a.id="toc-bitOffs |
| 5240 | 65 74 4f 66 22 20 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 | etOf".href="#bitOffsetOf">@bitOf |
| 5260 | 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | fsetOf</a></li>.............<li> |
| 5280 | 3c 61 20 69 64 3d 22 74 6f 63 2d 62 6f 6f 6c 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 23 62 6f 6f | <a.id="toc-boolToInt".href="#boo |
| 52a0 | 6c 54 6f 49 6e 74 22 3e 40 62 6f 6f 6c 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | lToInt">@boolToInt</a></li>..... |
| 52c0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 69 74 53 69 7a 65 4f 66 | ........<li><a.id="toc-bitSizeOf |
| 52e0 | 22 20 68 72 65 66 3d 22 23 62 69 74 53 69 7a 65 4f 66 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f | ".href="#bitSizeOf">@bitSizeOf</ |
| 5300 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | a></li>.............<li><a.id="t |
| 5320 | 6f 63 2d 62 72 65 61 6b 70 6f 69 6e 74 22 20 68 72 65 66 3d 22 23 62 72 65 61 6b 70 6f 69 6e 74 | oc-breakpoint".href="#breakpoint |
| 5340 | 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ">@breakpoint</a></li>.......... |
| 5360 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 75 6c 41 64 64 22 20 68 72 65 66 3d 22 | ...<li><a.id="toc-mulAdd".href=" |
| 5380 | 23 6d 75 6c 41 64 64 22 3e 40 6d 75 6c 41 64 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | #mulAdd">@mulAdd</a></li>....... |
| 53a0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 79 74 65 53 77 61 70 22 20 68 | ......<li><a.id="toc-byteSwap".h |
| 53c0 | 72 65 66 3d 22 23 62 79 74 65 53 77 61 70 22 3e 40 62 79 74 65 53 77 61 70 3c 2f 61 3e 3c 2f 6c | ref="#byteSwap">@byteSwap</a></l |
| 53e0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 69 | i>.............<li><a.id="toc-bi |
| 5400 | 74 52 65 76 65 72 73 65 22 20 68 72 65 66 3d 22 23 62 69 74 52 65 76 65 72 73 65 22 3e 40 62 69 | tReverse".href="#bitReverse">@bi |
| 5420 | 74 52 65 76 65 72 73 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | tReverse</a></li>.............<l |
| 5440 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 79 74 65 4f 66 66 73 65 74 4f 66 22 20 68 72 65 66 3d | i><a.id="toc-byteOffsetOf".href= |
| 5460 | 22 23 62 79 74 65 4f 66 66 73 65 74 4f 66 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 61 | "#byteOffsetOf">@byteOffsetOf</a |
| 5480 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | ></li>.............<li><a.id="to |
| 54a0 | 63 2d 63 61 6c 6c 22 20 68 72 65 66 3d 22 23 63 61 6c 6c 22 3e 40 63 61 6c 6c 3c 2f 61 3e 3c 2f | c-call".href="#call">@call</a></ |
| 54c0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 | li>.............<li><a.id="toc-c |
| 54e0 | 44 65 66 69 6e 65 22 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 | Define".href="#cDefine">@cDefine |
| 5500 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | </a></li>.............<li><a.id= |
| 5520 | 22 74 6f 63 2d 63 49 6d 70 6f 72 74 22 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 | "toc-cImport".href="#cImport">@c |
| 5540 | 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | Import</a></li>.............<li> |
| 5560 | 3c 61 20 69 64 3d 22 74 6f 63 2d 63 49 6e 63 6c 75 64 65 22 20 68 72 65 66 3d 22 23 63 49 6e 63 | <a.id="toc-cInclude".href="#cInc |
| 5580 | 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | lude">@cInclude</a></li>........ |
| 55a0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6c 7a 22 20 68 72 65 66 3d 22 23 | .....<li><a.id="toc-clz".href="# |
| 55c0 | 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | clz">@clz</a></li>.............< |
| 55e0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 20 68 72 65 | li><a.id="toc-cmpxchgStrong".hre |
| 5600 | 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e | f="#cmpxchgStrong">@cmpxchgStron |
| 5620 | 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | g</a></li>.............<li><a.id |
| 5640 | 3d 22 74 6f 63 2d 63 6d 70 78 63 68 67 57 65 61 6b 22 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 | ="toc-cmpxchgWeak".href="#cmpxch |
| 5660 | 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | gWeak">@cmpxchgWeak</a></li>.... |
| 5680 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6f 6d 70 69 6c 65 45 | .........<li><a.id="toc-compileE |
| 56a0 | 72 72 6f 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e 40 63 6f 6d 70 | rror".href="#compileError">@comp |
| 56c0 | 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ileError</a></li>.............<l |
| 56e0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6f 6d 70 69 6c 65 4c 6f 67 22 20 68 72 65 66 3d 22 23 | i><a.id="toc-compileLog".href="# |
| 5700 | 63 6f 6d 70 69 6c 65 4c 6f 67 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 61 3e 3c 2f 6c 69 3e | compileLog">@compileLog</a></li> |
| 5720 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 74 7a 22 | .............<li><a.id="toc-ctz" |
| 5740 | 20 68 72 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | .href="#ctz">@ctz</a></li>...... |
| 5760 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 55 6e 64 65 66 22 20 68 72 | .......<li><a.id="toc-cUndef".hr |
| 5780 | 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ef="#cUndef">@cUndef</a></li>... |
| 57a0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 64 69 76 45 78 61 63 | ..........<li><a.id="toc-divExac |
| 57c0 | 74 22 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 | t".href="#divExact">@divExact</a |
| 57e0 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | ></li>.............<li><a.id="to |
| 5800 | 63 2d 64 69 76 46 6c 6f 6f 72 22 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 | c-divFloor".href="#divFloor">@di |
| 5820 | 76 46 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | vFloor</a></li>.............<li> |
| 5840 | 3c 61 20 69 64 3d 22 74 6f 63 2d 64 69 76 54 72 75 6e 63 22 20 68 72 65 66 3d 22 23 64 69 76 54 | <a.id="toc-divTrunc".href="#divT |
| 5860 | 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | runc">@divTrunc</a></li>........ |
| 5880 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 6d 62 65 64 46 69 6c 65 22 20 68 | .....<li><a.id="toc-embedFile".h |
| 58a0 | 72 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 61 3e 3c | ref="#embedFile">@embedFile</a>< |
| 58c0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /li>.............<li><a.id="toc- |
| 58e0 | 65 6e 75 6d 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 54 6f 49 6e 74 22 3e 40 65 6e | enumToInt".href="#enumToInt">@en |
| 5900 | 75 6d 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | umToInt</a></li>.............<li |
| 5920 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 4e 61 6d 65 22 20 68 72 65 66 3d 22 23 65 72 | ><a.id="toc-errorName".href="#er |
| 5940 | 72 6f 72 4e 61 6d 65 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | rorName">@errorName</a></li>.... |
| 5960 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 52 65 74 | .........<li><a.id="toc-errorRet |
| 5980 | 75 72 6e 54 72 61 63 65 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 | urnTrace".href="#errorReturnTrac |
| 59a0 | 65 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | e">@errorReturnTrace</a></li>... |
| 59c0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 54 6f | ..........<li><a.id="toc-errorTo |
| 59e0 | 49 6e 74 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 72 6f 72 54 6f | Int".href="#errorToInt">@errorTo |
| 5a00 | 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | Int</a></li>.............<li><a. |
| 5a20 | 69 64 3d 22 74 6f 63 2d 65 72 72 53 65 74 43 61 73 74 22 20 68 72 65 66 3d 22 23 65 72 72 53 65 | id="toc-errSetCast".href="#errSe |
| 5a40 | 74 43 61 73 74 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | tCast">@errSetCast</a></li>..... |
| 5a60 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 70 6f 72 74 22 20 68 | ........<li><a.id="toc-export".h |
| 5a80 | 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ref="#export">@export</a></li>.. |
| 5aa0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e | ...........<li><a.id="toc-extern |
| 5ac0 | 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 22 3e 40 65 78 74 65 72 6e 3c 2f 61 3e 3c 2f 6c 69 | ".href="#extern">@extern</a></li |
| 5ae0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 65 6e | >.............<li><a.id="toc-fen |
| 5b00 | 63 65 22 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 | ce".href="#fence">@fence</a></li |
| 5b20 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 69 65 | >.............<li><a.id="toc-fie |
| 5b40 | 6c 64 22 20 68 72 65 66 3d 22 23 66 69 65 6c 64 22 3e 40 66 69 65 6c 64 3c 2f 61 3e 3c 2f 6c 69 | ld".href="#field">@field</a></li |
| 5b60 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 69 65 | >.............<li><a.id="toc-fie |
| 5b80 | 6c 64 50 61 72 65 6e 74 50 74 72 22 20 68 72 65 66 3d 22 23 66 69 65 6c 64 50 61 72 65 6e 74 50 | ldParentPtr".href="#fieldParentP |
| 5ba0 | 74 72 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | tr">@fieldParentPtr</a></li>.... |
| 5bc0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 6c 6f 61 74 43 61 73 | .........<li><a.id="toc-floatCas |
| 5be0 | 74 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c | t".href="#floatCast">@floatCast< |
| 5c00 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | /a></li>.............<li><a.id=" |
| 5c20 | 74 6f 63 2d 66 6c 6f 61 74 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 54 6f 49 6e | toc-floatToInt".href="#floatToIn |
| 5c40 | 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | t">@floatToInt</a></li>......... |
| 5c60 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 72 61 6d 65 22 20 68 72 65 66 3d 22 | ....<li><a.id="toc-frame".href=" |
| 5c80 | 23 66 72 61 6d 65 22 3e 40 66 72 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | #frame">@frame</a></li>......... |
| 5ca0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 72 61 6d 65 22 20 68 72 65 66 3d 22 | ....<li><a.id="toc-Frame".href=" |
| 5cc0 | 23 46 72 61 6d 65 22 3e 40 46 72 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | #Frame">@Frame</a></li>......... |
| 5ce0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 72 61 6d 65 41 64 64 72 65 73 73 22 | ....<li><a.id="toc-frameAddress" |
| 5d00 | 20 68 72 65 66 3d 22 23 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e 40 66 72 61 6d 65 41 64 64 72 | .href="#frameAddress">@frameAddr |
| 5d20 | 65 73 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ess</a></li>.............<li><a. |
| 5d40 | 69 64 3d 22 74 6f 63 2d 66 72 61 6d 65 53 69 7a 65 22 20 68 72 65 66 3d 22 23 66 72 61 6d 65 53 | id="toc-frameSize".href="#frameS |
| 5d60 | 69 7a 65 22 3e 40 66 72 61 6d 65 53 69 7a 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ize">@frameSize</a></li>........ |
| 5d80 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 68 61 73 44 65 63 6c 22 20 68 72 65 | .....<li><a.id="toc-hasDecl".hre |
| 5da0 | 66 3d 22 23 68 61 73 44 65 63 6c 22 3e 40 68 61 73 44 65 63 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | f="#hasDecl">@hasDecl</a></li>.. |
| 5dc0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 68 61 73 46 69 65 | ...........<li><a.id="toc-hasFie |
| 5de0 | 6c 64 22 20 68 72 65 66 3d 22 23 68 61 73 46 69 65 6c 64 22 3e 40 68 61 73 46 69 65 6c 64 3c 2f | ld".href="#hasField">@hasField</ |
| 5e00 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | a></li>.............<li><a.id="t |
| 5e20 | 6f 63 2d 69 6d 70 6f 72 74 22 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 | oc-import".href="#import">@impor |
| 5e40 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | t</a></li>.............<li><a.id |
| 5e60 | 3d 22 74 6f 63 2d 69 6e 74 43 61 73 74 22 20 68 72 65 66 3d 22 23 69 6e 74 43 61 73 74 22 3e 40 | ="toc-intCast".href="#intCast">@ |
| 5e80 | 69 6e 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | intCast</a></li>.............<li |
| 5ea0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 54 6f 45 6e 75 6d 22 20 68 72 65 66 3d 22 23 69 6e | ><a.id="toc-intToEnum".href="#in |
| 5ec0 | 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | tToEnum">@intToEnum</a></li>.... |
| 5ee0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 54 6f 45 72 72 | .........<li><a.id="toc-intToErr |
| 5f00 | 6f 72 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 72 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 | or".href="#intToError">@intToErr |
| 5f20 | 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | or</a></li>.............<li><a.i |
| 5f40 | 64 3d 22 74 6f 63 2d 69 6e 74 54 6f 46 6c 6f 61 74 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 46 | d="toc-intToFloat".href="#intToF |
| 5f60 | 6c 6f 61 74 22 3e 40 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | loat">@intToFloat</a></li>...... |
| 5f80 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 54 6f 50 74 72 22 20 | .......<li><a.id="toc-intToPtr". |
| 5fa0 | 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 3c 2f | href="#intToPtr">@intToPtr</a></ |
| 5fc0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d | li>.............<li><a.id="toc-m |
| 5fe0 | 65 6d 63 70 79 22 20 68 72 65 66 3d 22 23 6d 65 6d 63 70 79 22 3e 40 6d 65 6d 63 70 79 3c 2f 61 | emcpy".href="#memcpy">@memcpy</a |
| 6000 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | ></li>.............<li><a.id="to |
| 6020 | 63 2d 6d 65 6d 73 65 74 22 20 68 72 65 66 3d 22 23 6d 65 6d 73 65 74 22 3e 40 6d 65 6d 73 65 74 | c-memset".href="#memset">@memset |
| 6040 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | </a></li>.............<li><a.id= |
| 6060 | 22 74 6f 63 2d 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 22 20 68 72 65 66 3d 22 23 77 61 73 6d | "toc-wasmMemorySize".href="#wasm |
| 6080 | 4d 65 6d 6f 72 79 53 69 7a 65 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 61 3e 3c | MemorySize">@wasmMemorySize</a>< |
| 60a0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /li>.............<li><a.id="toc- |
| 60c0 | 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 22 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 | wasmMemoryGrow".href="#wasmMemor |
| 60e0 | 79 47 72 6f 77 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a | yGrow">@wasmMemoryGrow</a></li>. |
| 6100 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 6f 64 22 20 | ............<li><a.id="toc-mod". |
| 6120 | 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | href="#mod">@mod</a></li>....... |
| 6140 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 75 6c 57 69 74 68 4f 76 65 72 | ......<li><a.id="toc-mulWithOver |
| 6160 | 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d | flow".href="#mulWithOverflow">@m |
| 6180 | 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ulWithOverflow</a></li>......... |
| 61a0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 61 6e 69 63 22 20 68 72 65 66 3d 22 | ....<li><a.id="toc-panic".href=" |
| 61c0 | 23 70 61 6e 69 63 22 3e 40 70 61 6e 69 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | #panic">@panic</a></li>......... |
| 61e0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 6f 70 43 6f 75 6e 74 22 20 68 72 65 | ....<li><a.id="toc-popCount".hre |
| 6200 | 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e | f="#popCount">@popCount</a></li> |
| 6220 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 74 72 43 | .............<li><a.id="toc-ptrC |
| 6240 | 61 73 74 22 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 | ast".href="#ptrCast">@ptrCast</a |
| 6260 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | ></li>.............<li><a.id="to |
| 6280 | 63 2d 70 74 72 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 22 3e 40 70 74 | c-ptrToInt".href="#ptrToInt">@pt |
| 62a0 | 72 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | rToInt</a></li>.............<li> |
| 62c0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 72 65 6d 22 20 68 72 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 6d | <a.id="toc-rem".href="#rem">@rem |
| 62e0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | </a></li>.............<li><a.id= |
| 6300 | 22 74 6f 63 2d 72 65 74 75 72 6e 41 64 64 72 65 73 73 22 20 68 72 65 66 3d 22 23 72 65 74 75 72 | "toc-returnAddress".href="#retur |
| 6320 | 6e 41 64 64 72 65 73 73 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 61 3e 3c 2f 6c 69 | nAddress">@returnAddress</a></li |
| 6340 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 | >.............<li><a.id="toc-set |
| 6360 | 41 6c 69 67 6e 53 74 61 63 6b 22 20 68 72 65 66 3d 22 23 73 65 74 41 6c 69 67 6e 53 74 61 63 6b | AlignStack".href="#setAlignStack |
| 6380 | 22 3e 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ">@setAlignStack</a></li>....... |
| 63a0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 43 6f 6c 64 22 20 68 72 | ......<li><a.id="toc-setCold".hr |
| 63c0 | 65 66 3d 22 23 73 65 74 43 6f 6c 64 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a | ef="#setCold">@setCold</a></li>. |
| 63e0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 45 76 | ............<li><a.id="toc-setEv |
| 6400 | 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 20 68 72 65 66 3d 22 23 73 65 74 45 76 61 6c 42 72 61 | alBranchQuota".href="#setEvalBra |
| 6420 | 6e 63 68 51 75 6f 74 61 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 61 | nchQuota">@setEvalBranchQuota</a |
| 6440 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | ></li>.............<li><a.id="to |
| 6460 | 63 2d 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d | c-setFloatMode".href="#setFloatM |
| 6480 | 6f 64 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ode">@setFloatMode</a></li>..... |
| 64a0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 52 75 6e 74 69 6d | ........<li><a.id="toc-setRuntim |
| 64c0 | 65 53 61 66 65 74 79 22 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 | eSafety".href="#setRuntimeSafety |
| 64e0 | 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | ">@setRuntimeSafety</a></li>.... |
| 6500 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 68 6c 45 78 61 63 74 | .........<li><a.id="toc-shlExact |
| 6520 | 22 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e | ".href="#shlExact">@shlExact</a> |
| 6540 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </li>.............<li><a.id="toc |
| 6560 | 2d 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 | -shlWithOverflow".href="#shlWith |
| 6580 | 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f | Overflow">@shlWithOverflow</a></ |
| 65a0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 | li>.............<li><a.id="toc-s |
| 65c0 | 68 72 45 78 61 63 74 22 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 | hrExact".href="#shrExact">@shrEx |
| 65e0 | 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | act</a></li>.............<li><a. |
| 6600 | 69 64 3d 22 74 6f 63 2d 73 68 75 66 66 6c 65 22 20 68 72 65 66 3d 22 23 73 68 75 66 66 6c 65 22 | id="toc-shuffle".href="#shuffle" |
| 6620 | 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | >@shuffle</a></li>.............< |
| 6640 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 69 7a 65 4f 66 22 20 68 72 65 66 3d 22 23 73 69 7a | li><a.id="toc-sizeOf".href="#siz |
| 6660 | 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | eOf">@sizeOf</a></li>........... |
| 6680 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 70 6c 61 74 22 20 68 72 65 66 3d 22 23 73 | ..<li><a.id="toc-splat".href="#s |
| 66a0 | 70 6c 61 74 22 3e 40 73 70 6c 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | plat">@splat</a></li>........... |
| 66c0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 72 65 64 75 63 65 22 20 68 72 65 66 3d 22 23 | ..<li><a.id="toc-reduce".href="# |
| 66e0 | 72 65 64 75 63 65 22 3e 40 72 65 64 75 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | reduce">@reduce</a></li>........ |
| 6700 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 72 63 22 20 68 72 65 66 3d 22 23 | .....<li><a.id="toc-src".href="# |
| 6720 | 73 72 63 22 3e 40 73 72 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | src">@src</a></li>.............< |
| 6740 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 71 72 74 22 20 68 72 65 66 3d 22 23 73 71 72 74 22 | li><a.id="toc-sqrt".href="#sqrt" |
| 6760 | 3e 40 73 71 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | >@sqrt</a></li>.............<li> |
| 6780 | 3c 61 20 69 64 3d 22 74 6f 63 2d 73 69 6e 22 20 68 72 65 66 3d 22 23 73 69 6e 22 3e 40 73 69 6e | <a.id="toc-sin".href="#sin">@sin |
| 67a0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | </a></li>.............<li><a.id= |
| 67c0 | 22 74 6f 63 2d 63 6f 73 22 20 68 72 65 66 3d 22 23 63 6f 73 22 3e 40 63 6f 73 3c 2f 61 3e 3c 2f | "toc-cos".href="#cos">@cos</a></ |
| 67e0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 | li>.............<li><a.id="toc-e |
| 6800 | 78 70 22 20 68 72 65 66 3d 22 23 65 78 70 22 3e 40 65 78 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | xp".href="#exp">@exp</a></li>... |
| 6820 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 70 32 22 20 68 | ..........<li><a.id="toc-exp2".h |
| 6840 | 72 65 66 3d 22 23 65 78 70 32 22 3e 40 65 78 70 32 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ref="#exp2">@exp2</a></li>...... |
| 6860 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 22 20 68 72 65 66 3d | .......<li><a.id="toc-log".href= |
| 6880 | 22 23 6c 6f 67 22 3e 40 6c 6f 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | "#log">@log</a></li>............ |
| 68a0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 32 22 20 68 72 65 66 3d 22 23 6c 6f 67 | .<li><a.id="toc-log2".href="#log |
| 68c0 | 32 22 3e 40 6c 6f 67 32 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | 2">@log2</a></li>.............<l |
| 68e0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 31 30 22 20 68 72 65 66 3d 22 23 6c 6f 67 31 30 | i><a.id="toc-log10".href="#log10 |
| 6900 | 22 3e 40 6c 6f 67 31 30 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ">@log10</a></li>.............<l |
| 6920 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 61 62 73 22 20 68 72 65 66 3d 22 23 66 61 62 73 22 3e | i><a.id="toc-fabs".href="#fabs"> |
| 6940 | 40 66 61 62 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | @fabs</a></li>.............<li>< |
| 6960 | 61 20 69 64 3d 22 74 6f 63 2d 66 6c 6f 6f 72 22 20 68 72 65 66 3d 22 23 66 6c 6f 6f 72 22 3e 40 | a.id="toc-floor".href="#floor">@ |
| 6980 | 66 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | floor</a></li>.............<li>< |
| 69a0 | 61 20 69 64 3d 22 74 6f 63 2d 63 65 69 6c 22 20 68 72 65 66 3d 22 23 63 65 69 6c 22 3e 40 63 65 | a.id="toc-ceil".href="#ceil">@ce |
| 69c0 | 69 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | il</a></li>.............<li><a.i |
| 69e0 | 64 3d 22 74 6f 63 2d 74 72 75 6e 63 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 22 3e 40 74 72 75 | d="toc-trunc".href="#trunc">@tru |
| 6a00 | 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | nc</a></li>.............<li><a.i |
| 6a20 | 64 3d 22 74 6f 63 2d 72 6f 75 6e 64 22 20 68 72 65 66 3d 22 23 72 6f 75 6e 64 22 3e 40 72 6f 75 | d="toc-round".href="#round">@rou |
| 6a40 | 6e 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | nd</a></li>.............<li><a.i |
| 6a60 | 64 3d 22 74 6f 63 2d 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 73 | d="toc-subWithOverflow".href="#s |
| 6a80 | 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 | ubWithOverflow">@subWithOverflow |
| 6aa0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | </a></li>.............<li><a.id= |
| 6ac0 | 22 74 6f 63 2d 74 61 67 4e 61 6d 65 22 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e 40 74 | "toc-tagName".href="#tagName">@t |
| 6ae0 | 61 67 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | agName</a></li>.............<li> |
| 6b00 | 3c 61 20 69 64 3d 22 74 6f 63 2d 54 68 69 73 22 20 68 72 65 66 3d 22 23 54 68 69 73 22 3e 40 54 | <a.id="toc-This".href="#This">@T |
| 6b20 | 68 69 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | his</a></li>.............<li><a. |
| 6b40 | 69 64 3d 22 74 6f 63 2d 74 72 75 6e 63 61 74 65 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 | id="toc-truncate".href="#truncat |
| 6b60 | 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | e">@truncate</a></li>........... |
| 6b80 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 54 79 | ..<li><a.id="toc-Type".href="#Ty |
| 6ba0 | 70 65 22 3e 40 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | pe">@Type</a></li>.............< |
| 6bc0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 79 70 65 49 6e 66 6f 22 20 68 72 65 66 3d 22 23 74 | li><a.id="toc-typeInfo".href="#t |
| 6be0 | 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ypeInfo">@typeInfo</a></li>..... |
| 6c00 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 79 70 65 4e 61 6d 65 22 | ........<li><a.id="toc-typeName" |
| 6c20 | 20 68 72 65 66 3d 22 23 74 79 70 65 4e 61 6d 65 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 61 3e 3c | .href="#typeName">@typeName</a>< |
| 6c40 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /li>.............<li><a.id="toc- |
| 6c60 | 54 79 70 65 4f 66 22 20 68 72 65 66 3d 22 23 54 79 70 65 4f 66 22 3e 40 54 79 70 65 4f 66 3c 2f | TypeOf".href="#TypeOf">@TypeOf</ |
| 6c80 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | a></li>.............<li><a.id="t |
| 6ca0 | 6f 63 2d 75 6e 69 6f 6e 49 6e 69 74 22 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e | oc-unionInit".href="#unionInit"> |
| 6cc0 | 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c | @unionInit</a></li>.........</ul |
| 6ce0 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 | ></li>.........<li><a.id="toc-Bu |
| 6d00 | 69 6c 64 2d 4d 6f 64 65 22 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e 42 75 69 | ild-Mode".href="#Build-Mode">Bui |
| 6d20 | 6c 64 20 4d 6f 64 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | ld.Mode</a>.........<ul>........ |
| 6d40 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 62 75 67 22 20 68 72 65 66 3d | .....<li><a.id="toc-Debug".href= |
| 6d60 | 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | "#Debug">Debug</a></li>......... |
| 6d80 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 6c 65 61 73 65 46 61 73 74 22 20 | ....<li><a.id="toc-ReleaseFast". |
| 6da0 | 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c | href="#ReleaseFast">ReleaseFast< |
| 6dc0 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | /a></li>.............<li><a.id=" |
| 6de0 | 74 6f 63 2d 52 65 6c 65 61 73 65 53 61 66 65 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 | toc-ReleaseSafe".href="#ReleaseS |
| 6e00 | 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | afe">ReleaseSafe</a></li>....... |
| 6e20 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 6c 65 61 73 65 53 6d 61 6c | ......<li><a.id="toc-ReleaseSmal |
| 6e40 | 6c 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 | l".href="#ReleaseSmall">ReleaseS |
| 6e60 | 6d 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | mall</a></li>.........</ul></li> |
| 6e80 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 69 6e 67 6c 65 2d 54 | .........<li><a.id="toc-Single-T |
| 6ea0 | 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 20 68 72 65 66 3d 22 23 53 69 6e 67 6c 65 2d 54 68 | hreaded-Builds".href="#Single-Th |
| 6ec0 | 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e 53 69 6e 67 6c 65 20 54 68 72 65 61 64 65 64 20 42 | readed-Builds">Single.Threaded.B |
| 6ee0 | 75 69 6c 64 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | uilds</a></li>.........<li><a.id |
| 6f00 | 3d 22 74 6f 63 2d 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 20 68 72 65 66 3d 22 | ="toc-Undefined-Behavior".href=" |
| 6f20 | 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 | #Undefined-Behavior">Undefined.B |
| 6f40 | 65 68 61 76 69 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | ehavior</a>.........<ul>........ |
| 6f60 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 61 63 68 69 6e 67 2d 55 6e 72 | .....<li><a.id="toc-Reaching-Unr |
| 6f80 | 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 20 68 72 65 66 3d 22 23 52 65 61 63 68 69 6e 67 2d 55 | eachable-Code".href="#Reaching-U |
| 6fa0 | 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e 52 65 61 63 68 69 6e 67 20 55 6e 72 65 61 63 | nreachable-Code">Reaching.Unreac |
| 6fc0 | 68 61 62 6c 65 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | hable.Code</a></li>............. |
| 6fe0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e | <li><a.id="toc-Index-out-of-Boun |
| 7000 | 64 73 22 20 68 72 65 66 3d 22 23 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e | ds".href="#Index-out-of-Bounds"> |
| 7020 | 49 6e 64 65 78 20 6f 75 74 20 6f 66 20 42 6f 75 6e 64 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | Index.out.of.Bounds</a></li>.... |
| 7040 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 74 2d 4e 65 67 | .........<li><a.id="toc-Cast-Neg |
| 7060 | 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 | ative-Number-to-Unsigned-Integer |
| 7080 | 22 20 68 72 65 66 3d 22 23 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f | ".href="#Cast-Negative-Number-to |
| 70a0 | 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e 43 61 73 74 20 4e 65 67 61 74 69 76 65 | -Unsigned-Integer">Cast.Negative |
| 70c0 | 20 4e 75 6d 62 65 72 20 74 6f 20 55 6e 73 69 67 6e 65 64 20 49 6e 74 65 67 65 72 3c 2f 61 3e 3c | .Number.to.Unsigned.Integer</a>< |
| 70e0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /li>.............<li><a.id="toc- |
| 7100 | 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 20 68 72 65 66 3d 22 23 43 61 73 74 | Cast-Truncates-Data".href="#Cast |
| 7120 | 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 3e 43 61 73 74 20 54 72 75 6e 63 61 74 65 73 20 | -Truncates-Data">Cast.Truncates. |
| 7140 | 44 61 74 61 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | Data</a></li>.............<li><a |
| 7160 | 20 69 64 3d 22 74 6f 63 2d 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d | .id="toc-Integer-Overflow".href= |
| 7180 | 22 23 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 | "#Integer-Overflow">Integer.Over |
| 71a0 | 66 6c 6f 77 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | flow</a>.............<ul>....... |
| 71c0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 66 61 75 6c 74 | ..........<li><a.id="toc-Default |
| 71e0 | 2d 4f 70 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 | -Operations".href="#Default-Oper |
| 7200 | 61 74 69 6f 6e 73 22 3e 44 65 66 61 75 6c 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f | ations">Default.Operations</a></ |
| 7220 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | li>.................<li><a.id="t |
| 7240 | 6f 63 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f | oc-Standard-Library-Math-Functio |
| 7260 | 6e 73 22 20 68 72 65 66 3d 22 23 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 | ns".href="#Standard-Library-Math |
| 7280 | 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 4d 61 74 | -Functions">Standard.Library.Mat |
| 72a0 | 68 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | h.Functions</a></li>............ |
| 72c0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 4f 76 65 72 | .....<li><a.id="toc-Builtin-Over |
| 72e0 | 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 4f | flow-Functions".href="#Builtin-O |
| 7300 | 76 65 72 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 6c 74 69 6e 20 4f 76 65 72 66 | verflow-Functions">Builtin.Overf |
| 7320 | 6c 6f 77 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | low.Functions</a></li>.......... |
| 7340 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 72 61 70 70 69 6e 67 2d 4f | .......<li><a.id="toc-Wrapping-O |
| 7360 | 70 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 | perations".href="#Wrapping-Opera |
| 7380 | 74 69 6f 6e 73 22 3e 57 72 61 70 70 69 6e 67 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f | tions">Wrapping.Operations</a></ |
| 73a0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | li>.............</ul></li>...... |
| 73c0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 63 74 2d 4c 65 66 74 | .......<li><a.id="toc-Exact-Left |
| 73e0 | 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 4c 65 | -Shift-Overflow".href="#Exact-Le |
| 7400 | 66 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 4c 65 66 74 20 53 68 | ft-Shift-Overflow">Exact.Left.Sh |
| 7420 | 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ift.Overflow</a></li>........... |
| 7440 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 | ..<li><a.id="toc-Exact-Right-Shi |
| 7460 | 66 74 2d 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 52 69 67 68 74 2d | ft-Overflow".href="#Exact-Right- |
| 7480 | 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 52 69 67 68 74 20 53 68 69 66 | Shift-Overflow">Exact.Right.Shif |
| 74a0 | 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | t.Overflow</a></li>............. |
| 74c0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 | <li><a.id="toc-Division-by-Zero" |
| 74e0 | 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 | .href="#Division-by-Zero">Divisi |
| 7500 | 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | on.by.Zero</a></li>............. |
| 7520 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f | <li><a.id="toc-Remainder-Divisio |
| 7540 | 6e 2d 62 79 2d 5a 65 72 6f 22 20 68 72 65 66 3d 22 23 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 | n-by-Zero".href="#Remainder-Divi |
| 7560 | 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e | sion-by-Zero">Remainder.Division |
| 7580 | 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | .by.Zero</a></li>.............<l |
| 75a0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 | i><a.id="toc-Exact-Division-Rema |
| 75c0 | 69 6e 64 65 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d | inder".href="#Exact-Division-Rem |
| 75e0 | 61 69 6e 64 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 6f 6e 20 52 65 6d 61 69 6e 64 65 72 | ainder">Exact.Division.Remainder |
| 7600 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | </a></li>.............<li><a.id= |
| 7620 | 22 74 6f 63 2d 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 20 68 72 65 | "toc-Attempt-to-Unwrap-Null".hre |
| 7640 | 66 3d 22 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e 41 74 74 65 | f="#Attempt-to-Unwrap-Null">Atte |
| 7660 | 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 4e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | mpt.to.Unwrap.Null</a></li>..... |
| 7680 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 74 74 65 6d 70 74 2d 74 | ........<li><a.id="toc-Attempt-t |
| 76a0 | 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 20 68 72 65 66 3d 22 23 41 74 74 65 6d 70 74 2d 74 | o-Unwrap-Error".href="#Attempt-t |
| 76c0 | 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 | o-Unwrap-Error">Attempt.to.Unwra |
| 76e0 | 70 20 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | p.Error</a></li>.............<li |
| 7700 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 20 | ><a.id="toc-Invalid-Error-Code". |
| 7720 | 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 49 6e 76 61 6c | href="#Invalid-Error-Code">Inval |
| 7740 | 69 64 20 45 72 72 6f 72 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | id.Error.Code</a></li>.......... |
| 7760 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 | ...<li><a.id="toc-Invalid-Enum-C |
| 7780 | 61 73 74 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e 49 | ast".href="#Invalid-Enum-Cast">I |
| 77a0 | 6e 76 61 6c 69 64 20 45 6e 75 6d 20 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | nvalid.Enum.Cast</a></li>....... |
| 77c0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 72 72 | ......<li><a.id="toc-Invalid-Err |
| 77e0 | 6f 72 2d 53 65 74 2d 43 61 73 74 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f | or-Set-Cast".href="#Invalid-Erro |
| 7800 | 72 2d 53 65 74 2d 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f 72 20 53 65 74 20 43 61 | r-Set-Cast">Invalid.Error.Set.Ca |
| 7820 | 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | st</a></li>.............<li><a.i |
| 7840 | 64 3d 22 74 6f 63 2d 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 | d="toc-Incorrect-Pointer-Alignme |
| 7860 | 6e 74 22 20 68 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 | nt".href="#Incorrect-Pointer-Ali |
| 7880 | 67 6e 6d 65 6e 74 22 3e 49 6e 63 6f 72 72 65 63 74 20 50 6f 69 6e 74 65 72 20 41 6c 69 67 6e 6d | gnment">Incorrect.Pointer.Alignm |
| 78a0 | 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ent</a></li>.............<li><a. |
| 78c0 | 69 64 3d 22 74 6f 63 2d 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 | id="toc-Wrong-Union-Field-Access |
| 78e0 | 22 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 | ".href="#Wrong-Union-Field-Acces |
| 7900 | 73 22 3e 57 72 6f 6e 67 20 55 6e 69 6f 6e 20 46 69 65 6c 64 20 41 63 63 65 73 73 3c 2f 61 3e 3c | s">Wrong.Union.Field.Access</a>< |
| 7920 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /li>.............<li><a.id="toc- |
| 7940 | 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 | Out-of-Bounds-Float-to-Integer-C |
| 7960 | 61 73 74 22 20 68 72 65 66 3d 22 23 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d | ast".href="#Out-of-Bounds-Float- |
| 7980 | 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 4f 75 74 20 6f 66 20 42 6f 75 6e 64 73 20 46 | to-Integer-Cast">Out.of.Bounds.F |
| 79a0 | 6c 6f 61 74 20 74 6f 20 49 6e 74 65 67 65 72 20 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | loat.to.Integer.Cast</a></li>... |
| 79c0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 6f 69 6e 74 65 72 | ..........<li><a.id="toc-Pointer |
| 79e0 | 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 | -Cast-Invalid-Null".href="#Point |
| 7a00 | 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 6e 74 65 72 20 43 61 | er-Cast-Invalid-Null">Pointer.Ca |
| 7a20 | 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | st.Invalid.Null</a></li>........ |
| 7a40 | 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | .</ul></li>.........<li><a.id="t |
| 7a60 | 6f 63 2d 4d 65 6d 6f 72 79 22 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e 4d 65 6d 6f 72 79 | oc-Memory".href="#Memory">Memory |
| 7a80 | 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | </a>.........<ul>.............<l |
| 7aa0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 | i><a.id="toc-Choosing-an-Allocat |
| 7ac0 | 6f 72 22 20 68 72 65 66 3d 22 23 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 | or".href="#Choosing-an-Allocator |
| 7ae0 | 22 3e 43 68 6f 6f 73 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e | ">Choosing.an.Allocator</a></li> |
| 7b00 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 68 65 72 | .............<li><a.id="toc-Wher |
| 7b20 | 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 20 68 72 65 66 3d 22 23 57 68 65 72 65 2d 61 72 | e-are-the-bytes".href="#Where-ar |
| 7b40 | 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 57 68 65 72 65 20 61 72 65 20 74 68 65 20 62 79 74 65 73 | e-the-bytes">Where.are.the.bytes |
| 7b60 | 3f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ?</a></li>.............<li><a.id |
| 7b80 | 3d 22 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 | ="toc-Implementing-an-Allocator" |
| 7ba0 | 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f | .href="#Implementing-an-Allocato |
| 7bc0 | 72 22 3e 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e | r">Implementing.an.Allocator</a> |
| 7be0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </li>.............<li><a.id="toc |
| 7c00 | 2d 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 20 68 72 65 66 3d 22 | -Heap-Allocation-Failure".href=" |
| 7c20 | 23 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 3e 48 65 61 70 20 41 | #Heap-Allocation-Failure">Heap.A |
| 7c40 | 6c 6c 6f 63 61 74 69 6f 6e 20 46 61 69 6c 75 72 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | llocation.Failure</a></li>...... |
| 7c60 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 63 75 72 73 69 6f 6e 22 | .......<li><a.id="toc-Recursion" |
| 7c80 | 20 68 72 65 66 3d 22 23 52 65 63 75 72 73 69 6f 6e 22 3e 52 65 63 75 72 73 69 6f 6e 3c 2f 61 3e | .href="#Recursion">Recursion</a> |
| 7ca0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </li>.............<li><a.id="toc |
| 7cc0 | 2d 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 20 68 72 65 66 3d 22 23 | -Lifetime-and-Ownership".href="# |
| 7ce0 | 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 3e 4c 69 66 65 74 69 6d 65 | Lifetime-and-Ownership">Lifetime |
| 7d00 | 20 61 6e 64 20 4f 77 6e 65 72 73 68 69 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | .and.Ownership</a></li>......... |
| 7d20 | 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | </ul></li>.........<li><a.id="to |
| 7d40 | 63 2d 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 | c-Compile-Variables".href="#Comp |
| 7d60 | 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 | ile-Variables">Compile.Variables |
| 7d80 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </a></li>.........<li><a.id="toc |
| 7da0 | 2d 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 | -Root-Source-File".href="#Root-S |
| 7dc0 | 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e | ource-File">Root.Source.File</a> |
| 7de0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 5a 69 67 | </li>.........<li><a.id="toc-Zig |
| 7e00 | 2d 54 65 73 74 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 | -Test".href="#Zig-Test">Zig.Test |
| 7e20 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </a></li>.........<li><a.id="toc |
| 7e40 | 2d 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 | -Zig-Build-System".href="#Zig-Bu |
| 7e60 | 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e | ild-System">Zig.Build.System</a> |
| 7e80 | 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .........<ul>.............<li><a |
| 7ea0 | 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 64 69 6e 67 2d 61 6e 2d 45 78 65 63 75 74 61 62 6c 65 22 | .id="toc-Building-an-Executable" |
| 7ec0 | 20 68 72 65 66 3d 22 23 42 75 69 6c 64 69 6e 67 2d 61 6e 2d 45 78 65 63 75 74 61 62 6c 65 22 3e | .href="#Building-an-Executable"> |
| 7ee0 | 42 75 69 6c 64 69 6e 67 20 61 6e 20 45 78 65 63 75 74 61 62 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | Building.an.Executable</a></li>. |
| 7f00 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 64 | ............<li><a.id="toc-Build |
| 7f20 | 69 6e 67 2d 61 2d 4c 69 62 72 61 72 79 22 20 68 72 65 66 3d 22 23 42 75 69 6c 64 69 6e 67 2d 61 | ing-a-Library".href="#Building-a |
| 7f40 | 2d 4c 69 62 72 61 72 79 22 3e 42 75 69 6c 64 69 6e 67 20 61 20 4c 69 62 72 61 72 79 3c 2f 61 3e | -Library">Building.a.Library</a> |
| 7f60 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 | </li>.............<li><a.id="toc |
| 7f80 | 2d 43 6f 6d 70 69 6c 69 6e 67 2d 43 2d 53 6f 75 72 63 65 2d 43 6f 64 65 22 20 68 72 65 66 3d 22 | -Compiling-C-Source-Code".href=" |
| 7fa0 | 23 43 6f 6d 70 69 6c 69 6e 67 2d 43 2d 53 6f 75 72 63 65 2d 43 6f 64 65 22 3e 43 6f 6d 70 69 6c | #Compiling-C-Source-Code">Compil |
| 7fc0 | 69 6e 67 20 43 20 53 6f 75 72 63 65 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ing.C.Source.Code</a></li>...... |
| 7fe0 | 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | ...</ul></li>.........<li><a.id= |
| 8000 | 22 74 6f 63 2d 43 22 20 68 72 65 66 3d 22 23 43 22 3e 43 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 | "toc-C".href="#C">C</a>......... |
| 8020 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | <ul>.............<li><a.id="toc- |
| 8040 | 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 20 68 72 65 66 3d 22 23 43 2d 54 79 70 65 | C-Type-Primitives".href="#C-Type |
| 8060 | 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 43 20 54 79 70 65 20 50 72 69 6d 69 74 69 76 65 73 3c 2f | -Primitives">C.Type.Primitives</ |
| 8080 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | a></li>.............<li><a.id="t |
| 80a0 | 6f 63 2d 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 20 68 72 | oc-Import-from-C-Header-File".hr |
| 80c0 | 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e | ef="#Import-from-C-Header-File"> |
| 80e0 | 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c | Import.from.C.Header.File</a></l |
| 8100 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 2d | i>.............<li><a.id="toc-C- |
| 8120 | 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 | Pointers".href="#C-Pointers">C.P |
| 8140 | 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | ointers</a></li>.............<li |
| 8160 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 | ><a.id="toc-Exporting-a-C-Librar |
| 8180 | 79 22 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 | y".href="#Exporting-a-C-Library" |
| 81a0 | 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a | >Exporting.a.C.Library</a></li>. |
| 81c0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4d 69 78 69 6e | ............<li><a.id="toc-Mixin |
| 81e0 | 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 20 68 72 65 66 3d 22 23 4d 69 78 69 6e 67 2d 4f 62 | g-Object-Files".href="#Mixing-Ob |
| 8200 | 6a 65 63 74 2d 46 69 6c 65 73 22 3e 4d 69 78 69 6e 67 20 4f 62 6a 65 63 74 20 46 69 6c 65 73 3c | ject-Files">Mixing.Object.Files< |
| 8220 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | /a></li>.........</ul></li>..... |
| 8240 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 65 62 41 73 73 65 6d 62 6c 79 22 20 | ....<li><a.id="toc-WebAssembly". |
| 8260 | 68 72 65 66 3d 22 23 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 57 65 62 41 73 73 65 6d 62 6c 79 3c | href="#WebAssembly">WebAssembly< |
| 8280 | 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | /a>.........<ul>.............<li |
| 82a0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 72 65 65 73 74 61 6e 64 69 6e 67 22 20 68 72 65 66 3d 22 | ><a.id="toc-Freestanding".href=" |
| 82c0 | 23 46 72 65 65 73 74 61 6e 64 69 6e 67 22 3e 46 72 65 65 73 74 61 6e 64 69 6e 67 3c 2f 61 3e 3c | #Freestanding">Freestanding</a>< |
| 82e0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d | /li>.............<li><a.id="toc- |
| 8300 | 57 41 53 49 22 20 68 72 65 66 3d 22 23 57 41 53 49 22 3e 57 41 53 49 3c 2f 61 3e 3c 2f 6c 69 3e | WASI".href="#WASI">WASI</a></li> |
| 8320 | 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | .........</ul></li>.........<li> |
| 8340 | 3c 61 20 69 64 3d 22 74 6f 63 2d 54 61 72 67 65 74 73 22 20 68 72 65 66 3d 22 23 54 61 72 67 65 | <a.id="toc-Targets".href="#Targe |
| 8360 | 74 73 22 3e 54 61 72 67 65 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | ts">Targets</a></li>.........<li |
| 8380 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 74 79 6c 65 2d 47 75 69 64 65 22 20 68 72 65 66 3d 22 23 | ><a.id="toc-Style-Guide".href="# |
| 83a0 | 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 53 74 79 6c 65 20 47 75 69 64 65 3c 2f 61 3e 0a 20 20 20 | Style-Guide">Style.Guide</a>.... |
| 83c0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | .....<ul>.............<li><a.id= |
| 83e0 | 22 74 6f 63 2d 57 68 69 74 65 73 70 61 63 65 22 20 68 72 65 66 3d 22 23 57 68 69 74 65 73 70 61 | "toc-Whitespace".href="#Whitespa |
| 8400 | 63 65 22 3e 57 68 69 74 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ce">Whitespace</a></li>......... |
| 8420 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4e 61 6d 65 73 22 20 68 72 65 66 3d 22 | ....<li><a.id="toc-Names".href=" |
| 8440 | 23 4e 61 6d 65 73 22 3e 4e 61 6d 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | #Names">Names</a></li>.......... |
| 8460 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 6d 70 6c 65 73 22 20 68 72 65 66 | ...<li><a.id="toc-Examples".href |
| 8480 | 3d 22 23 45 78 61 6d 70 6c 65 73 22 3e 45 78 61 6d 70 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ="#Examples">Examples</a></li>.. |
| 84a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 6f 63 2d 43 6f | ...........<li><a.id="toc-Doc-Co |
| 84c0 | 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 43 6f 6d 6d 65 | mment-Guidance".href="#Doc-Comme |
| 84e0 | 6e 74 2d 47 75 69 64 61 6e 63 65 22 3e 44 6f 63 20 43 6f 6d 6d 65 6e 74 20 47 75 69 64 61 6e 63 | nt-Guidance">Doc.Comment.Guidanc |
| 8500 | 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 | e</a></li>.........</ul></li>... |
| 8520 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 6f 75 72 63 65 2d 45 6e 63 6f | ......<li><a.id="toc-Source-Enco |
| 8540 | 64 69 6e 67 22 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f | ding".href="#Source-Encoding">So |
| 8560 | 75 72 63 65 20 45 6e 63 6f 64 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | urce.Encoding</a></li>.........< |
| 8580 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 | li><a.id="toc-Keyword-Reference" |
| 85a0 | 20 68 72 65 66 3d 22 23 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 3e 4b 65 79 77 6f | .href="#Keyword-Reference">Keywo |
| 85c0 | 72 64 20 52 65 66 65 72 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | rd.Reference</a></li>.........<l |
| 85e0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 47 72 61 6d 6d 61 72 22 20 68 72 65 66 3d 22 23 47 72 61 | i><a.id="toc-Grammar".href="#Gra |
| 8600 | 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | mmar">Grammar</a></li>.........< |
| 8620 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 5a 65 6e 22 20 68 72 65 66 3d 22 23 5a 65 6e 22 3e 5a | li><a.id="toc-Zen".href="#Zen">Z |
| 8640 | 65 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 3c 2f 64 | en</a></li>.....</ul>........</d |
| 8660 | 69 76 3e 0a 20 20 20 20 20 20 3c 64 69 76 20 69 64 3d 22 63 6f 6e 74 65 6e 74 73 2d 77 72 61 70 | iv>.......<div.id="contents-wrap |
| 8680 | 70 65 72 22 3e 3c 64 69 76 20 69 64 3d 22 63 6f 6e 74 65 6e 74 73 22 3e 0a 20 20 20 20 20 20 3c | per"><div.id="contents">.......< |
| 86a0 | 68 31 20 69 64 3d 22 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | h1.id="Introduction"><a.href="#t |
| 86c0 | 6f 63 2d 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3c 2f 61 | oc-Introduction">Introduction</a |
| 86e0 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e 74 72 6f 64 75 63 | >.<a.class="hdr".href="#Introduc |
| 8700 | 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | tion">..</a></h1>........<p>.... |
| 8720 | 20 20 20 5a 69 67 20 69 73 20 61 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 20 70 72 6f 67 | ...Zig.is.a.general-purpose.prog |
| 8740 | 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 20 61 6e 64 20 74 6f 6f 6c 63 68 61 69 6e 20 66 | ramming.language.and.toolchain.f |
| 8760 | 6f 72 20 6d 61 69 6e 74 61 69 6e 69 6e 67 0a 20 20 20 20 20 20 3c 73 74 72 6f 6e 67 3e 72 6f 62 | or.maintaining.......<strong>rob |
| 8780 | 75 73 74 3c 2f 73 74 72 6f 6e 67 3e 2c 20 3c 73 74 72 6f 6e 67 3e 6f 70 74 69 6d 61 6c 3c 2f 73 | ust</strong>,.<strong>optimal</s |
| 87a0 | 74 72 6f 6e 67 3e 2c 20 61 6e 64 20 3c 73 74 72 6f 6e 67 3e 72 65 75 73 61 62 6c 65 3c 2f 73 74 | trong>,.and.<strong>reusable</st |
| 87c0 | 72 6f 6e 67 3e 20 73 6f 66 74 77 61 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | rong>.software........</p>...... |
| 87e0 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 73 74 72 6f 6e 67 3e 52 6f 62 75 73 74 | .<ul>.........<li><strong>Robust |
| 8800 | 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 62 65 68 61 76 69 6f 72 20 69 73 20 63 6f 72 72 65 63 74 20 | </strong>.-.behavior.is.correct. |
| 8820 | 65 76 65 6e 20 66 6f 72 20 65 64 67 65 20 63 61 73 65 73 20 73 75 63 68 20 61 73 20 6f 75 74 20 | even.for.edge.cases.such.as.out. |
| 8840 | 6f 66 20 6d 65 6d 6f 72 79 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 73 74 72 | of.memory.</li>.........<li><str |
| 8860 | 6f 6e 67 3e 4f 70 74 69 6d 61 6c 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 77 72 69 74 65 20 70 72 6f | ong>Optimal</strong>.-.write.pro |
| 8880 | 67 72 61 6d 73 20 74 68 65 20 62 65 73 74 20 77 61 79 20 74 68 65 79 20 63 61 6e 20 62 65 68 61 | grams.the.best.way.they.can.beha |
| 88a0 | 76 65 20 61 6e 64 20 70 65 72 66 6f 72 6d 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | ve.and.perform.</li>.........<li |
| 88c0 | 3e 3c 73 74 72 6f 6e 67 3e 52 65 75 73 61 62 6c 65 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 74 68 65 | ><strong>Reusable</strong>.-.the |
| 88e0 | 20 73 61 6d 65 20 63 6f 64 65 20 77 6f 72 6b 73 20 69 6e 20 6d 61 6e 79 20 65 6e 76 69 72 6f 6e | .same.code.works.in.many.environ |
| 8900 | 6d 65 6e 74 73 20 77 68 69 63 68 20 68 61 76 65 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 | ments.which.have.different...... |
| 8920 | 20 20 20 20 20 63 6f 6e 73 74 72 61 69 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | .....constraints.</li>.........< |
| 8940 | 6c 69 3e 3c 73 74 72 6f 6e 67 3e 4d 61 69 6e 74 61 69 6e 61 62 6c 65 3c 2f 73 74 72 6f 6e 67 3e | li><strong>Maintainable</strong> |
| 8960 | 20 2d 20 70 72 65 63 69 73 65 6c 79 20 63 6f 6d 6d 75 6e 69 63 61 74 65 20 69 6e 74 65 6e 74 20 | .-.precisely.communicate.intent. |
| 8980 | 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 6f 74 | to.the.compiler.and...........ot |
| 89a0 | 68 65 72 20 70 72 6f 67 72 61 6d 6d 65 72 73 2e 20 54 68 65 20 6c 61 6e 67 75 61 67 65 20 69 6d | her.programmers..The.language.im |
| 89c0 | 70 6f 73 65 73 20 61 20 6c 6f 77 20 6f 76 65 72 68 65 61 64 20 74 6f 20 72 65 61 64 69 6e 67 20 | poses.a.low.overhead.to.reading. |
| 89e0 | 63 6f 64 65 20 61 6e 64 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 72 65 73 69 6c 69 65 6e 74 20 | code.and.is...........resilient. |
| 8a00 | 74 6f 20 63 68 61 6e 67 69 6e 67 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 6e 64 20 65 6e 76 | to.changing.requirements.and.env |
| 8a20 | 69 72 6f 6e 6d 65 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | ironments.</li>.......</ul>..... |
| 8a40 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 66 74 65 6e 20 74 68 65 20 6d 6f 73 74 20 65 66 66 69 63 | ..<p>.......Often.the.most.effic |
| 8a60 | 69 65 6e 74 20 77 61 79 20 74 6f 20 6c 65 61 72 6e 20 73 6f 6d 65 74 68 69 6e 67 20 6e 65 77 20 | ient.way.to.learn.something.new. |
| 8a80 | 69 73 20 74 6f 20 73 65 65 20 65 78 61 6d 70 6c 65 73 2c 20 73 6f 0a 20 20 20 20 20 20 74 68 69 | is.to.see.examples,.so.......thi |
| 8aa0 | 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 73 68 6f 77 73 20 68 6f 77 20 74 6f 20 75 73 65 | s.documentation.shows.how.to.use |
| 8ac0 | 20 65 61 63 68 20 6f 66 20 5a 69 67 27 73 20 66 65 61 74 75 72 65 73 2e 20 49 74 20 69 73 0a 20 | .each.of.Zig's.features..It.is.. |
| 8ae0 | 20 20 20 20 20 61 6c 6c 20 6f 6e 20 6f 6e 65 20 70 61 67 65 20 73 6f 20 79 6f 75 20 63 61 6e 20 | .....all.on.one.page.so.you.can. |
| 8b00 | 73 65 61 72 63 68 20 77 69 74 68 20 79 6f 75 72 20 62 72 6f 77 73 65 72 27 73 20 73 65 61 72 63 | search.with.your.browser's.searc |
| 8b20 | 68 20 74 6f 6f 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | h.tool........</p>.......<p>.... |
| 8b40 | 20 20 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c 65 73 20 69 6e 20 74 68 69 73 20 64 6f 63 75 | ...The.code.samples.in.this.docu |
| 8b60 | 6d 65 6e 74 20 61 72 65 20 63 6f 6d 70 69 6c 65 64 20 61 6e 64 20 74 65 73 74 65 64 20 61 73 20 | ment.are.compiled.and.tested.as. |
| 8b80 | 70 61 72 74 20 6f 66 20 74 68 65 20 6d 61 69 6e 20 74 65 73 74 20 73 75 69 74 65 20 6f 66 20 5a | part.of.the.main.test.suite.of.Z |
| 8ba0 | 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | ig........</p>.......<p>.......T |
| 8bc0 | 68 69 73 20 48 54 4d 4c 20 64 6f 63 75 6d 65 6e 74 20 64 65 70 65 6e 64 73 20 6f 6e 20 6e 6f 20 | his.HTML.document.depends.on.no. |
| 8be0 | 65 78 74 65 72 6e 61 6c 20 66 69 6c 65 73 2c 20 73 6f 20 79 6f 75 20 63 61 6e 20 75 73 65 20 69 | external.files,.so.you.can.use.i |
| 8c00 | 74 20 6f 66 66 6c 69 6e 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | t.offline........</p>.......<p>. |
| 8c20 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f | ......<a.href="https://github.co |
| 8c40 | 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 77 69 6b 69 2f 46 41 51 23 77 68 65 72 65 2d 69 73 2d | m/ziglang/zig/wiki/FAQ#where-is- |
| 8c60 | 74 68 65 2d 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2d 66 6f 72 2d 74 68 65 2d 7a 69 67 2d 73 74 | the-documentation-for-the-zig-st |
| 8c80 | 61 6e 64 61 72 64 2d 6c 69 62 72 61 72 79 22 3e 57 68 65 72 65 20 69 73 20 74 68 65 20 64 6f 63 | andard-library">Where.is.the.doc |
| 8ca0 | 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 5a 69 67 20 73 74 61 6e 64 61 72 64 20 | umentation.for.the.Zig.standard. |
| 8cc0 | 6c 69 62 72 61 72 79 3f 3c 2f 61 3e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a | library?</a>.......</p>......... |
| 8ce0 | 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e 3c 61 20 68 72 | ......<h1.id="Hello-World"><a.hr |
| 8d00 | 65 66 3d 22 23 74 6f 63 2d 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e 48 65 6c 6c 6f 20 57 6f 72 6c | ef="#toc-Hello-World">Hello.Worl |
| 8d20 | 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 48 65 6c 6c | d</a>.<a.class="hdr".href="#Hell |
| 8d40 | 6f 2d 57 6f 72 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 0a 20 20 20 20 20 20 3c 70 20 | o-World">..</a></h1>.........<p. |
| 8d60 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | class="file">hello.zig</p><pre>< |
| 8d80 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 8da0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.std.=.<span.c |
| 8dc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e | lass="tok-builtin">@import</span |
| 8de0 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 | >(<span.class="tok-str">"st |
| 8e00 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | d"</span>);..<span.class="t |
| 8e20 | 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ok-kw">pub</span>.<span.class="t |
| 8e40 | 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ok-kw">fn</span>.<span.class="to |
| 8e60 | 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 | k-fn">main</span>().!<span.class |
| 8e80 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ="tok-type">void</span>.{.....<s |
| 8ea0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 8ec0 | 73 74 64 6f 75 74 20 3d 20 73 74 64 2e 69 6f 2e 67 65 74 53 74 64 4f 75 74 28 29 2e 77 72 69 74 | stdout.=.std.io.getStdOut().writ |
| 8ee0 | 65 72 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | er();.....<span.class="tok-kw">t |
| 8f00 | 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 6f 75 74 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 | ry</span>.stdout.print(<span.cla |
| 8f20 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 7b 73 7d 21 5c 6e | ss="tok-str">"Hello,.{s}!\n |
| 8f40 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | "</span>,..{<span.class="to |
| 8f60 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 6f 72 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d | k-str">"world"</span>} |
| 8f80 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 8fa0 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 68 65 6c 6c 6f 2e | s="shell">$.zig.build-exe.hello. |
| 8fc0 | 7a 69 67 0a 24 20 2e 2f 68 65 6c 6c 6f 0a 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 63 6f | zig.$../hello.Hello,.world!.</co |
| 8fe0 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 | de></pre>........<p>.........The |
| 9000 | 20 5a 69 67 20 63 6f 64 65 20 73 61 6d 70 6c 65 20 61 62 6f 76 65 20 64 65 6d 6f 6e 73 74 72 61 | .Zig.code.sample.above.demonstra |
| 9020 | 74 65 73 20 6f 6e 65 20 77 61 79 20 74 6f 20 63 72 65 61 74 65 20 61 20 70 72 6f 67 72 61 6d 20 | tes.one.way.to.create.a.program. |
| 9040 | 74 68 61 74 20 77 69 6c 6c 20 6f 75 74 70 75 74 20 3c 63 6f 64 65 3e 48 65 6c 6c 6f 2c 20 77 6f | that.will.output.<code>Hello,.wo |
| 9060 | 72 6c 64 21 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | rld!</code>........</p>.......<p |
| 9080 | 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c 65 20 73 68 6f 77 73 20 | >.........The.code.sample.shows. |
| 90a0 | 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 61 20 66 69 6c 65 20 6e 61 6d 65 64 20 3c 63 6f | the.contents.of.a.file.named.<co |
| 90c0 | 64 65 3e 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2e 20 46 69 6c 65 73 20 73 74 6f 72 69 | de>hello.zig</code>..Files.stori |
| 90e0 | 6e 67 20 5a 69 67 0a 20 20 20 20 20 20 20 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 72 65 20 3c | ng.Zig.........source.code.are.< |
| 9100 | 61 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 55 54 46 2d 38 20 | a.href="#Source-Encoding">UTF-8. |
| 9120 | 65 6e 63 6f 64 65 64 3c 2f 61 3e 20 74 65 78 74 20 66 69 6c 65 73 2e 20 54 68 65 20 66 69 6c 65 | encoded</a>.text.files..The.file |
| 9140 | 73 20 73 74 6f 72 69 6e 67 0a 20 20 20 20 20 20 20 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 | s.storing.........Zig.source.cod |
| 9160 | 65 20 61 72 65 20 75 73 75 61 6c 6c 79 20 6e 61 6d 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f | e.are.usually.named.with.the.<co |
| 9180 | 64 65 3e 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 65 78 74 65 6e 73 69 6f 6e 2e 0a 20 20 20 20 20 20 | de>.zig</code>.extension........ |
| 91a0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 46 6f 6c 6c 6f 77 69 6e 67 | </p>.......<p>.........Following |
| 91c0 | 20 74 68 65 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 5a 69 67 20 | .the.<code>hello.zig</code>.Zig. |
| 91e0 | 63 6f 64 65 20 73 61 6d 70 6c 65 2c 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 | code.sample,.the.<a.href="#Zig-B |
| 9200 | 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 | uild-System">Zig.Build.System</a |
| 9220 | 3e 20 69 73 20 75 73 65 64 0a 20 20 20 20 20 20 20 20 74 6f 20 62 75 69 6c 64 20 61 6e 20 65 78 | >.is.used.........to.build.an.ex |
| 9240 | 65 63 75 74 61 62 6c 65 20 70 72 6f 67 72 61 6d 20 66 72 6f 6d 20 74 68 65 20 3c 63 6f 64 65 3e | ecutable.program.from.the.<code> |
| 9260 | 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 54 68 | hello.zig</code>.source.code..Th |
| 9280 | 65 6e 2c 20 74 68 65 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 3c 2f 63 6f 64 | en,.the.........<code>hello</cod |
| 92a0 | 65 3e 20 70 72 6f 67 72 61 6d 20 69 73 20 65 78 65 63 75 74 65 64 20 73 68 6f 77 69 6e 67 20 69 | e>.program.is.executed.showing.i |
| 92c0 | 74 73 20 6f 75 74 70 75 74 20 3c 63 6f 64 65 3e 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 3c 2f 63 | ts.output.<code>Hello,.world!</c |
| 92e0 | 6f 64 65 3e 2e 20 54 68 65 0a 20 20 20 20 20 20 20 20 6c 69 6e 65 73 20 62 65 67 69 6e 6e 69 6e | ode>..The.........lines.beginnin |
| 9300 | 67 20 77 69 74 68 20 3c 63 6f 64 65 3e 24 3c 2f 63 6f 64 65 3e 20 72 65 70 72 65 73 65 6e 74 20 | g.with.<code>$</code>.represent. |
| 9320 | 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 70 72 6f 6d 70 74 73 20 61 6e 64 20 61 20 63 6f 6d 6d 61 | command.line.prompts.and.a.comma |
| 9340 | 6e 64 2e 0a 20 20 20 20 20 20 20 20 45 76 65 72 79 74 68 69 6e 67 20 65 6c 73 65 20 69 73 20 70 | nd..........Everything.else.is.p |
| 9360 | 72 6f 67 72 61 6d 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | rogram.output........</p>....... |
| 9380 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c 65 20 62 65 67 69 | <p>.........The.code.sample.begi |
| 93a0 | 6e 73 20 62 79 20 61 64 64 69 6e 67 20 5a 69 67 27 73 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 | ns.by.adding.Zig's.Standard.Libr |
| 93c0 | 61 72 79 20 74 6f 20 74 68 65 20 62 75 69 6c 64 20 75 73 69 6e 67 20 74 68 65 20 3c 61 20 68 72 | ary.to.the.build.using.the.<a.hr |
| 93e0 | 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 20 62 75 69 6c 74 69 6e | ef="#import">@import</a>.builtin |
| 9400 | 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 | .function..........The.<code.cla |
| 9420 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ss="zig"><span.class="tok-builti |
| 9440 | 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">@import</span>(<span.class="t |
| 9460 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c | ok-str">"std"</span>)< |
| 9480 | 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 63 72 65 61 74 65 73 20 61 20 73 | /code>.function.call.creates.a.s |
| 94a0 | 74 72 75 63 74 75 72 65 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 53 74 61 6e 64 61 | tructure.to.represent.the.Standa |
| 94c0 | 72 64 20 4c 69 62 72 61 72 79 2e 0a 20 20 20 20 20 20 20 20 54 68 65 20 63 6f 64 65 20 74 68 65 | rd.Library..........The.code.the |
| 94e0 | 6e 20 64 65 63 6c 61 72 65 73 20 61 0a 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 41 | n.declares.a.........<a.href="#A |
| 9500 | 73 73 69 67 6e 6d 65 6e 74 22 3e 63 6f 6e 73 74 61 6e 74 20 69 64 65 6e 74 69 66 69 65 72 3c 2f | ssignment">constant.identifier</ |
| 9520 | 61 3e 2c 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 73 74 64 3c 2f 63 6f 64 65 3e 2c 20 66 6f 72 20 | a>,.named.<code>std</code>,.for. |
| 9540 | 65 61 73 79 20 61 63 63 65 73 73 20 74 6f 0a 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 | easy.access.to.........<a.href=" |
| 9560 | 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 77 | https://github.com/ziglang/zig/w |
| 9580 | 69 6b 69 2f 46 41 51 23 77 68 65 72 65 2d 69 73 2d 74 68 65 2d 64 6f 63 75 6d 65 6e 74 61 74 69 | iki/FAQ#where-is-the-documentati |
| 95a0 | 6f 6e 2d 66 6f 72 2d 74 68 65 2d 7a 69 67 2d 73 74 61 6e 64 61 72 64 2d 6c 69 62 72 61 72 79 22 | on-for-the-zig-standard-library" |
| 95c0 | 3e 5a 69 67 27 73 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 3c 2f 61 3e 2e 0a 20 20 20 | >Zig's.standard.library</a>..... |
| 95e0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 4e 65 78 74 2c 20 | ...</p>.......<p>.........Next,. |
| 9600 | 61 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 70 75 62 6c 69 63 20 66 75 | a.<a.href="#Functions">public.fu |
| 9620 | 6e 63 74 69 6f 6e 3c 2f 61 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | nction</a>,.<code.class="zig"><s |
| 9640 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 | pan.class="tok-kw">pub</span>.<s |
| 9660 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | pan.class="tok-kw">fn</span></co |
| 9680 | 64 65 3e 2c 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 0a 20 20 20 | de>,.named.<code>main</code>.... |
| 96a0 | 20 20 20 20 20 69 73 20 64 65 63 6c 61 72 65 64 2e 20 54 68 65 20 3c 63 6f 64 65 3e 6d 61 69 6e | .....is.declared..The.<code>main |
| 96c0 | 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6e 65 63 65 73 73 61 72 79 20 62 65 | </code>.function.is.necessary.be |
| 96e0 | 63 61 75 73 65 20 69 74 20 74 65 6c 6c 73 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 65 72 20 | cause.it.tells.the.Zig.compiler. |
| 9700 | 77 68 65 72 65 20 74 68 65 20 73 74 61 72 74 20 6f 66 0a 20 20 20 20 20 20 20 20 74 68 65 20 70 | where.the.start.of.........the.p |
| 9720 | 72 6f 67 72 61 6d 20 65 78 69 73 74 73 2e 20 50 72 6f 67 72 61 6d 73 20 64 65 73 69 67 6e 65 64 | rogram.exists..Programs.designed |
| 9740 | 20 74 6f 20 62 65 20 65 78 65 63 75 74 65 64 20 77 69 6c 6c 20 6e 65 65 64 20 61 20 3c 63 6f 64 | .to.be.executed.will.need.a.<cod |
| 9760 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 9780 | 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | w">pub</span>.<span.class="tok-k |
| 97a0 | 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e | w">fn</span>.<span.class="tok-fn |
| 97c0 | 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 | ">main</span></code>.function... |
| 97e0 | 20 20 20 20 20 20 20 46 6f 72 20 6d 6f 72 65 20 61 64 76 61 6e 63 65 64 20 75 73 65 20 63 61 73 | .......For.more.advanced.use.cas |
| 9800 | 65 73 2c 20 5a 69 67 20 6f 66 66 65 72 73 20 6f 74 68 65 72 20 66 65 61 74 75 72 65 73 20 74 6f | es,.Zig.offers.other.features.to |
| 9820 | 20 69 6e 66 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 77 68 65 72 65 20 74 68 65 20 73 | .inform.the.compiler.where.the.s |
| 9840 | 74 61 72 74 20 6f 66 0a 20 20 20 20 20 20 20 20 74 68 65 20 70 72 6f 67 72 61 6d 20 65 78 69 73 | tart.of.........the.program.exis |
| 9860 | 74 73 2e 20 4c 69 62 72 61 72 69 65 73 2c 20 6f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 | ts..Libraries,.on.the.other.hand |
| 9880 | 2c 20 64 6f 20 6e 6f 74 20 6e 65 65 64 20 61 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 | ,.do.not.need.a.<code>main</code |
| 98a0 | 3e 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 61 75 73 65 0a 20 20 20 20 20 20 20 20 6c 69 62 72 61 | >.function.because.........libra |
| 98c0 | 72 79 20 63 6f 64 65 20 69 73 20 75 73 75 61 6c 6c 79 20 63 61 6c 6c 65 64 20 62 79 20 6f 74 68 | ry.code.is.usually.called.by.oth |
| 98e0 | 65 72 20 70 72 6f 67 72 61 6d 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | er.programs........</p>.......<p |
| 9900 | 3e 0a 20 20 20 20 20 20 20 20 41 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 62 6c 6f 63 6b 20 | >.........A.function.is.a.block. |
| 9920 | 6f 66 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 73 74 61 74 65 6d 65 6e 74 73 20 61 6e 64 20 | of.any.number.of.statements.and. |
| 9940 | 65 78 70 72 65 73 73 69 6f 6e 73 20 74 68 61 74 2c 20 61 73 20 61 20 77 68 6f 6c 65 2c 20 70 65 | expressions.that,.as.a.whole,.pe |
| 9960 | 72 66 6f 72 6d 20 61 20 74 61 73 6b 2e 0a 20 20 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 73 20 | rform.a.task..........Functions. |
| 9980 | 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 72 65 74 75 72 6e 20 64 61 74 61 20 61 66 74 65 72 | may.or.may.not.return.data.after |
| 99a0 | 20 74 68 65 79 20 61 72 65 20 64 6f 6e 65 20 70 65 72 66 6f 72 6d 69 6e 67 20 74 68 65 69 72 20 | .they.are.done.performing.their. |
| 99c0 | 74 61 73 6b 2e 20 49 66 20 61 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 63 61 6e 6e | task..If.a.function.........cann |
| 99e0 | 6f 74 20 70 65 72 66 6f 72 6d 20 69 74 73 20 74 61 73 6b 2c 20 69 74 20 6d 69 67 68 74 20 72 65 | ot.perform.its.task,.it.might.re |
| 9a00 | 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 2e 20 5a 69 67 20 6d 61 6b 65 73 20 61 6c 6c 20 6f 66 20 | turn.an.error..Zig.makes.all.of. |
| 9a20 | 74 68 69 73 20 65 78 70 6c 69 63 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | this.explicit........</p>....... |
| 9a40 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 74 68 65 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 2e 7a | <p>.........In.the.<code>hello.z |
| 9a60 | 69 67 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 20 73 61 6d 70 6c 65 2c 20 74 68 65 20 3c 63 6f 64 65 | ig</code>.code.sample,.the.<code |
| 9a80 | 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 64 65 63 6c 61 72 65 | >main</code>.function.is.declare |
| 9aa0 | 64 0a 20 20 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | d.........with.the.<code.class=" |
| 9ac0 | 7a 69 67 22 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 | zig">!<span.class="tok-type">voi |
| 9ae0 | 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 20 74 79 70 65 2e 20 54 68 69 | d</span></code>.return.type..Thi |
| 9b00 | 73 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 6b 6e 6f 77 6e 20 61 73 20 61 6e 20 3c 61 20 | s.return.type.is.known.as.an.<a. |
| 9b20 | 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 | href="#Error-Union-Type">Error.U |
| 9b40 | 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 54 68 69 73 20 73 79 6e 74 | nion.Type</a>..........This.synt |
| 9b60 | 61 78 20 74 65 6c 6c 73 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 65 72 20 74 68 61 74 20 74 | ax.tells.the.Zig.compiler.that.t |
| 9b80 | 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 65 69 74 68 65 72 20 72 65 74 75 72 6e 20 61 | he.function.will.either.return.a |
| 9ba0 | 6e 0a 20 20 20 20 20 20 20 20 65 72 72 6f 72 20 6f 72 20 61 20 76 61 6c 75 65 2e 20 41 6e 20 65 | n.........error.or.a.value..An.e |
| 9bc0 | 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 20 63 6f 6d 62 69 6e 65 73 20 61 6e 20 3c 61 20 68 | rror.union.type.combines.an.<a.h |
| 9be0 | 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 | ref="#Error-Set-Type">Error.Set. |
| 9c00 | 54 79 70 65 3c 2f 61 3e 20 61 6e 64 20 61 20 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 | Type</a>.and.a.<a.href="#Primiti |
| 9c20 | 76 65 2d 54 79 70 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 | ve-Types">Primitive.Type</a>.... |
| 9c40 | 20 20 20 20 20 20 54 68 65 20 66 75 6c 6c 20 66 6f 72 6d 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 | ......The.full.form.of.an.error. |
| 9c60 | 75 6e 69 6f 6e 20 74 79 70 65 20 69 73 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 26 6c 74 3b | union.type.is.........<code>< |
| 9c80 | 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 26 67 74 3b 3c 2f 63 6f 64 65 3e 3c 63 6f 64 65 20 63 | error.set.type></code><code.c |
| 9ca0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 3c 63 6f 64 65 3e 26 6c 74 3b 70 72 69 | lass="zig">!</code><code><pri |
| 9cc0 | 6d 69 74 69 76 65 20 74 79 70 65 26 67 74 3b 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 74 68 65 20 63 | mitive.type></code>..In.the.c |
| 9ce0 | 6f 64 65 0a 20 20 20 20 20 20 20 20 73 61 6d 70 6c 65 2c 20 74 68 65 20 65 72 72 6f 72 20 73 65 | ode.........sample,.the.error.se |
| 9d00 | 74 20 74 79 70 65 20 69 73 20 6e 6f 74 20 65 78 70 6c 69 63 69 74 6c 79 20 77 72 69 74 74 65 6e | t.type.is.not.explicitly.written |
| 9d20 | 20 6f 6e 20 74 68 65 20 6c 65 66 74 20 73 69 64 65 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 | .on.the.left.side.of.the.<code.c |
| 9d40 | 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 2e 0a 20 20 | lass="zig">!</code>.operator.... |
| 9d60 | 20 20 20 20 20 20 57 68 65 6e 20 77 72 69 74 74 65 6e 20 74 68 69 73 20 77 61 79 2c 20 74 68 65 | ......When.written.this.way,.the |
| 9d80 | 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 69 73 20 61 20 73 70 65 63 69 61 6c 20 6b 69 6e | .error.set.type.is.a.special.kin |
| 9da0 | 64 20 6f 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 20 74 68 61 74 20 68 61 73 20 61 | d.of.error.union.type.that.has.a |
| 9dc0 | 6e 0a 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 72 72 | n.........<a.href="#Inferred-Err |
| 9de0 | 6f 72 2d 53 65 74 73 22 3e 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 | or-Sets">inferred.error.set.type |
| 9e00 | 3c 2f 61 3e 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | </a>..The.<code.class="zig"><spa |
| 9e20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-type">void</span></ |
| 9e40 | 63 6f 64 65 3e 20 61 66 74 65 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | code>.after.the.<code.class="zig |
| 9e60 | 22 3e 21 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 0a 20 20 20 20 20 20 20 20 74 65 6c 6c | ">!</code>.operator.........tell |
| 9e80 | 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e | s.the.compiler.that.the.function |
| 9ea0 | 20 77 69 6c 6c 20 6e 6f 74 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 75 6e 64 65 72 20 6e | .will.not.return.a.value.under.n |
| 9ec0 | 6f 72 6d 61 6c 20 63 69 72 63 75 6d 73 74 61 6e 63 65 73 20 28 69 2e 65 2e 20 6e 6f 20 65 72 72 | ormal.circumstances.(i.e..no.err |
| 9ee0 | 6f 72 73 20 6f 63 63 75 72 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | ors.occur)........</p>.......<p> |
| 9f00 | 0a 20 20 20 20 20 20 20 20 4e 6f 74 65 20 74 6f 20 65 78 70 65 72 69 65 6e 63 65 64 20 70 72 6f | .........Note.to.experienced.pro |
| 9f20 | 67 72 61 6d 6d 65 72 73 3a 20 5a 69 67 20 61 6c 73 6f 20 68 61 73 20 74 68 65 20 62 6f 6f 6c 65 | grammers:.Zig.also.has.the.boole |
| 9f40 | 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 6f 70 65 72 61 74 6f 72 | an.<a.href="#Operators">operator |
| 9f60 | 3c 2f 61 3e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 61 3c 2f 63 6f 64 65 3e | </a>.<code.class="zig">!a</code> |
| 9f80 | 0a 20 20 20 20 20 20 20 20 77 68 65 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .........where.<code.class="zig" |
| 9fa0 | 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 3c 63 6f | >a</code>.is.a.value.of.type.<co |
| 9fc0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 9fe0 | 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 45 72 72 6f 72 20 | type">bool</span></code>..Error. |
| a000 | 75 6e 69 6f 6e 20 74 79 70 65 73 20 63 6f 6e 74 61 69 6e 20 74 68 65 0a 20 20 20 20 20 20 20 20 | union.types.contain.the......... |
| a020 | 6e 61 6d 65 20 6f 66 20 74 68 65 20 74 79 70 65 20 69 6e 20 74 68 65 20 73 79 6e 74 61 78 3a 20 | name.of.the.type.in.the.syntax:. |
| a040 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 3c 63 6f 64 65 3e | <code.class="zig">!</code><code> |
| a060 | 26 6c 74 3b 70 72 69 6d 69 74 69 76 65 20 74 79 70 65 26 67 74 3b 3c 2f 63 6f 64 65 3e 2e 0a 20 | <primitive.type></code>... |
| a080 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a | .....</p>.......<p>.........In.Z |
| a0a0 | 69 67 2c 20 61 20 66 75 6e 63 74 69 6f 6e 27 73 20 62 6c 6f 63 6b 20 6f 66 20 73 74 61 74 65 6d | ig,.a.function's.block.of.statem |
| a0c0 | 65 6e 74 73 20 61 6e 64 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 73 75 72 72 6f 75 6e | ents.and.expressions.are.surroun |
| a0e0 | 64 65 64 20 62 79 20 3c 63 6f 64 65 3e 7b 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 | ded.by.<code>{</code>.and....... |
| a100 | 20 20 3c 63 6f 64 65 3e 7d 3c 2f 63 6f 64 65 3e 20 63 75 72 6c 79 2d 62 72 61 63 65 73 2e 20 49 | ..<code>}</code>.curly-braces..I |
| a120 | 6e 73 69 64 65 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 | nside.of.the.<code>main</code>.f |
| a140 | 75 6e 63 74 69 6f 6e 20 61 72 65 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 68 61 74 20 70 65 72 | unction.are.expressions.that.per |
| a160 | 66 6f 72 6d 0a 20 20 20 20 20 20 20 20 74 68 65 20 74 61 73 6b 20 6f 66 20 6f 75 74 70 75 74 74 | form.........the.task.of.outputt |
| a180 | 69 6e 67 20 3c 63 6f 64 65 3e 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 3c 2f 63 6f 64 65 3e 20 74 | ing.<code>Hello,.world!</code>.t |
| a1a0 | 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | o.standard.output........</p>... |
| a1c0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 46 69 72 73 74 2c 20 61 20 63 6f 6e 73 74 61 6e | ....<p>.........First,.a.constan |
| a1e0 | 74 20 69 64 65 6e 74 69 66 69 65 72 2c 20 3c 63 6f 64 65 3e 73 74 64 6f 75 74 3c 2f 63 6f 64 65 | t.identifier,.<code>stdout</code |
| a200 | 3e 2c 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 73 | >,.is.initialized.to.represent.s |
| a220 | 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 27 73 0a 20 20 20 20 20 20 20 20 77 72 69 74 65 72 2e | tandard.output's.........writer. |
| a240 | 20 54 68 65 6e 2c 20 74 68 65 20 70 72 6f 67 72 61 6d 20 74 72 69 65 73 20 74 6f 20 70 72 69 6e | .Then,.the.program.tries.to.prin |
| a260 | 74 20 74 68 65 20 3c 63 6f 64 65 3e 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 3c 2f 63 6f 64 65 3e | t.the.<code>Hello,.world!</code> |
| a280 | 0a 20 20 20 20 20 20 20 20 6d 65 73 73 61 67 65 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 | .........message.to.standard.out |
| a2a0 | 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | put........</p>.......<p>....... |
| a2c0 | 20 20 46 75 6e 63 74 69 6f 6e 73 20 73 6f 6d 65 74 69 6d 65 73 20 6e 65 65 64 20 69 6e 66 6f 72 | ..Functions.sometimes.need.infor |
| a2e0 | 6d 61 74 69 6f 6e 20 74 6f 20 70 65 72 66 6f 72 6d 20 74 68 65 69 72 20 74 61 73 6b 2e 20 49 6e | mation.to.perform.their.task..In |
| a300 | 20 5a 69 67 2c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 70 61 73 73 65 64 0a 20 20 20 20 | .Zig,.information.is.passed..... |
| a320 | 20 20 20 20 74 6f 20 66 75 6e 63 74 69 6f 6e 73 20 62 65 74 77 65 65 6e 20 6f 70 65 6e 20 3c 63 | ....to.functions.between.open.<c |
| a340 | 6f 64 65 3e 28 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 63 6c 6f 73 65 20 3c 63 6f 64 65 3e 29 3c 2f | ode>(</code>.and.close.<code>)</ |
| a360 | 63 6f 64 65 3e 20 70 61 72 65 6e 74 68 65 73 69 73 20 70 6c 61 63 65 64 20 61 66 74 65 72 0a 20 | code>.parenthesis.placed.after.. |
| a380 | 20 20 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 6e 61 6d 65 2e 20 54 68 69 73 | .......the.function's.name..This |
| a3a0 | 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 61 6c 73 6f 20 6b 6e 6f 77 6e 20 61 73 20 61 72 | .information.is.also.known.as.ar |
| a3c0 | 67 75 6d 65 6e 74 73 2e 20 57 68 65 6e 20 74 68 65 72 65 20 61 72 65 0a 20 20 20 20 20 20 20 20 | guments..When.there.are......... |
| a3e0 | 6d 75 6c 74 69 70 6c 65 20 61 72 67 75 6d 65 6e 74 73 20 70 61 73 73 65 64 20 74 6f 20 61 20 66 | multiple.arguments.passed.to.a.f |
| a400 | 75 6e 63 74 69 6f 6e 2c 20 74 68 65 79 20 61 72 65 20 73 65 70 61 72 61 74 65 64 20 62 79 20 63 | unction,.they.are.separated.by.c |
| a420 | 6f 6d 6d 61 73 20 3c 63 6f 64 65 3e 2c 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ommas.<code>,</code>........</p> |
| a440 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 74 77 6f 20 61 72 67 75 6d | .......<p>.........The.two.argum |
| a460 | 65 6e 74 73 20 70 61 73 73 65 64 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 73 74 64 6f 75 74 2e | ents.passed.to.the.<code>stdout. |
| a480 | 70 72 69 6e 74 28 29 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2c 20 3c 63 6f 64 65 3e 22 | print()</code>.function,.<code>" |
| a4a0 | 48 65 6c 6c 6f 2c 20 7b 73 7d 21 5c 6e 22 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 61 6e | Hello,.{s}!\n"</code>.........an |
| a4c0 | 64 20 3c 63 6f 64 65 3e 2e 7b 22 77 6f 72 6c 64 22 7d 3c 2f 63 6f 64 65 3e 2c 20 61 72 65 20 65 | d.<code>.{"world"}</code>,.are.e |
| a4e0 | 76 61 6c 75 61 74 65 64 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e | valuated.at.<a.href="#comptime"> |
| a500 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 61 3e 2e 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c | compile-time</a>..The.code.sampl |
| a520 | 65 20 69 73 0a 20 20 20 20 20 20 20 20 70 75 72 70 6f 73 65 6c 79 20 77 72 69 74 74 65 6e 20 74 | e.is.........purposely.written.t |
| a540 | 6f 20 73 68 6f 77 20 68 6f 77 20 74 6f 20 70 65 72 66 6f 72 6d 20 3c 61 20 68 72 65 66 3d 22 23 | o.show.how.to.perform.<a.href="# |
| a560 | 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 | String-Literals-and-Unicode-Code |
| a580 | 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e 73 74 72 69 6e 67 3c 2f 61 3e 0a 20 20 20 20 | -Point-Literals">string</a>..... |
| a5a0 | 20 20 20 20 73 75 62 73 74 69 74 75 74 69 6f 6e 20 69 6e 20 74 68 65 20 3c 63 6f 64 65 3e 70 72 | ....substitution.in.the.<code>pr |
| a5c0 | 69 6e 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 65 20 63 75 72 6c 79 2d 62 | int</code>.function..The.curly-b |
| a5e0 | 72 61 63 65 73 20 69 6e 73 69 64 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 61 72 67 75 6d 65 | races.inside.of.the.first.argume |
| a600 | 6e 74 0a 20 20 20 20 20 20 20 20 61 72 65 20 73 75 62 73 74 69 74 75 74 65 64 20 77 69 74 68 20 | nt.........are.substituted.with. |
| a620 | 74 68 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 69 6e 73 | the.compile-time.known.value.ins |
| a640 | 69 64 65 20 6f 66 20 74 68 65 20 73 65 63 6f 6e 64 20 61 72 67 75 6d 65 6e 74 0a 20 20 20 20 20 | ide.of.the.second.argument...... |
| a660 | 20 20 20 28 6b 6e 6f 77 6e 20 61 73 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d | ...(known.as.an.<a.href="#Anonym |
| a680 | 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 61 6c 73 22 3e 61 6e 6f 6e 79 6d 6f 75 73 20 73 | ous-Struct-Literals">anonymous.s |
| a6a0 | 74 72 75 63 74 20 6c 69 74 65 72 61 6c 3c 2f 61 3e 29 2e 20 54 68 65 20 3c 63 6f 64 65 3e 5c 6e | truct.literal</a>)..The.<code>\n |
| a6c0 | 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 69 6e 73 69 64 65 20 6f 66 20 74 68 65 20 64 6f | </code>.........inside.of.the.do |
| a6e0 | 75 62 6c 65 2d 71 75 6f 74 65 73 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 61 72 67 75 6d 65 6e | uble-quotes.of.the.first.argumen |
| a700 | 74 20 69 73 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 45 73 63 61 70 65 2d 53 65 71 75 65 6e | t.is.the.<a.href="#Escape-Sequen |
| a720 | 63 65 73 22 3e 65 73 63 61 70 65 20 73 65 71 75 65 6e 63 65 3c 2f 61 3e 20 66 6f 72 20 74 68 65 | ces">escape.sequence</a>.for.the |
| a740 | 0a 20 20 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 20 63 68 61 72 61 63 74 65 72 2e 20 54 68 65 20 | .........newline.character..The. |
| a760 | 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 79 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f | <a.href="#try">try</a>.expressio |
| a780 | 6e 20 65 76 61 6c 75 61 74 65 73 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 3c 63 6f 64 65 3e | n.evaluates.the.result.of.<code> |
| a7a0 | 73 74 64 6f 75 74 2e 70 72 69 6e 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 49 66 20 | stdout.print</code>..........If. |
| a7c0 | 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 74 68 65 6e 20 74 68 65 | the.result.is.an.error,.then.the |
| a7e0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| a800 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 | tok-kw">try</span></code>.expres |
| a820 | 73 69 6f 6e 20 77 69 6c 6c 20 72 65 74 75 72 6e 20 66 72 6f 6d 0a 20 20 20 20 20 20 20 20 3c 63 | sion.will.return.from.........<c |
| a840 | 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 74 68 65 20 65 72 72 6f 72 2e 20 | ode>main</code>.with.the.error.. |
| a860 | 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 70 72 6f 67 72 61 6d 20 77 69 6c 6c 20 63 6f 6e 74 | Otherwise,.the.program.will.cont |
| a880 | 69 6e 75 65 2e 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 74 68 65 72 65 20 61 72 65 20 6e 6f | inue..In.this.case,.there.are.no |
| a8a0 | 0a 20 20 20 20 20 20 20 20 6d 6f 72 65 20 73 74 61 74 65 6d 65 6e 74 73 20 6f 72 20 65 78 70 72 | .........more.statements.or.expr |
| a8c0 | 65 73 73 69 6f 6e 73 20 6c 65 66 74 20 74 6f 20 65 78 65 63 75 74 65 20 69 6e 20 74 68 65 20 3c | essions.left.to.execute.in.the.< |
| a8e0 | 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2c 20 73 6f 20 74 68 | code>main</code>.function,.so.th |
| a900 | 65 20 70 72 6f 67 72 61 6d 20 65 78 69 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | e.program.exits........</p>..... |
| a920 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 74 68 65 20 73 74 61 6e 64 61 | ..<p>.........In.Zig,.the.standa |
| a940 | 72 64 20 6f 75 74 70 75 74 20 77 72 69 74 65 72 27 73 20 3c 63 6f 64 65 3e 70 72 69 6e 74 3c 2f | rd.output.writer's.<code>print</ |
| a960 | 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 6c 6c 6f 77 65 64 20 74 6f 20 66 61 69 | code>.function.is.allowed.to.fai |
| a980 | 6c 20 62 65 63 61 75 73 65 0a 20 20 20 20 20 20 20 20 69 74 20 69 73 20 61 63 74 75 61 6c 6c 79 | l.because.........it.is.actually |
| a9a0 | 20 61 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 61 | .a.function.defined.as.part.of.a |
| a9c0 | 20 67 65 6e 65 72 69 63 20 57 72 69 74 65 72 2e 20 43 6f 6e 73 69 64 65 72 20 61 20 67 65 6e 65 | .generic.Writer..Consider.a.gene |
| a9e0 | 72 69 63 20 57 72 69 74 65 72 20 74 68 61 74 0a 20 20 20 20 20 20 20 20 72 65 70 72 65 73 65 6e | ric.Writer.that.........represen |
| aa00 | 74 73 20 77 72 69 74 69 6e 67 20 64 61 74 61 20 74 6f 20 61 20 66 69 6c 65 2e 20 57 68 65 6e 20 | ts.writing.data.to.a.file..When. |
| aa20 | 74 68 65 20 64 69 73 6b 20 69 73 20 66 75 6c 6c 2c 20 61 20 77 72 69 74 65 20 74 6f 20 74 68 65 | the.disk.is.full,.a.write.to.the |
| aa40 | 20 66 69 6c 65 20 77 69 6c 6c 20 66 61 69 6c 2e 0a 20 20 20 20 20 20 20 20 48 6f 77 65 76 65 72 | .file.will.fail..........However |
| aa60 | 2c 20 77 65 20 74 79 70 69 63 61 6c 6c 79 20 64 6f 20 6e 6f 74 20 65 78 70 65 63 74 20 77 72 69 | ,.we.typically.do.not.expect.wri |
| aa80 | 74 69 6e 67 20 74 65 78 74 20 74 6f 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 | ting.text.to.the.standard.output |
| aaa0 | 20 74 6f 20 66 61 69 6c 2e 20 54 6f 20 61 76 6f 69 64 20 68 61 76 69 6e 67 0a 20 20 20 20 20 20 | .to.fail..To.avoid.having....... |
| aac0 | 20 20 74 6f 20 68 61 6e 64 6c 65 20 74 68 65 20 66 61 69 6c 75 72 65 20 63 61 73 65 20 6f 66 20 | ..to.handle.the.failure.case.of. |
| aae0 | 70 72 69 6e 74 69 6e 67 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2c 20 79 6f 75 | printing.to.standard.output,.you |
| ab00 | 20 63 61 6e 20 75 73 65 20 61 6c 74 65 72 6e 61 74 65 20 66 75 6e 63 74 69 6f 6e 73 3a 20 74 68 | .can.use.alternate.functions:.th |
| ab20 | 65 0a 20 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 3c 63 6f 64 65 3e 73 74 64 | e.........functions.in.<code>std |
| ab40 | 2e 6c 6f 67 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 70 72 6f 70 65 72 20 6c 6f 67 67 69 6e 67 20 6f | .log</code>.for.proper.logging.o |
| ab60 | 72 20 74 68 65 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 3c 2f 63 6f 64 | r.the.<code>std.debug.print</cod |
| ab80 | 65 3e 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 54 68 69 73 20 64 6f 63 75 6d 65 | e>.function..........This.docume |
| aba0 | 6e 74 61 74 69 6f 6e 20 77 69 6c 6c 20 75 73 65 20 74 68 65 20 6c 61 74 74 65 72 20 6f 70 74 69 | ntation.will.use.the.latter.opti |
| abc0 | 6f 6e 20 74 6f 20 70 72 69 6e 74 20 74 6f 20 73 74 61 6e 64 61 72 64 20 65 72 72 6f 72 20 28 73 | on.to.print.to.standard.error.(s |
| abe0 | 74 64 65 72 72 29 20 61 6e 64 20 73 69 6c 65 6e 74 6c 79 20 72 65 74 75 72 6e 0a 20 20 20 20 20 | tderr).and.silently.return...... |
| ac00 | 20 20 20 6f 6e 20 66 61 69 6c 75 72 65 2e 20 54 68 65 20 6e 65 78 74 20 63 6f 64 65 20 73 61 6d | ...on.failure..The.next.code.sam |
| ac20 | 70 6c 65 2c 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a 69 67 3c 2f 63 6f 64 65 | ple,.<code>hello_again.zig</code |
| ac40 | 3e 20 64 65 6d 6f 6e 73 74 72 61 74 65 73 20 74 68 65 20 75 73 65 20 6f 66 0a 20 20 20 20 20 20 | >.demonstrates.the.use.of....... |
| ac60 | 20 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 3c 2f 63 6f 64 65 3e 2e 0a | ..<code>std.debug.print</code>.. |
| ac80 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ......</p>.......<p.class="file" |
| aca0 | 3e 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | >hello_again.zig</p><pre><code.c |
| acc0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| ace0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | const</span>.print.=.<span.class |
| ad00 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@import</span>(<s |
| ad20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 | pan.class="tok-str">"std&qu |
| ad40 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 | ot;</span>).debug.print;..<span. |
| ad60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | class="tok-kw">pub</span>.<span. |
| ad80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | class="tok-kw">fn</span>.<span.c |
| ada0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | lass="tok-fn">main</span>().<spa |
| adc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| ade0 | 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | .....print(<span.class="tok-str" |
| ae00 | 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | >"Hello,.world!\n"</sp |
| ae20 | 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | an>,..{});.}</code></pre><pre><c |
| ae40 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 | ode.class="shell">$.zig.build-ex |
| ae60 | 65 20 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a 69 67 0a 24 20 2e 2f 68 65 6c 6c 6f 5f 61 67 61 69 | e.hello_again.zig.$../hello_agai |
| ae80 | 6e 0a 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | n.Hello,.world!.</code></pre>... |
| aea0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 79 6f 75 20 63 61 6e | .....<p>.......Note.that.you.can |
| aec0 | 20 6c 65 61 76 65 20 6f 66 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .leave.off.the.<code.class="zig" |
| aee0 | 3e 21 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 62 | >!</code>.from.the.return.type.b |
| af00 | 65 63 61 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 3c 2f 63 6f | ecause.<code>std.debug.print</co |
| af20 | 64 65 3e 20 63 61 6e 6e 6f 74 20 66 61 69 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | de>.cannot.fail........</p>..... |
| af40 | 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | ..<p>See.also:</p><ul>.<li><a.hr |
| af60 | 65 66 3d 22 23 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | ef="#Values">Values</a></li>.<li |
| af80 | 3e 3c 61 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f | ><a.href="#import">@import</a></ |
| afa0 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 | li>.<li><a.href="#Errors">Errors |
| afc0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 | </a></li>.<li><a.href="#Root-Sou |
| afe0 | 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e 3c 2f | rce-File">Root.Source.File</a></ |
| b000 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e | li>.<li><a.href="#Source-Encodin |
| b020 | 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f 64 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | g">Source.Encoding</a></li>.</ul |
| b040 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 6f 6d 6d 65 6e 74 73 | >...............<h1.id="Comments |
| b060 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 43 6f 6d 6d 65 6e | "><a.href="#toc-Comments">Commen |
| b080 | 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d | ts</a>.<a.class="hdr".href="#Com |
| b0a0 | 6d 65 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | ments">..</a></h1>........<p.cla |
| b0c0 | 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 6d 65 6e 74 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | ss="file">comments.zig</p><pre>< |
| b0e0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| b100 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 | k-kw">const</span>.expect.=.<spa |
| b120 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| b140 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| b160 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | ;std"</span>).testing.expec |
| b180 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | t;..<span.class="tok-kw">test</s |
| b1a0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| b1c0 | 3b 63 6f 6d 6d 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ;comments"</span>.{.....<sp |
| b1e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 6d 65 6e | an.class="tok-comment">//.Commen |
| b200 | 74 73 20 69 6e 20 5a 69 67 20 73 74 61 72 74 20 77 69 74 68 20 26 71 75 6f 74 3b 2f 2f 26 71 75 | ts.in.Zig.start.with."//&qu |
| b220 | 6f 74 3b 20 61 6e 64 20 65 6e 64 20 61 74 20 74 68 65 20 6e 65 78 74 20 4c 46 20 62 79 74 65 20 | ot;.and.end.at.the.next.LF.byte. |
| b240 | 28 65 6e 64 20 6f 66 20 6c 69 6e 65 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | (end.of.line).</span>.....<span. |
| b260 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 62 65 6c 6f 77 | class="tok-comment">//.The.below |
| b280 | 20 6c 69 6e 65 20 69 73 20 61 20 63 6f 6d 6d 65 6e 74 2c 20 61 6e 64 20 77 6f 6e 27 74 20 62 65 | .line.is.a.comment,.and.won't.be |
| b2a0 | 20 65 78 65 63 75 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .executed.</span>......<span.cla |
| b2c0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 65 78 70 65 63 74 28 66 61 6c 73 65 29 | ss="tok-comment">//expect(false) |
| b2e0 | 3b 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ;</span>......<span.class="tok-k |
| b300 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | w">const</span>.x.=.<span.class= |
| b320 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 20 20 3c 73 70 61 6e 20 63 | "tok-null">true</span>;..<span.c |
| b340 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6e 6f 74 68 65 72 20 63 6f | lass="tok-comment">//.another.co |
| b360 | 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | mment</span>.....<span.class="to |
| b380 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 29 3b 0a 7d 3c 2f 63 | k-kw">try</span>.expect(x);.}</c |
| b3a0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| b3c0 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 6f 6d 6d 65 6e 74 73 2e 7a 69 67 0a 54 65 73 74 20 | l">$.zig.test.comments.zig.Test. |
| b3e0 | 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 6d 6d 65 6e 74 73 26 71 75 6f 74 3b 2e | [1/1].test."comments". |
| b400 | 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e | .....All.1.tests.passed..</code> |
| b420 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 | </pre>........<p>.......There.ar |
| b440 | 65 20 6e 6f 20 6d 75 6c 74 69 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 5a 69 67 20 28 | e.no.multiline.comments.in.Zig.( |
| b460 | 65 2e 67 2e 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 2f 2a 20 2a 2f 3c | e.g..like.<code.class="c">/*.*/< |
| b480 | 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 43 29 2e 20 20 54 68 | /code>.......comments.in.C)...Th |
| b4a0 | 69 73 20 68 65 6c 70 73 20 61 6c 6c 6f 77 20 5a 69 67 20 74 6f 20 68 61 76 65 20 74 68 65 20 70 | is.helps.allow.Zig.to.have.the.p |
| b4c0 | 72 6f 70 65 72 74 79 20 74 68 61 74 20 65 61 63 68 20 6c 69 6e 65 0a 20 20 20 20 20 20 6f 66 20 | roperty.that.each.line.......of. |
| b4e0 | 63 6f 64 65 20 63 61 6e 20 62 65 20 74 6f 6b 65 6e 69 7a 65 64 20 6f 75 74 20 6f 66 20 63 6f 6e | code.can.be.tokenized.out.of.con |
| b500 | 74 65 78 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 44 | text........</p>.......<h2.id="D |
| b520 | 6f 63 2d 63 6f 6d 6d 65 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 6f 63 2d 63 | oc-comments"><a.href="#toc-Doc-c |
| b540 | 6f 6d 6d 65 6e 74 73 22 3e 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | omments">Doc.comments</a>.<a.cla |
| b560 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 63 6f 6d 6d 65 6e 74 73 22 3e c2 a7 | ss="hdr".href="#Doc-comments">.. |
| b580 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 64 6f 63 | </a></h2>........<p>.......A.doc |
| b5a0 | 20 63 6f 6d 6d 65 6e 74 20 69 73 20 6f 6e 65 20 74 68 61 74 20 62 65 67 69 6e 73 20 77 69 74 68 | .comment.is.one.that.begins.with |
| b5c0 | 20 65 78 61 63 74 6c 79 20 74 68 72 65 65 20 73 6c 61 73 68 65 73 20 28 69 2e 65 2e 0a 20 20 20 | .exactly.three.slashes.(i.e..... |
| b5e0 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...<code.class="zig"><span.class |
| b600 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-comment">///</span></code> |
| b620 | 20 62 75 74 20 6e 6f 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .but.not.<code.class="zig"><span |
| b640 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 2f 3c 2f 73 70 61 6e 3e | .class="tok-comment">////</span> |
| b660 | 3c 2f 63 6f 64 65 3e 29 3b 0a 20 20 20 20 20 20 6d 75 6c 74 69 70 6c 65 20 64 6f 63 20 63 6f 6d | </code>);.......multiple.doc.com |
| b680 | 6d 65 6e 74 73 20 69 6e 20 61 20 72 6f 77 20 61 72 65 20 6d 65 72 67 65 64 20 74 6f 67 65 74 68 | ments.in.a.row.are.merged.togeth |
| b6a0 | 65 72 20 74 6f 20 66 6f 72 6d 20 61 20 6d 75 6c 74 69 6c 69 6e 65 0a 20 20 20 20 20 20 64 6f 63 | er.to.form.a.multiline.......doc |
| b6c0 | 20 63 6f 6d 6d 65 6e 74 2e 20 20 54 68 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 64 6f 63 75 6d | .comment...The.doc.comment.docum |
| b6e0 | 65 6e 74 73 20 77 68 61 74 65 76 65 72 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 66 6f 6c 6c 6f 77 | ents.whatever.immediately.follow |
| b700 | 73 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | s.it........</p>.......<pre><cod |
| b720 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | e.class="zig"><span.class="tok-c |
| b740 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 41 20 73 74 72 75 63 74 75 72 65 20 66 6f 72 20 73 74 6f 72 | omment">///.A.structure.for.stor |
| b760 | 69 6e 67 20 61 20 74 69 6d 65 73 74 61 6d 70 2c 20 77 69 74 68 20 6e 61 6e 6f 73 65 63 6f 6e 64 | ing.a.timestamp,.with.nanosecond |
| b780 | 20 70 72 65 63 69 73 69 6f 6e 20 28 74 68 69 73 20 69 73 20 61 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | .precision.(this.is.a</span>.<sp |
| b7a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6d 75 6c 74 69 | an.class="tok-comment">///.multi |
| b7c0 | 6c 69 6e 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | line.doc.comment).</span>.<span. |
| b7e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 69 6d 65 | class="tok-kw">const</span>.Time |
| b800 | 73 74 61 6d 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 | stamp.=.<span.class="tok-kw">str |
| b820 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | uct</span>.{.....<span.class="to |
| b840 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 73 65 63 | k-comment">///.The.number.of.sec |
| b860 | 6f 6e 64 73 20 73 69 6e 63 65 20 74 68 65 20 65 70 6f 63 68 20 28 74 68 69 73 20 69 73 20 61 6c | onds.since.the.epoch.(this.is.al |
| b880 | 73 6f 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 65 | so.a.doc.comment).</span>.....se |
| b8a0 | 63 6f 6e 64 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 | conds:.<span.class="tok-type">i6 |
| b8c0 | 34 3c 2f 73 70 61 6e 3e 2c 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | 4</span>,..<span.class="tok-comm |
| b8e0 | 65 6e 74 22 3e 2f 2f 20 73 69 67 6e 65 64 20 73 6f 20 77 65 20 63 61 6e 20 72 65 70 72 65 73 65 | ent">//.signed.so.we.can.represe |
| b900 | 6e 74 20 70 72 65 2d 31 39 37 30 20 28 6e 6f 74 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 3c | nt.pre-1970.(not.a.doc.comment)< |
| b920 | 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | /span>.....<span.class="tok-comm |
| b940 | 65 6e 74 22 3e 2f 2f 2f 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6e 61 6e 6f 73 65 63 6f 6e | ent">///.The.number.of.nanosecon |
| b960 | 64 73 20 70 61 73 74 20 74 68 65 20 73 65 63 6f 6e 64 20 28 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 | ds.past.the.second.(doc.comment. |
| b980 | 61 67 61 69 6e 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 61 6e 6f 73 3a 20 3c 73 70 61 6e 20 | again).</span>.....nanos:.<span. |
| b9a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 | class="tok-type">u32</span>,.... |
| b9c0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 | ..<span.class="tok-comment">///. |
| b9e0 | 52 65 74 75 72 6e 73 20 61 20 60 54 69 6d 65 73 74 61 6d 70 60 20 73 74 72 75 63 74 20 72 65 70 | Returns.a.`Timestamp`.struct.rep |
| ba00 | 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 55 6e 69 78 20 65 70 6f 63 68 3b 20 74 68 61 74 20 69 | resenting.the.Unix.epoch;.that.i |
| ba20 | 73 2c 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | s,.the</span>.....<span.class="t |
| ba40 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6d 6f 6d 65 6e 74 20 6f 66 20 31 39 37 30 20 4a | ok-comment">///.moment.of.1970.J |
| ba60 | 61 6e 20 31 20 30 30 3a 30 30 3a 30 30 20 55 54 43 20 28 74 68 69 73 20 69 73 20 61 20 64 6f 63 | an.1.00:00:00.UTC.(this.is.a.doc |
| ba80 | 20 63 6f 6d 6d 65 6e 74 20 74 6f 6f 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | .comment.too).</span>.....<span. |
| baa0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | class="tok-kw">pub</span>.<span. |
| bac0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | class="tok-kw">fn</span>.<span.c |
| bae0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 75 6e 69 78 45 70 6f 63 68 3c 2f 73 70 61 6e 3e 28 29 | lass="tok-fn">unixEpoch</span>() |
| bb00 | 20 54 69 6d 65 73 74 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .Timestamp.{.........<span.class |
| bb20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 54 69 6d 65 73 74 61 6d | ="tok-kw">return</span>.Timestam |
| bb40 | 70 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 73 65 63 6f 6e 64 73 20 3d 20 3c 73 70 61 6e 20 | p{..............seconds.=.<span. |
| bb60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | class="tok-number">0</span>,.... |
| bb80 | 20 20 20 20 20 20 20 20 20 2e 6e 61 6e 6f 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..........nanos.=.<span.class="t |
| bba0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a | ok-number">0</span>,.........};. |
| bbc0 | 20 20 20 20 7d 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | ....}.};</code></pre>.......<p>. |
| bbe0 | 20 20 20 20 20 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 6f 6e 6c 79 20 61 6c 6c 6f | ......Doc.comments.are.only.allo |
| bc00 | 77 65 64 20 69 6e 20 63 65 72 74 61 69 6e 20 70 6c 61 63 65 73 3b 20 65 76 65 6e 74 75 61 6c 6c | wed.in.certain.places;.eventuall |
| bc20 | 79 2c 20 69 74 20 77 69 6c 6c 0a 20 20 20 20 20 20 62 65 63 6f 6d 65 20 61 20 63 6f 6d 70 69 6c | y,.it.will.......become.a.compil |
| bc40 | 65 20 65 72 72 6f 72 20 74 6f 20 68 61 76 65 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 6e | e.error.to.have.a.doc.comment.in |
| bc60 | 20 61 6e 20 75 6e 65 78 70 65 63 74 65 64 20 70 6c 61 63 65 2c 20 73 75 63 68 20 61 73 0a 20 20 | .an.unexpected.place,.such.as... |
| bc80 | 20 20 20 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 61 6e 20 65 78 70 72 65 73 73 69 | ....in.the.middle.of.an.expressi |
| bca0 | 6f 6e 2c 20 6f 72 20 6a 75 73 74 20 62 65 66 6f 72 65 20 61 20 6e 6f 6e 2d 64 6f 63 20 63 6f 6d | on,.or.just.before.a.non-doc.com |
| bcc0 | 6d 65 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | ment........</p>..............<h |
| bce0 | 32 20 69 64 3d 22 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 3c 61 | 2.id="Top-Level-Doc-Comments"><a |
| bd00 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d 6d 65 6e | .href="#toc-Top-Level-Doc-Commen |
| bd20 | 74 73 22 3e 54 6f 70 2d 4c 65 76 65 6c 20 44 6f 63 20 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 20 3c | ts">Top-Level.Doc.Comments</a>.< |
| bd40 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 6f 70 2d 4c 65 76 65 6c 2d 44 | a.class="hdr".href="#Top-Level-D |
| bd60 | 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | oc-Comments">..</a></h2>........ |
| bd80 | 3c 70 3e 55 73 65 72 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 74 68 61 74 20 64 6f 65 73 6e | <p>User.documentation.that.doesn |
| bda0 | 27 74 20 62 65 6c 6f 6e 67 20 74 6f 20 77 68 61 74 65 76 65 72 0a 20 20 20 20 20 20 69 6d 6d 65 | 't.belong.to.whatever.......imme |
| bdc0 | 64 69 61 74 65 6c 79 20 66 6f 6c 6c 6f 77 73 20 69 74 2c 20 6c 69 6b 65 20 70 61 63 6b 61 67 65 | diately.follows.it,.like.package |
| bde0 | 2d 6c 65 76 65 6c 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c 20 67 6f 65 73 0a 20 20 20 20 20 | -level.documentation,.goes...... |
| be00 | 20 69 6e 20 74 6f 70 2d 6c 65 76 65 6c 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 73 2e 20 41 20 74 6f | .in.top-level.doc.comments..A.to |
| be20 | 70 2d 6c 65 76 65 6c 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 73 20 6f 6e 65 20 74 68 61 74 0a | p-level.doc.comment.is.one.that. |
| be40 | 20 20 20 20 20 20 62 65 67 69 6e 73 20 77 69 74 68 20 74 77 6f 20 73 6c 61 73 68 65 73 20 61 6e | ......begins.with.two.slashes.an |
| be60 | 64 20 61 6e 20 65 78 63 6c 61 6d 61 74 69 6f 6e 20 70 6f 69 6e 74 3a 0a 20 20 20 20 20 20 3c 63 | d.an.exclamation.point:.......<c |
| be80 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| bea0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e | -comment">//!</span></code>.</p> |
| bec0 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| bee0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 54 68 69 73 | pan.class="tok-comment">//!.This |
| bf00 | 20 6d 6f 64 75 6c 65 20 70 72 6f 76 69 64 65 73 20 66 75 6e 63 74 69 6f 6e 73 20 66 6f 72 20 72 | .module.provides.functions.for.r |
| bf20 | 65 74 72 69 65 76 69 6e 67 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 61 74 65 20 61 6e 64 3c 2f | etrieving.the.current.date.and</ |
| bf40 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | span>.<span.class="tok-comment"> |
| bf60 | 2f 2f 21 20 74 69 6d 65 20 77 69 74 68 20 76 61 72 79 69 6e 67 20 64 65 67 72 65 65 73 20 6f 66 | //!.time.with.varying.degrees.of |
| bf80 | 20 70 72 65 63 69 73 69 6f 6e 20 61 6e 64 20 61 63 63 75 72 61 63 79 2e 20 49 74 20 64 6f 65 73 | .precision.and.accuracy..It.does |
| bfa0 | 20 6e 6f 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | .not</span>.<span.class="tok-com |
| bfc0 | 6d 65 6e 74 22 3e 2f 2f 21 20 64 65 70 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 20 62 75 74 20 77 69 | ment">//!.depend.on.libc,.but.wi |
| bfe0 | 6c 6c 20 75 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20 69 74 20 69 66 20 61 76 61 69 | ll.use.functions.from.it.if.avai |
| c000 | 6c 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | lable.</span></code></pre>...... |
| c020 | 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 56 61 6c 75 65 73 22 3e 3c | ...............<h1.id="Values">< |
| c040 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 20 | a.href="#toc-Values">Values</a>. |
| c060 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 56 61 6c 75 65 73 22 3e c2 a7 | <a.class="hdr".href="#Values">.. |
| c080 | 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | </a></h1>........<p.class="file" |
| c0a0 | 3e 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | >values.zig</p><pre><code.class= |
| c0c0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | "zig"><span.class="tok-comment"> |
| c0e0 | 2f 2f 20 54 6f 70 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 72 | //.Top-level.declarations.are.or |
| c100 | 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | der-independent:</span>.<span.cl |
| c120 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 | ass="tok-kw">const</span>.print. |
| c140 | 3d 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | =.std.debug.print;.<span.class=" |
| c160 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e | tok-kw">const</span>.std.=.<span |
| c180 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 | .class="tok-builtin">@import</sp |
| c1a0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>(<span.class="tok-str">" |
| c1c0 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | std"</span>);.<span.class=" |
| c1e0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 20 3d 20 73 74 64 2e 6f 73 | tok-kw">const</span>.os.=.std.os |
| c200 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ;.<span.class="tok-kw">const</sp |
| c220 | 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a | an>.assert.=.std.debug.assert;.. |
| c240 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">pub</span>. |
| c260 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c | <span.class="tok-kw">fn</span>.< |
| c280 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 | span.class="tok-fn">main</span>( |
| c2a0 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | ).<span.class="tok-type">void</s |
| c2c0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | pan>.{.....<span.class="tok-comm |
| c2e0 | 65 6e 74 22 3e 2f 2f 20 69 6e 74 65 67 65 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | ent">//.integers</span>.....<spa |
| c300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 6e | n.class="tok-kw">const</span>.on |
| c320 | 65 5f 70 6c 75 73 5f 6f 6e 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | e_plus_one:.<span.class="tok-typ |
| c340 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e">i32</span>.=.<span.class="tok |
| c360 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -number">1</span>.+.<span.class= |
| c380 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 70 72 69 6e 74 | "tok-number">1</span>;.....print |
| c3a0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 20 2b | (<span.class="tok-str">"1.+ |
| c3c0 | 20 31 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6f 6e 65 5f 70 6c | .1.=.{}\n"</span>,..{one_pl |
| c3e0 | 75 73 5f 6f 6e 65 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | us_one});......<span.class="tok- |
| c400 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 66 6c 6f 61 74 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | comment">//.floats</span>.....<s |
| c420 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| c440 | 73 65 76 65 6e 5f 64 69 76 5f 74 68 72 65 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | seven_div_three:.<span.class="to |
| c460 | 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-type">f32</span>.=.<span.class |
| c480 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 2e 30 3c 2f 73 70 61 6e 3e 20 2f 20 3c 73 70 61 6e | ="tok-number">7.0</span>./.<span |
| c4a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 30 3c 2f 73 70 61 6e 3e 3b 0a | .class="tok-number">3.0</span>;. |
| c4c0 | 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ....print(<span.class="tok-str"> |
| c4e0 | 26 71 75 6f 74 3b 37 2e 30 20 2f 20 33 2e 30 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | "7.0./.3.0.=.{}\n"</sp |
| c500 | 61 6e 3e 2c 20 2e 7b 73 65 76 65 6e 5f 64 69 76 5f 74 68 72 65 65 7d 29 3b 0a 0a 20 20 20 20 3c | an>,..{seven_div_three});......< |
| c520 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 6f 6f 6c | span.class="tok-comment">//.bool |
| c540 | 65 61 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ean</span>.....print(<span.class |
| c560 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 5c 6e 7b 7d 5c 6e 7b 7d 5c 6e 26 71 75 | ="tok-str">"{}\n{}\n{}\n&qu |
| c580 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ot;</span>,..{.........<span.cla |
| c5a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ss="tok-null">true</span>.<span. |
| c5c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | class="tok-kw">and</span>.<span. |
| c5e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 | class="tok-null">false</span>,.. |
| c600 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | .......<span.class="tok-null">tr |
| c620 | 75 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f | ue</span>.<span.class="tok-kw">o |
| c640 | 72 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | r</span>.<span.class="tok-null"> |
| c660 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 21 3c 73 70 61 6e 20 63 6c 61 | false</span>,.........!<span.cla |
| c680 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d | ss="tok-null">true</span>,.....} |
| c6a0 | 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | );......<span.class="tok-comment |
| c6c0 | 22 3e 2f 2f 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ">//.optional</span>.....<span.c |
| c6e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 | lass="tok-kw">var</span>.optiona |
| c700 | 6c 5f 76 61 6c 75 65 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | l_value:.?[]<span.class="tok-kw" |
| c720 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >const</span>.<span.class="tok-t |
| c740 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">u8</span>.=.<span.class="to |
| c760 | 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 | k-null">null</span>;.....assert( |
| c780 | 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | optional_value.==.<span.class="t |
| c7a0 | 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 70 72 69 6e | ok-null">null</span>);......prin |
| c7c0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e | t(<span.class="tok-str">"\n |
| c7e0 | 6f 70 74 69 6f 6e 61 6c 20 31 5c 6e 74 79 70 65 3a 20 7b 73 7d 5c 6e 76 61 6c 75 65 3a 20 7b 73 | optional.1\ntype:.{s}\nvalue:.{s |
| c800 | 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | }\n"</span>,..{.........<sp |
| c820 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 | an.class="tok-builtin">@typeName |
| c840 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | </span>(<span.class="tok-builtin |
| c860 | 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 | ">@TypeOf</span>(optional_value) |
| c880 | 29 2c 0a 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2c 0a 20 20 20 20 7d | ),.........optional_value,.....} |
| c8a0 | 29 3b 0a 0a 20 20 20 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 3d 20 3c 73 70 61 6e 20 63 | );......optional_value.=.<span.c |
| c8c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 | lass="tok-str">"hi"</s |
| c8e0 | 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 | pan>;.....assert(optional_value. |
| c900 | 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f | !=.<span.class="tok-null">null</ |
| c920 | 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>);......print(<span.class=" |
| c940 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 6f 70 74 69 6f 6e 61 6c 20 32 5c 6e 74 79 70 | tok-str">"\noptional.2\ntyp |
| c960 | 65 3a 20 7b 73 7d 5c 6e 76 61 6c 75 65 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | e:.{s}\nvalue:.{s}\n"</span |
| c980 | 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | >,..{.........<span.class="tok-b |
| c9a0 | 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | uiltin">@typeName</span>(<span.c |
| c9c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e | lass="tok-builtin">@TypeOf</span |
| c9e0 | 3e 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 29 2c 0a 20 20 20 20 20 20 20 20 6f 70 74 69 | >(optional_value)),.........opti |
| ca00 | 6f 6e 61 6c 5f 76 61 6c 75 65 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | onal_value,.....});......<span.c |
| ca20 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 72 72 6f 72 20 75 6e 69 6f | lass="tok-comment">//.error.unio |
| ca40 | 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n</span>.....<span.class="tok-kw |
| ca60 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 3a 20 3c 73 | ">var</span>.number_or_error:.<s |
| ca80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 | pan.class="tok-type">anyerror</s |
| caa0 | 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | pan>!<span.class="tok-type">i32< |
| cac0 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 | /span>.=.<span.class="tok-kw">er |
| cae0 | 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 72 67 4e 6f 74 46 6f 75 6e 64 3b 0a 0a 20 20 20 20 70 72 69 | ror</span>.ArgNotFound;......pri |
| cb00 | 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c | nt(<span.class="tok-str">"\ |
| cb20 | 6e 65 72 72 6f 72 20 75 6e 69 6f 6e 20 31 5c 6e 74 79 70 65 3a 20 7b 73 7d 5c 6e 76 61 6c 75 65 | nerror.union.1\ntype:.{s}\nvalue |
| cb40 | 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 | :.{}\n"</span>,..{......... |
| cb60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e | <span.class="tok-builtin">@typeN |
| cb80 | 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ame</span>(<span.class="tok-buil |
| cba0 | 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 | tin">@TypeOf</span>(number_or_er |
| cbc0 | 72 6f 72 29 29 2c 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 2c 0a | ror)),.........number_or_error,. |
| cbe0 | 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 20 3d 20 3c | ....});......number_or_error.=.< |
| cc00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 | span.class="tok-number">1234</sp |
| cc20 | 61 6e 3e 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>;......print(<span.class="tok |
| cc40 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 65 72 72 6f 72 20 75 6e 69 6f 6e 20 32 5c 6e 74 79 70 | -str">"\nerror.union.2\ntyp |
| cc60 | 65 3a 20 7b 73 7d 5c 6e 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | e:.{s}\nvalue:.{}\n"</span> |
| cc80 | 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ,..{.........<span.class="tok-bu |
| cca0 | 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | iltin">@typeName</span>(<span.cl |
| ccc0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@TypeOf</span> |
| cce0 | 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 29 29 2c 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 | (number_or_error)),.........numb |
| cd00 | 65 72 5f 6f 72 5f 65 72 72 6f 72 2c 0a 20 20 20 20 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | er_or_error,.....});.}</code></p |
| cd20 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| cd40 | 67 20 62 75 69 6c 64 2d 65 78 65 20 76 61 6c 75 65 73 2e 7a 69 67 0a 24 20 2e 2f 76 61 6c 75 65 | g.build-exe.values.zig.$../value |
| cd60 | 73 0a 31 20 2b 20 31 20 3d 20 32 0a 37 2e 30 20 2f 20 33 2e 30 20 3d 20 32 2e 33 33 33 33 33 33 | s.1.+.1.=.2.7.0./.3.0.=.2.333333 |
| cd80 | 32 35 65 2b 30 30 0a 66 61 6c 73 65 0a 74 72 75 65 0a 66 61 6c 73 65 0a 0a 6f 70 74 69 6f 6e 61 | 25e+00.false.true.false..optiona |
| cda0 | 6c 20 31 0a 74 79 70 65 3a 20 3f 5b 5d 63 6f 6e 73 74 20 75 38 0a 76 61 6c 75 65 3a 20 6e 75 6c | l.1.type:.?[]const.u8.value:.nul |
| cdc0 | 6c 0a 0a 6f 70 74 69 6f 6e 61 6c 20 32 0a 74 79 70 65 3a 20 3f 5b 5d 63 6f 6e 73 74 20 75 38 0a | l..optional.2.type:.?[]const.u8. |
| cde0 | 76 61 6c 75 65 3a 20 68 69 0a 0a 65 72 72 6f 72 20 75 6e 69 6f 6e 20 31 0a 74 79 70 65 3a 20 61 | value:.hi..error.union.1.type:.a |
| ce00 | 6e 79 65 72 72 6f 72 21 69 33 32 0a 76 61 6c 75 65 3a 20 65 72 72 6f 72 2e 41 72 67 4e 6f 74 46 | nyerror!i32.value:.error.ArgNotF |
| ce20 | 6f 75 6e 64 0a 0a 65 72 72 6f 72 20 75 6e 69 6f 6e 20 32 0a 74 79 70 65 3a 20 61 6e 79 65 72 72 | ound..error.union.2.type:.anyerr |
| ce40 | 6f 72 21 69 33 32 0a 76 61 6c 75 65 3a 20 31 32 33 34 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | or!i32.value:.1234.</code></pre> |
| ce60 | 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 | ........<h2.id="Primitive-Types" |
| ce80 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e | ><a.href="#toc-Primitive-Types"> |
| cea0 | 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | Primitive.Types</a>.<a.class="hd |
| cec0 | 72 22 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 | r".href="#Primitive-Types">..</a |
| cee0 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d | ></h2>........<div.class="table- |
| cf00 | 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 | wrapper">.......<table>......... |
| cf20 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | <tr>...........<th>............. |
| cf40 | 4e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | Name...........</th>...........< |
| cf60 | 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 43 20 45 71 75 69 76 61 6c 65 6e 74 0a 20 20 20 | th>.............C.Equivalent.... |
| cf80 | 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 | .......</th>...........<th>..... |
| cfa0 | 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f | ........Description...........</ |
| cfc0 | 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 | th>.........</tr>.........<tr>.. |
| cfe0 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ...........<td><code.class="zig" |
| d000 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e | ><span.class="tok-type">i8</span |
| d020 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 | ></code></td>...........<td><cod |
| d040 | 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 38 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 | e.class="c">int8_t</code></td>.. |
| d060 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 38 2d 62 69 74 20 69 6e 74 65 67 65 | .........<td>signed.8-bit.intege |
| d080 | 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | r</td>.........</tr>.........<tr |
| d0a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.............<td><code.class="z |
| d0c0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | ig"><span.class="tok-type">u8</s |
| d0e0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | pan></code></td>...........<td>< |
| d100 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 38 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 | code.class="c">uint8_t</code></t |
| d120 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 38 2d 62 69 74 20 | d>...........<td>unsigned.8-bit. |
| d140 | 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 | integer</td>.........</tr>...... |
| d160 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c | ...<tr>.............<td><code.cl |
| d180 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| d1a0 | 3e 69 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | >i16</span></code></td>......... |
| d1c0 | 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 31 36 5f 74 3c 2f 63 | ..<td><code.class="c">int16_t</c |
| d1e0 | 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 31 | ode></td>...........<td>signed.1 |
| d200 | 36 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | 6-bit.integer</td>.........</tr> |
| d220 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | .........<tr>.............<td><c |
| d240 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| d260 | 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 | -type">u16</span></code></td>... |
| d280 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 | ........<td><code.class="c">uint |
| d2a0 | 31 36 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 | 16_t</code></td>...........<td>u |
| d2c0 | 6e 73 69 67 6e 65 64 20 31 36 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 | nsigned.16-bit.integer</td>..... |
| d2e0 | 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 | ....</tr>.........<tr>.......... |
| d300 | 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ...<td><code.class="zig"><span.c |
| d320 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-type">i32</span></code |
| d340 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ></td>...........<td><code.class |
| d360 | 3d 22 63 22 3e 69 6e 74 33 32 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | ="c">int32_t</code></td>........ |
| d380 | 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 33 32 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 | ...<td>signed.32-bit.integer</td |
| d3a0 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 | >.........</tr>.........<tr>.... |
| d3c0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .........<td><code.class="zig">< |
| d3e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">u32</span> |
| d400 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | </code></td>...........<td><code |
| d420 | 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 33 32 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | .class="c">uint32_t</code></td>. |
| d440 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 33 32 2d 62 69 74 20 69 6e | ..........<td>unsigned.32-bit.in |
| d460 | 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | teger</td>.........</tr>........ |
| d480 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 | .<tr>.............<td><code.clas |
| d4a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | s="zig"><span.class="tok-type">i |
| d4c0 | 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | 64</span></code></td>........... |
| d4e0 | 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 36 34 5f 74 3c 2f 63 6f 64 | <td><code.class="c">int64_t</cod |
| d500 | 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 36 34 2d | e></td>...........<td>signed.64- |
| d520 | 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | bit.integer</td>.........</tr>.. |
| d540 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 | .......<tr>.............<td><cod |
| d560 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| d580 | 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ype">u64</span></code></td>..... |
| d5a0 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 36 34 | ......<td><code.class="c">uint64 |
| d5c0 | 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 | _t</code></td>...........<td>uns |
| d5e0 | 69 67 6e 65 64 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | igned.64-bit.integer</td>....... |
| d600 | 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ..</tr>.........<tr>............ |
| d620 | 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .<td><code.class="zig"><span.cla |
| d640 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-type">i128</span></code> |
| d660 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | </td>...........<td><code.class= |
| d680 | 22 63 22 3e 5f 5f 69 6e 74 31 32 38 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | "c">__int128</code></td>........ |
| d6a0 | 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 31 32 38 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 | ...<td>signed.128-bit.integer</t |
| d6c0 | 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | d>.........</tr>.........<tr>... |
| d6e0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<td><code.class="zig"> |
| d700 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 32 38 3c 2f 73 70 61 | <span.class="tok-type">u128</spa |
| d720 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f | n></code></td>...........<td><co |
| d740 | 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e 65 64 20 5f 5f 69 6e 74 31 32 38 3c 2f | de.class="c">unsigned.__int128</ |
| d760 | 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 | code></td>...........<td>unsigne |
| d780 | 64 20 31 32 38 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c | d.128-bit.integer</td>.........< |
| d7a0 | 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | /tr>.........<tr>.............<t |
| d7c0 | 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | d><code.class="zig"><span.class= |
| d7e0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | "tok-type">isize</span></code></ |
| d800 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 | td>...........<td><code.class="c |
| d820 | 22 3e 69 6e 74 70 74 72 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | ">intptr_t</code></td>.......... |
| d840 | 20 3c 74 64 3e 73 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 20 73 69 7a 65 64 20 69 6e 74 65 67 65 | .<td>signed.pointer.sized.intege |
| d860 | 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | r</td>.........</tr>.........<tr |
| d880 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.............<td><code.class="z |
| d8a0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | ig"><span.class="tok-type">usize |
| d8c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | </span></code></td>...........<t |
| d8e0 | 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 70 74 72 5f 74 3c 2f 63 6f 64 | d><code.class="c">uintptr_t</cod |
| d900 | 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 70 | e></td>...........<td>unsigned.p |
| d920 | 6f 69 6e 74 65 72 20 73 69 7a 65 64 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ointer.sized.integer</td>....... |
| d940 | 20 20 3c 2f 74 72 3e 0a 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ..</tr>..........<tr>........... |
| d960 | 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ..<td><code.class="zig"><span.cl |
| d980 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 | ass="tok-type">c_short</span></c |
| d9a0 | 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c | ode></td>...........<td><code.cl |
| d9c0 | 61 73 73 3d 22 63 22 3e 73 68 6f 72 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ass="c">short</code></td>....... |
| d9e0 | 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 | ....<td>for.ABI.compatibility.wi |
| da00 | 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | th.C</td>.........</tr>......... |
| da20 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | <tr>.............<td><code.class |
| da40 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f | ="zig"><span.class="tok-type">c_ |
| da60 | 75 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ushort</span></code></td>....... |
| da80 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e 65 64 | ....<td><code.class="c">unsigned |
| daa0 | 20 73 68 6f 72 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | .short</code></td>...........<td |
| dac0 | 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 | >for.ABI.compatibility.with.C</t |
| dae0 | 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | d>.........</tr>.........<tr>... |
| db00 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<td><code.class="zig"> |
| db20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 | <span.class="tok-type">c_int</sp |
| db40 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | an></code></td>...........<td><c |
| db60 | 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 | ode.class="c">int</code></td>... |
| db80 | 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 | ........<td>for.ABI.compatibilit |
| dba0 | 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 | y.with.C</td>.........</tr>..... |
| dbc0 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 | ....<tr>.............<td><code.c |
| dbe0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | lass="zig"><span.class="tok-type |
| dc00 | 22 3e 63 5f 75 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ">c_uint</span></code></td>..... |
| dc20 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e | ......<td><code.class="c">unsign |
| dc40 | 65 64 20 69 6e 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | ed.int</code></td>...........<td |
| dc60 | 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 | >for.ABI.compatibility.with.C</t |
| dc80 | 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | d>.........</tr>.........<tr>... |
| dca0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<td><code.class="zig"> |
| dcc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 3c 2f 73 | <span.class="tok-type">c_long</s |
| dce0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | pan></code></td>...........<td>< |
| dd00 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | code.class="c">long</code></td>. |
| dd20 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c | ..........<td>for.ABI.compatibil |
| dd40 | 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | ity.with.C</td>.........</tr>... |
| dd60 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | ......<tr>.............<td><code |
| dd80 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .class="zig"><span.class="tok-ty |
| dda0 | 70 65 22 3e 63 5f 75 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 | pe">c_ulong</span></code></td>.. |
| ddc0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 | .........<td><code.class="c">uns |
| dde0 | 69 67 6e 65 64 20 6c 6f 6e 67 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | igned.long</code></td>.......... |
| de00 | 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 | .<td>for.ABI.compatibility.with. |
| de20 | 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | C</td>.........</tr>.........<tr |
| de40 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.............<td><code.class="z |
| de60 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e | ig"><span.class="tok-type">c_lon |
| de80 | 67 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | glong</span></code></td>........ |
| dea0 | 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 20 6c 6f 6e 67 | ...<td><code.class="c">long.long |
| dec0 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 | </code></td>...........<td>for.A |
| dee0 | 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 | BI.compatibility.with.C</td>.... |
| df00 | 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 | .....</tr>.........<tr>......... |
| df20 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<td><code.class="zig"><span. |
| df40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 6c 6f 6e 67 3c 2f 73 70 | class="tok-type">c_ulonglong</sp |
| df60 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | an></code></td>...........<td><c |
| df80 | 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 | ode.class="c">unsigned.long.long |
| dfa0 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 | </code></td>...........<td>for.A |
| dfc0 | 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 | BI.compatibility.with.C</td>.... |
| dfe0 | 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 | .....</tr>.........<tr>......... |
| e000 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<td><code.class="zig"><span. |
| e020 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 | class="tok-type">c_longdouble</s |
| e040 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | pan></code></td>...........<td>< |
| e060 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 20 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 | code.class="c">long.double</code |
| e080 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d | ></td>...........<td>for.ABI.com |
| e0a0 | 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c | patibility.with.C</td>.........< |
| e0c0 | 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | /tr>.........<tr>.............<t |
| e0e0 | 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | d><code.class="zig"><span.class= |
| e100 | 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | "tok-type">c_void</span></code>< |
| e120 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /td>...........<td><code.class=" |
| e140 | 63 22 3e 76 6f 69 64 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | c">void</code></td>...........<t |
| e160 | 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f | d>for.ABI.compatibility.with.C</ |
| e180 | 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a | td>.........</tr>..........<tr>. |
| e1a0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ............<td><code.class="zig |
| e1c0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 | "><span.class="tok-type">f16</sp |
| e1e0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | an></code></td>...........<td><c |
| e200 | 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 5f 46 6c 6f 61 74 31 36 3c 2f 63 6f 64 65 3e 3c 2f 74 | ode.class="c">_Float16</code></t |
| e220 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 31 36 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 | d>...........<td>16-bit.floating |
| e240 | 20 70 6f 69 6e 74 20 28 31 30 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 | .point.(10-bit.mantissa).IEEE-75 |
| e260 | 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 36 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | 4-2008.binary16</td>.........</t |
| e280 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | r>.........<tr>.............<td> |
| e2a0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| e2c0 | 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | ok-type">f32</span></code></td>. |
| e2e0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 66 6c | ..........<td><code.class="c">fl |
| e300 | 6f 61 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 33 32 | oat</code></td>...........<td>32 |
| e320 | 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 32 33 2d 62 69 74 20 6d 61 6e 74 | -bit.floating.point.(23-bit.mant |
| e340 | 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 33 32 3c 2f 74 64 | issa).IEEE-754-2008.binary32</td |
| e360 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 | >.........</tr>.........<tr>.... |
| e380 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .........<td><code.class="zig">< |
| e3a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e | span.class="tok-type">f64</span> |
| e3c0 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | </code></td>...........<td><code |
| e3e0 | 20 63 6c 61 73 73 3d 22 63 22 3e 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 | .class="c">double</code></td>... |
| e400 | 20 20 20 20 20 20 20 20 3c 74 64 3e 36 34 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e | ........<td>64-bit.floating.poin |
| e420 | 74 20 28 35 32 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 | t.(52-bit.mantissa).IEEE-754-200 |
| e440 | 38 20 62 69 6e 61 72 79 36 34 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | 8.binary64</td>.........</tr>... |
| e460 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | ......<tr>.............<td><code |
| e480 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .class="zig"><span.class="tok-ty |
| e4a0 | 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | pe">f128</span></code></td>..... |
| e4c0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 5f 46 6c 6f | ........<td><code.class="c">_Flo |
| e4e0 | 61 74 31 32 38 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | at128</code></td>...........<td> |
| e500 | 31 32 38 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 31 31 32 2d 62 69 74 20 | 128-bit.floating.point.(112-bit. |
| e520 | 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 32 | mantissa).IEEE-754-2008.binary12 |
| e540 | 38 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | 8</td>.........</tr>.........<tr |
| e560 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.............<td><code.class="z |
| e580 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c | ig"><span.class="tok-type">bool< |
| e5a0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | /span></code></td>...........<td |
| e5c0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 62 6f 6f 6c 3c 2f 63 6f 64 65 3e 3c 2f 74 64 | ><code.class="c">bool</code></td |
| e5e0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | >...........<td><code.class="zig |
| e600 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | "><span.class="tok-null">true</s |
| e620 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | pan></code>.or.<code.class="zig" |
| e640 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | ><span.class="tok-null">false</s |
| e660 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | pan></code></td>.........</tr>.. |
| e680 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 | .......<tr>.............<td><cod |
| e6a0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| e6c0 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 | ype">void</span></code></td>.... |
| e6e0 | 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | .......<td>(none)</td>.......... |
| e700 | 20 3c 74 64 3e 30 20 62 69 74 20 74 79 70 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | .<td>0.bit.type</td>.........</t |
| e720 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | r>.........<tr>.............<td> |
| e740 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| e760 | 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ok-type">noreturn</span></code>< |
| e780 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 | /td>...........<td>(none)</td>.. |
| e7a0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 74 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 20 63 | .........<td>the.type.of.<code.c |
| e7c0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| e7e0 | 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 | break</span></code>,.<code.class |
| e800 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 | ="zig"><span.class="tok-kw">cont |
| e820 | 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | inue</span></code>,.<code.class= |
| e840 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 | "zig"><span.class="tok-kw">retur |
| e860 | 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | n</span></code>,.<code.class="zi |
| e880 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 | g"><span.class="tok-kw">unreacha |
| e8a0 | 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 | ble</span></code>,.and.<code.cla |
| e8c0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 | ss="zig"><span.class="tok-kw">wh |
| e8e0 | 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | ile</span>.(<span.class="tok-nul |
| e900 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 | l">true</span>).{}</code></td>.. |
| e920 | 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 | .......</tr>.........<tr>....... |
| e940 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<td><code.class="zig"><spa |
| e960 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-type">type</span></ |
| e980 | 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c | code></td>...........<td>(none)< |
| e9a0 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 74 68 65 20 74 79 70 65 20 6f 66 20 74 | /td>...........<td>the.type.of.t |
| e9c0 | 79 70 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | ypes</td>.........</tr>......... |
| e9e0 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | <tr>.............<td><code.class |
| ea00 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e | ="zig"><span.class="tok-type">an |
| ea20 | 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | yerror</span></code></td>....... |
| ea40 | 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | ....<td>(none)</td>...........<t |
| ea60 | 64 3e 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | d>an.error.code</td>.........</t |
| ea80 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | r>.........<tr>.............<td> |
| eaa0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| eac0 | 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ok-type">comptime_int</span></co |
| eae0 | 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 | de></td>...........<td>(none)</t |
| eb00 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 66 6f | d>...........<td>Only.allowed.fo |
| eb20 | 72 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | r.<a.href="#comptime">comptime</ |
| eb40 | 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 69 6e 74 | a>-known.values..The.type.of.int |
| eb60 | 65 67 65 72 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | eger.literals.</td>.........</tr |
| eb80 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | >.........<tr>.............<td>< |
| eba0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| ebc0 | 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 | k-type">comptime_float</span></c |
| ebe0 | 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f | ode></td>...........<td>(none)</ |
| ec00 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 66 | td>...........<td>Only.allowed.f |
| ec20 | 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c | or.<a.href="#comptime">comptime< |
| ec40 | 2f 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 66 6c | /a>-known.values..The.type.of.fl |
| ec60 | 6f 61 74 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | oat.literals.</td>.........</tr> |
| ec80 | 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 | .......</table>.......</div>.... |
| eca0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 74 68 65 20 | ...<p>.......In.addition.to.the. |
| ecc0 | 69 6e 74 65 67 65 72 20 74 79 70 65 73 20 61 62 6f 76 65 2c 20 61 72 62 69 74 72 61 72 79 20 62 | integer.types.above,.arbitrary.b |
| ece0 | 69 74 2d 77 69 64 74 68 20 69 6e 74 65 67 65 72 73 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e | it-width.integers.can.be.referen |
| ed00 | 63 65 64 20 62 79 20 75 73 69 6e 67 0a 20 20 20 20 20 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 | ced.by.using.......an.identifier |
| ed20 | 20 6f 66 20 3c 63 6f 64 65 3e 69 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 75 3c 2f 63 | .of.<code>i</code>.or.<code>u</c |
| ed40 | 6f 64 65 3e 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 64 69 67 69 74 73 2e 20 46 6f 72 20 65 78 61 | ode>.followed.by.digits..For.exa |
| ed60 | 6d 70 6c 65 2c 20 74 68 65 20 69 64 65 6e 74 69 66 69 65 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 | mple,.the.identifier.......<code |
| ed80 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .class="zig"><span.class="tok-ty |
| eda0 | 70 65 22 3e 69 37 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 61 | pe">i7</span></code>.refers.to.a |
| edc0 | 20 73 69 67 6e 65 64 20 37 2d 62 69 74 20 69 6e 74 65 67 65 72 2e 20 54 68 65 20 6d 61 78 69 6d | .signed.7-bit.integer..The.maxim |
| ede0 | 75 6d 20 61 6c 6c 6f 77 65 64 20 62 69 74 2d 77 69 64 74 68 20 6f 66 20 61 6e 0a 20 20 20 20 20 | um.allowed.bit-width.of.an...... |
| ee00 | 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .integer.type.is.<code.class="zi |
| ee20 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 35 35 33 | g"><span.class="tok-number">6553 |
| ee40 | 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | 5</span></code>........</p>..... |
| ee60 | 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | ..<p>See.also:</p><ul>.<li><a.hr |
| ee80 | 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e | ef="#Integers">Integers</a></li> |
| eea0 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 | .<li><a.href="#Floats">Floats</a |
| eec0 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c | ></li>.<li><a.href="#void">void< |
| eee0 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 | /a></li>.<li><a.href="#Errors">E |
| ef00 | 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 79 70 | rrors</a></li>.<li><a.href="#Typ |
| ef20 | 65 22 3e 40 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a | e">@Type</a></li>.</ul>......... |
| ef40 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e | ......<h2.id="Primitive-Values"> |
| ef60 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e | <a.href="#toc-Primitive-Values"> |
| ef80 | 50 72 69 6d 69 74 69 76 65 20 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | Primitive.Values</a>.<a.class="h |
| efa0 | 64 72 22 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e c2 a7 3c | dr".href="#Primitive-Values">..< |
| efc0 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c | /a></h2>........<div.class="tabl |
| efe0 | 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 | e-wrapper">.......<table>....... |
| f000 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | ..<tr>...........<th>........... |
| f020 | 20 20 4e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 | ..Name...........</th>.......... |
| f040 | 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 | .<th>.............Description... |
| f060 | 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 | ........</th>.........</tr>..... |
| f080 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 | ....<tr>.............<td><code.c |
| f0a0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | lass="zig"><span.class="tok-null |
| f0c0 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 | ">true</span></code>.and.<code.c |
| f0e0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | lass="zig"><span.class="tok-null |
| f100 | 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | ">false</span></code></td>...... |
| f120 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .......<td><code.class="zig"><sp |
| f140 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c | an.class="tok-type">bool</span>< |
| f160 | 2f 63 6f 64 65 3e 20 76 61 6c 75 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | /code>.values</td>.........</tr> |
| f180 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | .........<tr>.............<td><c |
| f1a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| f1c0 | 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 | -null">null</span></code></td>.. |
| f1e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 73 65 74 20 61 6e 20 6f 70 | ...........<td>used.to.set.an.op |
| f200 | 74 69 6f 6e 61 6c 20 74 79 70 65 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | tional.type.to.<code.class="zig" |
| f220 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 | ><span.class="tok-null">null</sp |
| f240 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | an></code></td>.........</tr>... |
| f260 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | ......<tr>.............<td><code |
| f280 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .class="zig"><span.class="tok-nu |
| f2a0 | 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e | ll">undefined</span></code></td> |
| f2c0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 6c 65 61 76 65 20 61 20 76 | ...........<td>used.to.leave.a.v |
| f2e0 | 61 6c 75 65 20 75 6e 73 70 65 63 69 66 69 65 64 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | alue.unspecified</td>.........</ |
| f300 | 74 72 3e 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a | tr>.......</table>.......</div>. |
| f320 | 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c | ......<p>See.also:</p><ul>.<li>< |
| f340 | 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 | a.href="#Optionals">Optionals</a |
| f360 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e | ></li>.<li><a.href="#undefined"> |
| f380 | 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 | undefined</a></li>.</ul>........ |
| f3a0 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 | .......<h2.id="String-Literals-a |
| f3c0 | 6e 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e | nd-Unicode-Code-Point-Literals"> |
| f3e0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e | <a.href="#toc-String-Literals-an |
| f400 | 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e 53 | d-Unicode-Code-Point-Literals">S |
| f420 | 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 20 61 6e 64 20 55 6e 69 63 6f 64 65 20 43 6f 64 65 20 | tring.Literals.and.Unicode.Code. |
| f440 | 50 6f 69 6e 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | Point.Literals</a>.<a.class="hdr |
| f460 | 22 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 | ".href="#String-Literals-and-Uni |
| f480 | 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e | code-Code-Point-Literals">..</a> |
| f4a0 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 74 72 69 6e 67 20 6c 69 | </h2>........<p>.......String.li |
| f4c0 | 74 65 72 61 6c 73 20 61 72 65 20 63 6f 6e 73 74 61 6e 74 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 | terals.are.constant.single-item. |
| f4e0 | 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e | <a.href="#Pointers">Pointers</a> |
| f500 | 20 74 6f 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 62 79 74 65 20 61 72 72 61 79 73 2e | .to.null-terminated.byte.arrays. |
| f520 | 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 | .......The.type.of.string.litera |
| f540 | 6c 73 20 65 6e 63 6f 64 65 73 20 62 6f 74 68 20 74 68 65 20 6c 65 6e 67 74 68 2c 20 61 6e 64 20 | ls.encodes.both.the.length,.and. |
| f560 | 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 79 20 61 72 65 20 6e 75 6c 6c 2d 74 65 72 6d | the.fact.that.they.are.null-term |
| f580 | 69 6e 61 74 65 64 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 75 73 20 74 68 65 79 20 63 61 6e 20 | inated,.......and.thus.they.can. |
| f5a0 | 62 65 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 | be.<a.href="#Type-Coercion">coer |
| f5c0 | 63 65 64 3c 2f 61 3e 20 74 6f 20 62 6f 74 68 20 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 | ced</a>.to.both.<a.href="#Slices |
| f5e0 | 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 | ">Slices</a>.and.......<a.href=" |
| f600 | 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 4e | #Sentinel-Terminated-Pointers">N |
| f620 | 75 6c 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 | ull-Terminated.Pointers</a>..... |
| f640 | 20 20 20 44 65 72 65 66 65 72 65 6e 63 69 6e 67 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 | ...Dereferencing.string.literals |
| f660 | 20 63 6f 6e 76 65 72 74 73 20 74 68 65 6d 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 | .converts.them.to.<a.href="#Arra |
| f680 | 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ys">Arrays</a>........</p>...... |
| f6a0 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 65 6e 63 6f 64 69 6e 67 20 6f 66 20 61 20 73 74 72 | .<p>.......The.encoding.of.a.str |
| f6c0 | 69 6e 67 20 69 6e 20 5a 69 67 20 69 73 20 64 65 2d 66 61 63 74 6f 20 61 73 73 75 6d 65 64 20 74 | ing.in.Zig.is.de-facto.assumed.t |
| f6e0 | 6f 20 62 65 20 55 54 46 2d 38 2e 0a 20 20 20 20 20 20 42 65 63 61 75 73 65 20 5a 69 67 20 73 6f | o.be.UTF-8........Because.Zig.so |
| f700 | 75 72 63 65 20 63 6f 64 65 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e | urce.code.is.<a.href="#Source-En |
| f720 | 63 6f 64 69 6e 67 22 3e 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 3c 2f 61 3e 2c 20 61 6e 79 20 6e | coding">UTF-8.encoded</a>,.any.n |
| f740 | 6f 6e 2d 41 53 43 49 49 20 62 79 74 65 73 20 61 70 70 65 61 72 69 6e 67 20 77 69 74 68 69 6e 20 | on-ASCII.bytes.appearing.within. |
| f760 | 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 0a 20 20 20 20 20 20 69 6e 20 73 6f 75 72 63 65 | a.string.literal.......in.source |
| f780 | 20 63 6f 64 65 20 63 61 72 72 79 20 74 68 65 69 72 20 55 54 46 2d 38 20 6d 65 61 6e 69 6e 67 20 | .code.carry.their.UTF-8.meaning. |
| f7a0 | 69 6e 74 6f 20 74 68 65 20 63 6f 6e 74 65 6e 74 20 6f 66 20 74 68 65 20 73 74 72 69 6e 67 20 69 | into.the.content.of.the.string.i |
| f7c0 | 6e 20 74 68 65 20 5a 69 67 20 70 72 6f 67 72 61 6d 3b 0a 20 20 20 20 20 20 74 68 65 20 62 79 74 | n.the.Zig.program;.......the.byt |
| f7e0 | 65 73 20 61 72 65 20 6e 6f 74 20 6d 6f 64 69 66 69 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 | es.are.not.modified.by.the.compi |
| f800 | 6c 65 72 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 69 74 20 69 73 20 70 6f 73 73 69 62 | ler........However,.it.is.possib |
| f820 | 6c 65 20 74 6f 20 65 6d 62 65 64 20 6e 6f 6e 2d 55 54 46 2d 38 20 62 79 74 65 73 20 69 6e 74 6f | le.to.embed.non-UTF-8.bytes.into |
| f840 | 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 5c 78 | .a.string.literal.using.<code>\x |
| f860 | 4e 4e 3c 2f 63 6f 64 65 3e 20 6e 6f 74 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | NN</code>.notation........</p>.. |
| f880 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e | .....<p>.......Unicode.code.poin |
| f8a0 | 74 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | t.literals.have.type.<code.class |
| f8c0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f | ="zig"><span.class="tok-type">co |
| f8e0 | 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 73 61 | mptime_int</span></code>,.the.sa |
| f900 | 6d 65 20 61 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4c 69 | me.as.......<a.href="#Integer-Li |
| f920 | 74 65 72 61 6c 73 22 3e 49 6e 74 65 67 65 72 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 2e 20 41 6c | terals">Integer.Literals</a>..Al |
| f940 | 6c 20 3c 61 20 68 72 65 66 3d 22 23 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 45 73 | l.<a.href="#Escape-Sequences">Es |
| f960 | 63 61 70 65 20 53 65 71 75 65 6e 63 65 73 3c 2f 61 3e 20 61 72 65 20 76 61 6c 69 64 20 69 6e 20 | cape.Sequences</a>.are.valid.in. |
| f980 | 62 6f 74 68 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 0a 20 20 20 20 20 20 61 6e 64 20 55 | both.string.literals.......and.U |
| f9a0 | 6e 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e 74 20 6c 69 74 65 72 61 6c 73 2e 0a 20 20 20 20 | nicode.code.point.literals...... |
| f9c0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 6d 61 6e 79 20 6f | ..</p>.......<p>.......In.many.o |
| f9e0 | 74 68 65 72 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 73 2c 20 61 20 55 6e | ther.programming.languages,.a.Un |
| fa00 | 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e 74 20 6c 69 74 65 72 61 6c 20 69 73 20 63 61 6c 6c | icode.code.point.literal.is.call |
| fa20 | 65 64 20 61 20 22 63 68 61 72 61 63 74 65 72 20 6c 69 74 65 72 61 6c 22 2e 0a 20 20 20 20 20 20 | ed.a."character.literal"........ |
| fa40 | 48 6f 77 65 76 65 72 2c 20 74 68 65 72 65 20 69 73 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 | However,.there.is.<a.href="https |
| fa60 | 3a 2f 2f 75 6e 69 63 6f 64 65 2e 6f 72 67 2f 67 6c 6f 73 73 61 72 79 22 3e 6e 6f 20 70 72 65 63 | ://unicode.org/glossary">no.prec |
| fa80 | 69 73 65 20 74 65 63 68 6e 69 63 61 6c 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 61 20 22 63 | ise.technical.definition.of.a."c |
| faa0 | 68 61 72 61 63 74 65 72 22 3c 2f 61 3e 0a 20 20 20 20 20 20 69 6e 20 72 65 63 65 6e 74 20 76 65 | haracter"</a>.......in.recent.ve |
| fac0 | 72 73 69 6f 6e 73 20 6f 66 20 74 68 65 20 55 6e 69 63 6f 64 65 20 73 70 65 63 69 66 69 63 61 74 | rsions.of.the.Unicode.specificat |
| fae0 | 69 6f 6e 20 28 61 73 20 6f 66 20 55 6e 69 63 6f 64 65 20 31 33 2e 30 29 2e 0a 20 20 20 20 20 20 | ion.(as.of.Unicode.13.0)........ |
| fb00 | 49 6e 20 5a 69 67 2c 20 61 20 55 6e 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e 74 20 6c 69 74 | In.Zig,.a.Unicode.code.point.lit |
| fb20 | 65 72 61 6c 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 68 65 20 55 6e 69 63 6f 64 65 20 | eral.corresponds.to.the.Unicode. |
| fb40 | 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 61 20 63 6f 64 65 20 70 6f 69 6e 74 2e 0a 20 20 20 20 | definition.of.a.code.point...... |
| fb60 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | ..</p>.......<p.class="file">tes |
| fb80 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| fba0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| fbc0 | 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | >.expect.=.<span.class="tok-buil |
| fbe0 | 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@import</span>(<span.class= |
| fc00 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "tok-str">"std"</span> |
| fc20 | 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ).testing.expect;.<span.class="t |
| fc40 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.mem.=.<span. |
| fc60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 | class="tok-builtin">@import</spa |
| fc80 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>(<span.class="tok-str">"s |
| fca0 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | td"</span>).mem;..<span.cla |
| fcc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ss="tok-kw">test</span>.<span.cl |
| fce0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 | ass="tok-str">"string.liter |
| fd00 | 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | als"</span>.{.....<span.cla |
| fd20 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d | ss="tok-kw">const</span>.bytes.= |
| fd40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c | .<span.class="tok-str">"hel |
| fd60 | 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | lo"</span>;.....<span.class |
| fd80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 | ="tok-kw">try</span>.expect(<spa |
| fda0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| fdc0 | 70 61 6e 3e 28 62 79 74 65 73 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>(bytes).==.*<span.class="tok |
| fde0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">const</span>.[<span.class=" |
| fe00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3a 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-number">5</span>:<span.class |
| fe20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 | ="tok-number">0</span>]<span.cla |
| fe40 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 | ss="tok-type">u8</span>);.....<s |
| fe60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 | pan.class="tok-kw">try</span>.ex |
| fe80 | 70 65 63 74 28 62 79 74 65 73 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pect(bytes.len.==.<span.class="t |
| fea0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ok-number">5</span>);.....<span. |
| fec0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| fee0 | 28 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | (bytes[<span.class="tok-number"> |
| ff00 | 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | 1</span>].==.<span.class="tok-st |
| ff20 | 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r">'e'</span>);.....<span.class= |
| ff40 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 62 79 74 65 73 | "tok-kw">try</span>.expect(bytes |
| ff60 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 | [<span.class="tok-number">5</spa |
| ff80 | 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n>].==.<span.class="tok-number"> |
| ffa0 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 0</span>);.....<span.class="tok- |
| ffc0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 | kw">try</span>.expect(<span.clas |
| ffe0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 | s="tok-str">'e'</span>.==.<span. |
| 10000 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 78 36 35 27 3c 2f 73 70 61 6e 3e 29 3b 0a | class="tok-str">'\x65'</span>);. |
| 10020 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 10040 | 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | an>.expect(<span.class="tok-str" |
| 10060 | 3e 27 5c 75 7b 31 66 34 61 39 7d 27 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | >'\u{1f4a9}'</span>.==.<span.cla |
| 10080 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 38 31 36 39 3c 2f 73 70 61 6e 3e 29 3b 0a | ss="tok-number">128169</span>);. |
| 100a0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 100c0 | 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | an>.expect(<span.class="tok-str" |
| 100e0 | 3e 27 f0 9f 92 af 27 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >'....'</span>.==.<span.class="t |
| 10100 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 38 31 37 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c | ok-number">128175</span>);.....< |
| 10120 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 10140 | 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | xpect(mem.eql(<span.class="tok-t |
| 10160 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ype">u8</span>,.<span.class="tok |
| 10180 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 | -str">"hello"</span>,. |
| 101a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 5c 78 36 | <span.class="tok-str">"h\x6 |
| 101c0 | 35 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | 5llo"</span>));.....<span.c |
| 101e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 10200 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 78 66 66 | <span.class="tok-str">"\xff |
| 10220 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | "</span>[<span.class="tok-n |
| 10240 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">0</span>].==.<span.class= |
| 10260 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 66 66 3c 2f 73 70 61 6e 3e 29 3b 20 3c 73 70 61 6e | "tok-number">0xff</span>);.<span |
| 10280 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 6e 2d 55 54 46 2d | .class="tok-comment">//.non-UTF- |
| 102a0 | 38 20 73 74 72 69 6e 67 73 20 61 72 65 20 70 6f 73 73 69 62 6c 65 20 77 69 74 68 20 5c 78 4e 4e | 8.strings.are.possible.with.\xNN |
| 102c0 | 20 6e 6f 74 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | .notation.</span>.}</code></pre> |
| 102e0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 | <pre><code.class="shell">$.zig.t |
| 10300 | 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 | est.test.zig.Test.[1/1].test.&qu |
| 10320 | 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c | ot;string.literals"......Al |
| 10340 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 10360 | 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e | .......<p>See.also:</p><ul>.<li> |
| 10380 | 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 | <a.href="#Arrays">Arrays</a></li |
| 103a0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 | >.<li><a.href="#Zig-Test">Zig.Te |
| 103c0 | 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 | st</a></li>.<li><a.href="#Source |
| 103e0 | 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f 64 69 6e 67 3c 2f 61 3e 3c 2f | -Encoding">Source.Encoding</a></ |
| 10400 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 73 63 61 70 65 2d | li>.</ul>........<h3.id="Escape- |
| 10420 | 53 65 71 75 65 6e 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 73 63 61 70 65 2d | Sequences"><a.href="#toc-Escape- |
| 10440 | 53 65 71 75 65 6e 63 65 73 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 73 3c 2f 61 3e 20 | Sequences">Escape.Sequences</a>. |
| 10460 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 73 63 61 70 65 2d 53 65 71 | <a.class="hdr".href="#Escape-Seq |
| 10480 | 75 65 6e 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 | uences">..</a></h3>........<div. |
| 104a0 | 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 | class="table-wrapper">.......<ta |
| 104c0 | 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e | ble>.........<tr>...........<th> |
| 104e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 0a 20 20 20 | .............Escape.Sequence.... |
| 10500 | 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 | .......</th>...........<th>..... |
| 10520 | 20 20 20 20 20 20 20 20 4e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 | ........Name...........</th>.... |
| 10540 | 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 | .....</tr>.........<tr>......... |
| 10560 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 6e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 | ....<td><code>\n</code></td>.... |
| 10580 | 20 20 20 20 20 20 20 3c 74 64 3e 4e 65 77 6c 69 6e 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | .......<td>Newline</td>......... |
| 105a0 | 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | </tr>.........<tr>.............< |
| 105c0 | 74 64 3e 3c 63 6f 64 65 3e 5c 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | td><code>\r</code></td>......... |
| 105e0 | 20 20 3c 74 64 3e 43 61 72 72 69 61 67 65 20 52 65 74 75 72 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 | ..<td>Carriage.Return</td>...... |
| 10600 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| 10620 | 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | ..<td><code>\t</code></td>...... |
| 10640 | 20 20 20 20 20 3c 74 64 3e 54 61 62 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | .....<td>Tab</td>.........</tr>. |
| 10660 | 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f | ........<tr>.............<td><co |
| 10680 | 64 65 3e 5c 5c 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | de>\\</code></td>...........<td> |
| 106a0 | 42 61 63 6b 73 6c 61 73 68 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | Backslash</td>.........</tr>.... |
| 106c0 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e | .....<tr>.............<td><code> |
| 106e0 | 5c 27 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 69 6e | \'</code></td>...........<td>Sin |
| 10700 | 67 6c 65 20 51 75 6f 74 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | gle.Quote</td>.........</tr>.... |
| 10720 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e | .....<tr>.............<td><code> |
| 10740 | 5c 22 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 44 6f 75 | \"</code></td>...........<td>Dou |
| 10760 | 62 6c 65 20 51 75 6f 74 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | ble.Quote</td>.........</tr>.... |
| 10780 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e | .....<tr>.............<td><code> |
| 107a0 | 5c 78 4e 4e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 68 | \xNN</code></td>...........<td>h |
| 107c0 | 65 78 61 64 65 63 69 6d 61 6c 20 38 2d 62 69 74 20 62 79 74 65 20 76 61 6c 75 65 20 28 32 20 64 | exadecimal.8-bit.byte.value.(2.d |
| 107e0 | 69 67 69 74 73 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | igits)</td>.........</tr>....... |
| 10800 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 75 7b | ..<tr>.............<td><code>\u{ |
| 10820 | 4e 4e 4e 4e 4e 4e 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | NNNNNN}</code></td>...........<t |
| 10840 | 64 3e 68 65 78 61 64 65 63 69 6d 61 6c 20 55 6e 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e 74 | d>hexadecimal.Unicode.code.point |
| 10860 | 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 28 31 20 6f 72 20 6d 6f 72 65 20 64 69 67 69 74 73 | .UTF-8.encoded.(1.or.more.digits |
| 10880 | 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 3c 2f 74 61 62 | )</td>.........</tr>.......</tab |
| 108a0 | 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 | le>.......</div>.......<p>Note.t |
| 108c0 | 68 61 74 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 76 61 6c 69 64 20 55 6e 69 63 6f 64 65 20 70 6f | hat.the.maximum.valid.Unicode.po |
| 108e0 | 69 6e 74 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | int.is.<code.class="zig"><span.c |
| 10900 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 66 66 66 66 3c 2f 73 70 61 6e | lass="tok-number">0x10ffff</span |
| 10920 | 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 | ></code>.</p>..............<h3.i |
| 10940 | 64 3d 22 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 | d="Multiline-String-Literals"><a |
| 10960 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 | .href="#toc-Multiline-String-Lit |
| 10980 | 65 72 61 6c 73 22 3e 4d 75 6c 74 69 6c 69 6e 65 20 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 | erals">Multiline.String.Literals |
| 109a0 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 75 6c 74 69 | </a>.<a.class="hdr".href="#Multi |
| 109c0 | 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | line-String-Literals">..</a></h3 |
| 109e0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 75 6c 74 69 6c 69 6e 65 20 73 74 72 | >........<p>.......Multiline.str |
| 10a00 | 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 6e 6f 20 65 73 63 61 70 65 73 20 61 6e 64 | ing.literals.have.no.escapes.and |
| 10a20 | 20 63 61 6e 20 73 70 61 6e 20 61 63 72 6f 73 73 20 6d 75 6c 74 69 70 6c 65 20 6c 69 6e 65 73 2e | .can.span.across.multiple.lines. |
| 10a40 | 0a 20 20 20 20 20 20 54 6f 20 73 74 61 72 74 20 61 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 | .......To.start.a.multiline.stri |
| 10a60 | 6e 67 20 6c 69 74 65 72 61 6c 2c 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ng.literal,.use.the.<code.class= |
| 10a80 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 3c 2f | "zig"><span.class="tok-str">\\</ |
| 10aa0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 6b 65 6e 2e 20 4a 75 73 74 20 6c 69 6b 65 20 61 20 | span></code>.token..Just.like.a. |
| 10ac0 | 63 6f 6d 6d 65 6e 74 2c 0a 20 20 20 20 20 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 | comment,.......the.string.litera |
| 10ae0 | 6c 20 67 6f 65 73 20 75 6e 74 69 6c 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 69 6e 65 | l.goes.until.the.end.of.the.line |
| 10b00 | 2e 20 54 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 69 6e 65 20 69 73 0a 20 20 20 20 20 20 6e | ..The.end.of.the.line.is.......n |
| 10b20 | 6f 74 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 | ot.included.in.the.string.litera |
| 10b40 | 6c 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 69 66 20 74 68 65 20 6e 65 78 74 20 6c 69 | l........However,.if.the.next.li |
| 10b60 | 6e 65 20 62 65 67 69 6e 73 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ne.begins.with.<code.class="zig" |
| 10b80 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 3c 2f 73 70 61 6e 3e | ><span.class="tok-str">\\</span> |
| 10ba0 | 3c 2f 63 6f 64 65 3e 20 74 68 65 6e 20 61 20 6e 65 77 6c 69 6e 65 20 69 73 20 61 70 70 65 6e 64 | </code>.then.a.newline.is.append |
| 10bc0 | 65 64 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 | ed.and.......the.string.literal. |
| 10be0 | 63 6f 6e 74 69 6e 75 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 | continues........</p>.......<pre |
| 10c00 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 10c20 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 | tok-kw">const</span>.hello_world |
| 10c40 | 5f 69 6e 5f 63 20 3d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | _in_c.=.....<span.class="tok-str |
| 10c60 | 22 3e 5c 5c 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b 0a 3c 2f 73 | ">\\#include.<stdio.h>.</s |
| 10c80 | 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c | pan>....<span.class="tok-str">\\ |
| 10ca0 | 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | .</span>....<span.class="tok-str |
| 10cc0 | 22 3e 5c 5c 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 | ">\\int.main(int.argc,.char.**ar |
| 10ce0 | 67 76 29 20 7b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | gv).{.</span>....<span.class="to |
| 10d00 | 6b 2d 73 74 72 22 3e 5c 5c 20 20 20 20 70 72 69 6e 74 66 28 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 | k-str">\\....printf("hello. |
| 10d20 | 77 6f 72 6c 64 5c 6e 26 71 75 6f 74 3b 29 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e | world\n");.</span>....<span |
| 10d40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 20 20 72 65 74 75 72 6e 20 30 3b | .class="tok-str">\\....return.0; |
| 10d60 | 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | .</span>....<span.class="tok-str |
| 10d80 | 22 3e 5c 5c 7d 0a 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | ">\\}.</span>;</code></pre>..... |
| 10da0 | 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | ..<p>See.also:</p><ul>.<li><a.hr |
| 10dc0 | 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 61 3e 3c 2f | ef="#embedFile">@embedFile</a></ |
| 10de0 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | li>.</ul>......................< |
| 10e00 | 68 32 20 69 64 3d 22 41 73 73 69 67 6e 6d 65 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | h2.id="Assignment"><a.href="#toc |
| 10e20 | 2d 41 73 73 69 67 6e 6d 65 6e 74 22 3e 41 73 73 69 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 | -Assignment">Assignment</a>.<a.c |
| 10e40 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 73 73 69 67 6e 6d 65 6e 74 22 3e c2 a7 | lass="hdr".href="#Assignment">.. |
| 10e60 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 73 65 20 74 68 65 20 3c 63 6f 64 | </a></h2>........<p>Use.the.<cod |
| 10e80 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 10ea0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 74 | w">const</span></code>.keyword.t |
| 10ec0 | 6f 20 61 73 73 69 67 6e 20 61 20 76 61 6c 75 65 20 74 6f 20 61 6e 20 69 64 65 6e 74 69 66 69 65 | o.assign.a.value.to.an.identifie |
| 10ee0 | 72 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | r:</p>.......<p.class="file">tes |
| 10f00 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 10f20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 10f40 | 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | >.x.=.<span.class="tok-number">1 |
| 10f60 | 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | 234</span>;..<span.class="tok-kw |
| 10f80 | 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 | ">fn</span>.<span.class="tok-fn" |
| 10fa0 | 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >foo</span>().<span.class="tok-t |
| 10fc0 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ype">void</span>.{.....<span.cla |
| 10fe0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 20 77 6f 72 6b 73 20 61 74 20 | ss="tok-comment">//.It.works.at. |
| 11000 | 66 69 6c 65 20 73 63 6f 70 65 20 61 73 20 77 65 6c 6c 20 61 73 20 69 6e 73 69 64 65 20 66 75 6e | file.scope.as.well.as.inside.fun |
| 11020 | 63 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ctions.</span>.....<span.class=" |
| 11040 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 63 | tok-kw">const</span>.y.=.<span.c |
| 11060 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 0a | lass="tok-number">5678</span>;.. |
| 11080 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | ....<span.class="tok-comment">// |
| 110a0 | 20 4f 6e 63 65 20 61 73 73 69 67 6e 65 64 2c 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 63 61 | .Once.assigned,.an.identifier.ca |
| 110c0 | 6e 6e 6f 74 20 62 65 20 63 68 61 6e 67 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 79 20 2b 3d | nnot.be.changed.</span>.....y.+= |
| 110e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | .<span.class="tok-number">1</spa |
| 11100 | 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | n>;.}..<span.class="tok-kw">test |
| 11120 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 11140 | 75 6f 74 3b 61 73 73 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | uot;assignment"</span>.{... |
| 11160 | 20 20 66 6f 6f 28 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | ..foo();.}</code></pre><pre><cod |
| 11180 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e | e.class="shell">$.zig.test.test. |
| 111a0 | 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f | zig.<span.class="t0_1">./docgen_ |
| 111c0 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 38 3a 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | tmp/test.zig:8:7:.</span><span.c |
| 111e0 | 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | lass="t31_1">error:.</span><span |
| 11200 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6e 6e 6f 74 20 61 73 73 69 67 6e 20 74 6f 20 63 | .class="t0_1">cannot.assign.to.c |
| 11220 | 6f 6e 73 74 61 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 79 20 2b 3d 20 31 3b 0a 20 20 20 20 20 | onstant</span>.....y.+=.1;...... |
| 11240 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f | .<span.class="t32_1">^</span>.</ |
| 11260 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 | code></pre>........<p><code.clas |
| 11280 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 112a0 | 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 70 70 6c 69 65 73 20 74 6f 20 61 6c 6c 20 | st</span></code>.applies.to.all. |
| 112c0 | 6f 66 20 74 68 65 20 62 79 74 65 73 20 74 68 61 74 20 74 68 65 20 69 64 65 6e 74 69 66 69 65 72 | of.the.bytes.that.the.identifier |
| 112e0 | 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 64 64 72 65 73 73 65 73 2e 20 3c 61 20 68 72 65 66 3d | .immediately.addresses..<a.href= |
| 11300 | 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 68 61 76 65 20 74 68 | "#Pointers">Pointers</a>.have.th |
| 11320 | 65 69 72 20 6f 77 6e 20 63 6f 6e 73 74 2d 6e 65 73 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | eir.own.const-ness.</p>.......<p |
| 11340 | 3e 49 66 20 79 6f 75 20 6e 65 65 64 20 61 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 79 6f 75 | >If.you.need.a.variable.that.you |
| 11360 | 20 63 61 6e 20 6d 6f 64 69 66 79 2c 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .can.modify,.use.the.<code.class |
| 11380 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | ="zig"><span.class="tok-kw">var< |
| 113a0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 | /span></code>.keyword:</p>...... |
| 113c0 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 113e0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 11400 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c | "tok-kw">const</span>.expect.=.< |
| 11420 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| 11440 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| 11460 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 | uot;std"</span>).testing.ex |
| 11480 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | pect;..<span.class="tok-kw">test |
| 114a0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 114c0 | 75 6f 74 3b 76 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | uot;var"</span>.{.....<span |
| 114e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 | .class="tok-kw">var</span>.y:.<s |
| 11500 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| 11520 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c | =.<span.class="tok-number">5678< |
| 11540 | 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>;......y.+=.<span.class="t |
| 11560 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | ok-number">1</span>;......<span. |
| 11580 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 115a0 | 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 | (y.==.<span.class="tok-number">5 |
| 115c0 | 36 37 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | 679</span>);.}</code></pre><pre> |
| 115e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 | <code.class="shell">$.zig.test.t |
| 11600 | 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 76 61 | est.zig.Test.[1/1].test."va |
| 11620 | 72 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | r"......All.1.tests.passed. |
| 11640 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 56 61 72 69 61 62 6c | .</code></pre>........<p>Variabl |
| 11660 | 65 73 20 6d 75 73 74 20 62 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 | es.must.be.initialized:</p>..... |
| 11680 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 116a0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 116c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ="tok-kw">test</span>.<span.clas |
| 116e0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e | s="tok-str">"initialization |
| 11700 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 11720 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">var</span>.x:.<span.cla |
| 11740 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 78 | ss="tok-type">i32</span>;......x |
| 11760 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | .=.<span.class="tok-number">1</s |
| 11780 | 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | pan>;.}</code></pre><pre><code.c |
| 117a0 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 | lass="shell">$.zig.test.test.zig |
| 117c0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 | .<span.class="t0_1">./docgen_tmp |
| 117e0 | 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | /test.zig:2:5:.</span><span.clas |
| 11800 | 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | s="t31_1">error:.</span><span.cl |
| 11820 | 61 73 73 3d 22 74 30 5f 31 22 3e 76 61 72 69 61 62 6c 65 73 20 6d 75 73 74 20 62 65 20 69 6e 69 | ass="t0_1">variables.must.be.ini |
| 11840 | 74 69 61 6c 69 7a 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 78 3a 20 69 33 32 3b 0a | tialized</span>.....var.x:.i32;. |
| 11860 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 11880 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 75 6e | .</code></pre>........<h3.id="un |
| 118a0 | 64 65 66 69 6e 65 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 64 65 66 69 6e 65 64 | defined"><a.href="#toc-undefined |
| 118c0 | 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ">undefined</a>.<a.class="hdr".h |
| 118e0 | 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ref="#undefined">..</a></h3>.... |
| 11900 | 20 20 20 20 3c 70 3e 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ....<p>Use.<code.class="zig"><sp |
| 11920 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 | an.class="tok-null">undefined</s |
| 11940 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 6c 65 61 76 65 20 76 61 72 69 61 62 6c 65 73 20 75 | pan></code>.to.leave.variables.u |
| 11960 | 6e 69 6e 69 74 69 61 6c 69 7a 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | ninitialized:</p>.......<p.class |
| 11980 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 119a0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 119c0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.expect.=.<span.clas |
| 119e0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| 11a00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| 11a20 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 | uot;</span>).testing.expect;..<s |
| 11a40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">test</span>.< |
| 11a60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 69 74 20 | span.class="tok-str">"init. |
| 11a80 | 77 69 74 68 20 75 6e 64 65 66 69 6e 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | with.undefined"</span>.{... |
| 11aa0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| 11ac0 | 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | >.x:.<span.class="tok-type">i32< |
| 11ae0 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | /span>.=.<span.class="tok-null"> |
| 11b00 | 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 78 20 3d 20 3c 73 70 61 6e 20 | undefined</span>;.....x.=.<span. |
| 11b20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">1</span>;.... |
| 11b40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 11b60 | 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .expect(x.==.<span.class="tok-nu |
| 11b80 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | mber">1</span>);.}</code></pre>< |
| 11ba0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| 11bc0 | 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f | st.test.zig.Test.[1/1].test.&quo |
| 11be0 | 74 3b 69 6e 69 74 20 77 69 74 68 20 75 6e 64 65 66 69 6e 65 64 26 71 75 6f 74 3b 2e 2e 2e 20 0a | t;init.with.undefined"..... |
| 11c00 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 11c20 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e>........<p>.......<code.class= |
| 11c40 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 | "zig"><span.class="tok-null">und |
| 11c60 | 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 3c 61 20 68 | efined</span></code>.can.be.<a.h |
| 11c80 | 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 64 3c 2f 61 3e | ref="#Type-Coercion">coerced</a> |
| 11ca0 | 20 74 6f 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 4f 6e 63 65 20 74 68 69 | .to.any.type............Once.thi |
| 11cc0 | 73 20 68 61 70 70 65 6e 73 2c 20 69 74 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 70 6f 73 73 69 | s.happens,.it.is.no.longer.possi |
| 11ce0 | 62 6c 65 20 74 6f 20 64 65 74 65 63 74 20 74 68 61 74 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 | ble.to.detect.that.the.value.is. |
| 11d00 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 11d20 | 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ok-null">undefined</span></code> |
| 11d40 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ................<code.class="zig |
| 11d60 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e | "><span.class="tok-null">undefin |
| 11d80 | 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 65 61 6e 73 20 74 68 65 20 76 61 6c 75 65 | ed</span></code>.means.the.value |
| 11da0 | 20 63 6f 75 6c 64 20 62 65 20 61 6e 79 74 68 69 6e 67 2c 20 65 76 65 6e 20 73 6f 6d 65 74 68 69 | .could.be.anything,.even.somethi |
| 11dc0 | 6e 67 20 74 68 61 74 20 69 73 20 6e 6f 6e 73 65 6e 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ng.that.is.nonsense............. |
| 11de0 | 20 20 20 20 20 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 65 20 74 79 70 65 2e 20 54 72 61 | ......according.to.the.type..Tra |
| 11e00 | 6e 73 6c 61 74 65 64 20 69 6e 74 6f 20 45 6e 67 6c 69 73 68 2c 20 3c 63 6f 64 65 20 63 6c 61 73 | nslated.into.English,.<code.clas |
| 11e20 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 | s="zig"><span.class="tok-null">u |
| 11e40 | 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 65 61 6e 73 20 22 4e 6f | ndefined</span></code>.means."No |
| 11e60 | 74 20 61 20 6d 65 61 6e 69 6e 67 66 75 6c 0a 20 20 20 20 20 20 76 61 6c 75 65 2e 20 55 73 69 6e | t.a.meaningful.......value..Usin |
| 11e80 | 67 20 74 68 69 73 20 76 61 6c 75 65 20 77 6f 75 6c 64 20 62 65 20 61 20 62 75 67 2e 20 54 68 65 | g.this.value.would.be.a.bug..The |
| 11ea0 | 20 76 61 6c 75 65 20 77 69 6c 6c 20 62 65 20 75 6e 75 73 65 64 2c 20 6f 72 20 6f 76 65 72 77 72 | .value.will.be.unused,.or.overwr |
| 11ec0 | 69 74 74 65 6e 20 62 65 66 6f 72 65 20 62 65 69 6e 67 20 75 73 65 64 2e 22 0a 20 20 20 20 20 20 | itten.before.being.used."....... |
| 11ee0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 3c 61 20 68 72 65 66 3d | </p>.......<p>.......In.<a.href= |
| 11f00 | 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 6d 6f 64 65 2c 20 5a 69 67 20 77 72 69 | "#Debug">Debug</a>.mode,.Zig.wri |
| 11f20 | 74 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | tes.<code.class="zig"><span.clas |
| 11f40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 61 61 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | s="tok-number">0xaa</span></code |
| 11f60 | 3e 20 62 79 74 65 73 20 74 6f 20 75 6e 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 2e 20 54 68 69 | >.bytes.to.undefined.memory..Thi |
| 11f80 | 73 20 69 73 20 74 6f 20 63 61 74 63 68 0a 20 20 20 20 20 20 62 75 67 73 20 65 61 72 6c 79 2c 20 | s.is.to.catch.......bugs.early,. |
| 11fa0 | 61 6e 64 20 74 6f 20 68 65 6c 70 20 64 65 74 65 63 74 20 75 73 65 20 6f 66 20 75 6e 64 65 66 69 | and.to.help.detect.use.of.undefi |
| 11fc0 | 6e 65 64 20 6d 65 6d 6f 72 79 20 69 6e 20 61 20 64 65 62 75 67 67 65 72 2e 0a 20 20 20 20 20 20 | ned.memory.in.a.debugger........ |
| 11fe0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | </p>............................ |
| 12000 | 20 3c 68 31 20 69 64 3d 22 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | .<h1.id="Variables"><a.href="#to |
| 12020 | 63 2d 56 61 72 69 61 62 6c 65 73 22 3e 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c | c-Variables">Variables</a>.<a.cl |
| 12040 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f | ass="hdr".href="#Variables">..</ |
| 12060 | 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 76 61 72 69 61 | a></h1>........<p>.......A.varia |
| 12080 | 62 6c 65 20 69 73 20 61 20 75 6e 69 74 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 | ble.is.a.unit.of.<a.href="#Memor |
| 120a0 | 79 22 3e 4d 65 6d 6f 72 79 3c 2f 61 3e 20 73 74 6f 72 61 67 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | y">Memory</a>.storage........</p |
| 120c0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 56 61 72 69 61 62 6c 65 73 20 61 72 65 20 | >.......<p>.......Variables.are. |
| 120e0 | 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 20 74 6f 20 73 68 61 64 6f 77 20 69 64 65 6e 74 69 66 69 | never.allowed.to.shadow.identifi |
| 12100 | 65 72 73 20 66 72 6f 6d 20 61 6e 20 6f 75 74 65 72 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 3c | ers.from.an.outer.scope........< |
| 12120 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 67 65 6e 65 72 61 | /p>.......<p>.......It.is.genera |
| 12140 | 6c 6c 79 20 70 72 65 66 65 72 61 62 6c 65 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 | lly.preferable.to.use.<code.clas |
| 12160 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 12180 | 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 61 74 68 65 72 20 74 68 61 6e 0a 20 20 20 | st</span></code>.rather.than.... |
| 121a0 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...<code.class="zig"><span.class |
| 121c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 65 6e | ="tok-kw">var</span></code>.when |
| 121e0 | 20 64 65 63 6c 61 72 69 6e 67 20 61 20 76 61 72 69 61 62 6c 65 2e 20 54 68 69 73 20 63 61 75 73 | .declaring.a.variable..This.caus |
| 12200 | 65 73 20 6c 65 73 73 20 77 6f 72 6b 20 66 6f 72 20 62 6f 74 68 0a 20 20 20 20 20 20 68 75 6d 61 | es.less.work.for.both.......huma |
| 12220 | 6e 73 20 61 6e 64 20 63 6f 6d 70 75 74 65 72 73 20 74 6f 20 64 6f 20 77 68 65 6e 20 72 65 61 64 | ns.and.computers.to.do.when.read |
| 12240 | 69 6e 67 20 63 6f 64 65 2c 20 61 6e 64 20 63 72 65 61 74 65 73 20 6d 6f 72 65 20 6f 70 74 69 6d | ing.code,.and.creates.more.optim |
| 12260 | 69 7a 61 74 69 6f 6e 20 6f 70 70 6f 72 74 75 6e 69 74 69 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | ization.opportunities........</p |
| 12280 | 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d | >.......<h2.id="Container-Level- |
| 122a0 | 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6e 74 61 69 6e | Variables"><a.href="#toc-Contain |
| 122c0 | 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6e 74 61 69 6e 65 72 20 4c 65 | er-Level-Variables">Container.Le |
| 122e0 | 76 65 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | vel.Variables</a>.<a.class="hdr" |
| 12300 | 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 | .href="#Container-Level-Variable |
| 12320 | 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | s">..</a></h2>........<p>....... |
| 12340 | 43 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 73 20 68 61 76 65 20 73 | Container.level.variables.have.s |
| 12360 | 74 61 74 69 63 20 6c 69 66 65 74 69 6d 65 20 61 6e 64 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 | tatic.lifetime.and.are.order-ind |
| 12380 | 65 70 65 6e 64 65 6e 74 20 61 6e 64 20 6c 61 7a 69 6c 79 20 61 6e 61 6c 79 7a 65 64 2e 0a 20 20 | ependent.and.lazily.analyzed.... |
| 123a0 | 20 20 20 20 54 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 76 61 6c 75 65 20 6f 66 20 | ....The.initialization.value.of. |
| 123c0 | 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 73 20 69 73 20 69 6d 70 | container.level.variables.is.imp |
| 123e0 | 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 | licitly.......<a.href="#comptime |
| 12400 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2e 20 49 66 20 61 20 63 6f 6e 74 61 69 6e 65 72 20 6c | ">comptime</a>..If.a.container.l |
| 12420 | 65 76 65 6c 20 76 61 72 69 61 62 6c 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | evel.variable.is.<code.class="zi |
| 12440 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 12460 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 68 65 6e 20 69 74 73 20 76 61 6c 75 65 20 69 73 0a 20 20 | pan></code>.then.its.value.is... |
| 12480 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ....<code.class="zig"><span.clas |
| 124a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | s="tok-kw">comptime</span></code |
| 124c0 | 3e 2d 6b 6e 6f 77 6e 2c 20 6f 74 68 65 72 77 69 73 65 20 69 74 20 69 73 20 72 75 6e 74 69 6d 65 | >-known,.otherwise.it.is.runtime |
| 124e0 | 2d 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | -known........</p>.......<p.clas |
| 12500 | 73 3d 22 66 69 6c 65 22 3e 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 62 6c | s="file">container_level_variabl |
| 12520 | 65 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | es.zig</p><pre><code.class="zig" |
| 12540 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | ><span.class="tok-kw">var</span> |
| 12560 | 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | .y:.<span.class="tok-type">i32</ |
| 12580 | 73 70 61 6e 3e 20 3d 20 61 64 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | span>.=.add(<span.class="tok-num |
| 125a0 | 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 78 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">10</span>,.x);.<span.class= |
| 125c0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.x:.<span.c |
| 125e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 61 64 64 | lass="tok-type">i32</span>.=.add |
| 12600 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 | (<span.class="tok-number">12</sp |
| 12620 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 34 | an>,.<span.class="tok-number">34 |
| 12640 | 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | </span>);..<span.class="tok-kw"> |
| 12660 | 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | test</span>.<span.class="tok-str |
| 12680 | 22 3e 26 71 75 6f 74 3b 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 | ">"container.level.variable |
| 126a0 | 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | s"</span>.{.....<span.class |
| 126c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 20 3d 3d | ="tok-kw">try</span>.expect(x.== |
| 126e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 36 3c 2f 73 70 | .<span.class="tok-number">46</sp |
| 12700 | 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>);.....<span.class="tok-kw">t |
| 12720 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ry</span>.expect(y.==.<span.clas |
| 12740 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 | s="tok-number">56</span>);.}..<s |
| 12760 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 | pan.class="tok-kw">fn</span>.<sp |
| 12780 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 61 3a 20 | an.class="tok-fn">add</span>(a:. |
| 127a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">i32</span |
| 127c0 | 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | >,.b:.<span.class="tok-type">i32 |
| 127e0 | 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | </span>).<span.class="tok-type"> |
| 12800 | 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | i32</span>.{.....<span.class="to |
| 12820 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 0a 0a 3c 73 | k-kw">return</span>.a.+.b;.}..<s |
| 12840 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 12860 | 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | std.=.<span.class="tok-builtin"> |
| 12880 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| 128a0 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 | str">"std"</span>);.<s |
| 128c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 128e0 | 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 3c 2f 63 6f | expect.=.std.testing.expect;</co |
| 12900 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 12920 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 | ">$.zig.test.container_level_var |
| 12940 | 69 61 62 6c 65 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 | iables.zig.Test.[1/1].test." |
| 12960 | 3b 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 73 26 71 75 6f 74 3b | ;container.level.variables" |
| 12980 | 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 | ......All.1.tests.passed..</code |
| 129a0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 74 61 69 6e | ></pre>........<p>.......Contain |
| 129c0 | 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 73 20 6d 61 79 20 62 65 20 64 65 63 6c 61 72 | er.level.variables.may.be.declar |
| 129e0 | 65 64 20 69 6e 73 69 64 65 20 61 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 | ed.inside.a.<a.href="#struct">st |
| 12a00 | 72 75 63 74 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e | ruct</a>,.<a.href="#union">union |
| 12a20 | 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 | </a>,.or.<a.href="#enum">enum</a |
| 12a40 | 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | >:.......</p>.......<p.class="fi |
| 12a60 | 6c 65 22 3e 6e 61 6d 65 73 70 61 63 65 64 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 | le">namespaced_container_level_v |
| 12a80 | 61 72 69 61 62 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ariable.zig</p><pre><code.class= |
| 12aa0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | "zig"><span.class="tok-kw">const |
| 12ac0 | 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | </span>.std.=.<span.class="tok-b |
| 12ae0 | 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | uiltin">@import</span>(<span.cla |
| 12b00 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 | ss="tok-str">"std"</sp |
| 12b20 | 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | an>);.<span.class="tok-kw">const |
| 12b40 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 | </span>.expect.=.std.testing.exp |
| 12b60 | 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | ect;..<span.class="tok-kw">test< |
| 12b80 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>.<span.class="tok-str">&qu |
| 12ba0 | 6f 74 3b 6e 61 6d 65 73 70 61 63 65 64 20 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 | ot;namespaced.container.level.va |
| 12bc0 | 72 69 61 62 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | riable"</span>.{.....<span. |
| 12be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 12c00 | 28 66 6f 6f 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | (foo().==.<span.class="tok-numbe |
| 12c20 | 72 22 3e 31 32 33 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | r">1235</span>);.....<span.class |
| 12c40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 | ="tok-kw">try</span>.expect(foo( |
| 12c60 | 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | ).==.<span.class="tok-number">12 |
| 12c80 | 33 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 36</span>);.}..<span.class="tok- |
| 12ca0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.S.=.<span.class |
| 12cc0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ="tok-kw">struct</span>.{.....<s |
| 12ce0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a | pan.class="tok-kw">var</span>.x: |
| 12d00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 | .<span.class="tok-type">i32</spa |
| 12d20 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | n>.=.<span.class="tok-number">12 |
| 12d40 | 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 34</span>;.};..<span.class="tok- |
| 12d60 | 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 | kw">fn</span>.<span.class="tok-f |
| 12d80 | 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n">foo</span>().<span.class="tok |
| 12da0 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 53 2e 78 20 2b 3d 20 3c | -type">i32</span>.{.....S.x.+=.< |
| 12dc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e | span.class="tok-number">1</span> |
| 12de0 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 | ;.....<span.class="tok-kw">retur |
| 12e00 | 6e 3c 2f 73 70 61 6e 3e 20 53 2e 78 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | n</span>.S.x;.}</code></pre><pre |
| 12e20 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| 12e40 | 6e 61 6d 65 73 70 61 63 65 64 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 | namespaced_container_level_varia |
| 12e60 | 62 6c 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 61 | ble.zig.Test.[1/1].test."na |
| 12e80 | 6d 65 73 70 61 63 65 64 20 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c | mespaced.container.level.variabl |
| 12ea0 | 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | e"......All.1.tests.passed. |
| 12ec0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 | .</code></pre>................<h |
| 12ee0 | 32 20 69 64 3d 22 53 74 61 74 69 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 | 2.id="Static-Local-Variables"><a |
| 12f00 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 61 74 69 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c | .href="#toc-Static-Local-Variabl |
| 12f20 | 65 73 22 3e 53 74 61 74 69 63 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c | es">Static.Local.Variables</a>.< |
| 12f40 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 61 74 69 63 2d 4c 6f 63 61 | a.class="hdr".href="#Static-Loca |
| 12f60 | 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | l-Variables">..</a></h2>........ |
| 12f80 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 74 20 69 73 20 61 6c 73 6f 20 70 6f 73 73 69 62 6c 65 20 | <p>.........It.is.also.possible. |
| 12fa0 | 74 6f 20 68 61 76 65 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20 77 69 74 68 20 73 74 61 | to.have.local.variables.with.sta |
| 12fc0 | 74 69 63 20 6c 69 66 65 74 69 6d 65 20 62 79 20 75 73 69 6e 67 20 63 6f 6e 74 61 69 6e 65 72 73 | tic.lifetime.by.using.containers |
| 12fe0 | 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | .inside.functions........</p>... |
| 13000 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 61 74 69 63 5f 6c 6f 63 61 6c | ....<p.class="file">static_local |
| 13020 | 5f 76 61 72 69 61 62 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | _variable.zig</p><pre><code.clas |
| 13040 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 13060 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| 13080 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 130a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 130c0 | 73 70 61 6e 3e 29 3b 0a 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | span>);...<span.class="tok-kw">c |
| 130e0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 | onst</span>.expect.=.std.testing |
| 13100 | 2e 65 78 70 65 63 74 3b 0a 20 20 0a 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .expect;......<span.class="tok-k |
| 13120 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | w">test</span>.<span.class="tok- |
| 13140 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 61 74 69 63 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 | str">"static.local.variable |
| 13160 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | "</span>.{.......<span.clas |
| 13180 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 6f 6f | s="tok-kw">try</span>.expect(foo |
| 131a0 | 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | ().==.<span.class="tok-number">1 |
| 131c0 | 32 33 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 235</span>);.......<span.class=" |
| 131e0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 29 20 | tok-kw">try</span>.expect(foo(). |
| 13200 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 36 | ==.<span.class="tok-number">1236 |
| 13220 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 7d 0a 20 20 0a 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>);...}......<span.class=" |
| 13240 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 13260 | 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-fn">foo</span>().<span.class= |
| 13280 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 3c 73 | "tok-type">i32</span>.{.......<s |
| 132a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 132c0 | 53 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c | S.=.<span.class="tok-kw">struct< |
| 132e0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.{...........<span.class=" |
| 13300 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.x:.<span.clas |
| 13320 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 | s="tok-type">i32</span>.=.<span. |
| 13340 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a | class="tok-number">1234</span>;. |
| 13360 | 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 53 2e 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ......};.......S.x.+=.<span.clas |
| 13380 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 3c | s="tok-number">1</span>;.......< |
| 133a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e | span.class="tok-kw">return</span |
| 133c0 | 3e 20 53 2e 78 3b 0a 20 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | >.S.x;...}</code></pre><pre><cod |
| 133e0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 74 61 74 69 | e.class="shell">$.zig.test.stati |
| 13400 | 63 5f 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 | c_local_variable.zig.Test.[1/1]. |
| 13420 | 74 65 73 74 20 26 71 75 6f 74 3b 73 74 61 74 69 63 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 | test."static.local.variable |
| 13440 | 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | "......All.1.tests.passed.. |
| 13460 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | </code></pre>........<p>.......T |
| 13480 | 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | he.<code.class="zig"><span.class |
| 134a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b | ="tok-kw">extern</span></code>.k |
| 134c0 | 65 79 77 6f 72 64 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 22 3e 40 65 78 74 | eyword.or.<a.href="#extern">@ext |
| 134e0 | 65 72 6e 3c 2f 61 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 | ern</a>.builtin.function.can.be. |
| 13500 | 75 73 65 64 20 74 6f 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20 61 20 76 61 72 69 61 62 6c 65 20 | used.to.link.against.a.variable. |
| 13520 | 74 68 61 74 20 69 73 20 65 78 70 6f 72 74 65 64 0a 20 20 20 20 20 20 66 72 6f 6d 20 61 6e 6f 74 | that.is.exported.......from.anot |
| 13540 | 68 65 72 20 6f 62 6a 65 63 74 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | her.object..The.<code.class="zig |
| 13560 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 | "><span.class="tok-kw">export</s |
| 13580 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 | pan></code>.keyword.or.<a.href=" |
| 135a0 | 23 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e | #export">@export</a>.builtin.fun |
| 135c0 | 63 74 69 6f 6e 0a 20 20 20 20 20 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 6b 65 20 | ction.......can.be.used.to.make. |
| 135e0 | 61 20 76 61 72 69 61 62 6c 65 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 6f 74 68 65 72 20 6f 62 | a.variable.available.to.other.ob |
| 13600 | 6a 65 63 74 73 20 61 74 20 6c 69 6e 6b 20 74 69 6d 65 2e 20 49 6e 20 62 6f 74 68 20 63 61 73 65 | jects.at.link.time..In.both.case |
| 13620 | 73 2c 0a 20 20 20 20 20 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c | s,.......the.type.of.the.variabl |
| 13640 | 65 20 6d 75 73 74 20 62 65 20 43 20 41 42 49 20 63 6f 6d 70 61 74 69 62 6c 65 2e 0a 20 20 20 20 | e.must.be.C.ABI.compatible...... |
| 13660 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | ..</p>.......<p>See.also:</p><ul |
| 13680 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 | >.<li><a.href="#Exporting-a-C-Li |
| 136a0 | 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e | brary">Exporting.a.C.Library</a> |
| 136c0 | 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 | </li>.</ul>................<h2.i |
| 136e0 | 64 3d 22 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 | d="Thread-Local-Variables"><a.hr |
| 13700 | 65 66 3d 22 23 74 6f 63 2d 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 | ef="#toc-Thread-Local-Variables" |
| 13720 | 3e 54 68 72 65 61 64 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 | >Thread.Local.Variables</a>.<a.c |
| 13740 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 | lass="hdr".href="#Thread-Local-V |
| 13760 | 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | ariables">..</a></h2>........<p> |
| 13780 | 41 20 76 61 72 69 61 62 6c 65 20 6d 61 79 20 62 65 20 73 70 65 63 69 66 69 65 64 20 74 6f 20 62 | A.variable.may.be.specified.to.b |
| 137a0 | 65 20 61 20 74 68 72 65 61 64 2d 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 75 73 69 6e 67 20 | e.a.thread-local.variable.using. |
| 137c0 | 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | the.......<code.class="zig"><spa |
| 137e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f 73 70 | n.class="tok-kw">threadlocal</sp |
| 13800 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | an></code>.keyword:</p>.......<p |
| 13820 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 6c 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | .class="file">tls.zig</p><pre><c |
| 13840 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 13860 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.std.=.<span.cl |
| 13880 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 138a0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 138c0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | "</span>);.<span.class="tok |
| 138e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 64 2e 64 | -kw">const</span>.assert.=.std.d |
| 13900 | 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ebug.assert;..<span.class="tok-k |
| 13920 | 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | w">threadlocal</span>.<span.clas |
| 13940 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 | s="tok-kw">var</span>.x:.<span.c |
| 13960 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">i32</span>.=.<sp |
| 13980 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e | an.class="tok-number">1234</span |
| 139a0 | 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | >;..<span.class="tok-kw">test</s |
| 139c0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 139e0 | 3b 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 73 74 6f 72 61 67 65 26 71 75 6f 74 3b 3c 2f 73 70 61 | ;thread.local.storage"</spa |
| 13a00 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | n>.{.....<span.class="tok-kw">co |
| 13a20 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 68 72 65 61 64 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | nst</span>.thread1.=.<span.class |
| 13a40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 54 68 72 65 61 64 2e | ="tok-kw">try</span>.std.Thread. |
| 13a60 | 73 70 61 77 6e 28 74 65 73 74 54 6c 73 2c 20 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | spawn(testTls,.{});.....<span.cl |
| 13a80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 68 72 65 61 64 | ass="tok-kw">const</span>.thread |
| 13aa0 | 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | 2.=.<span.class="tok-kw">try</sp |
| 13ac0 | 61 6e 3e 20 73 74 64 2e 54 68 72 65 61 64 2e 73 70 61 77 6e 28 74 65 73 74 54 6c 73 2c 20 7b 7d | an>.std.Thread.spawn(testTls,.{} |
| 13ae0 | 29 3b 0a 20 20 20 20 74 65 73 74 54 6c 73 28 7b 7d 29 3b 0a 20 20 20 20 74 68 72 65 61 64 31 2e | );.....testTls({});.....thread1. |
| 13b00 | 77 61 69 74 28 29 3b 0a 20 20 20 20 74 68 72 65 61 64 32 2e 77 61 69 74 28 29 3b 0a 7d 0a 0a 3c | wait();.....thread2.wait();.}..< |
| 13b20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 13b40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 54 6c 73 3c 2f 73 70 61 6e | pan.class="tok-fn">testTls</span |
| 13b60 | 3e 28 63 6f 6e 74 65 78 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | >(context:.<span.class="tok-type |
| 13b80 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">void</span>).<span.class="tok- |
| 13ba0 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 78 | type">void</span>.{.....assert(x |
| 13bc0 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 | .==.<span.class="tok-number">123 |
| 13be0 | 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 4</span>);.....x.+=.<span.class= |
| 13c00 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 | "tok-number">1</span>;.....asser |
| 13c20 | 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | t(x.==.<span.class="tok-number"> |
| 13c40 | 31 32 33 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | 1235</span>);.}</code></pre><pre |
| 13c60 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| 13c80 | 74 6c 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 68 | tls.zig.Test.[1/1].test."th |
| 13ca0 | 72 65 61 64 20 6c 6f 63 61 6c 20 73 74 6f 72 61 67 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c | read.local.storage"......Al |
| 13cc0 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 13ce0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 53 | .......<p>.......For.<a.href="#S |
| 13d00 | 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e 53 69 6e 67 6c 65 20 54 68 | ingle-Threaded-Builds">Single.Th |
| 13d20 | 72 65 61 64 65 64 20 42 75 69 6c 64 73 3c 2f 61 3e 2c 20 61 6c 6c 20 74 68 72 65 61 64 20 6c 6f | readed.Builds</a>,.all.thread.lo |
| 13d40 | 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 74 72 65 61 74 65 64 20 61 73 20 72 65 67 | cal.variables.are.treated.as.reg |
| 13d60 | 75 6c 61 72 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 | ular.<a.href="#Container-Level-V |
| 13d80 | 61 72 69 61 62 6c 65 73 22 3e 43 6f 6e 74 61 69 6e 65 72 20 4c 65 76 65 6c 20 56 61 72 69 61 62 | ariables">Container.Level.Variab |
| 13da0 | 6c 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | les</a>........</p>.......<p>... |
| 13dc0 | 20 20 20 20 54 68 72 65 61 64 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20 6d 61 79 20 6e | ....Thread.local.variables.may.n |
| 13de0 | 6f 74 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ot.be.<code.class="zig"><span.cl |
| 13e00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-kw">const</span></code> |
| 13e20 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 | ........</p>...............<h2.i |
| 13e40 | 64 3d 22 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | d="Local-Variables"><a.href="#to |
| 13e60 | 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c | c-Local-Variables">Local.Variabl |
| 13e80 | 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4c 6f 63 | es</a>.<a.class="hdr".href="#Loc |
| 13ea0 | 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | al-Variables">..</a></h2>....... |
| 13ec0 | 20 3c 70 3e 0a 20 20 20 20 20 20 4c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20 6f 63 63 75 72 | .<p>.......Local.variables.occur |
| 13ee0 | 20 69 6e 73 69 64 65 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e | .inside.<a.href="#Functions">Fun |
| 13f00 | 63 74 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e | ctions</a>,.<a.href="#comptime"> |
| 13f20 | 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 62 6c 6f 63 6b 73 2c 20 61 6e 64 20 3c 61 20 68 72 65 66 | comptime</a>.blocks,.and.<a.href |
| 13f40 | 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 20 62 6c 6f 63 6b 73 2e | ="#cImport">@cImport</a>.blocks. |
| 13f60 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e | .......</p>.......<p>.......When |
| 13f80 | 20 61 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .a.local.variable.is.<code.class |
| 13fa0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 13fc0 | 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 69 74 20 6d 65 61 6e 73 20 74 68 61 74 20 61 | t</span></code>,.it.means.that.a |
| 13fe0 | 66 74 65 72 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 2c 20 74 68 65 20 76 61 72 69 61 62 6c | fter.initialization,.the.variabl |
| 14000 | 65 27 73 0a 20 20 20 20 20 20 76 61 6c 75 65 20 77 69 6c 6c 20 6e 6f 74 20 63 68 61 6e 67 65 2e | e's.......value.will.not.change. |
| 14020 | 20 49 66 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 76 61 6c 75 65 20 6f 66 20 | .If.the.initialization.value.of. |
| 14040 | 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | a.<code.class="zig"><span.class= |
| 14060 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 72 | "tok-kw">const</span></code>.var |
| 14080 | 69 61 62 6c 65 20 69 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d | iable.is.......<a.href="#comptim |
| 140a0 | 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 2c 20 74 68 65 6e 20 74 68 65 20 | e">comptime</a>-known,.then.the. |
| 140c0 | 76 61 72 69 61 62 6c 65 20 69 73 20 61 6c 73 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | variable.is.also.<code.class="zi |
| 140e0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | g"><span.class="tok-kw">comptime |
| 14100 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2d 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | </span></code>-known........</p> |
| 14120 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c | .......<p>.......A.local.variabl |
| 14140 | 65 20 6d 61 79 20 62 65 20 71 75 61 6c 69 66 69 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 | e.may.be.qualified.with.the.<cod |
| 14160 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 14180 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 | w">comptime</span></code>.keywor |
| 141a0 | 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 0a 20 20 20 20 20 20 74 68 65 20 76 61 72 69 61 62 6c | d..This.causes.......the.variabl |
| 141c0 | 65 27 73 20 76 61 6c 75 65 20 74 6f 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | e's.value.to.be.<code.class="zig |
| 141e0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | "><span.class="tok-kw">comptime< |
| 14200 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2d 6b 6e 6f 77 6e 2c 20 61 6e 64 20 61 6c 6c 20 6c 6f 61 | /span></code>-known,.and.all.loa |
| 14220 | 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 6f 66 20 74 68 65 0a 20 20 20 20 20 20 76 61 72 69 61 | ds.and.stores.of.the.......varia |
| 14240 | 62 6c 65 20 74 6f 20 68 61 70 70 65 6e 20 64 75 72 69 6e 67 20 73 65 6d 61 6e 74 69 63 20 61 6e | ble.to.happen.during.semantic.an |
| 14260 | 61 6c 79 73 69 73 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 20 72 61 74 68 65 72 20 74 68 | alysis.of.the.program,.rather.th |
| 14280 | 61 6e 20 61 74 20 72 75 6e 74 69 6d 65 2e 0a 20 20 20 20 20 20 41 6c 6c 20 76 61 72 69 61 62 6c | an.at.runtime........All.variabl |
| 142a0 | 65 73 20 64 65 63 6c 61 72 65 64 20 69 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | es.declared.in.a.<code.class="zi |
| 142c0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | g"><span.class="tok-kw">comptime |
| 142e0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 61 72 65 20 69 6d | </span></code>.expression.are.im |
| 14300 | 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | plicitly.......<code.class="zig" |
| 14320 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | ><span.class="tok-kw">comptime</ |
| 14340 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 72 69 61 62 6c 65 73 2e 0a 20 20 20 20 20 20 3c 2f | span></code>.variables........</ |
| 14360 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 70 74 69 6d | p>.......<p.class="file">comptim |
| 14380 | 65 5f 76 61 72 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | e_vars.zig</p><pre><code.class=" |
| 143a0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 143c0 | 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | /span>.std.=.<span.class="tok-bu |
| 143e0 | 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | iltin">@import</span>(<span.clas |
| 14400 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 | s="tok-str">"std"</spa |
| 14420 | 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | n>);.<span.class="tok-kw">const< |
| 14440 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 | /span>.expect.=.std.testing.expe |
| 14460 | 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ct;..<span.class="tok-kw">test</ |
| 14480 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| 144a0 | 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 72 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | t;comptime.vars"</span>.{.. |
| 144c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 | ...<span.class="tok-kw">var</spa |
| 144e0 | 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | n>.x:.<span.class="tok-type">i32 |
| 14500 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | </span>.=.<span.class="tok-numbe |
| 14520 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">1</span>;.....<span.class="to |
| 14540 | 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">comptime</span>.<span.clas |
| 14560 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 | s="tok-kw">var</span>.y:.<span.c |
| 14580 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">i32</span>.=.<sp |
| 145a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a | an.class="tok-number">1</span>;. |
| 145c0 | 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .....x.+=.<span.class="tok-numbe |
| 145e0 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | r">1</span>;.....y.+=.<span.clas |
| 14600 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 | s="tok-number">1</span>;......<s |
| 14620 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 | pan.class="tok-kw">try</span>.ex |
| 14640 | 70 65 63 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | pect(x.==.<span.class="tok-numbe |
| 14660 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r">2</span>);.....<span.class="t |
| 14680 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 | ok-kw">try</span>.expect(y.==.<s |
| 146a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">2</span>) |
| 146c0 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f | ;......<span.class="tok-kw">if</ |
| 146e0 | 73 70 61 6e 3e 20 28 79 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | span>.(y.!=.<span.class="tok-num |
| 14700 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ber">2</span>).{.........<span.c |
| 14720 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 63 6f 6d 70 69 | lass="tok-comment">//.This.compi |
| 14740 | 6c 65 20 65 72 72 6f 72 20 6e 65 76 65 72 20 74 72 69 67 67 65 72 73 20 62 65 63 61 75 73 65 20 | le.error.never.triggers.because. |
| 14760 | 79 20 69 73 20 61 20 63 6f 6d 70 74 69 6d 65 20 76 61 72 69 61 62 6c 65 2c 3c 2f 73 70 61 6e 3e | y.is.a.comptime.variable,</span> |
| 14780 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | .........<span.class="tok-commen |
| 147a0 | 74 22 3e 2f 2f 20 61 6e 64 20 73 6f 20 60 79 20 21 3d 20 32 60 20 69 73 20 61 20 63 6f 6d 70 74 | t">//.and.so.`y.!=.2`.is.a.compt |
| 147c0 | 69 6d 65 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 69 73 20 69 66 20 69 73 20 73 74 61 74 69 63 | ime.value,.and.this.if.is.static |
| 147e0 | 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c | ally.evaluated.</span>.........< |
| 14800 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c | span.class="tok-builtin">@compil |
| 14820 | 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | eError</span>(<span.class="tok-s |
| 14840 | 74 72 22 3e 26 71 75 6f 74 3b 77 72 6f 6e 67 20 79 20 76 61 6c 75 65 26 71 75 6f 74 3b 3c 2f 73 | tr">"wrong.y.value"</s |
| 14860 | 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | pan>);.....}.}</code></pre><pre> |
| 14880 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 | <code.class="shell">$.zig.test.c |
| 148a0 | 6f 6d 70 74 69 6d 65 5f 76 61 72 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 | omptime_vars.zig.Test.[1/1].test |
| 148c0 | 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 72 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a | ."comptime.vars"...... |
| 148e0 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.1.tests.passed..</code></pre |
| 14900 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 | >.......................<h1.id=" |
| 14920 | 49 6e 74 65 67 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 74 65 67 65 72 73 | Integers"><a.href="#toc-Integers |
| 14940 | 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | ">Integers</a>.<a.class="hdr".hr |
| 14960 | 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 | ef="#Integers">..</a></h1>...... |
| 14980 | 20 20 3c 68 32 20 69 64 3d 22 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 | ..<h2.id="Integer-Literals"><a.h |
| 149a0 | 72 65 66 3d 22 23 74 6f 63 2d 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e 49 6e 74 65 | ref="#toc-Integer-Literals">Inte |
| 149c0 | 67 65 72 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | ger.Literals</a>.<a.class="hdr". |
| 149e0 | 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c | href="#Integer-Literals">..</a>< |
| 14a00 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 14a20 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 14a40 | 70 61 6e 3e 20 64 65 63 69 6d 61 6c 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.decimal_int.=.<span.class=" |
| 14a60 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 38 32 32 32 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 | tok-number">98222</span>;.<span. |
| 14a80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 78 5f | class="tok-kw">const</span>.hex_ |
| 14aa0 | 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | int.=.<span.class="tok-number">0 |
| 14ac0 | 78 66 66 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | xff</span>;.<span.class="tok-kw" |
| 14ae0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 68 65 78 5f 69 6e 74 20 3d 20 | >const</span>.another_hex_int.=. |
| 14b00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 46 46 3c 2f 73 | <span.class="tok-number">0xFF</s |
| 14b20 | 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | pan>;.<span.class="tok-kw">const |
| 14b40 | 3c 2f 73 70 61 6e 3e 20 6f 63 74 61 6c 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>.octal_int.=.<span.class= |
| 14b60 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 6f 37 35 35 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e | "tok-number">0o755</span>;.<span |
| 14b80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 6e | .class="tok-kw">const</span>.bin |
| 14ba0 | 61 72 79 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ary_int.=.<span.class="tok-numbe |
| 14bc0 | 72 22 3e 30 62 31 31 31 31 30 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | r">0b11110000</span>;..<span.cla |
| 14be0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 75 6e 64 65 72 73 63 6f 72 65 73 20 | ss="tok-comment">//.underscores. |
| 14c00 | 6d 61 79 20 62 65 20 70 6c 61 63 65 64 20 62 65 74 77 65 65 6e 20 74 77 6f 20 64 69 67 69 74 73 | may.be.placed.between.two.digits |
| 14c20 | 20 61 73 20 61 20 76 69 73 75 61 6c 20 73 65 70 61 72 61 74 6f 72 3c 2f 73 70 61 6e 3e 0a 3c 73 | .as.a.visual.separator</span>.<s |
| 14c40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 14c60 | 6f 6e 65 5f 62 69 6c 6c 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | one_billion.=.<span.class="tok-n |
| 14c80 | 75 6d 62 65 72 22 3e 31 5f 30 30 30 5f 30 30 30 5f 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 | umber">1_000_000_000</span>;.<sp |
| 14ca0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 | an.class="tok-kw">const</span>.b |
| 14cc0 | 69 6e 61 72 79 5f 6d 61 73 6b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | inary_mask.=.<span.class="tok-nu |
| 14ce0 | 6d 62 65 72 22 3e 30 62 31 5f 31 31 31 31 5f 31 31 31 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | mber">0b1_1111_1111</span>;.<spa |
| 14d00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 65 | n.class="tok-kw">const</span>.pe |
| 14d20 | 72 6d 69 73 73 69 6f 6e 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | rmissions.=.<span.class="tok-num |
| 14d40 | 62 65 72 22 3e 30 6f 37 5f 35 5f 35 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ber">0o7_5_5</span>;.<span.class |
| 14d60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 67 5f 61 64 64 72 65 | ="tok-kw">const</span>.big_addre |
| 14d80 | 73 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 | ss.=.<span.class="tok-number">0x |
| 14da0 | 46 46 38 30 5f 30 30 30 30 5f 30 30 30 30 5f 30 30 30 30 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 | FF80_0000_0000_0000</span>;</cod |
| 14dc0 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 75 | e></pre>..............<h2.id="Ru |
| 14de0 | 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ntime-Integer-Values"><a.href="# |
| 14e00 | 74 6f 63 2d 52 75 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 3e 52 75 6e 74 | toc-Runtime-Integer-Values">Runt |
| 14e20 | 69 6d 65 20 49 6e 74 65 67 65 72 20 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ime.Integer.Values</a>.<a.class= |
| 14e40 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 75 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c | "hdr".href="#Runtime-Integer-Val |
| 14e60 | 75 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ues">..</a></h2>........<p>..... |
| 14e80 | 20 20 49 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 6e 6f 20 73 69 7a 65 20 | ..Integer.literals.have.no.size. |
| 14ea0 | 6c 69 6d 69 74 61 74 69 6f 6e 2c 20 61 6e 64 20 69 66 20 61 6e 79 20 75 6e 64 65 66 69 6e 65 64 | limitation,.and.if.any.undefined |
| 14ec0 | 20 62 65 68 61 76 69 6f 72 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6d 70 | .behavior.occurs,.......the.comp |
| 14ee0 | 69 6c 65 72 20 63 61 74 63 68 65 73 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | iler.catches.it........</p>..... |
| 14f00 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 6f 6e 63 65 20 61 6e 20 69 6e 74 | ..<p>.......However,.once.an.int |
| 14f20 | 65 67 65 72 20 76 61 6c 75 65 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 6b 6e 6f 77 6e 20 61 74 | eger.value.is.no.longer.known.at |
| 14f40 | 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 69 74 20 6d 75 73 74 20 68 61 76 65 20 61 0a 20 20 | .compile-time,.it.must.have.a... |
| 14f60 | 20 20 20 20 6b 6e 6f 77 6e 20 73 69 7a 65 2c 20 61 6e 64 20 69 73 20 76 75 6c 6e 65 72 61 62 6c | ....known.size,.and.is.vulnerabl |
| 14f80 | 65 20 74 6f 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c | e.to.undefined.behavior........< |
| 14fa0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | /p>.......<pre><code.class="zig" |
| 14fc0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | ><span.class="tok-kw">fn</span>. |
| 14fe0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 69 76 69 64 65 3c 2f 73 70 61 | <span.class="tok-fn">divide</spa |
| 15000 | 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | n>(a:.<span.class="tok-type">i32 |
| 15020 | 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>,.b:.<span.class="tok-typ |
| 15040 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">i32</span>).<span.class="tok- |
| 15060 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | type">i32</span>.{.....<span.cla |
| 15080 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2f 20 62 3b | ss="tok-kw">return</span>.a./.b; |
| 150a0 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | .}</code></pre>.......<p>....... |
| 150c0 | 49 6e 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 76 61 6c 75 65 73 20 3c 63 6f 64 65 20 63 | In.this.function,.values.<code.c |
| 150e0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c | lass="zig">a</code>.and.<code.cl |
| 15100 | 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 61 72 65 20 6b 6e 6f 77 6e 20 6f 6e 6c | ass="zig">b</code>.are.known.onl |
| 15120 | 79 20 61 74 20 72 75 6e 74 69 6d 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 75 73 20 74 68 69 | y.at.runtime,.......and.thus.thi |
| 15140 | 73 20 64 69 76 69 73 69 6f 6e 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 76 75 6c 6e 65 72 61 62 | s.division.operation.is.vulnerab |
| 15160 | 6c 65 20 74 6f 20 62 6f 74 68 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4f 76 65 | le.to.both.<a.href="#Integer-Ove |
| 15180 | 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 61 6e 64 0a | rflow">Integer.Overflow</a>.and. |
| 151a0 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f | ......<a.href="#Division-by-Zero |
| 151c0 | 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f | ">Division.by.Zero</a>........</ |
| 151e0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 70 65 72 61 74 6f 72 73 20 73 75 63 | p>.......<p>.......Operators.suc |
| 15200 | 68 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2b 3c 2f 63 6f 64 65 3e 20 | h.as.<code.class="zig">+</code>. |
| 15220 | 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 2f 63 6f 64 65 3e 20 63 | and.<code.class="zig">-</code>.c |
| 15240 | 61 75 73 65 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 6f 6e 0a 20 20 20 20 20 | ause.undefined.behavior.on...... |
| 15260 | 20 20 20 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 2e 20 41 6c 73 6f 20 | .........integer.overflow..Also. |
| 15280 | 61 76 61 69 6c 61 62 6c 65 20 61 72 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 73 75 63 68 20 61 73 | available.are.operations.such.as |
| 152a0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2b 25 3c 2f 63 6f 64 65 3e 20 61 6e 64 | .<code.class="zig">+%</code>.and |
| 152c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...................<code.class=" |
| 152e0 | 7a 69 67 22 3e 2d 25 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 61 72 65 20 64 65 66 69 6e 65 64 | zig">-%</code>.which.are.defined |
| 15300 | 20 74 6f 20 68 61 76 65 20 77 72 61 70 70 69 6e 67 20 61 72 69 74 68 6d 65 74 69 63 20 6f 6e 20 | .to.have.wrapping.arithmetic.on. |
| 15320 | 61 6c 6c 20 74 61 72 67 65 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | all.targets........</p>.......<p |
| 15340 | 3e 0a 20 20 20 20 20 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 61 72 62 69 74 72 61 72 79 20 62 | >.......Zig.supports.arbitrary.b |
| 15360 | 69 74 2d 77 69 64 74 68 20 69 6e 74 65 67 65 72 73 2c 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 | it-width.integers,.referenced.by |
| 15380 | 20 75 73 69 6e 67 0a 20 20 20 20 20 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 6f 66 20 3c 63 | .using.......an.identifier.of.<c |
| 153a0 | 6f 64 65 3e 69 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 75 3c 2f 63 6f 64 65 3e 20 66 | ode>i</code>.or.<code>u</code>.f |
| 153c0 | 6f 6c 6c 6f 77 65 64 20 62 79 20 64 69 67 69 74 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 | ollowed.by.digits..For.example,. |
| 153e0 | 74 68 65 20 69 64 65 6e 74 69 66 69 65 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | the.identifier.......<code.class |
| 15400 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 37 | ="zig"><span.class="tok-type">i7 |
| 15420 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 61 20 73 69 67 6e 65 | </span></code>.refers.to.a.signe |
| 15440 | 64 20 37 2d 62 69 74 20 69 6e 74 65 67 65 72 2e 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 61 6c 6c | d.7-bit.integer..The.maximum.all |
| 15460 | 6f 77 65 64 20 62 69 74 2d 77 69 64 74 68 20 6f 66 20 61 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 | owed.bit-width.of.an.......integ |
| 15480 | 65 72 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | er.type.is.<code.class="zig"><sp |
| 154a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 35 35 33 35 3c 2f 73 70 61 | an.class="tok-number">65535</spa |
| 154c0 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 | n></code>........</p>.......<p>S |
| 154e0 | 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 57 | ee.also:</p><ul>.<li><a.href="#W |
| 15500 | 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 57 72 61 70 70 69 6e 67 20 4f 70 65 | rapping-Operations">Wrapping.Ope |
| 15520 | 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 | rations</a></li>.</ul>.......... |
| 15540 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 46 6c 6f 61 74 73 22 3e 3c 61 20 68 | ............<h1.id="Floats"><a.h |
| 15560 | 72 65 66 3d 22 23 74 6f 63 2d 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 3c 61 20 | ref="#toc-Floats">Floats</a>.<a. |
| 15580 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e c2 a7 3c 2f 61 | class="hdr".href="#Floats">..</a |
| 155a0 | 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 68 61 73 20 74 68 65 20 66 6f 6c | ></h1>........<p>Zig.has.the.fol |
| 155c0 | 6c 6f 77 69 6e 67 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 74 79 70 65 73 3a 3c 2f 70 3e | lowing.floating.point.types:</p> |
| 155e0 | 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 | .......<ul>...........<li><code. |
| 15600 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | class="zig"><span.class="tok-typ |
| 15620 | 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d | e">f16</span></code>.-.IEEE-754- |
| 15640 | 32 30 30 38 20 62 69 6e 61 72 79 31 36 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | 2008.binary16</li>...........<li |
| 15660 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 15680 | 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 | tok-type">f32</span></code>.-.IE |
| 156a0 | 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 33 32 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | EE-754-2008.binary32</li>....... |
| 156c0 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<li><code.class="zig"><span. |
| 156e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-type">f64</span></cod |
| 15700 | 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 36 34 3c 2f 6c 69 3e | e>.-.IEEE-754-2008.binary64</li> |
| 15720 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ...........<li><code.class="zig" |
| 15740 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 | ><span.class="tok-type">f128</sp |
| 15760 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 | an></code>.-.IEEE-754-2008.binar |
| 15780 | 79 31 32 38 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c | y128</li>...........<li><code.cl |
| 157a0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| 157c0 | 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6d 61 | >c_longdouble</span></code>.-.ma |
| 157e0 | 74 63 68 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 20 64 6f 75 62 6c | tches.<code.class="c">long.doubl |
| 15800 | 65 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 43 20 41 42 49 3c 2f 6c | e</code>.for.the.target.C.ABI</l |
| 15820 | 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 6c 6f | i>.......</ul>.......<h2.id="Flo |
| 15840 | 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 6c 6f 61 74 | at-Literals"><a.href="#toc-Float |
| 15860 | 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 | -Literals">Float.Literals</a>.<a |
| 15880 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 2d 4c 69 74 65 72 61 | .class="hdr".href="#Float-Litera |
| 158a0 | 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ls">..</a></h2>........<p>...... |
| 158c0 | 20 46 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 74 79 70 65 20 3c 63 6f 64 65 20 | .Float.literals.have.type.<code. |
| 158e0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | class="zig"><span.class="tok-typ |
| 15900 | 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | e">comptime_float</span></code>. |
| 15920 | 77 68 69 63 68 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 0a 20 20 20 20 | which.is.guaranteed.to.have..... |
| 15940 | 20 20 74 68 65 20 73 61 6d 65 20 70 72 65 63 69 73 69 6f 6e 20 61 6e 64 20 6f 70 65 72 61 74 69 | ..the.same.precision.and.operati |
| 15960 | 6f 6e 73 20 6f 66 20 74 68 65 20 6c 61 72 67 65 73 74 20 6f 74 68 65 72 20 66 6c 6f 61 74 69 6e | ons.of.the.largest.other.floatin |
| 15980 | 67 20 70 6f 69 6e 74 20 74 79 70 65 2c 20 77 68 69 63 68 20 69 73 0a 20 20 20 20 20 20 3c 63 6f | g.point.type,.which.is.......<co |
| 159a0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 159c0 | 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | type">f128</span></code>........ |
| 159e0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6c 6f 61 74 20 6c 69 74 65 72 | </p>.......<p>.......Float.liter |
| 15a00 | 61 6c 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 | als.<a.href="#Type-Coercion">coe |
| 15a20 | 72 63 65 3c 2f 61 3e 20 74 6f 20 61 6e 79 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 74 79 | rce</a>.to.any.floating.point.ty |
| 15a40 | 70 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 6f 20 61 6e 79 20 3c 61 20 68 72 65 66 3d 22 23 49 | pe,.......and.to.any.<a.href="#I |
| 15a60 | 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 74 79 70 65 20 77 68 65 6e 20 74 | ntegers">integer</a>.type.when.t |
| 15a80 | 68 65 72 65 20 69 73 20 6e 6f 20 66 72 61 63 74 69 6f 6e 61 6c 20 63 6f 6d 70 6f 6e 65 6e 74 2e | here.is.no.fractional.component. |
| 15aa0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .......</p>.......<pre><code.cla |
| 15ac0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| 15ae0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 | nst</span>.floating_point.=.<spa |
| 15b00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 45 2b 37 37 3c 2f | n.class="tok-number">123.0E+77</ |
| 15b20 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | span>;.<span.class="tok-kw">cons |
| 15b40 | 74 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 | t</span>.another_float.=.<span.c |
| 15b60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 3c 2f 73 70 61 6e 3e 3b 0a | lass="tok-number">123.0</span>;. |
| 15b80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 15ba0 | 3e 20 79 65 74 5f 61 6e 6f 74 68 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.yet_another.=.<span.class="tok |
| 15bc0 | 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 65 2b 37 37 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 | -number">123.0e+77</span>;..<spa |
| 15be0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 | n.class="tok-kw">const</span>.he |
| 15c00 | 78 5f 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | x_floating_point.=.<span.class=" |
| 15c20 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 70 2d 35 3c 2f 73 70 61 6e 3e 3b 0a | tok-number">0x103.70p-5</span>;. |
| 15c40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 15c60 | 3e 20 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >.another_hex_float.=.<span.clas |
| 15c80 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 3c 2f 73 70 61 6e 3e 3b 0a | s="tok-number">0x103.70</span>;. |
| 15ca0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 15cc0 | 3e 20 79 65 74 5f 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 | >.yet_another_hex_float.=.<span. |
| 15ce0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 50 2d 35 3c 2f | class="tok-number">0x103.70P-5</ |
| 15d00 | 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | span>;..<span.class="tok-comment |
| 15d20 | 22 3e 2f 2f 20 75 6e 64 65 72 73 63 6f 72 65 73 20 6d 61 79 20 62 65 20 70 6c 61 63 65 64 20 62 | ">//.underscores.may.be.placed.b |
| 15d40 | 65 74 77 65 65 6e 20 74 77 6f 20 64 69 67 69 74 73 20 61 73 20 61 20 76 69 73 75 61 6c 20 73 65 | etween.two.digits.as.a.visual.se |
| 15d60 | 70 61 72 61 74 6f 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | parator</span>.<span.class="tok- |
| 15d80 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 67 68 74 73 70 65 65 64 20 3d 20 3c 73 | kw">const</span>.lightspeed.=.<s |
| 15da0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 39 39 5f 37 39 32 5f 34 | pan.class="tok-number">299_792_4 |
| 15dc0 | 35 38 2e 30 30 30 5f 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 58.000_000</span>;.<span.class=" |
| 15de0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6e 6f 73 65 63 6f 6e 64 20 | tok-kw">const</span>.nanosecond. |
| 15e00 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 30 30 | =.<span.class="tok-number">0.000 |
| 15e20 | 5f 30 30 30 5f 30 30 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | _000_001</span>;.<span.class="to |
| 15e40 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 72 65 5f 68 65 78 20 3d 20 3c 73 | k-kw">const</span>.more_hex.=.<s |
| 15e60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 33 34 5f 35 36 | pan.class="tok-number">0x1234_56 |
| 15e80 | 37 38 2e 39 41 42 43 5f 43 44 45 46 70 2d 31 30 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c | 78.9ABC_CDEFp-10</span>;</code>< |
| 15ea0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 6e | /pre>.......<p>.......There.is.n |
| 15ec0 | 6f 20 73 79 6e 74 61 78 20 66 6f 72 20 4e 61 4e 2c 20 69 6e 66 69 6e 69 74 79 2c 20 6f 72 20 6e | o.syntax.for.NaN,.infinity,.or.n |
| 15ee0 | 65 67 61 74 69 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 46 6f 72 20 74 68 65 73 65 20 73 70 65 63 | egative.infinity..For.these.spec |
| 15f00 | 69 61 6c 20 76 61 6c 75 65 73 2c 0a 20 20 20 20 20 20 6f 6e 65 20 6d 75 73 74 20 75 73 65 20 74 | ial.values,.......one.must.use.t |
| 15f20 | 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | he.standard.library:.......</p>. |
| 15f40 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 15f60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 | an.class="tok-kw">const</span>.s |
| 15f80 | 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | td.=.<span.class="tok-builtin">@ |
| 15fa0 | 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | import</span>(<span.class="tok-s |
| 15fc0 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 | tr">"std"</span>);..<s |
| 15fe0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 16000 | 69 6e 66 20 3d 20 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | inf.=.std.math.inf(<span.class=" |
| 16020 | 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 | tok-type">f32</span>);.<span.cla |
| 16040 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 65 67 61 74 69 76 | ss="tok-kw">const</span>.negativ |
| 16060 | 65 5f 69 6e 66 20 3d 20 2d 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 61 6e 20 63 6c 61 73 | e_inf.=.-std.math.inf(<span.clas |
| 16080 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 | s="tok-type">f64</span>);.<span. |
| 160a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6e 20 | class="tok-kw">const</span>.nan. |
| 160c0 | 3d 20 73 74 64 2e 6d 61 74 68 2e 6e 61 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | =.std.math.nan(<span.class="tok- |
| 160e0 | 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | type">f128</span>);</code></pre> |
| 16100 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 6c 6f 61 74 69 6e 67 2d 50 | ..............<h2.id="Floating-P |
| 16120 | 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 | oint-Operations"><a.href="#toc-F |
| 16140 | 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 69 | loating-Point-Operations">Floati |
| 16160 | 6e 67 20 50 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | ng.Point.Operations</a>.<a.class |
| 16180 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 | ="hdr".href="#Floating-Point-Ope |
| 161a0 | 72 61 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 42 | rations">..</a></h2>........<p>B |
| 161c0 | 79 20 64 65 66 61 75 6c 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 | y.default.floating.point.operati |
| 161e0 | 6f 6e 73 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 53 74 72 69 63 74 | ons.use.<code.class="zig">Strict |
| 16200 | 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 62 75 74 20 79 6f 75 20 | </code>.mode,...........but.you. |
| 16220 | 63 61 6e 20 73 77 69 74 63 68 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | can.switch.to.<code.class="zig"> |
| 16240 | 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 20 6f 6e 20 61 20 70 65 72 2d 62 | Optimized</code>.mode.on.a.per-b |
| 16260 | 6c 6f 63 6b 20 62 61 73 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | lock.basis:</p>.......<p.class=" |
| 16280 | 66 69 6c 65 22 3e 66 6f 6f 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | file">foo.zig</p><pre><code.clas |
| 162a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 162c0 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| 162e0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 16300 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 16320 | 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | span>);.<span.class="tok-kw">con |
| 16340 | 73 74 3c 2f 73 70 61 6e 3e 20 62 69 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.big.=.<span.class="tok |
| 16360 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | -builtin">@as</span>(<span.class |
| 16380 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-type">f64</span>,.<span.cl |
| 163a0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 26 6c | ass="tok-number">1</span>.<&l |
| 163c0 | 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 30 3c 2f | t;.<span.class="tok-number">40</ |
| 163e0 | 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 | span>);..<span.class="tok-kw">ex |
| 16400 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | port</span>.<span.class="tok-kw" |
| 16420 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e | >fn</span>.<span.class="tok-fn"> |
| 16440 | 66 6f 6f 5f 73 74 72 69 63 74 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | foo_strict</span>(x:.<span.class |
| 16460 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | ="tok-type">f64</span>).<span.cl |
| 16480 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ass="tok-type">f64</span>.{..... |
| 164a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 | <span.class="tok-kw">return</spa |
| 164c0 | 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 67 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | n>.x.+.big.-.big;.}..<span.class |
| 164e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">export</span>.<span.cl |
| 16500 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| 16520 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 61 6e 3e | ss="tok-fn">foo_optimized</span> |
| 16540 | 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f | (x:.<span.class="tok-type">f64</ |
| 16560 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 | span>).<span.class="tok-type">f6 |
| 16580 | 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 4</span>.{.....<span.class="tok- |
| 165a0 | 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 73 70 61 6e 3e 28 2e 4f | builtin">@setFloatMode</span>(.O |
| 165c0 | 70 74 69 6d 69 7a 65 64 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ptimized);.....<span.class="tok- |
| 165e0 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 67 3b | kw">return</span>.x.+.big.-.big; |
| 16600 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 16620 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 66 6f 6f 2e 7a 69 67 20 | "shell">$.zig.build-obj.foo.zig. |
| 16640 | 2d 4f 20 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | -O.ReleaseFast</code></pre>..... |
| 16660 | 20 20 20 3c 70 3e 46 6f 72 20 74 68 69 73 20 74 65 73 74 20 77 65 20 68 61 76 65 20 74 6f 20 73 | ...<p>For.this.test.we.have.to.s |
| 16680 | 65 70 61 72 61 74 65 20 63 6f 64 65 20 69 6e 74 6f 20 74 77 6f 20 6f 62 6a 65 63 74 20 66 69 6c | eparate.code.into.two.object.fil |
| 166a0 | 65 73 20 2d 0a 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 20 6f 70 74 69 6d 69 7a | es.-.......otherwise.the.optimiz |
| 166c0 | 65 72 20 66 69 67 75 72 65 73 20 6f 75 74 20 61 6c 6c 20 74 68 65 20 76 61 6c 75 65 73 20 61 74 | er.figures.out.all.the.values.at |
| 166e0 | 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 6f 70 65 72 61 | .compile-time,.......which.opera |
| 16700 | 74 65 73 20 69 6e 20 73 74 72 69 63 74 20 6d 6f 64 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | tes.in.strict.mode.</p>.......<p |
| 16720 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f 6d 6f 64 65 2e 7a 69 67 3c 2f 70 3e | .class="file">float_mode.zig</p> |
| 16740 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 16760 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d | ss="tok-kw">const</span>.print.= |
| 16780 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f | .<span.class="tok-builtin">@impo |
| 167a0 | 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | rt</span>(<span.class="tok-str"> |
| 167c0 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 | "std"</span>).debug.pr |
| 167e0 | 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 | int;..<span.class="tok-kw">exter |
| 16800 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | n</span>.<span.class="tok-kw">fn |
| 16820 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f | </span>.<span.class="tok-fn">foo |
| 16840 | 5f 73 74 72 69 63 74 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _strict</span>(x:.<span.class="t |
| 16860 | 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">f64</span>).<span.class |
| 16880 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c | ="tok-type">f64</span>;.<span.cl |
| 168a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | ass="tok-kw">extern</span>.<span |
| 168c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | .class="tok-kw">fn</span>.<span. |
| 168e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 | class="tok-fn">foo_optimized</sp |
| 16900 | 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 | an>(x:.<span.class="tok-type">f6 |
| 16920 | 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | 4</span>).<span.class="tok-type" |
| 16940 | 3e 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >f64</span>;..<span.class="tok-k |
| 16960 | 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | w">pub</span>.<span.class="tok-k |
| 16980 | 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e | w">fn</span>.<span.class="tok-fn |
| 169a0 | 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">main</span>().<span.class="tok |
| 169c0 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| 169e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c | lass="tok-kw">const</span>.x.=.< |
| 16a00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 30 31 3c 2f 73 | span.class="tok-number">0.001</s |
| 16a20 | 70 61 6e 3e 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>;.....print(<span.class="tok |
| 16a40 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6d 69 7a 65 64 20 3d 20 7b 7d 5c 6e 26 71 75 6f | -str">"optimized.=.{}\n&quo |
| 16a60 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 28 78 29 7d 29 3b | t;</span>,..{foo_optimized(x)}); |
| 16a80 | 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | .....print(<span.class="tok-str" |
| 16aa0 | 3e 26 71 75 6f 74 3b 73 74 72 69 63 74 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | >"strict.=.{}\n"</span |
| 16ac0 | 3e 2c 20 2e 7b 66 6f 6f 5f 73 74 72 69 63 74 28 78 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | >,..{foo_strict(x)});.}</code></ |
| 16ae0 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 16b00 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 66 6c 6f 61 74 5f 6d 6f 64 65 2e 7a 69 67 20 66 6f 6f 2e | ig.build-exe.float_mode.zig.foo. |
| 16b20 | 6f 0a 24 20 2e 2f 66 6c 6f 61 74 5f 6d 6f 64 65 0a 6f 70 74 69 6d 69 7a 65 64 20 3d 20 31 2e 30 | o.$../float_mode.optimized.=.1.0 |
| 16b40 | 65 2d 30 33 0a 73 74 72 69 63 74 20 3d 20 39 2e 37 36 35 36 32 35 65 2d 30 34 0a 3c 2f 63 6f 64 | e-03.strict.=.9.765625e-04.</cod |
| 16b60 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e | e></pre>........<p>See.also:</p> |
| 16b80 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 | <ul>.<li><a.href="#setFloatMode" |
| 16ba0 | 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | >@setFloatMode</a></li>.<li><a.h |
| 16bc0 | 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e | ref="#Division-by-Zero">Division |
| 16be0 | 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a | .by.Zero</a></li>.</ul>......... |
| 16c00 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 4f 70 65 72 61 74 6f 72 73 22 3e | .............<h1.id="Operators"> |
| 16c20 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f | <a.href="#toc-Operators">Operato |
| 16c40 | 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 70 65 | rs</a>.<a.class="hdr".href="#Ope |
| 16c60 | 72 61 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | rators">..</a></h1>........<p>.. |
| 16c80 | 20 20 20 20 20 54 68 65 72 65 20 69 73 20 6e 6f 20 6f 70 65 72 61 74 6f 72 20 6f 76 65 72 6c 6f | .....There.is.no.operator.overlo |
| 16ca0 | 61 64 69 6e 67 2e 20 57 68 65 6e 20 79 6f 75 20 73 65 65 20 61 6e 20 6f 70 65 72 61 74 6f 72 20 | ading..When.you.see.an.operator. |
| 16cc0 | 69 6e 20 5a 69 67 2c 20 79 6f 75 20 6b 6e 6f 77 20 74 68 61 74 0a 20 20 20 20 20 20 69 74 20 69 | in.Zig,.you.know.that.......it.i |
| 16ce0 | 73 20 64 6f 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 66 72 6f 6d 20 74 68 69 73 20 74 61 62 6c | s.doing.something.from.this.tabl |
| 16d00 | 65 2c 20 61 6e 64 20 6e 6f 74 68 69 6e 67 20 65 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | e,.and.nothing.else........</p>. |
| 16d20 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 | ......<h2.id="Table-of-Operators |
| 16d40 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f | "><a.href="#toc-Table-of-Operato |
| 16d60 | 72 73 22 3e 54 61 62 6c 65 20 6f 66 20 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c | rs">Table.of.Operators</a>.<a.cl |
| 16d80 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 | ass="hdr".href="#Table-of-Operat |
| 16da0 | 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 | ors">..</a></h2>........<div.cla |
| 16dc0 | 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 | ss="table-wrapper">.......<table |
| 16de0 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 | >.........<tr>...........<th>... |
| 16e00 | 20 20 20 20 20 20 20 20 20 20 53 79 6e 74 61 78 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e | ..........Syntax...........</th> |
| 16e20 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 52 65 6c 65 | ...........<th>.............Rele |
| 16e40 | 76 61 6e 74 20 54 79 70 65 73 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 | vant.Types...........</th>...... |
| 16e60 | 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f | .....<th>.............Descriptio |
| 16e80 | 6e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e | n...........</th>...........<th> |
| 16ea0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 78 61 6d 70 6c 65 0a 20 20 20 20 20 20 20 20 20 20 3c | .............Example...........< |
| 16ec0 | 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a | /th>.........</tr>.........<tr>. |
| 16ee0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ..........<td><pre><code.class=" |
| 16f00 | 7a 69 67 22 3e 61 20 2b 20 62 0a 61 20 2b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | zig">a.+.b.a.+=.b</code></pre></ |
| 16f20 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | td>...........<td>.............< |
| 16f40 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ul>...............<li><a.href="# |
| 16f60 | 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | Integers">Integers</a></li>..... |
| 16f80 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e | ..........<li><a.href="#Floats"> |
| 16fa0 | 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | Floats</a></li>.............</ul |
| 16fc0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | >...........</td>...........<td> |
| 16fe0 | 41 64 64 69 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | Addition..............<ul>...... |
| 17000 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 | .........<li>Can.cause.<a.href=" |
| 17020 | 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 | #Default-Operations">overflow</a |
| 17040 | 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | >.for.integers.</li>............ |
| 17060 | 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 | ...<li>Invokes.<a.href="#Peer-Ty |
| 17080 | 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 | pe-Resolution">Peer.Type.Resolut |
| 170a0 | 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 | ion</a>.for.the.operands.</li>.. |
| 170c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 | .............<li>See.also.<a.hre |
| 170e0 | 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 64 57 69 74 68 4f 76 65 | f="#addWithOverflow">@addWithOve |
| 17100 | 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | rflow</a>.</li>.............</ul |
| 17120 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | >...........</td>...........<td> |
| 17140 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .............<pre><code.class="z |
| 17160 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | ig"><span.class="tok-number">2</ |
| 17180 | 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | span>.+.<span.class="tok-number" |
| 171a0 | 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | >5</span>.==.<span.class="tok-nu |
| 171c0 | 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | mber">7</span></code></pre>..... |
| 171e0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| 17200 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ..<tr>...........<td><pre><code. |
| 17220 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2b 25 20 62 0a 61 20 2b 25 3d 20 62 3c 2f 63 6f 64 65 | class="zig">a.+%.b.a.+%=.b</code |
| 17240 | 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | ></pre></td>...........<td>..... |
| 17260 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ........<ul>...............<li>< |
| 17280 | 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c | a.href="#Integers">Integers</a>< |
| 172a0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | /li>.............</ul>.......... |
| 172c0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 6e 67 20 41 64 | .</td>...........<td>Wrapping.Ad |
| 172e0 | 64 69 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | dition..............<ul>........ |
| 17300 | 20 20 20 20 20 20 20 3c 6c 69 3e 47 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 20 74 77 | .......<li>Guaranteed.to.have.tw |
| 17320 | 6f 73 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e | os-complement.wrapping.behavior. |
| 17340 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 | </li>...............<li>Invokes. |
| 17360 | 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e | <a.href="#Peer-Type-Resolution"> |
| 17380 | 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 | Peer.Type.Resolution</a>.for.the |
| 173a0 | 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | .operands.</li>...............<l |
| 173c0 | 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 | i>See.also.<a.href="#addWithOver |
| 173e0 | 66 6c 6f 77 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e | flow">@addWithOverflow</a>.</li> |
| 17400 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | .............</ul>...........</t |
| 17420 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 | d>...........<td>.............<p |
| 17440 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 17460 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ="tok-builtin">@as</span>(<span. |
| 17480 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 73 74 64 | class="tok-type">u32</span>,.std |
| 174a0 | 2e 6d 61 74 68 2e 6d 61 78 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .math.maxInt(<span.class="tok-ty |
| 174c0 | 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 29 20 2b 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">u32</span>)).+%.<span.class= |
| 174e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 | "tok-number">1</span>.==.<span.c |
| 17500 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-number">0</span></code |
| 17520 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ></pre>...........</td>......... |
| 17540 | 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | </tr>.........<tr>...........<td |
| 17560 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2d 20 62 0a 61 20 | ><pre><code.class="zig">a.-.b.a. |
| 17580 | 2d 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | -=.b</code></pre></td>.......... |
| 175a0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | .<td>.............<ul>.......... |
| 175c0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 | .....<li><a.href="#Integers">Int |
| 175e0 | 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | egers</a></li>...............<li |
| 17600 | 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c | ><a.href="#Floats">Floats</a></l |
| 17620 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | i>.............</ul>...........< |
| 17640 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 75 62 74 72 61 63 74 69 6f 6e 2e 0a | /td>...........<td>Subtraction.. |
| 17660 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ............<ul>...............< |
| 17680 | 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f | li>Can.cause.<a.href="#Default-O |
| 176a0 | 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 | perations">overflow</a>.for.inte |
| 176c0 | 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 | gers.</li>...............<li>Inv |
| 176e0 | 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 | okes.<a.href="#Peer-Type-Resolut |
| 17700 | 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f | ion">Peer.Type.Resolution</a>.fo |
| 17720 | 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | r.the.operands.</li>............ |
| 17740 | 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 | ...<li>See.also.<a.href="#subWit |
| 17760 | 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e | hOverflow">@subWithOverflow</a>. |
| 17780 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 | </li>.............</ul>......... |
| 177a0 | 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | ..</td>...........<td>.......... |
| 177c0 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 177e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 2d 20 3c 73 | class="tok-number">2</span>.-.<s |
| 17800 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-number">5</span>. |
| 17820 | 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f | ==.-<span.class="tok-number">3</ |
| 17840 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | span></code></pre>...........</t |
| 17860 | 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | d>.........</tr>.........<tr>... |
| 17880 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ........<td><pre><code.class="zi |
| 178a0 | 67 22 3e 61 20 2d 25 20 62 0a 61 20 2d 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | g">a.-%.b.a.-%=.b</code></pre></ |
| 178c0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | td>...........<td>.............< |
| 178e0 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ul>...............<li><a.href="# |
| 17900 | 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | Integers">Integers</a></li>..... |
| 17920 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | ........</ul>...........</td>... |
| 17940 | 20 20 20 20 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 6e 67 20 53 75 62 74 72 61 63 74 69 6f 6e | ........<td>Wrapping.Subtraction |
| 17960 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..............<ul>.............. |
| 17980 | 20 3c 6c 69 3e 47 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 20 74 77 6f 73 2d 63 6f 6d | .<li>Guaranteed.to.have.twos-com |
| 179a0 | 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a | plement.wrapping.behavior.</li>. |
| 179c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 | ..............<li>Invokes.<a.hre |
| 179e0 | 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 | f="#Peer-Type-Resolution">Peer.T |
| 17a00 | 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 | ype.Resolution</a>.for.the.opera |
| 17a20 | 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 | nds.</li>...............<li>See. |
| 17a40 | 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | also.<a.href="#subWithOverflow"> |
| 17a60 | 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | @subWithOverflow</a>.</li>...... |
| 17a80 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | .......</ul>...........</td>.... |
| 17aa0 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | .......<td>.............<pre><co |
| 17ac0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 17ae0 | 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | builtin">@as</span>(<span.class= |
| 17b00 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">u32</span>,.<span.cla |
| 17b20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 2d 25 20 3c 73 70 | ss="tok-number">0</span>).-%.<sp |
| 17b40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-number">1</span>.= |
| 17b60 | 3d 20 73 74 64 2e 6d 61 74 68 2e 6d 61 78 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | =.std.math.maxInt(<span.class="t |
| 17b80 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ok-type">u32</span>)</code></pre |
| 17ba0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | >...........</td>.........</tr>. |
| 17bc0 | 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e | ........<tr>...........<td><pre> |
| 17be0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | <code.class="zig">-a</code></pre |
| 17c00 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ></td>...........<td>........... |
| 17c20 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | ..<ul>...............<li><a.href |
| 17c40 | 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ="#Integers">Integers</a></li>.. |
| 17c60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | .............<li><a.href="#Float |
| 17c80 | 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | s">Floats</a></li>.............< |
| 17ca0 | 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | /ul>...........</td>...........< |
| 17cc0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4e 65 67 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 | td>.............Negation........ |
| 17ce0 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e | ......<ul>...............<li>Can |
| 17d00 | 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 | .cause.<a.href="#Default-Operati |
| 17d20 | 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c | ons">overflow</a>.for.integers.< |
| 17d40 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | /li>.............</ul>.......... |
| 17d60 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| 17d80 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 73 70 61 6e 20 | ..<pre><code.class="zig">-<span. |
| 17da0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c | class="tok-number">1</span>.==.< |
| 17dc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e | span.class="tok-number">0</span> |
| 17de0 | 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | .-.<span.class="tok-number">1</s |
| 17e00 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | pan></code></pre>...........</td |
| 17e20 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 | >.........</tr>.........<tr>.... |
| 17e40 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .......<td><pre><code.class="zig |
| 17e60 | 22 3e 2d 25 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ">-%a</code></pre></td>......... |
| 17e80 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | ..<td>.............<ul>......... |
| 17ea0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e | ......<li><a.href="#Integers">In |
| 17ec0 | 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | tegers</a></li>.............</ul |
| 17ee0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | >...........</td>...........<td> |
| 17f00 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 57 72 61 70 70 69 6e 67 20 4e 65 67 61 74 69 6f 6e 2e 0a | .............Wrapping.Negation.. |
| 17f20 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ............<ul>...............< |
| 17f40 | 6c 69 3e 47 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 20 74 77 6f 73 2d 63 6f 6d 70 6c | li>Guaranteed.to.have.twos-compl |
| 17f60 | 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 | ement.wrapping.behavior.</li>... |
| 17f80 | 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | ..........</ul>...........</td>. |
| 17fa0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e | ..........<td>.............<pre> |
| 17fc0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 25 3c 73 70 61 6e 20 63 6c 61 73 73 3d | <code.class="zig">-%<span.class= |
| 17fe0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | "tok-builtin">@as</span>(<span.c |
| 18000 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 73 74 64 2e | lass="tok-type">i32</span>,.std. |
| 18020 | 6d 61 74 68 2e 6d 69 6e 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | math.minInt(<span.class="tok-typ |
| 18040 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 20 3d 3d 20 73 74 64 2e 6d 61 74 68 2e 6d 69 6e 49 | e">i32</span>)).==.std.math.minI |
| 18060 | 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | nt(<span.class="tok-type">i32</s |
| 18080 | 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | pan>)</code></pre>...........</t |
| 180a0 | 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | d>.........</tr>.........<tr>... |
| 180c0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ........<td><pre><code.class="zi |
| 180e0 | 67 22 3e 61 20 2a 20 62 0a 61 20 2a 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | g">a.*.b.a.*=.b</code></pre></td |
| 18100 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c | >...........<td>.............<ul |
| 18120 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e | >...............<li><a.href="#In |
| 18140 | 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | tegers">Integers</a></li>....... |
| 18160 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c | ........<li><a.href="#Floats">Fl |
| 18180 | 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | oats</a></li>.............</ul>. |
| 181a0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4d 75 | ..........</td>...........<td>Mu |
| 181c0 | 6c 74 69 70 6c 69 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | ltiplication..............<ul>.. |
| 181e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 | .............<li>Can.cause.<a.hr |
| 18200 | 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f | ef="#Default-Operations">overflo |
| 18220 | 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | w</a>.for.integers.</li>........ |
| 18240 | 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 | .......<li>Invokes.<a.href="#Pee |
| 18260 | 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 | r-Type-Resolution">Peer.Type.Res |
| 18280 | 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c | olution</a>.for.the.operands.</l |
| 182a0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 | i>...............<li>See.also.<a |
| 182c0 | 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 | .href="#mulWithOverflow">@mulWit |
| 182e0 | 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | hOverflow</a>.</li>............. |
| 18300 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | </ul>...........</td>........... |
| 18320 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| 18340 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | s="zig"><span.class="tok-number" |
| 18360 | 3e 32 3c 2f 73 70 61 6e 3e 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >2</span>.*.<span.class="tok-num |
| 18380 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ber">5</span>.==.<span.class="to |
| 183a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | k-number">10</span></code></pre> |
| 183c0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | ...........</td>.........</tr>.. |
| 183e0 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c | .......<tr>...........<td><pre>< |
| 18400 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2a 25 20 62 0a 61 20 2a 25 3d 20 62 3c | code.class="zig">a.*%.b.a.*%=.b< |
| 18420 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | /code></pre></td>...........<td> |
| 18440 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .............<ul>............... |
| 18460 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 | <li><a.href="#Integers">Integers |
| 18480 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | </a></li>.............</ul>..... |
| 184a0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 | ......</td>...........<td>Wrappi |
| 184c0 | 6e 67 20 4d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | ng.Multiplication..............< |
| 184e0 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 47 75 61 72 61 6e 74 65 65 64 | ul>...............<li>Guaranteed |
| 18500 | 20 74 6f 20 68 61 76 65 20 74 77 6f 73 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e | .to.have.twos-complement.wrappin |
| 18520 | 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | g.behavior.</li>...............< |
| 18540 | 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 | li>Invokes.<a.href="#Peer-Type-R |
| 18560 | 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c | esolution">Peer.Type.Resolution< |
| 18580 | 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | /a>.for.the.operands.</li>...... |
| 185a0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 | .........<li>See.also.<a.href="# |
| 185c0 | 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f | mulWithOverflow">@mulWithOverflo |
| 185e0 | 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | w</a>.</li>.............</ul>... |
| 18600 | 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 | ........</td>...........<td>.... |
| 18620 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .........<pre><code.class="zig"> |
| 18640 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 | <span.class="tok-builtin">@as</s |
| 18660 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | pan>(<span.class="tok-type">u8</ |
| 18680 | 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | span>,.<span.class="tok-number"> |
| 186a0 | 32 30 30 3c 2f 73 70 61 6e 3e 29 20 2a 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 200</span>).*%.<span.class="tok- |
| 186c0 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">2</span>.==.<span.class= |
| 186e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 34 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | "tok-number">144</span></code></ |
| 18700 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | pre>...........</td>.........</t |
| 18720 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 | r>.........<tr>...........<td><p |
| 18740 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2f 20 62 0a 61 20 2f 3d 20 | re><code.class="zig">a./.b.a./=. |
| 18760 | 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | b</code></pre></td>...........<t |
| 18780 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | d>.............<ul>............. |
| 187a0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 | ..<li><a.href="#Integers">Intege |
| 187c0 | 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | rs</a></li>...............<li><a |
| 187e0 | 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | .href="#Floats">Floats</a></li>. |
| 18800 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | ............</ul>...........</td |
| 18820 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 44 69 76 69 73 69 6f 6e 2e 0a 20 20 20 20 20 20 | >...........<td>Division........ |
| 18840 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e | ......<ul>...............<li>Can |
| 18860 | 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 | .cause.<a.href="#Default-Operati |
| 18880 | 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c | ons">overflow</a>.for.integers.< |
| 188a0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 | /li>...............<li>Can.cause |
| 188c0 | 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 | .<a.href="#Division-by-Zero">Div |
| 188e0 | 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c | ision.by.Zero</a>.for.integers.< |
| 18900 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 | /li>...............<li>Can.cause |
| 18920 | 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 | .<a.href="#Division-by-Zero">Div |
| 18940 | 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 66 6f 72 20 66 6c 6f 61 74 73 20 69 6e 20 | ision.by.Zero</a>.for.floats.in. |
| 18960 | 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 | <a.href="#Floating-Point-Operati |
| 18980 | 6f 6e 73 22 3e 46 6c 6f 61 74 4d 6f 64 65 2e 4f 70 74 69 6d 69 7a 65 64 20 4d 6f 64 65 3c 2f 61 | ons">FloatMode.Optimized.Mode</a |
| 189a0 | 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 69 67 6e 65 64 | >.</li>...............<li>Signed |
| 189c0 | 20 69 6e 74 65 67 65 72 20 6f 70 65 72 61 6e 64 73 20 6d 75 73 74 20 62 65 20 63 6f 6d 70 74 69 | .integer.operands.must.be.compti |
| 189e0 | 6d 65 2d 6b 6e 6f 77 6e 20 61 6e 64 20 70 6f 73 69 74 69 76 65 2e 20 49 6e 20 6f 74 68 65 72 20 | me-known.and.positive..In.other. |
| 18a00 | 63 61 73 65 73 2c 20 75 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 | cases,.use.................<a.hr |
| 18a20 | 65 66 3d 22 23 64 69 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 2c 0a 20 20 | ef="#divTrunc">@divTrunc</a>,... |
| 18a40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 | ..............<a.href="#divFloor |
| 18a60 | 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ">@divFloor</a>,.or............. |
| 18a80 | 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 | ....<a.href="#divExact">@divExac |
| 18aa0 | 74 3c 2f 61 3e 20 69 6e 73 74 65 61 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c | t</a>.instead................</l |
| 18ac0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 | i>...............<li>Invokes.<a. |
| 18ae0 | 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 | href="#Peer-Type-Resolution">Pee |
| 18b00 | 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 | r.Type.Resolution</a>.for.the.op |
| 18b20 | 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | erands.</li>.............</ul>.. |
| 18b40 | 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | .........</td>...........<td>... |
| 18b60 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..........<pre><code.class="zig" |
| 18b80 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 | ><span.class="tok-number">10</sp |
| 18ba0 | 61 6e 3e 20 2f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 | an>./.<span.class="tok-number">5 |
| 18bc0 | 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | </span>.==.<span.class="tok-numb |
| 18be0 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | er">2</span></code></pre>....... |
| 18c00 | 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | ....</td>.........</tr>......... |
| 18c20 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | <tr>...........<td><pre><code.cl |
| 18c40 | 61 73 73 3d 22 7a 69 67 22 3e 61 20 25 20 62 0a 61 20 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 | ass="zig">a.%.b.a.%=.b</code></p |
| 18c60 | 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 | re></td>...........<td>......... |
| 18c80 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | ....<ul>...............<li><a.hr |
| 18ca0 | 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e | ef="#Integers">Integers</a></li> |
| 18cc0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f | ...............<li><a.href="#Flo |
| 18ce0 | 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ats">Floats</a></li>............ |
| 18d00 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | .</ul>...........</td>.......... |
| 18d20 | 20 3c 74 64 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 | .<td>Remainder.Division......... |
| 18d40 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 | .....<ul>...............<li>Can. |
| 18d60 | 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f | cause.<a.href="#Division-by-Zero |
| 18d80 | 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 | ">Division.by.Zero</a>.for.integ |
| 18da0 | 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 | ers.</li>...............<li>Can. |
| 18dc0 | 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f | cause.<a.href="#Division-by-Zero |
| 18de0 | 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 66 6f 72 20 66 6c 6f 61 74 | ">Division.by.Zero</a>.for.float |
| 18e00 | 73 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 | s.in.<a.href="#Floating-Point-Op |
| 18e20 | 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 4d 6f 64 65 2e 4f 70 74 69 6d 69 7a 65 64 20 4d 6f | erations">FloatMode.Optimized.Mo |
| 18e40 | 64 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | de</a>.</li>...............<li>S |
| 18e60 | 69 67 6e 65 64 20 6f 72 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 6f 70 65 72 61 6e 64 73 | igned.or.floating-point.operands |
| 18e80 | 20 6d 75 73 74 20 62 65 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 61 6e 64 20 70 6f 73 69 | .must.be.comptime-known.and.posi |
| 18ea0 | 74 69 76 65 2e 20 49 6e 20 6f 74 68 65 72 20 63 61 73 65 73 2c 20 75 73 65 0a 20 20 20 20 20 20 | tive..In.other.cases,.use....... |
| 18ec0 | 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 | ..........<a.href="#rem">@rem</a |
| 18ee0 | 3e 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 6d | >.or.................<a.href="#m |
| 18f00 | 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 20 69 6e 73 74 65 61 64 2e 0a 20 20 20 20 20 20 20 20 20 20 | od">@mod</a>.instead............ |
| 18f20 | 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f | ....</li>...............<li>Invo |
| 18f40 | 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 | kes.<a.href="#Peer-Type-Resoluti |
| 18f60 | 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 | on">Peer.Type.Resolution</a>.for |
| 18f80 | 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .the.operands.</li>............. |
| 18fa0 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | </ul>...........</td>........... |
| 18fc0 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| 18fe0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | s="zig"><span.class="tok-number" |
| 19000 | 3e 31 30 3c 2f 73 70 61 6e 3e 20 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | >10</span>.%.<span.class="tok-nu |
| 19020 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | mber">3</span>.==.<span.class="t |
| 19040 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ok-number">1</span></code></pre> |
| 19060 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | ...........</td>.........</tr>.. |
| 19080 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c | .......<tr>...........<td><pre>< |
| 190a0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 6c 74 3b 26 6c 74 3b 20 62 0a 61 20 | code.class="zig">a.<<.b.a. |
| 190c0 | 26 6c 74 3b 26 6c 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 | <<=.b</code></pre></td>... |
| 190e0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | ........<td>.............<ul>... |
| 19100 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 | ............<li><a.href="#Intege |
| 19120 | 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | rs">Integers</a></li>........... |
| 19140 | 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ..</ul>...........</td>......... |
| 19160 | 20 20 3c 74 64 3e 42 69 74 20 53 68 69 66 74 20 4c 65 66 74 2e 0a 20 20 20 20 20 20 20 20 20 20 | ..<td>Bit.Shift.Left............ |
| 19180 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 | ..<ul>.................<li><code |
| 191a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 3c 61 | .class="zig">b</code>.must.be.<a |
| 191c0 | 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e | .href="#comptime">comptime-known |
| 191e0 | 3c 2f 61 3e 20 6f 72 20 68 61 76 65 20 61 20 74 79 70 65 20 77 69 74 68 20 6c 6f 67 32 20 6e 75 | </a>.or.have.a.type.with.log2.nu |
| 19200 | 6d 62 65 72 20 6f 66 20 62 69 74 73 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | mber.of.bits.as.<code.class="zig |
| 19220 | 22 3e 61 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ">a</code>.</li>...............< |
| 19240 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e | li>See.also.<a.href="#shlExact"> |
| 19260 | 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | @shlExact</a>.</li>............. |
| 19280 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 | ..<li>See.also.<a.href="#shlWith |
| 192a0 | 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c | Overflow">@shlWithOverflow</a>.< |
| 192c0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | /li>.............</ul>.......... |
| 192e0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| 19300 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 19320 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 26 | lass="tok-number">1</span>.<& |
| 19340 | 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f | lt;.<span.class="tok-number">8</ |
| 19360 | 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | span>.==.<span.class="tok-number |
| 19380 | 22 3e 32 35 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | ">256</span></code></pre>....... |
| 193a0 | 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | ....</td>.........</tr>......... |
| 193c0 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | <tr>...........<td><pre><code.cl |
| 193e0 | 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 67 74 3b 26 67 74 3b 20 62 0a 61 20 26 67 74 3b 26 67 74 | ass="zig">a.>>.b.a.>> |
| 19400 | 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | ;=.b</code></pre></td>.......... |
| 19420 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | .<td>.............<ul>.......... |
| 19440 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 | .....<li><a.href="#Integers">Int |
| 19460 | 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | egers</a></li>.............</ul> |
| 19480 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 | ...........</td>...........<td>B |
| 194a0 | 69 74 20 53 68 69 66 74 20 52 69 67 68 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | it.Shift.Right..............<ul> |
| 194c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | .................<li><code.class |
| 194e0 | 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 3c 61 20 68 72 65 66 3d | ="zig">b</code>.must.be.<a.href= |
| 19500 | 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 61 3e 20 6f | "#comptime">comptime-known</a>.o |
| 19520 | 72 20 68 61 76 65 20 61 20 74 79 70 65 20 77 69 74 68 20 6c 6f 67 32 20 6e 75 6d 62 65 72 20 6f | r.have.a.type.with.log2.number.o |
| 19540 | 66 20 62 69 74 73 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 | f.bits.as.<code.class="zig">a</c |
| 19560 | 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 | ode>.</li>...............<li>See |
| 19580 | 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 | .also.<a.href="#shrExact">@shrEx |
| 195a0 | 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | act</a>.</li>.............</ul>. |
| 195c0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 | ..........</td>...........<td>.. |
| 195e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ...........<pre><code.class="zig |
| 19600 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 | "><span.class="tok-number">10</s |
| 19620 | 70 61 6e 3e 20 26 67 74 3b 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | pan>.>>.<span.class="tok-n |
| 19640 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | umber">1</span>.==.<span.class=" |
| 19660 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | tok-number">5</span></code></pre |
| 19680 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | >...........</td>.........</tr>. |
| 196a0 | 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e | ........<tr>...........<td><pre> |
| 196c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 61 6d 70 3b 20 62 0a 61 20 26 61 | <code.class="zig">a.&.b.a.&a |
| 196e0 | 6d 70 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | mp;=.b</code></pre></td>........ |
| 19700 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | ...<td>.............<ul>........ |
| 19720 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 | .......<li><a.href="#Integers">I |
| 19740 | 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | ntegers</a></li>.............</u |
| 19760 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | l>...........</td>...........<td |
| 19780 | 3e 42 69 74 77 69 73 65 20 41 4e 44 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | >Bitwise.AND..............<ul>.. |
| 197a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 | .............<li>Invokes.<a.href |
| 197c0 | 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 | ="#Peer-Type-Resolution">Peer.Ty |
| 197e0 | 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e | pe.Resolution</a>.for.the.operan |
| 19800 | 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | ds.</li>.............</ul>...... |
| 19820 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | .....</td>...........<td>....... |
| 19840 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 19860 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 31 3c 2f 73 70 61 | an.class="tok-number">0b011</spa |
| 19880 | 6e 3e 20 26 61 6d 70 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | n>.&.<span.class="tok-number |
| 198a0 | 22 3e 30 62 31 30 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">0b101</span>.==.<span.class="t |
| 198c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 30 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | ok-number">0b001</span></code></ |
| 198e0 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | pre>...........</td>.........</t |
| 19900 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 | r>.........<tr>...........<td><p |
| 19920 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 7c 20 62 0a 61 20 7c 3d 20 | re><code.class="zig">a.|.b.a.|=. |
| 19940 | 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | b</code></pre></td>...........<t |
| 19960 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | d>.............<ul>............. |
| 19980 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 | ..<li><a.href="#Integers">Intege |
| 199a0 | 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | rs</a></li>.............</ul>... |
| 199c0 | 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 | ........</td>...........<td>Bitw |
| 199e0 | 69 73 65 20 4f 52 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | ise.OR..............<ul>........ |
| 19a00 | 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 | .......<li>Invokes.<a.href="#Pee |
| 19a20 | 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 | r-Type-Resolution">Peer.Type.Res |
| 19a40 | 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c | olution</a>.for.the.operands.</l |
| 19a60 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | i>.............</ul>...........< |
| 19a80 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | /td>...........<td>............. |
| 19aa0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 19ac0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 30 3c 2f 73 70 61 6e 3e 20 7c 20 3c | ss="tok-number">0b010</span>.|.< |
| 19ae0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 30 3c 2f 73 | span.class="tok-number">0b100</s |
| 19b00 | 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | pan>.==.<span.class="tok-number" |
| 19b20 | 3e 30 62 31 31 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | >0b110</span></code></pre>...... |
| 19b40 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | .....</td>.........</tr>........ |
| 19b60 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | .<tr>...........<td><pre><code.c |
| 19b80 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 5e 20 62 0a 61 20 5e 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f | lass="zig">a.^.b.a.^=.b</code></ |
| 19ba0 | 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | pre></td>...........<td>........ |
| 19bc0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | .....<ul>...............<li><a.h |
| 19be0 | 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 | ref="#Integers">Integers</a></li |
| 19c00 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f | >.............</ul>...........</ |
| 19c20 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 58 4f 52 2e 0a 20 | td>...........<td>Bitwise.XOR... |
| 19c40 | 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ...........<ul>...............<l |
| 19c60 | 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 | i>Invokes.<a.href="#Peer-Type-Re |
| 19c80 | 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f | solution">Peer.Type.Resolution</ |
| 19ca0 | 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | a>.for.the.operands.</li>....... |
| 19cc0 | 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 | ......</ul>...........</td>..... |
| 19ce0 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ......<td>.............<pre><cod |
| 19d00 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | e.class="zig"><span.class="tok-n |
| 19d20 | 75 6d 62 65 72 22 3e 30 62 30 31 31 3c 2f 73 70 61 6e 3e 20 5e 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">0b011</span>.^.<span.clas |
| 19d40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c | s="tok-number">0b101</span>.==.< |
| 19d60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 31 30 3c 2f 73 | span.class="tok-number">0b110</s |
| 19d80 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | pan></code></pre>...........</td |
| 19da0 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 | >.........</tr>.........<tr>.... |
| 19dc0 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .......<td><pre><code.class="zig |
| 19de0 | 22 3e 7e 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | ">~a</code></pre></td>.......... |
| 19e00 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | .<td>.............<ul>.......... |
| 19e20 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 | .....<li><a.href="#Integers">Int |
| 19e40 | 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | egers</a></li>.............</ul> |
| 19e60 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | ...........</td>...........<td>. |
| 19e80 | 20 20 20 20 20 20 20 20 20 20 20 20 42 69 74 77 69 73 65 20 4e 4f 54 2e 0a 20 20 20 20 20 20 20 | ............Bitwise.NOT......... |
| 19ea0 | 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 | ...</td>...........<td>......... |
| 19ec0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 7e 3c 73 70 61 | ....<pre><code.class="zig">~<spa |
| 19ee0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e | n.class="tok-builtin">@as</span> |
| 19f00 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | (<span.class="tok-type">u8</span |
| 19f20 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 | >,.<span.class="tok-number">0b10 |
| 19f40 | 31 30 31 31 31 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 101111</span>).==.<span.class="t |
| 19f60 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 30 31 30 30 30 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ok-number">0b01010000</span></co |
| 19f80 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | de></pre>...........</td>....... |
| 19fa0 | 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ..</tr>.........<tr>...........< |
| 19fc0 | 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 | td><pre><code.class="zig">a.<spa |
| 19fe0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 | n.class="tok-kw">orelse</span>.b |
| 1a000 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | </code></pre></td>...........<td |
| 1a020 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | >.............<ul>.............. |
| 1a040 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e | .<li><a.href="#Optionals">Option |
| 1a060 | 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | als</a></li>.............</ul>.. |
| 1a080 | 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 49 66 20 | .........</td>...........<td>If. |
| 1a0a0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 | <code.class="zig">a</code>.is.<c |
| 1a0c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 1a0e0 | 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 | -null">null</span></code>,...... |
| 1a100 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 | .................returns.<code.c |
| 1a120 | 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 28 22 64 65 66 61 75 6c 74 20 76 61 | lass="zig">b</code>.("default.va |
| 1a140 | 6c 75 65 22 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | lue"),.......................... |
| 1a160 | 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 | .otherwise.returns.the.unwrapped |
| 1a180 | 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 | .value.of.<code.class="zig">a</c |
| 1a1a0 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ode>............................ |
| 1a1c0 | 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ....Note.that.<code.class="zig"> |
| 1a1e0 | 62 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 20 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 | b</code>.may.be.a.value.of.type. |
| 1a200 | 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e | <a.href="#noreturn">noreturn</a> |
| 1a220 | 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | ............</td>...........<td> |
| 1a240 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .............<pre><code.class="z |
| 1a260 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 1a280 | 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | span>.value:.?<span.class="tok-t |
| 1a2a0 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">u32</span>.=.<span.class="t |
| 1a2c0 | 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ok-null">null</span>;.<span.clas |
| 1a2e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e 77 72 61 70 70 65 | s="tok-kw">const</span>.unwrappe |
| 1a300 | 64 20 3d 20 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f | d.=.value.<span.class="tok-kw">o |
| 1a320 | 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | relse</span>.<span.class="tok-nu |
| 1a340 | 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 75 6e 77 72 61 70 70 65 64 20 3d 3d 20 | mber">1234</span>;.unwrapped.==. |
| 1a360 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 | <span.class="tok-number">1234</s |
| 1a380 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | pan></code></pre>...........</td |
| 1a3a0 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 | >.........</tr>.........<tr>.... |
| 1a3c0 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .......<td><pre><code.class="zig |
| 1a3e0 | 22 3e 61 2e 3f 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ">a.?</code></pre></td>......... |
| 1a400 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | ..<td>.............<ul>......... |
| 1a420 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f | ......<li><a.href="#Optionals">O |
| 1a440 | 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | ptionals</a></li>.............</ |
| 1a460 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | ul>...........</td>...........<t |
| 1a480 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 0a 20 20 | d>.............Equivalent.to:... |
| 1a4a0 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..........<pre><code.class="zig" |
| 1a4c0 | 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f | >a.<span.class="tok-kw">orelse</ |
| 1a4e0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 | span>.<span.class="tok-kw">unrea |
| 1a500 | 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | chable</span></code></pre>...... |
| 1a520 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | .....</td>...........<td>....... |
| 1a540 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 1a560 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 | an.class="tok-kw">const</span>.v |
| 1a580 | 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | alue:.?<span.class="tok-type">u3 |
| 1a5a0 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | 2</span>.=.<span.class="tok-numb |
| 1a5c0 | 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c 73 70 61 | er">5678</span>;.value.?.==.<spa |
| 1a5e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e | n.class="tok-number">5678</span> |
| 1a600 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | </code></pre>...........</td>... |
| 1a620 | 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 | ......</tr>.........<tr>........ |
| 1a640 | 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 | ...<td><pre><code.class="zig">a. |
| 1a660 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e | <span.class="tok-kw">catch</span |
| 1a680 | 3e 20 62 0a 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 | >.b.a.<span.class="tok-kw">catch |
| 1a6a0 | 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | </span>.|err|.b</code></pre></td |
| 1a6c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c | >...........<td>.............<ul |
| 1a6e0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 | >...............<li><a.href="#Er |
| 1a700 | 72 6f 72 73 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | rors">Error.Unions</a></li>..... |
| 1a720 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | ........</ul>...........</td>... |
| 1a740 | 20 20 20 20 20 20 20 20 3c 74 64 3e 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ........<td>If.<code.class="zig" |
| 1a760 | 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | >a</code>.is.an.<code.class="zig |
| 1a780 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 | "><span.class="tok-kw">error</sp |
| 1a7a0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | an></code>,..................... |
| 1a7c0 | 20 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 | ..returns.<code.class="zig">b</c |
| 1a7e0 | 6f 64 65 3e 20 28 22 64 65 66 61 75 6c 74 20 76 61 6c 75 65 22 29 2c 0a 20 20 20 20 20 20 20 20 | ode>.("default.value"),......... |
| 1a800 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 | ..................otherwise.retu |
| 1a820 | 72 6e 73 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 | rns.the.unwrapped.value.of.<code |
| 1a840 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 | .class="zig">a</code>........... |
| 1a860 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 3c | .....................Note.that.< |
| 1a880 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 | code.class="zig">b</code>.may.be |
| 1a8a0 | 20 61 20 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 | .a.value.of.type.<a.href="#noret |
| 1a8c0 | 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | urn">noreturn</a>............... |
| 1a8e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .....................<code.class |
| 1a900 | 3d 22 7a 69 67 22 3e 65 72 72 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 3c 63 6f 64 65 20 63 | ="zig">err</code>.is.the.<code.c |
| 1a920 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 1a940 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 69 73 20 69 6e 20 73 63 | error</span></code>.and.is.in.sc |
| 1a960 | 6f 70 65 20 6f 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f 64 65 20 63 6c 61 73 | ope.of.the.expression.<code.clas |
| 1a980 | 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | s="zig">b</code>............</td |
| 1a9a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 | >...........<td>.............<pr |
| 1a9c0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 1a9e0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3c 73 70 | "tok-kw">const</span>.value:.<sp |
| 1aa00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 | an.class="tok-type">anyerror</sp |
| 1aa20 | 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | an>!<span.class="tok-type">u32</ |
| 1aa40 | 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 | span>.=.<span.class="tok-kw">err |
| 1aa60 | 6f 72 3c 2f 73 70 61 6e 3e 2e 42 72 6f 6b 65 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | or</span>.Broken;.<span.class="t |
| 1aa80 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e 77 72 61 70 70 65 64 20 3d 20 | ok-kw">const</span>.unwrapped.=. |
| 1aaa0 | 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 | value.<span.class="tok-kw">catch |
| 1aac0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | </span>.<span.class="tok-number" |
| 1aae0 | 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 75 6e 77 72 61 70 70 65 64 20 3d 3d 20 3c 73 70 61 6e | >1234</span>;.unwrapped.==.<span |
| 1ab00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c | .class="tok-number">1234</span>< |
| 1ab20 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | /code></pre>...........</td>.... |
| 1ab40 | 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 | .....</tr>.........<tr>......... |
| 1ab60 | 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c | ..<td><pre><code.class="zig">a.< |
| 1ab80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 62 | span.class="tok-kw">and</span>.b |
| 1aba0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | </code></pre></td>...........<td |
| 1abc0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | >.............<ul>.............. |
| 1abe0 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e | .<li><a.href="#Primitive-Types"> |
| 1ac00 | 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | bool</a></li>.............</ul>. |
| 1ac20 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 | ..........</td>...........<td>.. |
| 1ac40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .............If.<code.class="zig |
| 1ac60 | 22 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ">a</code>.is.<code.class="zig"> |
| 1ac80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 | <span.class="tok-null">false</sp |
| 1aca0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | an></code>,.returns.<code.class= |
| 1acc0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c | "zig"><span.class="tok-null">fal |
| 1ace0 | 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | se</span></code>................ |
| 1ad00 | 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 61 74 69 6e 67 20 3c 63 | ...........without.evaluating.<c |
| 1ad20 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 | ode.class="zig">b</code>..Otherw |
| 1ad40 | 69 73 65 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 | ise,.returns.<code.class="zig">b |
| 1ad60 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | </code>............</td>........ |
| 1ad80 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ...<td>.............<pre><code.c |
| 1ada0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | lass="zig">(<span.class="tok-nul |
| 1adc0 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | l">false</span>.<span.class="tok |
| 1ade0 | 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | -kw">and</span>.<span.class="tok |
| 1ae00 | 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | -null">true</span>).==.<span.cla |
| 1ae20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ss="tok-null">false</span></code |
| 1ae40 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ></pre>...........</td>......... |
| 1ae60 | 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | </tr>.........<tr>...........<td |
| 1ae80 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 6e 20 | ><pre><code.class="zig">a.<span. |
| 1aea0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 3c 2f 63 6f 64 65 | class="tok-kw">or</span>.b</code |
| 1aec0 | 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | ></pre></td>...........<td>..... |
| 1aee0 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ........<ul>...............<li>< |
| 1af00 | 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f | a.href="#Primitive-Types">bool</ |
| 1af20 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | a></li>.............</ul>....... |
| 1af40 | 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | ....</td>...........<td>........ |
| 1af60 | 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 | .......If.<code.class="zig">a</c |
| 1af80 | 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ode>.is.<code.class="zig"><span. |
| 1afa0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-null">true</span></co |
| 1afc0 | 64 65 3e 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | de>,.returns.<code.class="zig">< |
| 1afe0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e | span.class="tok-null">true</span |
| 1b000 | 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ></code>........................ |
| 1b020 | 20 20 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 61 74 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 | ...without.evaluating.<code.clas |
| 1b040 | 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 72 65 74 | s="zig">b</code>..Otherwise,.ret |
| 1b060 | 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e | urns.<code.class="zig">b</code>. |
| 1b080 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | ...........</td>...........<td>. |
| 1b0a0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ............<pre><code.class="zi |
| 1b0c0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c | g"><span.class="tok-null">false< |
| 1b0e0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f | /span>.<span.class="tok-kw">or</ |
| 1b100 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 | span>.<span.class="tok-null">tru |
| 1b120 | 65 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | e</span>.==.<span.class="tok-nul |
| 1b140 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | l">true</span></code></pre>..... |
| 1b160 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| 1b180 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ..<tr>...........<td><pre><code. |
| 1b1a0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e | class="zig">!a</code></pre></td> |
| 1b1c0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | ...........<td>.............<ul> |
| 1b1e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 | ...............<li><a.href="#Pri |
| 1b200 | 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | mitive-Types">bool</a></li>..... |
| 1b220 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | ........</ul>...........</td>... |
| 1b240 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 42 6f 6f 6c 65 61 6e | ........<td>.............Boolean |
| 1b260 | 20 4e 4f 54 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .NOT............</td>........... |
| 1b280 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| 1b2a0 | 73 3d 22 7a 69 67 22 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | s="zig">!<span.class="tok-null"> |
| 1b2c0 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | false</span>.==.<span.class="tok |
| 1b2e0 | 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | -null">true</span></code></pre>. |
| 1b300 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | ..........</td>.........</tr>... |
| 1b320 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 | ......<tr>...........<td><pre><c |
| 1b340 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3d 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 | ode.class="zig">a.==.b</code></p |
| 1b360 | 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 | re></td>...........<td>......... |
| 1b380 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | ....<ul>...............<li><a.hr |
| 1b3a0 | 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e | ef="#Integers">Integers</a></li> |
| 1b3c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f | ...............<li><a.href="#Flo |
| 1b3e0 | 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ats">Floats</a></li>............ |
| 1b400 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 | ...<li><a.href="#Primitive-Types |
| 1b420 | 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ">bool</a></li>...............<l |
| 1b440 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 74 79 70 | i><a.href="#Primitive-Types">typ |
| 1b460 | 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | e</a></li>.............</ul>.... |
| 1b480 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | .......</td>...........<td>..... |
| 1b4a0 | 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ..........Returns.<code.class="z |
| 1b4c0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c | ig"><span.class="tok-null">true< |
| 1b4e0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 61 6e 64 20 62 20 61 72 65 20 65 71 75 | /span></code>.if.a.and.b.are.equ |
| 1b500 | 61 6c 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 | al,.otherwise.returns.<code.clas |
| 1b520 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | s="zig"><span.class="tok-null">f |
| 1b540 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | alse</span></code>.............. |
| 1b560 | 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f | Invokes.<a.href="#Peer-Type-Reso |
| 1b580 | 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e | lution">Peer.Type.Resolution</a> |
| 1b5a0 | 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | .for.the.operands............</t |
| 1b5c0 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 | d>...........<td>.............<p |
| 1b5e0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | re><code.class="zig">(<span.clas |
| 1b600 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e | s="tok-number">1</span>.==.<span |
| 1b620 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d | .class="tok-number">1</span>).== |
| 1b640 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 | .<span.class="tok-null">true</sp |
| 1b660 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | an></code></pre>...........</td> |
| 1b680 | 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 | .........</tr>.........<tr>..... |
| 1b6a0 | 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ......<td><pre><code.class="zig" |
| 1b6c0 | 3e 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c | >a.==.<span.class="tok-null">nul |
| 1b6e0 | 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | l</span></code></pre></td>...... |
| 1b700 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | .....<td>.............<ul>...... |
| 1b720 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 | .........<li><a.href="#Optionals |
| 1b740 | 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ">Optionals</a></li>............ |
| 1b760 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | .</ul>...........</td>.......... |
| 1b780 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 | .<td>...............Returns.<cod |
| 1b7a0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | e.class="zig"><span.class="tok-n |
| 1b7c0 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 | ull">true</span></code>.if.a.is. |
| 1b7e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 1b800 | 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 74 68 | ok-null">null</span></code>,.oth |
| 1b820 | 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | erwise.returns.<code.class="zig" |
| 1b840 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | ><span.class="tok-null">false</s |
| 1b860 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | pan></code>............</td>.... |
| 1b880 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | .......<td>.............<pre><co |
| 1b8a0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 1b8c0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 | kw">const</span>.value:.?<span.c |
| 1b8e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">u32</span>.=.<sp |
| 1b900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b | an.class="tok-null">null</span>; |
| 1b920 | 0a 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | .value.==.<span.class="tok-null" |
| 1b940 | 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | >null</span></code></pre>....... |
| 1b960 | 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | ....</td>.........</tr>......... |
| 1b980 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | <tr>...........<td><pre><code.cl |
| 1b9a0 | 61 73 73 3d 22 7a 69 67 22 3e 61 20 21 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 | ass="zig">a.!=.b</code></pre></t |
| 1b9c0 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | d>...........<td>.............<u |
| 1b9e0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 | l>...............<li><a.href="#I |
| 1ba00 | 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ntegers">Integers</a></li>...... |
| 1ba20 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 | .........<li><a.href="#Floats">F |
| 1ba40 | 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | loats</a></li>...............<li |
| 1ba60 | 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c | ><a.href="#Primitive-Types">bool |
| 1ba80 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | </a></li>...............<li><a.h |
| 1baa0 | 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 74 79 70 65 3c 2f 61 3e 3c | ref="#Primitive-Types">type</a>< |
| 1bac0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | /li>.............</ul>.......... |
| 1bae0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| 1bb00 | 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ....Returns.<code.class="zig"><s |
| 1bb20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e | pan.class="tok-null">false</span |
| 1bb40 | 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 61 6e 64 20 62 20 61 72 65 20 65 71 75 61 6c 2c 20 6f | ></code>.if.a.and.b.are.equal,.o |
| 1bb60 | 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | therwise.returns.<code.class="zi |
| 1bb80 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f | g"><span.class="tok-null">true</ |
| 1bba0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 | span></code>..............Invoke |
| 1bbc0 | 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e | s.<a.href="#Peer-Type-Resolution |
| 1bbe0 | 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 | ">Peer.Type.Resolution</a>.for.t |
| 1bc00 | 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | he.operands............</td>.... |
| 1bc20 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | .......<td>.............<pre><co |
| 1bc40 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | de.class="zig">(<span.class="tok |
| 1bc60 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -number">1</span>.!=.<span.class |
| 1bc80 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e | ="tok-number">1</span>).==.<span |
| 1bca0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f | .class="tok-null">false</span></ |
| 1bcc0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 | code></pre>...........</td>..... |
| 1bce0 | 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 | ....</tr>.........<tr>.......... |
| 1bd00 | 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 67 | .<td><pre><code.class="zig">a.&g |
| 1bd20 | 74 3b 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | t;.b</code></pre></td>.......... |
| 1bd40 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | .<td>.............<ul>.......... |
| 1bd60 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 | .....<li><a.href="#Integers">Int |
| 1bd80 | 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | egers</a></li>...............<li |
| 1bda0 | 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c | ><a.href="#Floats">Floats</a></l |
| 1bdc0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | i>.............</ul>...........< |
| 1bde0 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | /td>...........<td>............. |
| 1be00 | 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ..Returns.<code.class="zig"><spa |
| 1be20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-null">true</span></ |
| 1be40 | 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 62 2c 20 6f 74 | code>.if.a.is.greater.than.b,.ot |
| 1be60 | 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | herwise.returns.<code.class="zig |
| 1be80 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | "><span.class="tok-null">false</ |
| 1bea0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 | span></code>..............Invoke |
| 1bec0 | 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e | s.<a.href="#Peer-Type-Resolution |
| 1bee0 | 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 | ">Peer.Type.Resolution</a>.for.t |
| 1bf00 | 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | he.operands............</td>.... |
| 1bf20 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | .......<td>.............<pre><co |
| 1bf40 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | de.class="zig">(<span.class="tok |
| 1bf60 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 | -number">2</span>.>.<span.cla |
| 1bf80 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 | ss="tok-number">1</span>).==.<sp |
| 1bfa0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c | an.class="tok-null">true</span>< |
| 1bfc0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | /code></pre>...........</td>.... |
| 1bfe0 | 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 | .....</tr>.........<tr>......... |
| 1c000 | 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 | ..<td><pre><code.class="zig">a.& |
| 1c020 | 67 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | gt;=.b</code></pre></td>........ |
| 1c040 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | ...<td>.............<ul>........ |
| 1c060 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 | .......<li><a.href="#Integers">I |
| 1c080 | 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ntegers</a></li>...............< |
| 1c0a0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c | li><a.href="#Floats">Floats</a>< |
| 1c0c0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | /li>.............</ul>.......... |
| 1c0e0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| 1c100 | 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ....Returns.<code.class="zig"><s |
| 1c120 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e | pan.class="tok-null">true</span> |
| 1c140 | 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 6f 72 20 | </code>.if.a.is.greater.than.or. |
| 1c160 | 65 71 75 61 6c 20 74 6f 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 | equal.to.b,.otherwise.returns.<c |
| 1c180 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 1c1a0 | 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | -null">false</span></code>...... |
| 1c1c0 | 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 | ........Invokes.<a.href="#Peer-T |
| 1c1e0 | 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 | ype-Resolution">Peer.Type.Resolu |
| 1c200 | 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 | tion</a>.for.the.operands....... |
| 1c220 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | .....</td>...........<td>....... |
| 1c240 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 | ......<pre><code.class="zig">(<s |
| 1c260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-number">2</span>. |
| 1c280 | 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | >=.<span.class="tok-number">1 |
| 1c2a0 | 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | </span>).==.<span.class="tok-nul |
| 1c2c0 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | l">true</span></code></pre>..... |
| 1c2e0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| 1c300 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ..<tr>...........<td><pre><code. |
| 1c320 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 6c 74 3b 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | class="zig">a.<.b</code></pre |
| 1c340 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ></td>...........<td>........... |
| 1c360 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | ..<ul>...............<li><a.href |
| 1c380 | 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ="#Integers">Integers</a></li>.. |
| 1c3a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | .............<li><a.href="#Float |
| 1c3c0 | 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | s">Floats</a></li>.............< |
| 1c3e0 | 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | /ul>...........</td>...........< |
| 1c400 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 | td>...............Returns.<code. |
| 1c420 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | class="zig"><span.class="tok-nul |
| 1c440 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 | l">true</span></code>.if.a.is.le |
| 1c460 | 73 73 20 74 68 61 6e 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f | ss.than.b,.otherwise.returns.<co |
| 1c480 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 1c4a0 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | null">false</span></code>....... |
| 1c4c0 | 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 | .......Invokes.<a.href="#Peer-Ty |
| 1c4e0 | 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 | pe-Resolution">Peer.Type.Resolut |
| 1c500 | 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 | ion</a>.for.the.operands........ |
| 1c520 | 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | ....</td>...........<td>........ |
| 1c540 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 | .....<pre><code.class="zig">(<sp |
| 1c560 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 | an.class="tok-number">1</span>.& |
| 1c580 | 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | lt;.<span.class="tok-number">2</ |
| 1c5a0 | 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | span>).==.<span.class="tok-null" |
| 1c5c0 | 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | >true</span></code>></pre>...... |
| 1c5e0 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | .....</td>.........</tr>........ |
| 1c600 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | .<tr>...........<td><pre><code.c |
| 1c620 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 6c 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | lass="zig">a.<=.b</code></pre |
| 1c640 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ></td>...........<td>........... |
| 1c660 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | ..<ul>...............<li><a.href |
| 1c680 | 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ="#Integers">Integers</a></li>.. |
| 1c6a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | .............<li><a.href="#Float |
| 1c6c0 | 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | s">Floats</a></li>.............< |
| 1c6e0 | 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | /ul>...........</td>...........< |
| 1c700 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 | td>...............Returns.<code. |
| 1c720 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | class="zig"><span.class="tok-nul |
| 1c740 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 | l">true</span></code>.if.a.is.le |
| 1c760 | 73 73 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 62 2c 20 6f 74 68 65 72 77 69 73 65 | ss.than.or.equal.to.b,.otherwise |
| 1c780 | 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .returns.<code.class="zig"><span |
| 1c7a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f | .class="tok-null">false</span></ |
| 1c7c0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 | code>..............Invokes.<a.hr |
| 1c7e0 | 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 | ef="#Peer-Type-Resolution">Peer. |
| 1c800 | 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 | Type.Resolution</a>.for.the.oper |
| 1c820 | 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ands............</td>........... |
| 1c840 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| 1c860 | 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | s="zig">(<span.class="tok-number |
| 1c880 | 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">1</span>.<=.<span.class="to |
| 1c8a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-number">2</span>).==.<span.cla |
| 1c8c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-null">true</span></code> |
| 1c8e0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c | </pre>...........</td>.........< |
| 1c900 | 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | /tr>.........<tr>...........<td> |
| 1c920 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2b 2b 20 62 3c 2f 63 | <pre><code.class="zig">a.++.b</c |
| 1c940 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 | ode></pre></td>...........<td>.. |
| 1c960 | 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ...........<ul>...............<l |
| 1c980 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f | i><a.href="#Arrays">Arrays</a></ |
| 1c9a0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | li>.............</ul>........... |
| 1c9c0 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | </td>...........<td>............ |
| 1c9e0 | 20 41 72 72 61 79 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 | .Array.concatenation............ |
| 1ca00 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 | ..<ul>.................<li>Only. |
| 1ca20 | 61 76 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | available.when.<code.class="zig" |
| 1ca40 | 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >a</code>.and.<code.class="zig"> |
| 1ca60 | 62 3c 2f 63 6f 64 65 3e 20 61 72 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 | b</code>.are.<a.href="#comptime" |
| 1ca80 | 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 | >compile-time.known</a>......... |
| 1caa0 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | .....</ul>...........</td>...... |
| 1cac0 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | .....<td>.............<pre><code |
| 1cae0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 1cb00 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.mem.=.<span.class |
| 1cb20 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@import</span>(<s |
| 1cb40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 | pan.class="tok-str">"std&qu |
| 1cb60 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ot;</span>).mem;.<span.class="to |
| 1cb80 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 31 20 3d 20 5b 5f 5d 3c | k-kw">const</span>.array1.=.[_]< |
| 1cba0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">u32</span> |
| 1cbc0 | 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | {<span.class="tok-number">1</spa |
| 1cbe0 | 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | n>,<span.class="tok-number">2</s |
| 1cc00 | 70 61 6e 3e 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | pan>};.<span.class="tok-kw">cons |
| 1cc20 | 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 32 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | t</span>.array2.=.[_]<span.class |
| 1cc40 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 | ="tok-type">u32</span>{<span.cla |
| 1cc60 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 | ss="tok-number">3</span>,<span.c |
| 1cc80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 7d 3b 0a 3c 73 70 | lass="tok-number">4</span>};.<sp |
| 1cca0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 | an.class="tok-kw">const</span>.t |
| 1ccc0 | 6f 67 65 74 68 65 72 20 3d 20 61 72 72 61 79 31 20 2b 2b 20 61 72 72 61 79 32 3b 0a 6d 65 6d 2e | ogether.=.array1.++.array2;.mem. |
| 1cce0 | 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | eql(<span.class="tok-type">u32</ |
| 1cd00 | 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 74 6f 67 65 74 68 65 72 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 | span>,.&together,.&[_]<s |
| 1cd20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b | pan.class="tok-type">u32</span>{ |
| 1cd40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e | <span.class="tok-number">1</span |
| 1cd60 | 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 | >,<span.class="tok-number">2</sp |
| 1cd80 | 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f | an>,<span.class="tok-number">3</ |
| 1cda0 | 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 | span>,<span.class="tok-number">4 |
| 1cdc0 | 3c 2f 73 70 61 6e 3e 7d 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | </span>})</code></pre>.......... |
| 1cde0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | .</td>.........</tr>.........<tr |
| 1ce00 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | >...........<td><pre><code.class |
| 1ce20 | 3d 22 7a 69 67 22 3e 61 20 2a 2a 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a | ="zig">a.**.b</code></pre></td>. |
| 1ce40 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | ..........<td>.............<ul>. |
| 1ce60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 | ..............<li><a.href="#Arra |
| 1ce80 | 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ys">Arrays</a></li>............. |
| 1cea0 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | </ul>...........</td>........... |
| 1cec0 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 20 6d 75 6c 74 69 70 6c 69 63 | <td>.............Array.multiplic |
| 1cee0 | 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | ation..............<ul>......... |
| 1cf00 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 61 76 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 | ........<li>Only.available.when. |
| 1cf20 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c | <code.class="zig">a</code>.and.< |
| 1cf40 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 61 72 65 20 3c 61 | code.class="zig">b</code>.are.<a |
| 1cf60 | 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b | .href="#comptime">compile-time.k |
| 1cf80 | 6e 6f 77 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | nown</a>..............</ul>..... |
| 1cfa0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 | ......</td>...........<td>...... |
| 1cfc0 | 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 1cfe0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 1d000 | 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | mem.=.<span.class="tok-builtin"> |
| 1d020 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| 1d040 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d | str">"std"</span>).mem |
| 1d060 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ;.<span.class="tok-kw">const</sp |
| 1d080 | 61 6e 3e 20 70 61 74 74 65 72 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | an>.pattern.=.<span.class="tok-s |
| 1d0a0 | 74 72 22 3e 26 71 75 6f 74 3b 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 2a 2a 20 3c 73 70 | tr">"ab"</span>.**.<sp |
| 1d0c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a | an.class="tok-number">3</span>;. |
| 1d0e0 | 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | mem.eql(<span.class="tok-type">u |
| 1d100 | 38 3c 2f 73 70 61 6e 3e 2c 20 70 61 74 74 65 72 6e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 8</span>,.pattern,.<span.class=" |
| 1d120 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 61 62 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 | tok-str">"ababab"</spa |
| 1d140 | 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | n>)</code></pre>...........</td> |
| 1d160 | 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 | .........</tr>.........<tr>..... |
| 1d180 | 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ......<td><pre><code.class="zig" |
| 1d1a0 | 3e 61 2e 2a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | >a.*</code></pre></td>.......... |
| 1d1c0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | .<td>.............<ul>.......... |
| 1d1e0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 | .....<li><a.href="#Pointers">Poi |
| 1d200 | 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | nters</a></li>.............</ul> |
| 1d220 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | ...........</td>...........<td>. |
| 1d240 | 20 20 20 20 20 20 20 20 20 20 20 20 50 6f 69 6e 74 65 72 20 64 65 72 65 66 65 72 65 6e 63 65 2e | ............Pointer.dereference. |
| 1d260 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | ...........</td>...........<td>. |
| 1d280 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ............<pre><code.class="zi |
| 1d2a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 1d2c0 | 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | pan>.x:.<span.class="tok-type">u |
| 1d2e0 | 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | 32</span>.=.<span.class="tok-num |
| 1d300 | 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ber">1234</span>;.<span.class="t |
| 1d320 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 | ok-kw">const</span>.ptr.=.&x |
| 1d340 | 3b 0a 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ;.ptr.*.==.<span.class="tok-numb |
| 1d360 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | er">1234</span></code></pre>.... |
| 1d380 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 | .......</td>.........</tr>...... |
| 1d3a0 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ...<tr>...........<td><pre><code |
| 1d3c0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 26 61 6d 70 3b 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | .class="zig">&a</code></pre> |
| 1d3e0 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | </td>...........<td>............ |
| 1d400 | 20 41 6c 6c 20 74 79 70 65 73 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | .All.types...........</td>...... |
| 1d420 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 64 64 72 65 73 73 20 6f 66 | .....<td>.............Address.of |
| 1d440 | 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | ............</td>...........<td> |
| 1d460 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .............<pre><code.class="z |
| 1d480 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 1d4a0 | 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.x:.<span.class="tok-type"> |
| 1d4c0 | 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | u32</span>.=.<span.class="tok-nu |
| 1d4e0 | 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">1234</span>;.<span.class=" |
| 1d500 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b | tok-kw">const</span>.ptr.=.& |
| 1d520 | 78 3b 0a 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | x;.ptr.*.==.<span.class="tok-num |
| 1d540 | 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | ber">1234</span></code></pre>... |
| 1d560 | 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 | ........</td>.........</tr>..... |
| 1d580 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 | ....<tr>...........<td><pre><cod |
| 1d5a0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 7c 7c 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | e.class="zig">a.||.b</code></pre |
| 1d5c0 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ></td>...........<td>........... |
| 1d5e0 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | ..<ul>...............<li><a.href |
| 1d600 | 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 | ="#Error-Set-Type">Error.Set.Typ |
| 1d620 | 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | e</a></li>.............</ul>.... |
| 1d640 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | .......</td>...........<td>..... |
| 1d660 | 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 72 6f | ..........<a.href="#Merging-Erro |
| 1d680 | 72 2d 53 65 74 73 22 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 0a 20 | r-Sets">Merging.Error.Sets</a>.. |
| 1d6a0 | 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | .........</td>...........<td>... |
| 1d6c0 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..........<pre><code.class="zig" |
| 1d6e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | ><span.class="tok-kw">const</spa |
| 1d700 | 6e 3e 20 41 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | n>.A.=.<span.class="tok-kw">erro |
| 1d720 | 72 3c 2f 73 70 61 6e 3e 7b 4f 6e 65 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r</span>{One};.<span.class="tok- |
| 1d740 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.B.=.<span.class |
| 1d760 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 54 77 6f 7d 3b 0a 28 41 20 | ="tok-kw">error</span>{Two};.(A. |
| 1d780 | 7c 7c 20 42 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 | ||.B).==.<span.class="tok-kw">er |
| 1d7a0 | 72 6f 72 3c 2f 73 70 61 6e 3e 7b 4f 6e 65 2c 20 54 77 6f 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ror</span>{One,.Two}</code></pre |
| 1d7c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | >...........</td>.........</tr>. |
| 1d7e0 | 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 | ......</table>.......</div>..... |
| 1d800 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 50 72 65 63 65 64 65 6e 63 65 22 3e 3c 61 20 | .........<h2.id="Precedence"><a. |
| 1d820 | 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 65 63 65 64 65 6e 63 65 22 3e 50 72 65 63 65 64 65 6e 63 | href="#toc-Precedence">Precedenc |
| 1d840 | 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 72 65 63 | e</a>.<a.class="hdr".href="#Prec |
| 1d860 | 65 64 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | edence">..</a></h2>........<pre> |
| 1d880 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 28 29 20 78 5b 5d 20 78 2e 79 20 78 2e | <code.class="zig">x().x[].x.y.x. |
| 1d8a0 | 2a 20 78 2e 3f 0a 61 21 62 0a 78 7b 7d 0a 21 78 20 2d 78 20 2d 25 78 20 7e 78 20 26 61 6d 70 3b | *.x.?.a!b.x{}.!x.-x.-%x.~x.& |
| 1d8c0 | 78 20 3f 78 0a 2a 20 2f 20 25 20 2a 2a 20 2a 25 20 7c 7c 0a 2b 20 2d 20 2b 2b 20 2b 25 20 2d 25 | x.?x.*./.%.**.*%.||.+.-.++.+%.-% |
| 1d8e0 | 0a 26 6c 74 3b 26 6c 74 3b 20 26 67 74 3b 26 67 74 3b 0a 26 61 6d 70 3b 20 5e 20 7c 20 3c 73 70 | .<<.>>.&.^.|.<sp |
| 1d900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">orelse</span>. |
| 1d920 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e | <span.class="tok-kw">catch</span |
| 1d940 | 3e 0a 3d 3d 20 21 3d 20 26 6c 74 3b 20 26 67 74 3b 20 26 6c 74 3b 3d 20 26 67 74 3b 3d 0a 3c 73 | >.==.!=.<.>.<=.>=.<s |
| 1d960 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 0a 3c 73 | pan.class="tok-kw">and</span>.<s |
| 1d980 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 0a 3d 20 2a | pan.class="tok-kw">or</span>.=.* |
| 1d9a0 | 3d 20 2f 3d 20 25 3d 20 2b 3d 20 2d 3d 20 26 6c 74 3b 26 6c 74 3b 3d 20 26 67 74 3b 26 67 74 3b | =./=.%=.+=.-=.<<=.>> |
| 1d9c0 | 3d 20 26 61 6d 70 3b 3d 20 5e 3d 20 7c 3d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | =.&=.^=.|=</code></pre>..... |
| 1d9e0 | 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 41 72 72 61 79 73 22 3e | ................<h1.id="Arrays"> |
| 1da00 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e | <a.href="#toc-Arrays">Arrays</a> |
| 1da20 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e c2 | .<a.class="hdr".href="#Arrays">. |
| 1da40 | a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | .</a></h1>........<p.class="file |
| 1da60 | 22 3e 61 72 72 61 79 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ">arrays.zig</p><pre><code.class |
| 1da80 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 1daa0 | 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t</span>.expect.=.<span.class="t |
| 1dac0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-builtin">@import</span>(<span |
| 1dae0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b | .class="tok-str">"std" |
| 1db00 | 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 | </span>).testing.expect;.<span.c |
| 1db20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 | lass="tok-kw">const</span>.asser |
| 1db40 | 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | t.=.<span.class="tok-builtin">@i |
| 1db60 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | mport</span>(<span.class="tok-st |
| 1db80 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 | r">"std"</span>).debug |
| 1dba0 | 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | .assert;.<span.class="tok-kw">co |
| 1dbc0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nst</span>.mem.=.<span.class="to |
| 1dbe0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| 1dc00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c | class="tok-str">"std"< |
| 1dc20 | 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | /span>).mem;..<span.class="tok-c |
| 1dc40 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 72 61 79 20 6c 69 74 65 72 61 6c 3c 2f 73 70 61 6e 3e 0a | omment">//.array.literal</span>. |
| 1dc60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 1dc80 | 3e 20 6d 65 73 73 61 67 65 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >.message.=.[_]<span.class="tok- |
| 1dca0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | type">u8</span>{.<span.class="to |
| 1dcc0 | 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-str">'h'</span>,.<span.class=" |
| 1dce0 | 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-str">'e'</span>,.<span.class |
| 1dd00 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-str">'l'</span>,.<span.cla |
| 1dd20 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | ss="tok-str">'l'</span>,.<span.c |
| 1dd40 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 3c 73 | lass="tok-str">'o'</span>.};..<s |
| 1dd60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 67 65 74 20 74 | pan.class="tok-comment">//.get.t |
| 1dd80 | 68 65 20 73 69 7a 65 20 6f 66 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | he.size.of.an.array</span>.<span |
| 1dda0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 | .class="tok-kw">comptime</span>. |
| 1ddc0 | 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 73 73 61 67 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 | {.....assert(message.len.==.<spa |
| 1dde0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">5</span>);. |
| 1de00 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | }..<span.class="tok-comment">//. |
| 1de20 | 41 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 69 73 20 61 20 73 69 6e 67 6c 65 2d 69 74 65 | A.string.literal.is.a.single-ite |
| 1de40 | 6d 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 20 6c 69 74 65 72 61 6c 2e 3c 2f | m.pointer.to.an.array.literal.</ |
| 1de60 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | span>.<span.class="tok-kw">const |
| 1de80 | 3c 2f 73 70 61 6e 3e 20 73 61 6d 65 5f 6d 65 73 73 61 67 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | </span>.same_message.=.<span.cla |
| 1dea0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f | ss="tok-str">"hello"</ |
| 1dec0 | 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | span>;..<span.class="tok-kw">com |
| 1dee0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 | ptime</span>.{.....assert(mem.eq |
| 1df00 | 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | l(<span.class="tok-type">u8</spa |
| 1df20 | 6e 3e 2c 20 26 61 6d 70 3b 6d 65 73 73 61 67 65 2c 20 73 61 6d 65 5f 6d 65 73 73 61 67 65 29 29 | n>,.&message,.same_message)) |
| 1df40 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ;.}..<span.class="tok-kw">test</ |
| 1df60 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| 1df80 | 74 3b 69 74 65 72 61 74 65 20 6f 76 65 72 20 61 6e 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f 73 | t;iterate.over.an.array"</s |
| 1dfa0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 1dfc0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | var</span>.sum:.<span.class="tok |
| 1dfe0 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -type">usize</span>.=.<span.clas |
| 1e000 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | s="tok-number">0</span>;.....<sp |
| 1e020 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6d 65 | an.class="tok-kw">for</span>.(me |
| 1e040 | 73 73 61 67 65 29 20 7c 62 79 74 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 62 | ssage).|byte|.{.........sum.+=.b |
| 1e060 | 79 74 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | yte;.....}.....<span.class="tok- |
| 1e080 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 | kw">try</span>.expect(sum.==.<sp |
| 1e0a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 20 2b 20 | an.class="tok-str">'h'</span>.+. |
| 1e0c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e | <span.class="tok-str">'e'</span> |
| 1e0e0 | 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 | .+.<span.class="tok-str">'l'</sp |
| 1e100 | 61 6e 3e 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | an>.*.<span.class="tok-number">2 |
| 1e120 | 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | </span>.+.<span.class="tok-str"> |
| 1e140 | 27 6f 27 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 'o'</span>);.}..<span.class="tok |
| 1e160 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 6f 64 69 66 69 61 62 6c 65 20 61 72 72 61 79 3c 2f 73 | -comment">//.modifiable.array</s |
| 1e180 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | pan>.<span.class="tok-kw">var</s |
| 1e1a0 | 70 61 6e 3e 20 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>.some_integers:.[<span.class |
| 1e1c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 | ="tok-number">100</span>]<span.c |
| 1e1e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">i32</span>.=.<sp |
| 1e200 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 | an.class="tok-null">undefined</s |
| 1e220 | 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | pan>;..<span.class="tok-kw">test |
| 1e240 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 1e260 | 75 6f 74 3b 6d 6f 64 69 66 79 20 61 6e 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | uot;modify.an.array"</span> |
| 1e280 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c | .{.....<span.class="tok-kw">for< |
| 1e2a0 | 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 29 20 7c 2a 69 74 65 6d 2c 20 69 | /span>.(some_integers).|*item,.i |
| 1e2c0 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 69 74 65 6d 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | |.{.........item.*.=.<span.class |
| 1e2e0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c | ="tok-builtin">@intCast</span>(< |
| 1e300 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">i32</span> |
| 1e320 | 2c 20 69 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ,.i);.....}.....<span.class="tok |
| 1e340 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6f 6d 65 5f 69 6e 74 65 | -kw">try</span>.expect(some_inte |
| 1e360 | 67 65 72 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | gers[<span.class="tok-number">10 |
| 1e380 | 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | </span>].==.<span.class="tok-num |
| 1e3a0 | 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ber">10</span>);.....<span.class |
| 1e3c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6f 6d 65 | ="tok-kw">try</span>.expect(some |
| 1e3e0 | 5f 69 6e 74 65 67 65 72 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | _integers[<span.class="tok-numbe |
| 1e400 | 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">99</span>].==.<span.class="to |
| 1e420 | 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | k-number">99</span>);.}..<span.c |
| 1e440 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 72 61 79 20 63 6f 6e 63 | lass="tok-comment">//.array.conc |
| 1e460 | 61 74 65 6e 61 74 69 6f 6e 20 77 6f 72 6b 73 20 69 66 20 74 68 65 20 76 61 6c 75 65 73 20 61 72 | atenation.works.if.the.values.ar |
| 1e480 | 65 20 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e.known</span>.<span.class="tok- |
| 1e4a0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 3c 2f 73 70 61 | comment">//.at.compile.time</spa |
| 1e4c0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>.<span.class="tok-kw">const</s |
| 1e4e0 | 70 61 6e 3e 20 70 61 72 74 5f 6f 6e 65 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.part_one.=.[_]<span.class=" |
| 1e500 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">i32</span>{.<span.clas |
| 1e520 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-number">1</span>,.<span.c |
| 1e540 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | lass="tok-number">2</span>,.<spa |
| 1e560 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c | n.class="tok-number">3</span>,.< |
| 1e580 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e | span.class="tok-number">4</span> |
| 1e5a0 | 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | .};.<span.class="tok-kw">const</ |
| 1e5c0 | 73 70 61 6e 3e 20 70 61 72 74 5f 74 77 6f 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>.part_two.=.[_]<span.class= |
| 1e5e0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">i32</span>{.<span.cla |
| 1e600 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">5</span>,.<span. |
| 1e620 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">6</span>,.<sp |
| 1e640 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">7</span>,. |
| 1e660 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e | <span.class="tok-number">8</span |
| 1e680 | 3e 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | >.};.<span.class="tok-kw">const< |
| 1e6a0 | 2f 73 70 61 6e 3e 20 61 6c 6c 5f 6f 66 5f 69 74 20 3d 20 70 61 72 74 5f 6f 6e 65 20 2b 2b 20 70 | /span>.all_of_it.=.part_one.++.p |
| 1e6c0 | 61 72 74 5f 74 77 6f 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | art_two;.<span.class="tok-kw">co |
| 1e6e0 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 | mptime</span>.{.....assert(mem.e |
| 1e700 | 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | ql(<span.class="tok-type">i32</s |
| 1e720 | 70 61 6e 3e 2c 20 26 61 6d 70 3b 61 6c 6c 5f 6f 66 5f 69 74 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 | pan>,.&all_of_it,.&[_]<s |
| 1e740 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b | pan.class="tok-type">i32</span>{ |
| 1e760 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | .<span.class="tok-number">1</spa |
| 1e780 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | n>,.<span.class="tok-number">2</ |
| 1e7a0 | 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | span>,.<span.class="tok-number"> |
| 1e7c0 | 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 3</span>,.<span.class="tok-numbe |
| 1e7e0 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">4</span>,.<span.class="tok-nu |
| 1e800 | 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">5</span>,.<span.class="tok |
| 1e820 | 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">6</span>,.<span.class=" |
| 1e840 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">7</span>,.<span.clas |
| 1e860 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d 0a 0a | s="tok-number">8</span>.}));.}.. |
| 1e880 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 65 6d | <span.class="tok-comment">//.rem |
| 1e8a0 | 65 6d 62 65 72 20 74 68 61 74 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 61 72 65 20 61 | ember.that.string.literals.are.a |
| 1e8c0 | 72 72 61 79 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | rrays</span>.<span.class="tok-kw |
| 1e8e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ">const</span>.hello.=.<span.cla |
| 1e900 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f | ss="tok-str">"hello"</ |
| 1e920 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | span>;.<span.class="tok-kw">cons |
| 1e940 | 74 3c 2f 73 70 61 6e 3e 20 77 6f 72 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | t</span>.world.=.<span.class="to |
| 1e960 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 6f 72 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b | k-str">"world"</span>; |
| 1e980 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 1e9a0 | 6e 3e 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 20 3d 20 68 65 6c 6c 6f 20 2b 2b 20 3c 73 70 61 6e 20 | n>.hello_world.=.hello.++.<span. |
| 1e9c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 20 26 71 75 6f 74 3b 3c 2f 73 | class="tok-str">"."</s |
| 1e9e0 | 70 61 6e 3e 20 2b 2b 20 77 6f 72 6c 64 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.++.world;.<span.class="tok- |
| 1ea00 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 | kw">comptime</span>.{.....assert |
| 1ea20 | 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | (mem.eql(<span.class="tok-type"> |
| 1ea40 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 2c 20 3c 73 70 61 6e 20 63 6c | u8</span>,.hello_world,.<span.cl |
| 1ea60 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 77 6f 72 6c 64 26 | ass="tok-str">"hello.world& |
| 1ea80 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>));.}..<span.class=" |
| 1eaa0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 2a 20 64 6f 65 73 20 72 65 70 65 61 74 69 6e | tok-comment">//.**.does.repeatin |
| 1eac0 | 67 20 70 61 74 74 65 72 6e 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | g.patterns</span>.<span.class="t |
| 1eae0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 74 74 65 72 6e 20 3d 20 3c 73 | ok-kw">const</span>.pattern.=.<s |
| 1eb00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 26 71 75 6f | pan.class="tok-str">"ab&quo |
| 1eb20 | 74 3b 3c 2f 73 70 61 6e 3e 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | t;</span>.**.<span.class="tok-nu |
| 1eb40 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">3</span>;.<span.class="tok |
| 1eb60 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 | -kw">comptime</span>.{.....asser |
| 1eb80 | 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | t(mem.eql(<span.class="tok-type" |
| 1eba0 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 70 61 74 74 65 72 6e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >u8</span>,.pattern,.<span.class |
| 1ebc0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 61 62 61 62 26 71 75 6f 74 3b 3c 2f 73 | ="tok-str">"ababab"</s |
| 1ebe0 | 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | pan>));.}..<span.class="tok-comm |
| 1ec00 | 65 6e 74 22 3e 2f 2f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 6e 20 61 72 72 61 79 20 74 6f 20 7a | ent">//.initialize.an.array.to.z |
| 1ec20 | 65 72 6f 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ero</span>.<span.class="tok-kw"> |
| 1ec40 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 7a 65 72 6f 20 3d 20 5b 5f 5d 3c 73 70 61 6e | const</span>.all_zero.=.[_]<span |
| 1ec60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 7b 3c 73 70 | .class="tok-type">u16</span>{<sp |
| 1ec80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 7d 20 | an.class="tok-number">0</span>}. |
| 1eca0 | 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f | **.<span.class="tok-number">10</ |
| 1ecc0 | 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | span>;..<span.class="tok-kw">com |
| 1ece0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 61 6c 6c 5f 7a 65 | ptime</span>.{.....assert(all_ze |
| 1ed00 | 72 6f 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ro.len.==.<span.class="tok-numbe |
| 1ed20 | 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 61 6c 6c 5f 7a 65 | r">10</span>);.....assert(all_ze |
| 1ed40 | 72 6f 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | ro[<span.class="tok-number">5</s |
| 1ed60 | 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | pan>].==.<span.class="tok-number |
| 1ed80 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">0</span>);.}..<span.class="tok |
| 1eda0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 75 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f | -comment">//.use.compile-time.co |
| 1edc0 | 64 65 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e | de.to.initialize.an.array</span> |
| 1ede0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 1ee00 | 20 66 61 6e 63 79 5f 61 72 72 61 79 20 3d 20 69 6e 69 74 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e | .fancy_array.=.init:.{.....<span |
| 1ee20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 6e 69 74 69 | .class="tok-kw">var</span>.initi |
| 1ee40 | 61 6c 5f 76 61 6c 75 65 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | al_value:.[<span.class="tok-numb |
| 1ee60 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 5d 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | er">10</span>]Point.=.<span.clas |
| 1ee80 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 | s="tok-null">undefined</span>;.. |
| 1eea0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 | ...<span.class="tok-kw">for</spa |
| 1eec0 | 6e 3e 20 28 69 6e 69 74 69 61 6c 5f 76 61 6c 75 65 29 20 7c 2a 70 74 2c 20 69 7c 20 7b 0a 20 20 | n>.(initial_value).|*pt,.i|.{... |
| 1eee0 | 20 20 20 20 20 20 70 74 2e 2a 20 3d 20 50 6f 69 6e 74 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ......pt.*.=.Point{............. |
| 1ef00 | 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .x.=.<span.class="tok-builtin">@ |
| 1ef20 | 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | intCast</span>(<span.class="tok- |
| 1ef40 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 69 29 2c 0a 20 20 20 20 20 20 20 20 20 20 | type">i32</span>,.i),........... |
| 1ef60 | 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ...y.=.<span.class="tok-builtin" |
| 1ef80 | 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >@intCast</span>(<span.class="to |
| 1efa0 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 69 29 20 2a 20 3c 73 70 61 6e 20 63 | k-type">i32</span>,.i).*.<span.c |
| 1efc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | lass="tok-number">2</span>,..... |
| 1efe0 | 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ....};.....}.....<span.class="to |
| 1f000 | 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 69 6e 69 74 20 69 6e 69 74 69 61 6c | k-kw">break</span>.:init.initial |
| 1f020 | 5f 76 61 6c 75 65 3b 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | _value;.};.<span.class="tok-kw"> |
| 1f040 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | const</span>.Point.=.<span.class |
| 1f060 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a | ="tok-kw">struct</span>.{.....x: |
| 1f080 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 | .<span.class="tok-type">i32</spa |
| 1f0a0 | 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n>,.....y:.<span.class="tok-type |
| 1f0c0 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">i32</span>,.};..<span.class="t |
| 1f0e0 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| 1f100 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 72 72 61 | tok-str">"compile-time.arra |
| 1f120 | 79 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | y.initialization"</span>.{. |
| 1f140 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 1f160 | 61 6e 3e 20 65 78 70 65 63 74 28 66 61 6e 63 79 5f 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 | an>.expect(fancy_array[<span.cla |
| 1f180 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 2e 78 20 3d 3d 20 3c | ss="tok-number">4</span>].x.==.< |
| 1f1a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e | span.class="tok-number">4</span> |
| 1f1c0 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | );.....<span.class="tok-kw">try< |
| 1f1e0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 61 6e 63 79 5f 61 72 72 61 79 5b 3c 73 70 61 6e 20 | /span>.expect(fancy_array[<span. |
| 1f200 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 2e 79 20 3d | class="tok-number">4</span>].y.= |
| 1f220 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 | =.<span.class="tok-number">8</sp |
| 1f240 | 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | an>);.}..<span.class="tok-commen |
| 1f260 | 74 22 3e 2f 2f 20 63 61 6c 6c 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 69 6e 69 74 69 61 6c | t">//.call.a.function.to.initial |
| 1f280 | 69 7a 65 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ize.an.array</span>.<span.class= |
| 1f2a0 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 6f 72 65 5f 70 6f 69 6e 74 73 20 | "tok-kw">var</span>.more_points. |
| 1f2c0 | 3d 20 5b 5f 5d 50 6f 69 6e 74 7b 6d 61 6b 65 50 6f 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | =.[_]Point{makePoint(<span.class |
| 1f2e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 7d 20 2a 2a 20 3c 73 70 61 | ="tok-number">3</span>)}.**.<spa |
| 1f300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a | n.class="tok-number">10</span>;. |
| 1f320 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c | <span.class="tok-kw">fn</span>.< |
| 1f340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 6b 65 50 6f 69 6e 74 3c 2f 73 | span.class="tok-fn">makePoint</s |
| 1f360 | 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | pan>(x:.<span.class="tok-type">i |
| 1f380 | 33 32 3c 2f 73 70 61 6e 3e 29 20 50 6f 69 6e 74 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | 32</span>).Point.{.....<span.cla |
| 1f3a0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 7b | ss="tok-kw">return</span>.Point{ |
| 1f3c0 | 0a 20 20 20 20 20 20 20 20 2e 78 20 3d 20 78 2c 0a 20 20 20 20 20 20 20 20 2e 79 20 3d 20 78 20 | ..........x.=.x,..........y.=.x. |
| 1f3e0 | 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 | *.<span.class="tok-number">2</sp |
| 1f400 | 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | an>,.....};.}.<span.class="tok-k |
| 1f420 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | w">test</span>.<span.class="tok- |
| 1f440 | 73 74 72 22 3e 26 71 75 6f 74 3b 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 | str">"array.initialization. |
| 1f460 | 77 69 74 68 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | with.function.calls"</span> |
| 1f480 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | .{.....<span.class="tok-kw">try< |
| 1f4a0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 6f 72 65 5f 70 6f 69 6e 74 73 5b 3c 73 70 61 6e 20 | /span>.expect(more_points[<span. |
| 1f4c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 2e 78 20 3d | class="tok-number">4</span>].x.= |
| 1f4e0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 | =.<span.class="tok-number">3</sp |
| 1f500 | 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>);.....<span.class="tok-kw">t |
| 1f520 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 6f 72 65 5f 70 6f 69 6e 74 73 5b 3c 73 70 | ry</span>.expect(more_points[<sp |
| 1f540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 2e | an.class="tok-number">4</span>]. |
| 1f560 | 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c | y.==.<span.class="tok-number">6< |
| 1f580 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>);.....<span.class="tok-kw |
| 1f5a0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 6f 72 65 5f 70 6f 69 6e 74 73 2e | ">try</span>.expect(more_points. |
| 1f5c0 | 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | len.==.<span.class="tok-number"> |
| 1f5e0 | 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | 10</span>);.}</code></pre><pre>< |
| 1f600 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 72 | code.class="shell">$.zig.test.ar |
| 1f620 | 72 61 79 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 34 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 69 | rays.zig.Test.[1/4].test."i |
| 1f640 | 74 65 72 61 74 65 20 6f 76 65 72 20 61 6e 20 61 72 72 61 79 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 | terate.over.an.array".....T |
| 1f660 | 65 73 74 20 5b 32 2f 34 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6d 6f 64 69 66 79 20 61 6e 20 61 | est.[2/4].test."modify.an.a |
| 1f680 | 72 72 61 79 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 33 2f 34 5d 20 74 65 73 74 20 26 | rray".....Test.[3/4].test.& |
| 1f6a0 | 71 75 6f 74 3b 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 | quot;compile-time.array.initiali |
| 1f6c0 | 7a 61 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 34 2f 34 5d 20 74 65 73 74 | zation".....Test.[4/4].test |
| 1f6e0 | 20 26 71 75 6f 74 3b 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 77 69 74 68 | ."array.initialization.with |
| 1f700 | 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 34 | .function.calls"......All.4 |
| 1f720 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | .tests.passed..</code></pre>.... |
| 1f740 | 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 | ....<p>See.also:</p><ul>.<li><a. |
| 1f760 | 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | href="#for">for</a></li>.<li><a. |
| 1f780 | 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | href="#Slices">Slices</a></li>.< |
| 1f7a0 | 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 6e 6f 6e 79 6d 6f 75 73 2d 4c | /ul>.........<h2.id="Anonymous-L |
| 1f7c0 | 69 73 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 6e 6f 6e | ist-Literals"><a.href="#toc-Anon |
| 1f7e0 | 79 6d 6f 75 73 2d 4c 69 73 74 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 4c | ymous-List-Literals">Anonymous.L |
| 1f800 | 69 73 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | ist.Literals</a>.<a.class="hdr". |
| 1f820 | 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 4c 69 73 74 2d 4c 69 74 65 72 61 6c 73 22 3e | href="#Anonymous-List-Literals"> |
| 1f840 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 69 6d 69 6c 61 72 20 74 6f | ..</a></h2>........<p>Similar.to |
| 1f860 | 20 3c 61 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c | .<a.href="#Enum-Literals">Enum.L |
| 1f880 | 69 74 65 72 61 6c 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d | iterals</a>.and.<a.href="#Anonym |
| 1f8a0 | 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 | ous-Struct-Literals">Anonymous.S |
| 1f8c0 | 74 72 75 63 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 0a 20 20 20 20 20 20 74 68 65 20 74 79 70 | truct.Literals</a>.......the.typ |
| 1f8e0 | 65 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 61 72 72 61 79 20 6c 69 74 65 | e.can.be.omitted.from.array.lite |
| 1f900 | 72 61 6c 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | rals:</p>.......<p.class="file"> |
| 1f920 | 61 6e 6f 6e 5f 6c 69 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | anon_list.zig</p><pre><code.clas |
| 1f940 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 1f960 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| 1f980 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 1f9a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 1f9c0 | 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | span>);.<span.class="tok-kw">con |
| 1f9e0 | 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 | st</span>.expect.=.std.testing.e |
| 1fa00 | 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | xpect;..<span.class="tok-kw">tes |
| 1fa20 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>.<span.class="tok-str">& |
| 1fa40 | 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 | quot;anonymous.list.literal.synt |
| 1fa60 | 61 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ax"</span>.{.....<span.clas |
| 1fa80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 3a 20 5b 3c 73 | s="tok-kw">var</span>.array:.[<s |
| 1faa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d | pan.class="tok-number">4</span>] |
| 1fac0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| 1fae0 | 20 3d 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 | .=..{<span.class="tok-number">11 |
| 1fb00 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>,.<span.class="tok-number |
| 1fb20 | 22 3e 32 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ">22</span>,.<span.class="tok-nu |
| 1fb40 | 6d 62 65 72 22 3e 33 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | mber">33</span>,.<span.class="to |
| 1fb60 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 34 3c 2f 73 70 61 6e 3e 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | k-number">44</span>};.....<span. |
| 1fb80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 1fba0 | 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | (array[<span.class="tok-number"> |
| 1fbc0 | 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | 0</span>].==.<span.class="tok-nu |
| 1fbe0 | 6d 62 65 72 22 3e 31 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | mber">11</span>);.....<span.clas |
| 1fc00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 | s="tok-kw">try</span>.expect(arr |
| 1fc20 | 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | ay[<span.class="tok-number">1</s |
| 1fc40 | 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | pan>].==.<span.class="tok-number |
| 1fc60 | 22 3e 32 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">22</span>);.....<span.class="t |
| 1fc80 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c | ok-kw">try</span>.expect(array[< |
| 1fca0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e | span.class="tok-number">2</span> |
| 1fcc0 | 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 33 | ].==.<span.class="tok-number">33 |
| 1fce0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>);.....<span.class="tok-k |
| 1fd00 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e | w">try</span>.expect(array[<span |
| 1fd20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 20 3d 3d | .class="tok-number">3</span>].== |
| 1fd40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 34 3c 2f 73 70 | .<span.class="tok-number">44</sp |
| 1fd60 | 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | an>);.}</code></pre><pre><code.c |
| 1fd80 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 6e 6f 6e 5f 6c 69 73 | lass="shell">$.zig.test.anon_lis |
| 1fda0 | 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 61 6e 6f 6e | t.zig.Test.[1/1].test."anon |
| 1fdc0 | 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 2e | ymous.list.literal.syntax". |
| 1fde0 | 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e | .....All.1.tests.passed..</code> |
| 1fe00 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 72 65 | </pre>........<p>.......If.there |
| 1fe20 | 20 69 73 20 6e 6f 20 74 79 70 65 20 69 6e 20 74 68 65 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 | .is.no.type.in.the.result.locati |
| 1fe40 | 6f 6e 20 74 68 65 6e 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 61 | on.then.an.anonymous.list.litera |
| 1fe60 | 6c 20 61 63 74 75 61 6c 6c 79 0a 20 20 20 20 20 20 74 75 72 6e 73 20 69 6e 74 6f 20 61 20 3c 61 | l.actually.......turns.into.a.<a |
| 1fe80 | 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 77 69 74 68 20 | .href="#struct">struct</a>.with. |
| 1fea0 | 6e 75 6d 62 65 72 65 64 20 66 69 65 6c 64 20 6e 61 6d 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | numbered.field.names:.......</p> |
| 1fec0 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e 66 65 72 5f 6c 69 73 | .......<p.class="file">infer_lis |
| 1fee0 | 74 5f 6c 69 74 65 72 61 6c 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | t_literal.zig</p><pre><code.clas |
| 1ff00 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 1ff20 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| 1ff40 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 1ff60 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 1ff80 | 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | span>);.<span.class="tok-kw">con |
| 1ffa0 | 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 | st</span>.expect.=.std.testing.e |
| 1ffc0 | 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | xpect;..<span.class="tok-kw">tes |
| 1ffe0 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>.<span.class="tok-str">& |
| 20000 | 71 75 6f 74 3b 66 75 6c 6c 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 61 | quot;fully.anonymous.list.litera |
| 20020 | 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | l"</span>.{.....<span.class |
| 20040 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 64 75 6d 70 28 2e 7b 20 3c 73 70 | ="tok-kw">try</span>.dump(.{.<sp |
| 20060 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e | an.class="tok-builtin">@as</span |
| 20080 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 | >(<span.class="tok-type">u32</sp |
| 200a0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | an>,.<span.class="tok-number">12 |
| 200c0 | 33 34 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | 34</span>),.<span.class="tok-bui |
| 200e0 | 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ltin">@as</span>(<span.class="to |
| 20100 | 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">f64</span>,.<span.class= |
| 20120 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 | "tok-number">12.34</span>),.<spa |
| 20140 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 | n.class="tok-null">true</span>,. |
| 20160 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 | <span.class="tok-str">"hi&q |
| 20180 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>});.}..<span.class="t |
| 201a0 | 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ok-kw">fn</span>.<span.class="to |
| 201c0 | 6b 2d 66 6e 22 3e 64 75 6d 70 3c 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c | k-fn">dump</span>(args:.<span.cl |
| 201e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 | ass="tok-kw">anytype</span>).!<s |
| 20200 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e | pan.class="tok-type">void</span> |
| 20220 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | .{.....<span.class="tok-kw">try< |
| 20240 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 67 73 2e 40 26 71 75 6f 74 3b 30 26 71 75 6f 74 | /span>.expect(args.@"0" |
| 20260 | 3b 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | ;.==.<span.class="tok-number">12 |
| 20280 | 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 34</span>);.....<span.class="tok |
| 202a0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 67 73 2e 40 26 71 75 | -kw">try</span>.expect(args.@&qu |
| 202c0 | 6f 74 3b 31 26 71 75 6f 74 3b 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ot;1".==.<span.class="tok-n |
| 202e0 | 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | umber">12.34</span>);.....<span. |
| 20300 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 20320 | 28 61 72 67 73 2e 40 26 71 75 6f 74 3b 32 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 3c 73 70 61 6e | (args.@"2");.....<span |
| 20340 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 20360 | 74 28 61 72 67 73 2e 40 26 71 75 6f 74 3b 33 26 71 75 6f 74 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 | t(args.@"3"[<span.clas |
| 20380 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 | s="tok-number">0</span>].==.<spa |
| 203a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | n.class="tok-str">'h'</span>);.. |
| 203c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 203e0 | 6e 3e 20 65 78 70 65 63 74 28 61 72 67 73 2e 40 26 71 75 6f 74 3b 33 26 71 75 6f 74 3b 5b 3c 73 | n>.expect(args.@"3"[<s |
| 20400 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d | pan.class="tok-number">1</span>] |
| 20420 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 69 27 3c 2f 73 | .==.<span.class="tok-str">'i'</s |
| 20440 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | pan>);.}</code></pre><pre><code. |
| 20460 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 69 6e 66 65 72 5f 6c | class="shell">$.zig.test.infer_l |
| 20480 | 69 73 74 5f 6c 69 74 65 72 61 6c 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 | ist_literal.zig.Test.[1/1].test. |
| 204a0 | 26 71 75 6f 74 3b 66 75 6c 6c 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 | "fully.anonymous.list.liter |
| 204c0 | 61 6c 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | al"......All.1.tests.passed |
| 204e0 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c | ..</code></pre>................< |
| 20500 | 68 32 20 69 64 3d 22 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 3e | h2.id="Multidimensional-Arrays"> |
| 20520 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 | <a.href="#toc-Multidimensional-A |
| 20540 | 72 72 61 79 73 22 3e 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 41 72 72 61 79 73 3c 2f | rrays">Multidimensional.Arrays</ |
| 20560 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 75 6c 74 69 64 69 | a>.<a.class="hdr".href="#Multidi |
| 20580 | 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | mensional-Arrays">..</a></h2>... |
| 205a0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 75 74 6c 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 | .....<p>.......Mutlidimensional. |
| 205c0 | 61 72 72 61 79 73 20 63 61 6e 20 62 65 20 63 72 65 61 74 65 64 20 62 79 20 6e 65 73 74 69 6e 67 | arrays.can.be.created.by.nesting |
| 205e0 | 20 61 72 72 61 79 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | .arrays:.......</p>.......<p.cla |
| 20600 | 73 73 3d 22 66 69 6c 65 22 3e 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2e 7a 69 67 3c 2f | ss="file">multidimensional.zig</ |
| 20620 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 20640 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d | lass="tok-kw">const</span>.std.= |
| 20660 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f | .<span.class="tok-builtin">@impo |
| 20680 | 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | rt</span>(<span.class="tok-str"> |
| 206a0 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 | "std"</span>);.<span.c |
| 206c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | lass="tok-kw">const</span>.expec |
| 206e0 | 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 | t.=.std.testing.expect;..<span.c |
| 20700 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 74 34 78 | lass="tok-kw">const</span>.mat4x |
| 20720 | 34 20 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c | 4.=.[<span.class="tok-number">4< |
| 20740 | 2f 73 70 61 6e 3e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | /span>][<span.class="tok-number" |
| 20760 | 3e 34 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | >4</span>]<span.class="tok-type" |
| 20780 | 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >f32</span>{.....[_]<span.class= |
| 207a0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">f32</span>{.<span.cla |
| 207c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | ss="tok-number">1.0</span>,.<spa |
| 207e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c | n.class="tok-number">0.0</span>, |
| 20800 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 | .<span.class="tok-number">0.0</s |
| 20820 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | pan>,.<span.class="tok-number">0 |
| 20840 | 2e 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .0</span>.},.....[_]<span.class= |
| 20860 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">f32</span>{.<span.cla |
| 20880 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | ss="tok-number">0.0</span>,.<spa |
| 208a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c | n.class="tok-number">1.0</span>, |
| 208c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 | .<span.class="tok-number">0.0</s |
| 208e0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | pan>,.<span.class="tok-number">1 |
| 20900 | 2e 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .0</span>.},.....[_]<span.class= |
| 20920 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">f32</span>{.<span.cla |
| 20940 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | ss="tok-number">0.0</span>,.<spa |
| 20960 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c | n.class="tok-number">0.0</span>, |
| 20980 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 | .<span.class="tok-number">1.0</s |
| 209a0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | pan>,.<span.class="tok-number">0 |
| 209c0 | 2e 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .0</span>.},.....[_]<span.class= |
| 209e0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">f32</span>{.<span.cla |
| 20a00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | ss="tok-number">0.0</span>,.<spa |
| 20a20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c | n.class="tok-number">0.0</span>, |
| 20a40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 | .<span.class="tok-number">0.0</s |
| 20a60 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | pan>,.<span.class="tok-number">1 |
| 20a80 | 2e 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .0</span>.},.};.<span.class="tok |
| 20aa0 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 20ac0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 | k-str">"multidimensional.ar |
| 20ae0 | 72 61 79 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | rays"</span>.{.....<span.cl |
| 20b00 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 | ass="tok-comment">//.Access.the. |
| 20b20 | 32 44 20 61 72 72 61 79 20 62 79 20 69 6e 64 65 78 69 6e 67 20 74 68 65 20 6f 75 74 65 72 20 61 | 2D.array.by.indexing.the.outer.a |
| 20b40 | 72 72 61 79 2c 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 69 6e 6e 65 72 20 61 72 72 61 79 2e 3c | rray,.and.then.the.inner.array.< |
| 20b60 | 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | /span>.....<span.class="tok-kw"> |
| 20b80 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 61 74 34 78 34 5b 3c 73 70 61 6e 20 63 | try</span>.expect(mat4x4[<span.c |
| 20ba0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 5b 3c 73 70 61 | lass="tok-number">1</span>][<spa |
| 20bc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d | n.class="tok-number">1</span>].= |
| 20be0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f | =.<span.class="tok-number">1.0</ |
| 20c00 | 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | span>);......<span.class="tok-co |
| 20c20 | 6d 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 20 77 65 20 69 74 65 72 61 74 65 20 77 69 74 68 20 66 | mment">//.Here.we.iterate.with.f |
| 20c40 | 6f 72 20 6c 6f 6f 70 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | or.loops.</span>.....<span.class |
| 20c60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6d 61 74 34 78 34 29 20 7c 72 | ="tok-kw">for</span>.(mat4x4).|r |
| 20c80 | 6f 77 2c 20 72 6f 77 5f 69 6e 64 65 78 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ow,.row_index|.{.........<span.c |
| 20ca0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 72 6f 77 29 20 7c | lass="tok-kw">for</span>.(row).| |
| 20cc0 | 63 65 6c 6c 2c 20 63 6f 6c 75 6d 6e 5f 69 6e 64 65 78 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | cell,.column_index|.{........... |
| 20ce0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | ..<span.class="tok-kw">if</span> |
| 20d00 | 20 28 72 6f 77 5f 69 6e 64 65 78 20 3d 3d 20 63 6f 6c 75 6d 6e 5f 69 6e 64 65 78 29 20 7b 0a 20 | .(row_index.==.column_index).{.. |
| 20d20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ...............<span.class="tok- |
| 20d40 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 65 6c 6c 20 3d 3d 20 3c 73 | kw">try</span>.expect(cell.==.<s |
| 20d60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e | pan.class="tok-number">1.0</span |
| 20d80 | 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | >);.............}.........}..... |
| 20da0 | 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | }.}</code></pre><pre><code.class |
| 20dc0 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 6d 75 6c 74 69 64 69 6d 65 6e 73 69 | ="shell">$.zig.test.multidimensi |
| 20de0 | 6f 6e 61 6c 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6d | onal.zig.Test.[1/1].test."m |
| 20e00 | 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 72 61 79 73 26 71 75 6f 74 3b 2e 2e 2e 20 | ultidimensional.arrays".... |
| 20e20 | 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | ..All.1.tests.passed..</code></p |
| 20e40 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 65 6e 74 69 | re>................<h2.id="Senti |
| 20e60 | 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 66 3d 22 | nel-Terminated-Arrays"><a.href=" |
| 20e80 | 23 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 | #toc-Sentinel-Terminated-Arrays" |
| 20ea0 | 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 20 | >Sentinel-Terminated.Arrays</a>. |
| 20ec0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 | <a.class="hdr".href="#Sentinel-T |
| 20ee0 | 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | erminated-Arrays">..</a></h2>... |
| 20f00 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 20 | .....<p>.......The.syntax.<code. |
| 20f20 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 4e 3a 78 5d 54 3c 2f 63 6f 64 65 3e 20 64 65 73 63 72 69 | class="zig">[N:x]T</code>.descri |
| 20f40 | 62 65 73 20 61 6e 20 61 72 72 61 79 20 77 68 69 63 68 20 68 61 73 20 61 20 73 65 6e 74 69 6e 65 | bes.an.array.which.has.a.sentine |
| 20f60 | 6c 20 65 6c 65 6d 65 6e 74 20 6f 66 20 76 61 6c 75 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | l.element.of.value.<code.class=" |
| 20f80 | 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 61 74 20 74 68 65 0a 20 20 20 20 20 20 69 6e 64 65 78 | zig">x</code>.at.the.......index |
| 20fa0 | 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .corresponding.to.<code.class="z |
| 20fc0 | 69 67 22 3e 6c 65 6e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ig">len</code>........</p>...... |
| 20fe0 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 | .<p.class="file">null_terminated |
| 21000 | 5f 61 72 72 61 79 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | _array.zig</p><pre><code.class=" |
| 21020 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 21040 | 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | /span>.std.=.<span.class="tok-bu |
| 21060 | 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | iltin">@import</span>(<span.clas |
| 21080 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 | s="tok-str">"std"</spa |
| 210a0 | 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | n>);.<span.class="tok-kw">const< |
| 210c0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 | /span>.expect.=.std.testing.expe |
| 210e0 | 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ct;..<span.class="tok-kw">test</ |
| 21100 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| 21120 | 74 3b 6e 75 6c 6c 20 74 65 72 6d 69 6e 61 74 65 64 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f 73 | t;null.terminated.array"</s |
| 21140 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 21160 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 3a 3c 73 70 61 6e 20 63 6c | const</span>.array.=.[_:<span.cl |
| 21180 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 | ass="tok-number">0</span>]<span. |
| 211a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 3c 73 70 61 | class="tok-type">u8</span>.{<spa |
| 211c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c | n.class="tok-number">1</span>,.< |
| 211e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e | span.class="tok-number">2</span> |
| 21200 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 | ,.<span.class="tok-number">3</sp |
| 21220 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c | an>,.<span.class="tok-number">4< |
| 21240 | 2f 73 70 61 6e 3e 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | /span>};......<span.class="tok-k |
| 21260 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | w">try</span>.expect(<span.class |
| 21280 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 72 | ="tok-builtin">@TypeOf</span>(ar |
| 212a0 | 72 61 79 29 20 3d 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ray).==.[<span.class="tok-number |
| 212c0 | 22 3e 34 3c 2f 73 70 61 6e 3e 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ">4</span>:<span.class="tok-numb |
| 212e0 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | er">0</span>]<span.class="tok-ty |
| 21300 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">u8</span>);.....<span.class= |
| 21320 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 | "tok-kw">try</span>.expect(array |
| 21340 | 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | .len.==.<span.class="tok-number" |
| 21360 | 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >4</span>);.....<span.class="tok |
| 21380 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 | -kw">try</span>.expect(array[<sp |
| 213a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 20 | an.class="tok-number">4</span>]. |
| 213c0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 | ==.<span.class="tok-number">0</s |
| 213e0 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | pan>);.}</code></pre><pre><code. |
| 21400 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 6e 75 6c 6c 5f 74 65 | class="shell">$.zig.test.null_te |
| 21420 | 72 6d 69 6e 61 74 65 64 5f 61 72 72 61 79 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 | rminated_array.zig.Test.[1/1].te |
| 21440 | 73 74 20 26 71 75 6f 74 3b 6e 75 6c 6c 20 74 65 72 6d 69 6e 61 74 65 64 20 61 72 72 61 79 26 71 | st."null.terminated.array&q |
| 21460 | 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | uot;......All.1.tests.passed..</ |
| 21480 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c | code></pre>........<p>See.also:< |
| 214a0 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 | /p><ul>.<li><a.href="#Sentinel-T |
| 214c0 | 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 | erminated-Pointers">Sentinel-Ter |
| 214e0 | 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | minated.Pointers</a></li>.<li><a |
| 21500 | 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 | .href="#Sentinel-Terminated-Slic |
| 21520 | 65 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 6c 69 63 65 73 3c 2f | es">Sentinel-Terminated.Slices</ |
| 21540 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 | a></li>.</ul>................... |
| 21560 | 20 20 20 20 3c 68 31 20 69 64 3d 22 56 65 63 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ....<h1.id="Vectors"><a.href="#t |
| 21580 | 6f 63 2d 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | oc-Vectors">Vectors</a>.<a.class |
| 215a0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ="hdr".href="#Vectors">..</a></h |
| 215c0 | 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 76 65 63 74 6f 72 20 69 73 20 | 1>........<p>.......A.vector.is. |
| 215e0 | 61 20 67 72 6f 75 70 20 6f 66 20 62 6f 6f 6c 65 61 6e 73 2c 20 3c 61 20 68 72 65 66 3d 22 23 49 | a.group.of.booleans,.<a.href="#I |
| 21600 | 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 | ntegers">Integers</a>,.<a.href=" |
| 21620 | 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d | #Floats">Floats</a>,.or.<a.href= |
| 21640 | 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 77 68 69 63 68 20 61 | "#Pointers">Pointers</a>.which.a |
| 21660 | 72 65 20 6f 70 65 72 61 74 65 64 20 6f 6e 0a 20 20 20 20 20 20 69 6e 20 70 61 72 61 6c 6c 65 6c | re.operated.on.......in.parallel |
| 21680 | 20 75 73 69 6e 67 20 61 20 73 69 6e 67 6c 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 28 3c 61 20 | .using.a.single.instruction.(<a. |
| 216a0 | 68 72 65 66 3d 22 23 53 49 4d 44 22 3e 53 49 4d 44 3c 2f 61 3e 29 2e 20 56 65 63 74 6f 72 20 74 | href="#SIMD">SIMD</a>)..Vector.t |
| 216c0 | 79 70 65 73 20 61 72 65 20 63 72 65 61 74 65 64 20 77 69 74 68 20 74 68 65 20 62 75 69 6c 74 69 | ypes.are.created.with.the.builti |
| 216e0 | 6e 20 66 75 6e 63 74 69 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 22 3e 40 54 79 70 65 | n.function.<a.href="#Type">@Type |
| 21700 | 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 6f 72 20 75 73 69 6e 67 20 74 68 65 20 73 68 6f 72 74 68 61 | </a>,.......or.using.the.shortha |
| 21720 | 6e 64 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 6d 65 74 61 | nd.as.<code.class="zig">std.meta |
| 21740 | 2e 56 65 63 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .Vector</code>........</p>...... |
| 21760 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 4f 44 4f 20 74 61 6c 6b 20 61 62 6f 75 74 20 43 20 41 42 49 | .<p>.......TODO.talk.about.C.ABI |
| 21780 | 20 69 6e 74 65 72 6f 70 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | .interop.......</p>.......<h2.id |
| 217a0 | 3d 22 53 49 4d 44 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 49 4d 44 22 3e 53 49 4d 44 | ="SIMD"><a.href="#toc-SIMD">SIMD |
| 217c0 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 49 4d 44 22 | </a>.<a.class="hdr".href="#SIMD" |
| 217e0 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 4f | >..</a></h2>........<p>.......TO |
| 21800 | 44 4f 20 5a 69 67 27 73 20 53 49 4d 44 20 61 62 69 6c 69 74 69 65 73 20 61 72 65 20 6a 75 73 74 | DO.Zig's.SIMD.abilities.are.just |
| 21820 | 20 62 65 67 69 6e 6e 69 6e 67 20 74 6f 20 62 65 20 66 6c 65 73 68 65 64 20 6f 75 74 2e 20 48 65 | .beginning.to.be.fleshed.out..He |
| 21840 | 72 65 20 61 72 65 20 73 6f 6d 65 20 74 61 6c 6b 69 6e 67 20 70 6f 69 6e 74 73 20 74 6f 20 75 70 | re.are.some.talking.points.to.up |
| 21860 | 64 61 74 65 20 74 68 65 0a 20 20 20 20 20 20 64 6f 63 73 20 77 69 74 68 3a 0a 20 20 20 20 20 20 | date.the.......docs.with:....... |
| 21880 | 2a 20 57 68 61 74 20 6b 69 6e 64 20 6f 66 20 6f 70 65 72 61 74 69 6f 6e 73 20 63 61 6e 20 79 6f | *.What.kind.of.operations.can.yo |
| 218a0 | 75 20 64 6f 3f 20 41 6c 6c 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 6f 6e 20 69 6e 74 65 | u.do?.All.the.operations.on.inte |
| 218c0 | 67 65 72 73 20 61 6e 64 20 66 6c 6f 61 74 73 3f 20 57 68 61 74 20 61 62 6f 75 74 20 6d 69 78 69 | gers.and.floats?.What.about.mixi |
| 218e0 | 6e 67 20 73 63 61 6c 61 72 20 61 6e 64 20 76 65 63 74 6f 72 3f 0a 20 20 20 20 20 20 2a 20 48 6f | ng.scalar.and.vector?.......*.Ho |
| 21900 | 77 20 74 6f 20 63 6f 6e 76 65 72 74 20 74 6f 2f 66 72 6f 6d 20 76 65 63 74 6f 72 73 2f 61 72 72 | w.to.convert.to/from.vectors/arr |
| 21920 | 61 79 73 0a 20 20 20 20 20 20 2a 20 48 6f 77 20 74 6f 20 61 63 63 65 73 73 20 69 6e 64 69 76 69 | ays.......*.How.to.access.indivi |
| 21940 | 64 75 61 6c 20 65 6c 65 6d 65 6e 74 73 20 66 72 6f 6d 20 76 65 63 74 6f 72 73 2c 20 68 6f 77 20 | dual.elements.from.vectors,.how. |
| 21960 | 74 6f 20 6c 6f 6f 70 20 6f 76 65 72 20 74 68 65 20 65 6c 65 6d 65 6e 74 73 0a 20 20 20 20 20 20 | to.loop.over.the.elements....... |
| 21980 | 2a 20 22 73 68 75 66 66 6c 65 22 0a 20 20 20 20 20 20 2a 20 41 64 76 69 63 65 20 6f 6e 20 77 72 | *."shuffle".......*.Advice.on.wr |
| 219a0 | 69 74 69 6e 67 20 68 69 67 68 20 70 65 72 66 20 73 6f 66 74 77 61 72 65 2c 20 68 6f 77 20 74 6f | iting.high.perf.software,.how.to |
| 219c0 | 20 61 62 73 74 72 61 63 74 20 74 68 65 20 62 65 73 74 20 77 61 79 0a 20 20 20 20 20 20 3c 2f 70 | .abstract.the.best.way.......</p |
| 219e0 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 50 | >......................<h1.id="P |
| 21a00 | 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 6f 69 6e 74 65 72 73 22 | ointers"><a.href="#toc-Pointers" |
| 21a20 | 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | >Pointers</a>.<a.class="hdr".hre |
| 21a40 | 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 | f="#Pointers">..</a></h1>....... |
| 21a60 | 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 74 77 6f 20 6b 69 6e 64 73 20 6f 66 20 | .<p>.......Zig.has.two.kinds.of. |
| 21a80 | 70 6f 69 6e 74 65 72 73 3a 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 61 6e 64 20 6d 61 6e 79 2d 69 | pointers:.single-item.and.many-i |
| 21aa0 | 74 65 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | tem........</p>.......<ul>...... |
| 21ac0 | 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 54 3c 2f 63 | .....<li><code.class="zig">*T</c |
| 21ae0 | 6f 64 65 3e 20 2d 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 74 6f 20 65 78 | ode>.-.single-item.pointer.to.ex |
| 21b00 | 61 63 74 6c 79 20 6f 6e 65 20 69 74 65 6d 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | actly.one.item..............<ul> |
| 21b20 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 64 65 72 65 | ...............<li>Supports.dere |
| 21b40 | 66 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 2e | f.syntax:.<code.class="zig">ptr. |
| 21b60 | 2a 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | *</code></li>.............</ul>. |
| 21b80 | 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 | ..........</li>...........<li><c |
| 21ba0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 6d 61 | ode.class="zig">[*]T</code>.-.ma |
| 21bc0 | 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 74 6f 20 75 6e 6b 6e 6f 77 6e 20 6e 75 6d 62 65 | ny-item.pointer.to.unknown.numbe |
| 21be0 | 72 20 6f 66 20 69 74 65 6d 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | r.of.items..............<ul>.... |
| 21c00 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 69 6e 64 65 78 20 73 79 | ...........<li>Supports.index.sy |
| 21c20 | 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 5b 69 5d 3c 2f | ntax:.<code.class="zig">ptr[i]</ |
| 21c40 | 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 | code></li>...............<li>Sup |
| 21c60 | 70 6f 72 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ports.slice.syntax:.<code.class= |
| 21c80 | 22 7a 69 67 22 3e 70 74 72 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 | "zig">ptr[start..end]</code></li |
| 21ca0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 70 6f 69 | >...............<li>Supports.poi |
| 21cc0 | 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | nter.arithmetic:.<code.class="zi |
| 21ce0 | 67 22 3e 70 74 72 20 2b 20 78 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | g">ptr.+.x</code>,.<code.class=" |
| 21d00 | 7a 69 67 22 3e 70 74 72 20 2d 20 78 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | zig">ptr.-.x</code></li>........ |
| 21d20 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f | .......<li><code.class="zig">T</ |
| 21d40 | 63 6f 64 65 3e 20 6d 75 73 74 20 68 61 76 65 20 61 20 6b 6e 6f 77 6e 20 73 69 7a 65 2c 20 77 68 | code>.must.have.a.known.size,.wh |
| 21d60 | 69 63 68 20 6d 65 61 6e 73 20 74 68 61 74 20 69 74 20 63 61 6e 6e 6f 74 20 62 65 0a 20 20 20 20 | ich.means.that.it.cannot.be..... |
| 21d80 | 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ..........<code.class="zig"><spa |
| 21da0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e | n.class="tok-type">c_void</span> |
| 21dc0 | 3c 2f 63 6f 64 65 3e 20 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 3c 61 20 68 72 65 66 3d 22 23 6f | </code>.or.any.other.<a.href="#o |
| 21de0 | 70 61 71 75 65 22 3e 6f 70 61 71 75 65 20 74 79 70 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 | paque">opaque.type</a>.</li>.... |
| 21e00 | 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 | .........</ul>...........</li>.. |
| 21e20 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 73 65 20 74 79 70 65 73 20 | .....</ul>.......<p>These.types. |
| 21e40 | 61 72 65 20 63 6c 6f 73 65 6c 79 20 72 65 6c 61 74 65 64 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 | are.closely.related.to.<a.href=" |
| 21e60 | 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d | #Arrays">Arrays</a>.and.<a.href= |
| 21e80 | 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | "#Slices">Slices</a>:</p>....... |
| 21ea0 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 | ..<ul>.............<li><code.cla |
| 21ec0 | 73 73 3d 22 7a 69 67 22 3e 2a 5b 4e 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 70 6f 69 6e 74 65 72 20 | ss="zig">*[N]T</code>.-.pointer. |
| 21ee0 | 74 6f 20 4e 20 69 74 65 6d 73 2c 20 73 61 6d 65 20 61 73 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 | to.N.items,.same.as.single-item. |
| 21f00 | 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | pointer.to.an.array............. |
| 21f20 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 | .<ul>.................<li>Suppor |
| 21f40 | 74 73 20 69 6e 64 65 78 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ts.index.syntax:.<code.class="zi |
| 21f60 | 67 22 3e 61 72 72 61 79 5f 70 74 72 5b 69 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | g">array_ptr[i]</code></li>..... |
| 21f80 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 73 6c 69 63 65 20 73 | ............<li>Supports.slice.s |
| 21fa0 | 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 72 72 61 79 5f 70 | yntax:.<code.class="zig">array_p |
| 21fc0 | 74 72 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | tr[start..end]</code></li>...... |
| 21fe0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 6c 65 6e 20 70 72 6f 70 | ...........<li>Supports.len.prop |
| 22000 | 65 72 74 79 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 72 72 61 79 5f 70 74 | erty:.<code.class="zig">array_pt |
| 22020 | 72 2e 6c 65 6e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | r.len</code></li>.............</ |
| 22040 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | ul>.............</li>.........</ |
| 22060 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | ul>.........<ul>.............<li |
| 22080 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 | ><code.class="zig">[]T</code>.-. |
| 220a0 | 70 6f 69 6e 74 65 72 20 74 6f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6e 75 6d 62 65 72 20 | pointer.to.runtime-known.number. |
| 220c0 | 6f 66 20 69 74 65 6d 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | of.items..............<ul>...... |
| 220e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 69 6e 64 65 78 20 73 79 | ...........<li>Supports.index.sy |
| 22100 | 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6c 69 63 65 5b 69 5d | ntax:.<code.class="zig">slice[i] |
| 22120 | 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | </code></li>.................<li |
| 22140 | 3e 53 75 70 70 6f 72 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c | >Supports.slice.syntax:.<code.cl |
| 22160 | 61 73 73 3d 22 7a 69 67 22 3e 73 6c 69 63 65 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 6f 64 | ass="zig">slice[start..end]</cod |
| 22180 | 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 | e></li>.................<li>Supp |
| 221a0 | 6f 72 74 73 20 6c 65 6e 20 70 72 6f 70 65 72 74 79 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | orts.len.property:.<code.class=" |
| 221c0 | 7a 69 67 22 3e 73 6c 69 63 65 2e 6c 65 6e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | zig">slice.len</code></li>...... |
| 221e0 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 | .......</ul>.............</li>.. |
| 22200 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 55 73 65 20 3c 63 6f 64 | .......</ul>.........<p>Use.<cod |
| 22220 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 26 61 6d 70 3b 78 3c 2f 63 6f 64 65 3e 20 74 6f 20 6f | e.class="zig">&x</code>.to.o |
| 22240 | 62 74 61 69 6e 20 61 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 3a 3c 2f 70 3e | btain.a.single-item.pointer:</p> |
| 22260 | 0a 20 20 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | .........<p.class="file">test.zi |
| 22280 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 222a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 | n.class="tok-kw">const</span>.ex |
| 222c0 | 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | pect.=.<span.class="tok-builtin" |
| 222e0 | 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >@import</span>(<span.class="tok |
| 22300 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 | -str">"std"</span>).te |
| 22320 | 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | sting.expect;..<span.class="tok- |
| 22340 | 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">test</span>.<span.class="tok |
| 22360 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 64 64 72 65 73 73 20 6f 66 20 73 79 6e 74 61 78 26 71 75 | -str">"address.of.syntax&qu |
| 22380 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ot;</span>.{.....<span.class="to |
| 223a0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 47 65 74 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 | k-comment">//.Get.the.address.of |
| 223c0 | 20 61 20 76 61 72 69 61 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | .a.variable:</span>.....<span.cl |
| 223e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 | ass="tok-kw">const</span>.x:.<sp |
| 22400 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-type">i32</span>.= |
| 22420 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f | .<span.class="tok-number">1234</ |
| 22440 | 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>;.....<span.class="tok-kw"> |
| 22460 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 5f 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 0a 20 20 | const</span>.x_ptr.=.&x;.... |
| 22480 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 | ..<span.class="tok-comment">//.D |
| 224a0 | 65 72 65 66 65 72 65 6e 63 65 20 61 20 70 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ereference.a.pointer:</span>.... |
| 224c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 224e0 | 20 65 78 70 65 63 74 28 78 5f 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .expect(x_ptr.*.==.<span.class=" |
| 22500 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c | tok-number">1234</span>);......< |
| 22520 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 68 65 6e | span.class="tok-comment">//.When |
| 22540 | 20 79 6f 75 20 67 65 74 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 61 20 63 6f 6e 73 74 20 | .you.get.the.address.of.a.const. |
| 22560 | 76 61 72 69 61 62 6c 65 2c 20 79 6f 75 20 67 65 74 20 61 20 63 6f 6e 73 74 20 73 69 6e 67 6c 65 | variable,.you.get.a.const.single |
| 22580 | 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | -item.pointer.</span>.....<span. |
| 225a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 225c0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 | (<span.class="tok-builtin">@Type |
| 225e0 | 4f 66 3c 2f 73 70 61 6e 3e 28 78 5f 70 74 72 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | Of</span>(x_ptr).==.*<span.class |
| 22600 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">const</span>.<span.cla |
| 22620 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 | ss="tok-type">i32</span>);...... |
| 22640 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 | <span.class="tok-comment">//.If. |
| 22660 | 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 75 74 61 74 65 20 74 68 65 20 76 61 6c 75 65 2c 20 79 6f | you.want.to.mutate.the.value,.yo |
| 22680 | 75 27 64 20 6e 65 65 64 20 61 6e 20 61 64 64 72 65 73 73 20 6f 66 20 61 20 6d 75 74 61 62 6c 65 | u'd.need.an.address.of.a.mutable |
| 226a0 | 20 76 61 72 69 61 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .variable:</span>.....<span.clas |
| 226c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 | s="tok-kw">var</span>.y:.<span.c |
| 226e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">i32</span>.=.<sp |
| 22700 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e | an.class="tok-number">5678</span |
| 22720 | 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | >;.....<span.class="tok-kw">cons |
| 22740 | 74 3c 2f 73 70 61 6e 3e 20 79 5f 70 74 72 20 3d 20 26 61 6d 70 3b 79 3b 0a 20 20 20 20 3c 73 70 | t</span>.y_ptr.=.&y;.....<sp |
| 22760 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 | an.class="tok-kw">try</span>.exp |
| 22780 | 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 | ect(<span.class="tok-builtin">@T |
| 227a0 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 79 5f 70 74 72 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c | ypeOf</span>(y_ptr).==.*<span.cl |
| 227c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ass="tok-type">i32</span>);..... |
| 227e0 | 79 5f 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | y_ptr.*.+=.<span.class="tok-numb |
| 22800 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">1</span>;.....<span.class="t |
| 22820 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 5f 70 74 72 2e 2a | ok-kw">try</span>.expect(y_ptr.* |
| 22840 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 | .==.<span.class="tok-number">567 |
| 22860 | 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 9</span>);.}..<span.class="tok-k |
| 22880 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | w">test</span>.<span.class="tok- |
| 228a0 | 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 72 72 61 79 20 61 63 63 65 73 73 26 | str">"pointer.array.access& |
| 228c0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 228e0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 61 6b 69 6e 67 20 61 6e 20 61 64 64 72 65 73 | tok-comment">//.Taking.an.addres |
| 22900 | 73 20 6f 66 20 61 6e 20 69 6e 64 69 76 69 64 75 61 6c 20 65 6c 65 6d 65 6e 74 20 67 69 76 65 73 | s.of.an.individual.element.gives |
| 22920 | 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | .a</span>.....<span.class="tok-c |
| 22940 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2e 20 | omment">//.single-item.pointer.. |
| 22960 | 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | This.kind.of.pointer</span>..... |
| 22980 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 65 | <span.class="tok-comment">//.doe |
| 229a0 | 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 | s.not.support.pointer.arithmetic |
| 229c0 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .</span>.....<span.class="tok-kw |
| 229e0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c | ">var</span>.array.=.[_]<span.cl |
| 22a00 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 | ass="tok-type">u8</span>{.<span. |
| 22a20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">1</span>,.<sp |
| 22a40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">2</span>,. |
| 22a60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e | <span.class="tok-number">3</span |
| 22a80 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 | >,.<span.class="tok-number">4</s |
| 22aa0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 | pan>,.<span.class="tok-number">5 |
| 22ac0 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>,.<span.class="tok-number |
| 22ae0 | 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">6</span>,.<span.class="tok-num |
| 22b00 | 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">7</span>,.<span.class="tok- |
| 22b20 | 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">8</span>,.<span.class="t |
| 22b40 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">9</span>,.<span.class |
| 22b60 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c | ="tok-number">10</span>.};.....< |
| 22b80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 22ba0 | 20 70 74 72 20 3d 20 26 61 6d 70 3b 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .ptr.=.&array[<span.class="t |
| 22bc0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ok-number">2</span>];.....<span. |
| 22be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 22c00 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 | (<span.class="tok-builtin">@Type |
| 22c20 | 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | Of</span>(ptr).==.*<span.class=" |
| 22c40 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | tok-type">u8</span>);......<span |
| 22c60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 22c80 | 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | t(array[<span.class="tok-number" |
| 22ca0 | 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >2</span>].==.<span.class="tok-n |
| 22cc0 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 3c | umber">3</span>);.....ptr.*.+=.< |
| 22ce0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e | span.class="tok-number">1</span> |
| 22d00 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | ;.....<span.class="tok-kw">try</ |
| 22d20 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>.expect(array[<span.class=" |
| 22d40 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">2</span>].==.<span.c |
| 22d60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f | lass="tok-number">4</span>);.}</ |
| 22d80 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 22da0 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f | ll">$.zig.test.test.zig.Test.[1/ |
| 22dc0 | 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 61 64 64 72 65 73 73 20 6f 66 20 73 79 6e 74 61 78 26 | 2].test."address.of.syntax& |
| 22de0 | 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b | quot;.....Test.[2/2].test." |
| 22e00 | 70 6f 69 6e 74 65 72 20 61 72 72 61 79 20 61 63 63 65 73 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a | pointer.array.access"...... |
| 22e20 | 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.2.tests.passed..</code></pre |
| 22e40 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 77 65 20 | >........<p>.........In.Zig,.we. |
| 22e60 | 67 65 6e 65 72 61 6c 6c 79 20 70 72 65 66 65 72 20 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 | generally.prefer.<a.href="#Slice |
| 22e80 | 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 20 72 61 74 68 65 72 20 74 68 61 6e 20 3c 61 20 68 72 65 | s">Slices</a>.rather.than.<a.hre |
| 22ea0 | 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 | f="#Sentinel-Terminated-Pointers |
| 22ec0 | 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f | ">Sentinel-Terminated.Pointers</ |
| 22ee0 | 61 3e 2e 0a 20 20 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 74 75 72 6e 20 61 6e 20 61 72 72 61 | a>..........You.can.turn.an.arra |
| 22f00 | 79 20 6f 72 20 70 6f 69 6e 74 65 72 20 69 6e 74 6f 20 61 20 73 6c 69 63 65 20 75 73 69 6e 67 20 | y.or.pointer.into.a.slice.using. |
| 22f20 | 73 6c 69 63 65 20 73 79 6e 74 61 78 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | slice.syntax........</p>.......< |
| 22f40 | 70 3e 0a 20 20 20 20 20 20 20 20 53 6c 69 63 65 73 20 68 61 76 65 20 62 6f 75 6e 64 73 20 63 68 | p>.........Slices.have.bounds.ch |
| 22f60 | 65 63 6b 69 6e 67 20 61 6e 64 20 61 72 65 20 74 68 65 72 65 66 6f 72 65 20 70 72 6f 74 65 63 74 | ecking.and.are.therefore.protect |
| 22f80 | 65 64 0a 20 20 20 20 20 20 20 20 61 67 61 69 6e 73 74 20 74 68 69 73 20 6b 69 6e 64 20 6f 66 20 | ed.........against.this.kind.of. |
| 22fa0 | 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 20 54 68 69 73 20 69 73 20 6f 6e 65 20 | undefined.behavior..This.is.one. |
| 22fc0 | 72 65 61 73 6f 6e 0a 20 20 20 20 20 20 20 20 77 65 20 70 72 65 66 65 72 20 73 6c 69 63 65 73 20 | reason.........we.prefer.slices. |
| 22fe0 | 74 6f 20 70 6f 69 6e 74 65 72 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | to.pointers........</p>.......<p |
| 23000 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | .class="file">test.zig</p><pre>< |
| 23020 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 23040 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 | k-kw">const</span>.expect.=.<spa |
| 23060 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| 23080 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| 230a0 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | ;std"</span>).testing.expec |
| 230c0 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | t;..<span.class="tok-kw">test</s |
| 230e0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 23100 | 3b 70 6f 69 6e 74 65 72 20 73 6c 69 63 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ;pointer.slicing"</span>.{. |
| 23120 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 | ....<span.class="tok-kw">var</sp |
| 23140 | 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.array.=.[_]<span.class="tok- |
| 23160 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | type">u8</span>{.<span.class="to |
| 23180 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-number">1</span>,.<span.class= |
| 231a0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">2</span>,.<span.cla |
| 231c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">3</span>,.<span. |
| 231e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">4</span>,.<sp |
| 23200 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">5</span>,. |
| 23220 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e | <span.class="tok-number">6</span |
| 23240 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 | >,.<span.class="tok-number">7</s |
| 23260 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 | pan>,.<span.class="tok-number">8 |
| 23280 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>,.<span.class="tok-number |
| 232a0 | 22 3e 39 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">9</span>,.<span.class="tok-num |
| 232c0 | 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ber">10</span>.};.....<span.clas |
| 232e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 | s="tok-kw">const</span>.slice.=. |
| 23300 | 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | array[<span.class="tok-number">2 |
| 23320 | 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>..<span.class="tok-number |
| 23340 | 22 3e 34 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">4</span>];.....<span.class="to |
| 23360 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 | k-kw">try</span>.expect(slice.le |
| 23380 | 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | n.==.<span.class="tok-number">2< |
| 233a0 | 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | /span>);......<span.class="tok-k |
| 233c0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e | w">try</span>.expect(array[<span |
| 233e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 20 3d 3d | .class="tok-number">3</span>].== |
| 23400 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 | .<span.class="tok-number">4</spa |
| 23420 | 6e 3e 29 3b 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>);.....slice[<span.class="tok- |
| 23440 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | number">1</span>].+=.<span.class |
| 23460 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | ="tok-number">1</span>;.....<spa |
| 23480 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 234a0 | 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ct(array[<span.class="tok-number |
| 234c0 | 22 3e 33 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">3</span>].==.<span.class="tok- |
| 234e0 | 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | number">5</span>);.}</code></pre |
| 23500 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 23520 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 | test.test.zig.Test.[1/1].test.&q |
| 23540 | 75 6f 74 3b 70 6f 69 6e 74 65 72 20 73 6c 69 63 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 | uot;pointer.slicing"......A |
| 23560 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</code></pre> |
| 23580 | 0a 0a 20 20 20 20 20 20 3c 70 3e 50 6f 69 6e 74 65 72 73 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 | ........<p>Pointers.work.at.comp |
| 235a0 | 69 6c 65 2d 74 69 6d 65 20 74 6f 6f 2c 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 20 63 6f 64 | ile-time.too,.as.long.as.the.cod |
| 235c0 | 65 20 64 6f 65 73 20 6e 6f 74 20 64 65 70 65 6e 64 20 6f 6e 0a 20 20 20 20 20 20 61 6e 20 75 6e | e.does.not.depend.on.......an.un |
| 235e0 | 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 3a 3c 2f 70 3e 0a 20 20 20 20 20 | defined.memory.layout:</p>...... |
| 23600 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 23620 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 23640 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c | "tok-kw">const</span>.expect.=.< |
| 23660 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| 23680 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| 236a0 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 | uot;std"</span>).testing.ex |
| 236c0 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | pect;..<span.class="tok-kw">test |
| 236e0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 23700 | 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 70 6f 69 6e 74 65 72 73 26 71 75 6f 74 3b 3c 2f 73 70 61 | uot;comptime.pointers"</spa |
| 23720 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | n>.{.....<span.class="tok-kw">co |
| 23740 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | mptime</span>.{.........<span.cl |
| 23760 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e | ass="tok-kw">var</span>.x:.<span |
| 23780 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c | .class="tok-type">i32</span>.=.< |
| 237a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e | span.class="tok-number">1</span> |
| 237c0 | 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ;.........<span.class="tok-kw">c |
| 237e0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 20 20 | onst</span>.ptr.=.&x;....... |
| 23800 | 20 20 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ..ptr.*.+=.<span.class="tok-numb |
| 23820 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e | er">1</span>;.........x.+=.<span |
| 23840 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">1</span>;... |
| 23860 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | ......<span.class="tok-kw">try</ |
| 23880 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | span>.expect(ptr.*.==.<span.clas |
| 238a0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a | s="tok-number">3</span>);.....}. |
| 238c0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 238e0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 | shell">$.zig.test.test.zig.Test. |
| 23900 | 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 70 6f 69 6e 74 65 | [1/1].test."comptime.pointe |
| 23920 | 72 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | rs"......All.1.tests.passed |
| 23940 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 63 6f 6e | ..</code></pre>........<p>To.con |
| 23960 | 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 61 64 64 72 65 73 73 20 69 6e 74 6f 20 61 20 70 | vert.an.integer.address.into.a.p |
| 23980 | 6f 69 6e 74 65 72 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ointer,.use.<code.class="zig"><s |
| 239a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 | pan.class="tok-builtin">@intToPt |
| 239c0 | 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 6f 20 63 6f 6e 76 65 72 | r</span></code>........To.conver |
| 239e0 | 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 75 73 65 20 3c | t.a.pointer.to.an.integer,.use.< |
| 23a00 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 23a20 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | k-builtin">@ptrToInt</span></cod |
| 23a40 | 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | e>:</p>.......<p.class="file">te |
| 23a60 | 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | st.zig</p><pre><code.class="zig" |
| 23a80 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | ><span.class="tok-kw">const</spa |
| 23aa0 | 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | n>.expect.=.<span.class="tok-bui |
| 23ac0 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| 23ae0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ="tok-str">"std"</span |
| 23b00 | 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >).testing.expect;..<span.class= |
| 23b20 | 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-kw">test</span>.<span.class |
| 23b40 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 70 74 72 54 6f 49 6e 74 20 61 6e 64 20 40 | ="tok-str">"@ptrToInt.and.@ |
| 23b60 | 69 6e 74 54 6f 50 74 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | intToPtr"</span>.{.....<spa |
| 23b80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 | n.class="tok-kw">const</span>.pt |
| 23ba0 | 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | r.=.<span.class="tok-builtin">@i |
| 23bc0 | 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ntToPtr</span>(*<span.class="tok |
| 23be0 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">i32</span>,.<span.class=" |
| 23c00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c 2f 73 70 61 6e 3e 29 3b 0a | tok-number">0xdeadbee0</span>);. |
| 23c20 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| 23c40 | 73 70 61 6e 3e 20 61 64 64 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | span>.addr.=.<span.class="tok-bu |
| 23c60 | 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 70 74 72 29 3b 0a 20 20 | iltin">@ptrToInt</span>(ptr);... |
| 23c80 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 23ca0 | 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | >.expect(<span.class="tok-builti |
| 23cc0 | 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 72 29 20 3d 3d 20 3c 73 70 61 6e | n">@TypeOf</span>(addr).==.<span |
| 23ce0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 3b | .class="tok-type">usize</span>); |
| 23d00 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 23d20 | 70 61 6e 3e 20 65 78 70 65 63 74 28 61 64 64 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>.expect(addr.==.<span.class= |
| 23d40 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c 2f 73 70 61 6e 3e 29 3b | "tok-number">0xdeadbee0</span>); |
| 23d60 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 23d80 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 | "shell">$.zig.test.test.zig.Test |
| 23da0 | 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 40 70 74 72 54 6f 49 6e 74 20 61 6e 64 20 | .[1/1].test."@ptrToInt.and. |
| 23dc0 | 40 69 6e 74 54 6f 50 74 72 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 | @intToPtr"......All.1.tests |
| 23de0 | 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | .passed..</code></pre>........<p |
| 23e00 | 3e 5a 69 67 20 69 73 20 61 62 6c 65 20 74 6f 20 70 72 65 73 65 72 76 65 20 6d 65 6d 6f 72 79 20 | >Zig.is.able.to.preserve.memory. |
| 23e20 | 61 64 64 72 65 73 73 65 73 20 69 6e 20 63 6f 6d 70 74 69 6d 65 20 63 6f 64 65 2c 20 61 73 20 6c | addresses.in.comptime.code,.as.l |
| 23e40 | 6f 6e 67 20 61 73 0a 20 20 20 20 20 20 74 68 65 20 70 6f 69 6e 74 65 72 20 69 73 20 6e 65 76 65 | ong.as.......the.pointer.is.neve |
| 23e60 | 72 20 64 65 72 65 66 65 72 65 6e 63 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | r.dereferenced:</p>.......<p.cla |
| 23e80 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 23ea0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 23ec0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c | ">const</span>.expect.=.<span.cl |
| 23ee0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 23f00 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 23f20 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a | "</span>).testing.expect;.. |
| 23f40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e | <span.class="tok-kw">test</span> |
| 23f60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d | .<span.class="tok-str">"com |
| 23f80 | 70 74 69 6d 65 20 40 69 6e 74 54 6f 50 74 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ptime.@intToPtr"</span>.{.. |
| 23fa0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | ...<span.class="tok-kw">comptime |
| 23fc0 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.{.........<span.class="t |
| 23fe0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 69 73 20 61 62 6c 65 20 74 6f 20 64 6f | ok-comment">//.Zig.is.able.to.do |
| 24000 | 20 74 68 69 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 61 73 20 6c 6f 6e 67 20 61 | .this.at.compile-time,.as.long.a |
| 24020 | 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | s</span>.........<span.class="to |
| 24040 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 74 72 20 69 73 20 6e 65 76 65 72 20 64 65 72 65 66 | k-comment">//.ptr.is.never.deref |
| 24060 | 65 72 65 6e 63 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | erenced.</span>.........<span.cl |
| 24080 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 | ass="tok-kw">const</span>.ptr.=. |
| 240a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f | <span.class="tok-builtin">@intTo |
| 240c0 | 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | Ptr</span>(*<span.class="tok-typ |
| 240e0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">i32</span>,.<span.class="tok- |
| 24100 | 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | number">0xdeadbee0</span>);..... |
| 24120 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| 24140 | 73 70 61 6e 3e 20 61 64 64 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | span>.addr.=.<span.class="tok-bu |
| 24160 | 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 70 74 72 29 3b 0a 20 20 | iltin">@ptrToInt</span>(ptr);... |
| 24180 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | ......<span.class="tok-kw">try</ |
| 241a0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | span>.expect(<span.class="tok-bu |
| 241c0 | 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 72 29 20 3d 3d 20 3c | iltin">@TypeOf</span>(addr).==.< |
| 241e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 | span.class="tok-type">usize</spa |
| 24200 | 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>);.........<span.class="tok-kw |
| 24220 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 64 64 72 20 3d 3d 20 3c 73 70 61 | ">try</span>.expect(addr.==.<spa |
| 24240 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c | n.class="tok-number">0xdeadbee0< |
| 24260 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | /span>);.....}.}</code></pre><pr |
| 24280 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 242a0 | 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b | .test.zig.Test.[1/1].test." |
| 242c0 | 63 6f 6d 70 74 69 6d 65 20 40 69 6e 74 54 6f 50 74 72 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c | comptime.@intToPtr"......Al |
| 242e0 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 24300 | 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e | .......<p>See.also:</p><ul>.<li> |
| 24320 | 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 | <a.href="#Optional-Pointers">Opt |
| 24340 | 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | ional.Pointers</a></li>.<li><a.h |
| 24360 | 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 3c 2f 6c | ref="#intToPtr">@intToPtr</a></l |
| 24380 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 22 3e 40 70 74 72 54 | i>.<li><a.href="#ptrToInt">@ptrT |
| 243a0 | 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 2d 50 6f | oInt</a></li>.<li><a.href="#C-Po |
| 243c0 | 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | inters">C.Pointers</a></li>.<li> |
| 243e0 | 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 | <a.href="#Pointers-to-Zero-Bit-T |
| 24400 | 79 70 65 73 22 3e 50 6f 69 6e 74 65 72 73 20 74 6f 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 | ypes">Pointers.to.Zero.Bit.Types |
| 24420 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 76 | </a></li>.</ul>........<h2.id="v |
| 24440 | 6f 6c 61 74 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 76 6f 6c 61 74 69 6c 65 22 | olatile"><a.href="#toc-volatile" |
| 24460 | 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | >volatile</a>.<a.class="hdr".hre |
| 24480 | 66 3d 22 23 76 6f 6c 61 74 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | f="#volatile">..</a></h2>....... |
| 244a0 | 20 3c 70 3e 4c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 61 72 65 20 61 73 73 75 6d 65 64 | .<p>Loads.and.stores.are.assumed |
| 244c0 | 20 74 6f 20 6e 6f 74 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 20 49 66 20 61 20 | .to.not.have.side.effects..If.a. |
| 244e0 | 67 69 76 65 6e 20 6c 6f 61 64 20 6f 72 20 73 74 6f 72 65 0a 20 20 20 20 20 20 73 68 6f 75 6c 64 | given.load.or.store.......should |
| 24500 | 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 74 73 2c 20 73 75 63 68 20 61 73 20 4d 65 6d 6f | .have.side.effects,.such.as.Memo |
| 24520 | 72 79 20 4d 61 70 70 65 64 20 49 6e 70 75 74 2f 4f 75 74 70 75 74 20 28 4d 4d 49 4f 29 2c 20 75 | ry.Mapped.Input/Output.(MMIO),.u |
| 24540 | 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | se.<code.class="zig"><span.class |
| 24560 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-kw">volatile</span></code> |
| 24580 | 2e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 2c 20 6c | ........In.the.following.code,.l |
| 245a0 | 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 | oads.and.stores.with.<code.class |
| 245c0 | 3d 22 7a 69 67 22 3e 6d 6d 69 6f 5f 70 74 72 3c 2f 63 6f 64 65 3e 20 61 72 65 20 67 75 61 72 61 | ="zig">mmio_ptr</code>.are.guara |
| 245e0 | 6e 74 65 65 64 20 74 6f 20 61 6c 6c 20 68 61 70 70 65 6e 0a 20 20 20 20 20 20 61 6e 64 20 69 6e | nteed.to.all.happen.......and.in |
| 24600 | 20 74 68 65 20 73 61 6d 65 20 6f 72 64 65 72 20 61 73 20 69 6e 20 73 6f 75 72 63 65 20 63 6f 64 | .the.same.order.as.in.source.cod |
| 24620 | 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | e:</p>.......<p.class="file">tes |
| 24640 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 24660 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 24680 | 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | >.expect.=.<span.class="tok-buil |
| 246a0 | 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@import</span>(<span.class= |
| 246c0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "tok-str">"std"</span> |
| 246e0 | 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ).testing.expect;..<span.class=" |
| 24700 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">test</span>.<span.class= |
| 24720 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 6f 6c 61 74 69 6c 65 26 71 75 6f 74 3b 3c 2f | "tok-str">"volatile"</ |
| 24740 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.{.....<span.class="tok-kw" |
| 24760 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6d 69 6f 5f 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 | >const</span>.mmio_ptr.=.<span.c |
| 24780 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 | lass="tok-builtin">@intToPtr</sp |
| 247a0 | 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 | an>(*<span.class="tok-kw">volati |
| 247c0 | 6c 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | le</span>.<span.class="tok-type" |
| 247e0 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >u8</span>,.<span.class="tok-num |
| 24800 | 62 65 72 22 3e 30 78 31 32 33 34 35 36 37 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | ber">0x12345678</span>);.....<sp |
| 24820 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 | an.class="tok-kw">try</span>.exp |
| 24840 | 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 | ect(<span.class="tok-builtin">@T |
| 24860 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6d 6d 69 6f 5f 70 74 72 29 20 3d 3d 20 2a 3c 73 70 61 6e | ypeOf</span>(mmio_ptr).==.*<span |
| 24880 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 | .class="tok-kw">volatile</span>. |
| 248a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| 248c0 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 248e0 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 | s="shell">$.zig.test.test.zig.Te |
| 24900 | 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 76 6f 6c 61 74 69 6c 65 26 71 75 6f | st.[1/1].test."volatile&quo |
| 24920 | 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f | t;......All.1.tests.passed..</co |
| 24940 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 | de></pre>........<p>.......Note. |
| 24960 | 74 68 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | that.<code.class="zig"><span.cla |
| 24980 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ss="tok-kw">volatile</span></cod |
| 249a0 | 65 3e 20 69 73 20 75 6e 72 65 6c 61 74 65 64 20 74 6f 20 63 6f 6e 63 75 72 72 65 6e 63 79 20 61 | e>.is.unrelated.to.concurrency.a |
| 249c0 | 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 3c 2f 61 | nd.<a.href="#Atomics">Atomics</a |
| 249e0 | 3e 2e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 73 65 65 20 63 6f 64 65 20 74 68 61 74 20 69 73 | >........If.you.see.code.that.is |
| 24a00 | 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | .using.<code.class="zig"><span.c |
| 24a20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | lass="tok-kw">volatile</span></c |
| 24a40 | 6f 64 65 3e 20 66 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 4d 65 | ode>.for.something.other.than.Me |
| 24a60 | 6d 6f 72 79 20 4d 61 70 70 65 64 0a 20 20 20 20 20 20 49 6e 70 75 74 2f 4f 75 74 70 75 74 2c 20 | mory.Mapped.......Input/Output,. |
| 24a80 | 69 74 20 69 73 20 70 72 6f 62 61 62 6c 79 20 61 20 62 75 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | it.is.probably.a.bug........</p> |
| 24aa0 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 63 6f 6e 76 65 | ..............<p>.......To.conve |
| 24ac0 | 72 74 20 6f 6e 65 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2c 20 | rt.one.pointer.type.to.another,. |
| 24ae0 | 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c | use.<a.href="#ptrCast">@ptrCast< |
| 24b00 | 2f 61 3e 2e 20 54 68 69 73 20 69 73 20 61 6e 20 75 6e 73 61 66 65 0a 20 20 20 20 20 20 6f 70 65 | /a>..This.is.an.unsafe.......ope |
| 24b20 | 72 61 74 69 6f 6e 20 74 68 61 74 20 5a 69 67 20 63 61 6e 6e 6f 74 20 70 72 6f 74 65 63 74 20 79 | ration.that.Zig.cannot.protect.y |
| 24b40 | 6f 75 20 61 67 61 69 6e 73 74 2e 20 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ou.against..Use.<code.class="zig |
| 24b60 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 | "><span.class="tok-builtin">@ptr |
| 24b80 | 43 61 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 6e 6c 79 20 77 68 65 6e 20 6f 74 68 | Cast</span></code>.only.when.oth |
| 24ba0 | 65 72 0a 20 20 20 20 20 20 63 6f 6e 76 65 72 73 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 70 6f 73 | er.......conversions.are.not.pos |
| 24bc0 | 73 69 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | sible........</p>.......<p.class |
| 24be0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 24c00 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 24c20 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | const</span>.std.=.<span.class=" |
| 24c40 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@import</span>(<spa |
| 24c60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 | n.class="tok-str">"std" |
| 24c80 | 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ;</span>);.<span.class="tok-kw"> |
| 24ca0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e | const</span>.expect.=.std.testin |
| 24cc0 | 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | g.expect;..<span.class="tok-kw"> |
| 24ce0 | 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | test</span>.<span.class="tok-str |
| 24d00 | 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 | ">"pointer.casting"</s |
| 24d20 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 24d40 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | const</span>.bytes.<span.class=" |
| 24d60 | 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-kw">align</span>(<span.class |
| 24d80 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c | ="tok-builtin">@alignOf</span>(< |
| 24da0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">u32</span> |
| 24dc0 | 29 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | )).=.[_]<span.class="tok-type">u |
| 24de0 | 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 8</span>{.<span.class="tok-numbe |
| 24e00 | 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">0x12</span>,.<span.class="tok |
| 24e20 | 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">0x12</span>,.<span.clas |
| 24e40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | s="tok-number">0x12</span>,.<spa |
| 24e60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e | n.class="tok-number">0x12</span> |
| 24e80 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | .};.....<span.class="tok-kw">con |
| 24ea0 | 73 74 3c 2f 73 70 61 6e 3e 20 75 33 32 5f 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st</span>.u32_ptr.=.<span.class= |
| 24ec0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 2a 3c | "tok-builtin">@ptrCast</span>(*< |
| 24ee0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 24f00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 | .<span.class="tok-type">u32</spa |
| 24f20 | 6e 3e 2c 20 26 61 6d 70 3b 62 79 74 65 73 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | n>,.&bytes);.....<span.class |
| 24f40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 75 33 32 5f | ="tok-kw">try</span>.expect(u32_ |
| 24f60 | 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ptr.*.==.<span.class="tok-number |
| 24f80 | 22 3e 30 78 31 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | ">0x12121212</span>);......<span |
| 24fa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 76 65 6e 20 74 68 69 | .class="tok-comment">//.Even.thi |
| 24fc0 | 73 20 65 78 61 6d 70 6c 65 20 69 73 20 63 6f 6e 74 72 69 76 65 64 20 2d 20 74 68 65 72 65 20 61 | s.example.is.contrived.-.there.a |
| 24fe0 | 72 65 20 62 65 74 74 65 72 20 77 61 79 73 20 74 6f 20 64 6f 20 74 68 65 20 61 62 6f 76 65 20 74 | re.better.ways.to.do.the.above.t |
| 25000 | 68 61 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | han</span>.....<span.class="tok- |
| 25020 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 2e 20 46 6f 72 | comment">//.pointer.casting..For |
| 25040 | 20 65 78 61 6d 70 6c 65 2c 20 75 73 69 6e 67 20 61 20 73 6c 69 63 65 20 6e 61 72 72 6f 77 69 6e | .example,.using.a.slice.narrowin |
| 25060 | 67 20 63 61 73 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | g.cast:</span>.....<span.class=" |
| 25080 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 33 32 5f 76 61 6c 75 65 20 3d | tok-kw">const</span>.u32_value.= |
| 250a0 | 20 73 74 64 2e 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 | .std.mem.bytesAsSlice(<span.clas |
| 250c0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 73 5b 3c | s="tok-type">u32</span>,.bytes[< |
| 250e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e | span.class="tok-number">0</span> |
| 25100 | 2e 2e 5d 29 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | ..])[<span.class="tok-number">0< |
| 25120 | 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>];.....<span.class="tok-kw |
| 25140 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 75 33 32 5f 76 61 6c 75 65 20 3d 3d | ">try</span>.expect(u32_value.== |
| 25160 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 32 | .<span.class="tok-number">0x1212 |
| 25180 | 31 32 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 1212</span>);......<span.class=" |
| 251a0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6e 64 20 65 76 65 6e 20 61 6e 6f 74 68 65 72 | tok-comment">//.And.even.another |
| 251c0 | 20 77 61 79 2c 20 74 68 65 20 6d 6f 73 74 20 73 74 72 61 69 67 68 74 66 6f 72 77 61 72 64 20 77 | .way,.the.most.straightforward.w |
| 251e0 | 61 79 20 74 6f 20 64 6f 20 69 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ay.to.do.it:</span>.....<span.cl |
| 25200 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c | ass="tok-kw">try</span>.expect(< |
| 25220 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 43 61 73 | span.class="tok-builtin">@bitCas |
| 25240 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | t</span>(<span.class="tok-type"> |
| 25260 | 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 73 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | u32</span>,.bytes).==.<span.clas |
| 25280 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e | s="tok-number">0x12121212</span> |
| 252a0 | 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | );.}..<span.class="tok-kw">test< |
| 252c0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>.<span.class="tok-str">&qu |
| 252e0 | 6f 74 3b 70 6f 69 6e 74 65 72 20 63 68 69 6c 64 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 | ot;pointer.child.type"</spa |
| 25300 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | n>.{.....<span.class="tok-commen |
| 25320 | 74 22 3e 2f 2f 20 70 6f 69 6e 74 65 72 20 74 79 70 65 73 20 68 61 76 65 20 61 20 60 63 68 69 6c | t">//.pointer.types.have.a.`chil |
| 25340 | 64 60 20 66 69 65 6c 64 20 77 68 69 63 68 20 74 65 6c 6c 73 20 79 6f 75 20 74 68 65 20 74 79 70 | d`.field.which.tells.you.the.typ |
| 25360 | 65 20 74 68 65 79 20 70 6f 69 6e 74 20 74 6f 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | e.they.point.to.</span>.....<spa |
| 25380 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 253a0 | 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 | ct(<span.class="tok-builtin">@ty |
| 253c0 | 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | peInfo</span>(*<span.class="tok- |
| 253e0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 2e 50 6f 69 6e 74 65 72 2e 63 68 69 6c 64 20 | type">u32</span>).Pointer.child. |
| 25400 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | ==.<span.class="tok-type">u32</s |
| 25420 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | pan>);.}</code></pre><pre><code. |
| 25440 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 25460 | 67 0a 54 65 73 74 20 5b 31 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 | g.Test.[1/2].test."pointer. |
| 25480 | 63 61 73 74 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 32 5d 20 74 65 73 | casting".....Test.[2/2].tes |
| 254a0 | 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 63 68 69 6c 64 20 74 79 70 65 26 71 75 6f 74 3b | t."pointer.child.type" |
| 254c0 | 2e 2e 2e 20 0a 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 | ......All.2.tests.passed..</code |
| 254e0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 6c 69 67 6e 6d 65 6e 74 | ></pre>........<h2.id="Alignment |
| 25500 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e | "><a.href="#toc-Alignment">Align |
| 25520 | 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 | ment</a>.<a.class="hdr".href="#A |
| 25540 | 6c 69 67 6e 6d 65 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | lignment">..</a></h2>........<p> |
| 25560 | 0a 20 20 20 20 20 20 45 61 63 68 20 74 79 70 65 20 68 61 73 20 61 6e 20 3c 73 74 72 6f 6e 67 3e | .......Each.type.has.an.<strong> |
| 25580 | 61 6c 69 67 6e 6d 65 6e 74 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 61 20 6e 75 6d 62 65 72 20 6f 66 | alignment</strong>.-.a.number.of |
| 255a0 | 20 62 79 74 65 73 20 73 75 63 68 20 74 68 61 74 2c 0a 20 20 20 20 20 20 77 68 65 6e 20 61 20 76 | .bytes.such.that,.......when.a.v |
| 255c0 | 61 6c 75 65 20 6f 66 20 74 68 65 20 74 79 70 65 20 69 73 20 6c 6f 61 64 65 64 20 66 72 6f 6d 20 | alue.of.the.type.is.loaded.from. |
| 255e0 | 6f 72 20 73 74 6f 72 65 64 20 74 6f 20 6d 65 6d 6f 72 79 2c 0a 20 20 20 20 20 20 74 68 65 20 6d | or.stored.to.memory,.......the.m |
| 25600 | 65 6d 6f 72 79 20 61 64 64 72 65 73 73 20 6d 75 73 74 20 62 65 20 65 76 65 6e 6c 79 20 64 69 76 | emory.address.must.be.evenly.div |
| 25620 | 69 73 69 62 6c 65 20 62 79 20 74 68 69 73 20 6e 75 6d 62 65 72 2e 20 59 6f 75 20 63 61 6e 20 75 | isible.by.this.number..You.can.u |
| 25640 | 73 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 | se.......<a.href="#alignOf">@ali |
| 25660 | 67 6e 4f 66 3c 2f 61 3e 20 74 6f 20 66 69 6e 64 20 6f 75 74 20 74 68 69 73 20 76 61 6c 75 65 20 | gnOf</a>.to.find.out.this.value. |
| 25680 | 66 6f 72 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | for.any.type........</p>.......< |
| 256a0 | 70 3e 0a 20 20 20 20 20 20 41 6c 69 67 6e 6d 65 6e 74 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 | p>.......Alignment.depends.on.th |
| 256c0 | 65 20 43 50 55 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 62 75 74 20 69 73 20 61 6c 77 61 79 | e.CPU.architecture,.but.is.alway |
| 256e0 | 73 20 61 20 70 6f 77 65 72 20 6f 66 20 74 77 6f 2c 20 61 6e 64 0a 20 20 20 20 20 20 6c 65 73 73 | s.a.power.of.two,.and.......less |
| 25700 | 20 74 68 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .than.<code.class="zig"><span.cl |
| 25720 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 26 6c | ass="tok-number">1</span>.<&l |
| 25740 | 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 39 3c 2f | t;.<span.class="tok-number">29</ |
| 25760 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | span></code>........</p>.......< |
| 25780 | 70 3e 0a 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 61 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 | p>.......In.Zig,.a.pointer.type. |
| 257a0 | 68 61 73 20 61 6e 20 61 6c 69 67 6e 6d 65 6e 74 20 76 61 6c 75 65 2e 20 49 66 20 74 68 65 20 76 | has.an.alignment.value..If.the.v |
| 257c0 | 61 6c 75 65 20 69 73 20 65 71 75 61 6c 20 74 6f 20 74 68 65 0a 20 20 20 20 20 20 61 6c 69 67 6e | alue.is.equal.to.the.......align |
| 257e0 | 6d 65 6e 74 20 6f 66 20 74 68 65 20 75 6e 64 65 72 6c 79 69 6e 67 20 74 79 70 65 2c 20 69 74 20 | ment.of.the.underlying.type,.it. |
| 25800 | 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 65 20 74 79 70 65 3a 0a 20 20 | can.be.omitted.from.the.type:... |
| 25820 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| 25840 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 25860 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 25880 | 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>.std.=.<span.class="tok-built |
| 258a0 | 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in">@import</span>(<span.class=" |
| 258c0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | tok-str">"std"</span>) |
| 258e0 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ;.<span.class="tok-kw">const</sp |
| 25900 | 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b | an>.expect.=.std.testing.expect; |
| 25920 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | ..<span.class="tok-kw">test</spa |
| 25940 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 | n>.<span.class="tok-str">"v |
| 25960 | 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | ariable.alignment"</span>.{ |
| 25980 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | .....<span.class="tok-kw">var</s |
| 259a0 | 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | pan>.x:.<span.class="tok-type">i |
| 259c0 | 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | 32</span>.=.<span.class="tok-num |
| 259e0 | 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ber">1234</span>;.....<span.clas |
| 25a00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 69 67 6e 5f 6f 66 | s="tok-kw">const</span>.align_of |
| 25a20 | 5f 69 33 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | _i32.=.<span.class="tok-builtin" |
| 25a40 | 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >@alignOf</span>(<span.class="to |
| 25a60 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 78 29 29 3b 0a 20 | k-builtin">@TypeOf</span>(x));.. |
| 25a80 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 25aa0 | 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | n>.expect(<span.class="tok-built |
| 25ac0 | 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 78 29 20 3d 3d 20 2a 3c | in">@TypeOf</span>(&x).==.*< |
| 25ae0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">i32</span> |
| 25b00 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | );.....<span.class="tok-kw">try< |
| 25b20 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.expect(*<span.class="tok- |
| 25b40 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | type">i32</span>.==.*<span.class |
| 25b60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 61 6c 69 67 6e 5f 6f 66 5f | ="tok-kw">align</span>(align_of_ |
| 25b80 | 69 33 32 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | i32).<span.class="tok-type">i32< |
| 25ba0 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>);.....<span.class="tok-kw |
| 25bc0 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 64 2e 54 61 72 67 65 74 2e 63 75 72 72 65 6e 74 2e | ">if</span>.(std.Target.current. |
| 25be0 | 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 78 38 36 5f 36 34 29 20 7b 0a 20 20 20 20 20 20 20 20 3c | cpu.arch.==..x86_64).{.........< |
| 25c00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 25c20 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | xpect(<span.class="tok-builtin"> |
| 25c40 | 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | @typeInfo</span>(*<span.class="t |
| 25c60 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 | ok-type">i32</span>).Pointer.ali |
| 25c80 | 67 6e 6d 65 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | gnment.==.<span.class="tok-numbe |
| 25ca0 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | r">4</span>);.....}.}</code></pr |
| 25cc0 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 25ce0 | 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 | .test.test.zig.Test.[1/1].test.& |
| 25d00 | 71 75 6f 74 3b 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 2e 2e 2e | quot;variable.alignment"... |
| 25d20 | 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f | ...All.1.tests.passed..</code></ |
| 25d40 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 | pre>........<p>In.the.same.way.t |
| 25d60 | 68 61 74 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 73 70 61 6e 20 63 | hat.a.<code.class="zig">*<span.c |
| 25d80 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-type">i32</span></code |
| 25da0 | 3e 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e | >.can.be.<a.href="#Type-Coercion |
| 25dc0 | 22 3e 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f | ">coerced</a>.to.a...........<co |
| 25de0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | de.class="zig">*<span.class="tok |
| 25e00 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">const</span>.<span.class="t |
| 25e20 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 70 6f | ok-type">i32</span></code>,.a.po |
| 25e40 | 69 6e 74 65 72 20 77 69 74 68 20 61 20 6c 61 72 67 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 63 61 | inter.with.a.larger.alignment.ca |
| 25e60 | 6e 20 62 65 20 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 63 61 73 74 20 74 6f 20 61 20 | n.be.implicitly.......cast.to.a. |
| 25e80 | 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 73 6d 61 6c 6c 65 72 20 61 6c 69 67 6e 6d 65 6e 74 | pointer.with.a.smaller.alignment |
| 25ea0 | 2c 20 62 75 74 20 6e 6f 74 20 76 69 63 65 20 76 65 72 73 61 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ,.but.not.vice.versa........</p> |
| 25ec0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 73 70 65 63 69 66 79 | .......<p>.......You.can.specify |
| 25ee0 | 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 6e 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20 66 75 6e 63 | .alignment.on.variables.and.func |
| 25f00 | 74 69 6f 6e 73 2e 20 49 66 20 79 6f 75 20 64 6f 20 74 68 69 73 2c 20 74 68 65 6e 0a 20 20 20 20 | tions..If.you.do.this,.then..... |
| 25f20 | 20 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 6d 20 67 65 74 20 74 68 65 20 73 70 65 63 69 | ..pointers.to.them.get.the.speci |
| 25f40 | 66 69 65 64 20 61 6c 69 67 6e 6d 65 6e 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | fied.alignment:.......</p>...... |
| 25f60 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 25f80 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 25fa0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c | "tok-kw">const</span>.expect.=.< |
| 25fc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| 25fe0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| 26000 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 | uot;std"</span>).testing.ex |
| 26020 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | pect;..<span.class="tok-kw">var< |
| 26040 | 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | /span>.foo:.<span.class="tok-typ |
| 26060 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | e">u8</span>.<span.class="tok-kw |
| 26080 | 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">align</span>(<span.class="tok- |
| 260a0 | 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">4</span>).=.<span.class= |
| 260c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 | "tok-number">100</span>;..<span. |
| 260e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">test</span>.<span |
| 26100 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 76 61 | .class="tok-str">"global.va |
| 26120 | 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | riable.alignment"</span>.{. |
| 26140 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 26160 | 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | an>.expect(<span.class="tok-buil |
| 26180 | 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | tin">@typeInfo</span>(<span.clas |
| 261a0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 | s="tok-builtin">@TypeOf</span>(& |
| 261c0 | 61 6d 70 3b 66 6f 6f 29 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 20 3d 3d 20 3c | amp;foo)).Pointer.alignment.==.< |
| 261e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e | span.class="tok-number">4</span> |
| 26200 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | );.....<span.class="tok-kw">try< |
| 26220 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | /span>.expect(<span.class="tok-b |
| 26240 | 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 29 | uiltin">@TypeOf</span>(&foo) |
| 26260 | 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c | .==.*<span.class="tok-kw">align< |
| 26280 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | /span>(<span.class="tok-number"> |
| 262a0 | 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | 4</span>).<span.class="tok-type" |
| 262c0 | 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >u8</span>);.....<span.class="to |
| 262e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 5f 70 6f 69 6e 74 65 72 5f 74 6f | k-kw">const</span>.as_pointer_to |
| 26300 | 5f 61 72 72 61 79 3a 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | _array:.*[<span.class="tok-numbe |
| 26320 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r">1</span>]<span.class="tok-typ |
| 26340 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 66 6f 6f 3b 0a 20 20 20 20 3c 73 70 | e">u8</span>.=.&foo;.....<sp |
| 26360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 | an.class="tok-kw">const</span>.a |
| 26380 | 73 5f 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | s_slice:.[]<span.class="tok-type |
| 263a0 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 61 73 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 61 72 72 61 | ">u8</span>.=.as_pointer_to_arra |
| 263c0 | 79 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | y;.....<span.class="tok-kw">try< |
| 263e0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | /span>.expect(<span.class="tok-b |
| 26400 | 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 73 5f 73 6c 69 63 65 29 | uiltin">@TypeOf</span>(as_slice) |
| 26420 | 20 3d 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e | .==.[]<span.class="tok-kw">align |
| 26440 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | </span>(<span.class="tok-number" |
| 26460 | 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | >4</span>).<span.class="tok-type |
| 26480 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">u8</span>);.}..<span.class="to |
| 264a0 | 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | k-kw">fn</span>.<span.class="tok |
| 264c0 | 2d 66 6e 22 3e 64 65 72 70 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -fn">derp</span>().<span.class=" |
| 264e0 | 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-kw">align</span>(<span.class |
| 26500 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@sizeOf</span>(<s |
| 26520 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e | pan.class="tok-type">usize</span |
| 26540 | 3e 29 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | >).*.<span.class="tok-number">2< |
| 26560 | 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | /span>).<span.class="tok-type">i |
| 26580 | 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | 32</span>.{.<span.class="tok-kw" |
| 265a0 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >return</span>.<span.class="tok- |
| 265c0 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 20 7d 0a 3c 73 70 61 6e 20 63 6c 61 | number">1234</span>;.}.<span.cla |
| 265e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ss="tok-kw">fn</span>.<span.clas |
| 26600 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6e 6f 6f 70 31 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | s="tok-fn">noop1</span>().<span. |
| 26620 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | class="tok-kw">align</span>(<spa |
| 26640 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c | n.class="tok-number">1</span>).< |
| 26660 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e | span.class="tok-type">void</span |
| 26680 | 3e 20 7b 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | >.{}.<span.class="tok-kw">fn</sp |
| 266a0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6e 6f 6f 70 34 3c 2f | an>.<span.class="tok-fn">noop4</ |
| 266c0 | 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 | span>().<span.class="tok-kw">ali |
| 266e0 | 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | gn</span>(<span.class="tok-numbe |
| 26700 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | r">4</span>).<span.class="tok-ty |
| 26720 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">void</span>.{}..<span.class= |
| 26740 | 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-kw">test</span>.<span.class |
| 26760 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 20 61 6c 69 67 6e 6d | ="tok-str">"function.alignm |
| 26780 | 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ent"</span>.{.....<span.cla |
| 267a0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 65 | ss="tok-kw">try</span>.expect(de |
| 267c0 | 72 70 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | rp().==.<span.class="tok-number" |
| 267e0 | 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >1234</span>);.....<span.class=" |
| 26800 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 | tok-kw">try</span>.expect(<span. |
| 26820 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 | class="tok-builtin">@TypeOf</spa |
| 26840 | 6e 3e 28 6e 6f 6f 70 31 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>(noop1).==.<span.class="tok-kw |
| 26860 | 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ">fn</span>().<span.class="tok-k |
| 26880 | 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | w">align</span>(<span.class="tok |
| 268a0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">1</span>).<span.class=" |
| 268c0 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | tok-type">void</span>);.....<spa |
| 268e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 26900 | 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 | ct(<span.class="tok-builtin">@Ty |
| 26920 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6e 6f 6f 70 34 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | peOf</span>(noop4).==.<span.clas |
| 26940 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">fn</span>().<span.cla |
| 26960 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ss="tok-kw">align</span>(<span.c |
| 26980 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | lass="tok-number">4</span>).<spa |
| 269a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 3b | n.class="tok-type">void</span>); |
| 269c0 | 0a 20 20 20 20 6e 6f 6f 70 31 28 29 3b 0a 20 20 20 20 6e 6f 6f 70 34 28 29 3b 0a 7d 3c 2f 63 6f | .....noop1();.....noop4();.}</co |
| 269e0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 26a00 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 32 5d | ">$.zig.test.test.zig.Test.[1/2] |
| 26a20 | 20 74 65 73 74 20 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 | .test."global.variable.alig |
| 26a40 | 6e 6d 65 6e 74 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 32 5d 20 74 65 73 74 20 | nment".....Test.[2/2].test. |
| 26a60 | 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 2e 2e | "function.alignment".. |
| 26a80 | 2e 20 0a 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | ....All.2.tests.passed..</code>< |
| 26aa0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 68 61 | /pre>........<p>.......If.you.ha |
| 26ac0 | 76 65 20 61 20 70 6f 69 6e 74 65 72 20 6f 72 20 61 20 73 6c 69 63 65 20 74 68 61 74 20 68 61 73 | ve.a.pointer.or.a.slice.that.has |
| 26ae0 | 20 61 20 73 6d 61 6c 6c 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 62 75 74 20 79 6f 75 20 6b 6e 6f 77 | .a.small.alignment,.but.you.know |
| 26b00 | 20 74 68 61 74 20 69 74 20 61 63 74 75 61 6c 6c 79 0a 20 20 20 20 20 20 68 61 73 20 61 20 62 69 | .that.it.actually.......has.a.bi |
| 26b20 | 67 67 65 72 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 61 6c | gger.alignment,.use.<a.href="#al |
| 26b40 | 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 74 6f 20 63 68 61 6e 67 | ignCast">@alignCast</a>.to.chang |
| 26b60 | 65 20 74 68 65 0a 20 20 20 20 20 20 70 6f 69 6e 74 65 72 20 69 6e 74 6f 20 61 20 6d 6f 72 65 20 | e.the.......pointer.into.a.more. |
| 26b80 | 61 6c 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 69 73 20 61 20 6e 6f 2d 6f 70 | aligned.pointer..This.is.a.no-op |
| 26ba0 | 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 62 75 74 20 69 6e 73 65 72 74 73 20 61 0a 20 20 20 20 20 | .at.runtime,.but.inserts.a...... |
| 26bc0 | 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 | .<a.href="#Incorrect-Pointer-Ali |
| 26be0 | 67 6e 6d 65 6e 74 22 3e 73 61 66 65 74 79 20 63 68 65 63 6b 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 | gnment">safety.check</a>:....... |
| 26c00 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 26c20 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 26c40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 26c60 | 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | std.=.<span.class="tok-builtin"> |
| 26c80 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| 26ca0 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c | str">"std"</span>);..< |
| 26cc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">test</span>. |
| 26ce0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e | <span.class="tok-str">"poin |
| 26d00 | 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ter.alignment.safety"</span |
| 26d20 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | >.{.....<span.class="tok-kw">var |
| 26d40 | 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.array.<span.class="tok-k |
| 26d60 | 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | w">align</span>(<span.class="tok |
| 26d80 | 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c | -number">4</span>).=.[_]<span.cl |
| 26da0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e | ass="tok-type">u32</span>{.<span |
| 26dc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f | .class="tok-number">0x11111111</ |
| 26de0 | 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | span>,.<span.class="tok-number"> |
| 26e00 | 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | 0x11111111</span>.};.....<span.c |
| 26e20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 | lass="tok-kw">const</span>.bytes |
| 26e40 | 20 3d 20 73 74 64 2e 6d 65 6d 2e 73 6c 69 63 65 41 73 42 79 74 65 73 28 61 72 72 61 79 5b 3c 73 | .=.std.mem.sliceAsBytes(array[<s |
| 26e60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e | pan.class="tok-number">0</span>. |
| 26e80 | 2e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | .]);.....<span.class="tok-kw">tr |
| 26ea0 | 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 66 6f 6f 28 | y</span>.std.testing.expect(foo( |
| 26ec0 | 62 79 74 65 73 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | bytes).==.<span.class="tok-numbe |
| 26ee0 | 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 | r">0x11111111</span>);.}.<span.c |
| 26f00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | lass="tok-kw">fn</span>.<span.cl |
| 26f20 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 62 79 74 65 73 3a 20 5b | ass="tok-fn">foo</span>(bytes:.[ |
| 26f40 | 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | ]<span.class="tok-type">u8</span |
| 26f60 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | >).<span.class="tok-type">u32</s |
| 26f80 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 26fa0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 34 20 3d 20 62 79 74 65 73 5b 3c 73 70 61 | const</span>.slice4.=.bytes[<spa |
| 26fc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2e 2e 3c | n.class="tok-number">1</span>..< |
| 26fe0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e | span.class="tok-number">5</span> |
| 27000 | 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ];.....<span.class="tok-kw">cons |
| 27020 | 74 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 73 74 64 2e 6d 65 6d 2e 62 79 74 | t</span>.int_slice.=.std.mem.byt |
| 27040 | 65 73 41 73 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | esAsSlice(<span.class="tok-type" |
| 27060 | 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | >u32</span>,.<span.class="tok-bu |
| 27080 | 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | iltin">@alignCast</span>(<span.c |
| 270a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 | lass="tok-number">4</span>,.slic |
| 270c0 | 65 34 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | e4));.....<span.class="tok-kw">r |
| 270e0 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 | eturn</span>.int_slice[<span.cla |
| 27100 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f | ss="tok-number">0</span>];.}</co |
| 27120 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 27140 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 20 0a 54 65 73 74 20 5b 31 2f 31 | ">$.zig.test.test.zig..Test.[1/1 |
| 27160 | 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 | ].test."pointer.alignment.s |
| 27180 | 61 66 65 74 79 26 71 75 6f 74 3b 2e 2e 2e 20 0a 74 68 72 65 61 64 20 31 30 35 32 31 20 70 61 6e | afety".....thread.10521.pan |
| 271a0 | 69 63 3a 20 69 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 6e 6d 65 6e 74 0a 3c 73 70 61 6e 20 63 6c | ic:.incorrect.alignment.<span.cl |
| 271c0 | 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ass="t1_0">/home/andy/Downloads/ |
| 271e0 | 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 36 33 3c 2f 73 | zig/docgen_tmp/test.zig:10:63</s |
| 27200 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 31 62 | pan>:.<span.class="t2_0">0x2081b |
| 27220 | 63 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 | c.in.foo.(test)</span>.....const |
| 27240 | 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 73 74 64 2e 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 | .int_slice.=.std.mem.bytesAsSlic |
| 27260 | 65 28 75 33 32 2c 20 40 61 6c 69 67 6e 43 61 73 74 28 34 2c 20 73 6c 69 63 65 34 29 29 3b 0a 20 | e(u32,.@alignCast(4,.slice4));.. |
| 27280 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 272a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | .............................<sp |
| 272c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| 272e0 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| 27300 | 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 33 31 3c 2f | s/zig/docgen_tmp/test.zig:6:31</ |
| 27320 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 37 | span>:.<span.class="t2_0">0x2067 |
| 27340 | 39 39 20 69 6e 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 | 99.in.test."pointer.alignme |
| 27360 | 6e 74 20 73 61 66 65 74 79 26 71 75 6f 74 3b 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | nt.safety".(test)</span>... |
| 27380 | 20 20 74 72 79 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 66 6f 6f 28 62 79 74 | ..try.std.testing.expect(foo(byt |
| 273a0 | 65 73 29 20 3d 3d 20 30 78 31 31 31 31 31 31 31 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | es).==.0x11111111);............. |
| 273c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..................<span.class="t |
| 273e0 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 | 32_1">^</span>.<span.class="t1_0 |
| 27400 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 | ">/home/andy/Downloads/zig/lib/s |
| 27420 | 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 37 36 3a 32 38 | td/special/test_runner.zig:76:28 |
| 27440 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 | </span>:.<span.class="t2_0">0x22 |
| 27460 | 64 32 64 61 20 69 6e 20 73 74 64 2e 73 70 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c | d2da.in.std.special.main.(test)< |
| 27480 | 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 | /span>.........}.else.test_fn.fu |
| 274a0 | 6e 63 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | nc();........................... |
| 274c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .<span.class="t32_1">^</span>.<s |
| 274e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e | pan.class="t1_0">/home/andy/Down |
| 27500 | 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 37 31 3a | loads/zig/lib/std/start.zig:471: |
| 27520 | 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 | 37</span>:.<span.class="t2_0">0x |
| 27540 | 32 32 35 38 33 61 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 | 22583a.in.std.start.callMain.(te |
| 27560 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 | st)</span>.............const.res |
| 27580 | 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a | ult.=.root.main().catch.|err|.{. |
| 275a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 275c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 275e0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | .<span.class="t1_0">/home/andy/D |
| 27600 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 | ownloads/zig/lib/std/start.zig:4 |
| 27620 | 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | 13:12</span>:.<span.class="t2_0" |
| 27640 | 3e 30 78 32 30 39 37 30 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 | >0x20970e.in.std.start.callMainW |
| 27660 | 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e | ithArgs.(test)</span>.....return |
| 27680 | 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e | .@call(.{..modifier.=..always_in |
| 276a0 | 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 | line.},.callMain,..{});......... |
| 276c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 276e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | <span.class="t1_0">/home/andy/Do |
| 27700 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 | wnloads/zig/lib/std/start.zig:33 |
| 27720 | 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e | 2:17</span>:.<span.class="t2_0"> |
| 27740 | 30 78 32 30 38 36 61 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d | 0x2086a6.in.std.start.posixCallM |
| 27760 | 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 | ainAndExit.(test)</span>.....std |
| 27780 | 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 | .os.exit(@call(.{..modifier.=..a |
| 277a0 | 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 | lways_inline.},.callMainWithArgs |
| 277c0 | 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 | ,..{.argc,.argv,.envp.}));...... |
| 277e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 27800 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 | </span>.<span.class="t1_0">/home |
| 27820 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | /andy/Downloads/zig/lib/std/star |
| 27840 | 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t.zig:245:5</span>:.<span.class= |
| 27860 | 22 74 32 5f 30 22 3e 30 78 32 30 38 34 62 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 | "t2_0">0x2084b2.in.std.start._st |
| 27880 | 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e | art.(test)</span>.....@call(.{.. |
| 278a0 | 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 | modifier.=..never_inline.},.posi |
| 278c0 | 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 | xCallMainAndExit,..{});.....<spa |
| 278e0 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 | n.class="t32_1">^</span>.error:. |
| 27900 | 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 | the.following.test.command.crash |
| 27920 | 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 33 33 33 61 38 | ed:.docgen_tmp/zig-cache/o/333a8 |
| 27940 | 37 34 31 38 31 36 37 30 32 64 61 66 64 30 66 66 39 39 61 66 33 38 30 65 62 62 31 2f 74 65 73 74 | 741816702dafd0ff99af380ebb1/test |
| 27960 | 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 62 75 69 6c 64 2d | ./home/andy/Downloads/zig/build- |
| 27980 | 72 65 6c 65 61 73 65 2f 7a 69 67 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | release/zig.</code></pre>....... |
| 279a0 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 6c 6c 6f 77 7a 65 72 6f 22 3e 3c 61 20 68 | .........<h2.id="allowzero"><a.h |
| 279c0 | 72 65 66 3d 22 23 74 6f 63 2d 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f | ref="#toc-allowzero">allowzero</ |
| 279e0 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 | a>.<a.class="hdr".href="#allowze |
| 27a00 | 72 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ro">..</a></h2>........<p>...... |
| 27a20 | 20 54 68 69 73 20 70 6f 69 6e 74 65 72 20 61 74 74 72 69 62 75 74 65 20 61 6c 6c 6f 77 73 20 61 | .This.pointer.attribute.allows.a |
| 27a40 | 20 70 6f 69 6e 74 65 72 20 74 6f 20 68 61 76 65 20 61 64 64 72 65 73 73 20 7a 65 72 6f 2e 20 54 | .pointer.to.have.address.zero..T |
| 27a60 | 68 69 73 20 69 73 20 6f 6e 6c 79 20 65 76 65 72 20 6e 65 65 64 65 64 20 6f 6e 20 74 68 65 0a 20 | his.is.only.ever.needed.on.the.. |
| 27a80 | 20 20 20 20 20 66 72 65 65 73 74 61 6e 64 69 6e 67 20 4f 53 20 74 61 72 67 65 74 2c 20 77 68 65 | .....freestanding.OS.target,.whe |
| 27aa0 | 72 65 20 74 68 65 20 61 64 64 72 65 73 73 20 7a 65 72 6f 20 69 73 20 6d 61 70 70 61 62 6c 65 2e | re.the.address.zero.is.mappable. |
| 27ac0 | 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 6e 75 6c 6c 20 70 | .If.you.want.to.represent.null.p |
| 27ae0 | 6f 69 6e 74 65 72 73 2c 20 75 73 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 | ointers,.use.......<a.href="#Opt |
| 27b00 | 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 | ional-Pointers">Optional.Pointer |
| 27b20 | 73 3c 2f 61 3e 20 69 6e 73 74 65 61 64 2e 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 | s</a>.instead..<a.href="#Optiona |
| 27b40 | 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 | l-Pointers">Optional.Pointers</a |
| 27b60 | 3e 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | >.with.<code.class="zig"><span.c |
| 27b80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f | lass="tok-kw">allowzero</span></ |
| 27ba0 | 63 6f 64 65 3e 0a 20 20 20 20 20 20 61 72 65 20 6e 6f 74 20 74 68 65 20 73 61 6d 65 20 73 69 7a | code>.......are.not.the.same.siz |
| 27bc0 | 65 20 61 73 20 70 6f 69 6e 74 65 72 73 2e 20 49 6e 20 74 68 69 73 20 63 6f 64 65 20 65 78 61 6d | e.as.pointers..In.this.code.exam |
| 27be0 | 70 6c 65 2c 20 69 66 20 74 68 65 20 70 6f 69 6e 74 65 72 0a 20 20 20 20 20 20 64 69 64 20 6e 6f | ple,.if.the.pointer.......did.no |
| 27c00 | 74 20 68 61 76 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | t.have.the.<code.class="zig"><sp |
| 27c20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 | an.class="tok-kw">allowzero</spa |
| 27c40 | 6e 3e 3c 2f 63 6f 64 65 3e 20 61 74 74 72 69 62 75 74 65 2c 20 74 68 69 73 20 77 6f 75 6c 64 20 | n></code>.attribute,.this.would. |
| 27c60 | 62 65 20 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 2d 43 61 73 | be.a.......<a.href="#Pointer-Cas |
| 27c80 | 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 49 6e 76 | t-Invalid-Null">Pointer.Cast.Inv |
| 27ca0 | 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 20 70 61 6e 69 63 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | alid.Null</a>.panic:.......</p>. |
| 27cc0 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 61 6c 6c 6f 77 7a 65 72 6f 2e | ......<p.class="file">allowzero. |
| 27ce0 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 27d00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 27d20 | 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | std.=.<span.class="tok-builtin"> |
| 27d40 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| 27d60 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 | str">"std"</span>);.<s |
| 27d80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 27da0 | 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 | expect.=.std.testing.expect;..<s |
| 27dc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">test</span>.< |
| 27de0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6c 6c 6f 77 | span.class="tok-str">"allow |
| 27e00 | 7a 65 72 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | zero"</span>.{.....<span.cl |
| 27e20 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 7a 65 72 6f 3a 20 3c 73 | ass="tok-kw">var</span>.zero:.<s |
| 27e40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e | pan.class="tok-type">usize</span |
| 27e60 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | >.=.<span.class="tok-number">0</ |
| 27e80 | 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>;.....<span.class="tok-kw"> |
| 27ea0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | var</span>.ptr.=.<span.class="to |
| 27ec0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 | k-builtin">@intToPtr</span>(*<sp |
| 27ee0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 | an.class="tok-kw">allowzero</spa |
| 27f00 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | n>.<span.class="tok-type">i32</s |
| 27f20 | 70 61 6e 3e 2c 20 7a 65 72 6f 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>,.zero);.....<span.class="to |
| 27f40 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | k-kw">try</span>.expect(<span.cl |
| 27f60 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 | ass="tok-builtin">@ptrToInt</spa |
| 27f80 | 6e 3e 28 70 74 72 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | n>(ptr).==.<span.class="tok-numb |
| 27fa0 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | er">0</span>);.}</code></pre><pr |
| 27fc0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 27fe0 | 20 61 6c 6c 6f 77 7a 65 72 6f 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 | .allowzero.zig.Test.[1/1].test.& |
| 28000 | 71 75 6f 74 3b 61 6c 6c 6f 77 7a 65 72 6f 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 | quot;allowzero"......All.1. |
| 28020 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | tests.passed..</code></pre>..... |
| 28040 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d | ...........<h2.id="Sentinel-Term |
| 28060 | 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 | inated-Pointers"><a.href="#toc-S |
| 28080 | 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e | entinel-Terminated-Pointers">Sen |
| 280a0 | 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 | tinel-Terminated.Pointers</a>.<a |
| 280c0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 | .class="hdr".href="#Sentinel-Ter |
| 280e0 | 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | minated-Pointers">..</a></h2>... |
| 28100 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 20 | .....<p>.......The.syntax.<code. |
| 28120 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 2a 3a 78 5d 54 3c 2f 63 6f 64 65 3e 20 64 65 73 63 72 69 | class="zig">[*:x]T</code>.descri |
| 28140 | 62 65 73 20 61 20 70 6f 69 6e 74 65 72 20 74 68 61 74 0a 20 20 20 20 20 20 68 61 73 20 61 20 6c | bes.a.pointer.that.......has.a.l |
| 28160 | 65 6e 67 74 68 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 61 20 73 65 6e 74 69 6e 65 6c 20 76 | ength.determined.by.a.sentinel.v |
| 28180 | 61 6c 75 65 2e 20 54 68 69 73 20 70 72 6f 76 69 64 65 73 20 70 72 6f 74 65 63 74 69 6f 6e 0a 20 | alue..This.provides.protection.. |
| 281a0 | 20 20 20 20 20 61 67 61 69 6e 73 74 20 62 75 66 66 65 72 20 6f 76 65 72 66 6c 6f 77 20 61 6e 64 | .....against.buffer.overflow.and |
| 281c0 | 20 6f 76 65 72 72 65 61 64 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | .overreads........</p>.......<p. |
| 281e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 28200 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 28220 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.std.=.<span.cl |
| 28240 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 28260 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 28280 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | "</span>);..<span.class="to |
| 282a0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 61 6c 73 6f 20 61 76 61 69 6c | k-comment">//.This.is.also.avail |
| 282c0 | 61 62 6c 65 20 61 73 20 60 73 74 64 2e 63 2e 70 72 69 6e 74 66 60 2e 3c 2f 73 70 61 6e 3e 0a 3c | able.as.`std.c.printf`.</span>.< |
| 282e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c | span.class="tok-kw">pub</span>.< |
| 28300 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e | span.class="tok-kw">extern</span |
| 28320 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 | >.<span.class="tok-str">"c& |
| 28340 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | quot;</span>.<span.class="tok-kw |
| 28360 | 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 | ">fn</span>.<span.class="tok-fn" |
| 28380 | 3e 70 72 69 6e 74 66 3c 2f 73 70 61 6e 3e 28 66 6f 72 6d 61 74 3a 20 5b 2a 3a 3c 73 70 61 6e 20 | >printf</span>(format:.[*:<span. |
| 283a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 | class="tok-number">0</span>]<spa |
| 283c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | n.class="tok-kw">const</span>.<s |
| 283e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 | pan.class="tok-type">u8</span>,. |
| 28400 | 2e 2e 2e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e | ...).<span.class="tok-type">c_in |
| 28420 | 74 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | t</span>;..<span.class="tok-kw"> |
| 28440 | 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pub</span>.<span.class="tok-kw"> |
| 28460 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d | fn</span>.<span.class="tok-fn">m |
| 28480 | 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ain</span>().<span.class="tok-ty |
| 284a0 | 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">anyerror</span>!<span.class= |
| 284c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d | "tok-type">void</span>.{....._.= |
| 284e0 | 20 70 72 69 6e 74 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | .printf(<span.class="tok-str">&q |
| 28500 | 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | uot;Hello,.world!\n"</span> |
| 28520 | 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | );.<span.class="tok-comment">//. |
| 28540 | 4f 4b 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | OK</span>......<span.class="tok- |
| 28560 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 73 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.msg.=.<span.cla |
| 28580 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 | ss="tok-str">"Hello,.world! |
| 285a0 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | \n"</span>;.....<span.class |
| 285c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 6f 6e 5f 6e 75 6c 6c 5f | ="tok-kw">const</span>.non_null_ |
| 285e0 | 74 65 72 6d 69 6e 61 74 65 64 5f 6d 73 67 3a 20 5b 6d 73 67 2e 6c 65 6e 5d 3c 73 70 61 6e 20 63 | terminated_msg:.[msg.len]<span.c |
| 28600 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 6d 73 67 2e | lass="tok-type">u8</span>.=.msg. |
| 28620 | 2a 3b 0a 20 20 20 20 5f 20 3d 20 70 72 69 6e 74 66 28 26 61 6d 70 3b 6e 6f 6e 5f 6e 75 6c 6c 5f | *;....._.=.printf(&non_null_ |
| 28640 | 74 65 72 6d 69 6e 61 74 65 64 5f 6d 73 67 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | terminated_msg);.}</code></pre>< |
| 28660 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 | pre><code.class="shell">$.zig.bu |
| 28680 | 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 20 2d 6c 63 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ild-exe.test.zig.-lc.<span.class |
| 286a0 | 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 31 | ="t0_1">./docgen_tmp/test.zig:11 |
| 286c0 | 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e | :17:.</span><span.class="t31_1"> |
| 286e0 | 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | error:.</span><span.class="t0_1" |
| 28700 | 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 27 2c 20 | >expected.type.'[*:0]const.u8',. |
| 28720 | 66 6f 75 6e 64 20 27 2a 63 6f 6e 73 74 20 5b 31 34 5d 75 38 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 | found.'*const.[14]u8'</span>.... |
| 28740 | 20 5f 20 3d 20 70 72 69 6e 74 66 28 26 61 6d 70 3b 6e 6f 6e 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e | ._.=.printf(&non_null_termin |
| 28760 | 61 74 65 64 5f 6d 73 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ated_msg);.................<span |
| 28780 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | .class="t32_1">^</span>.<span.cl |
| 287a0 | 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ass="t0_1">./docgen_tmp/test.zig |
| 287c0 | 3a 31 31 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f | :11:17:.</span><span.class="t36_ |
| 287e0 | 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | 1">note:.</span><span.class="t0_ |
| 28800 | 31 22 3e 64 65 73 74 69 6e 61 74 69 6f 6e 20 70 6f 69 6e 74 65 72 20 72 65 71 75 69 72 65 73 20 | 1">destination.pointer.requires. |
| 28820 | 61 20 74 65 72 6d 69 6e 61 74 69 6e 67 20 27 30 27 20 73 65 6e 74 69 6e 65 6c 3c 2f 73 70 61 6e | a.terminating.'0'.sentinel</span |
| 28840 | 3e 0a 20 20 20 20 5f 20 3d 20 70 72 69 6e 74 66 28 26 61 6d 70 3b 6e 6f 6e 5f 6e 75 6c 6c 5f 74 | >....._.=.printf(&non_null_t |
| 28860 | 65 72 6d 69 6e 61 74 65 64 5f 6d 73 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | erminated_msg);................. |
| 28880 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 | <span.class="t32_1">^</span>.</c |
| 288a0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f | ode></pre>........<p>See.also:</ |
| 288c0 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 | p><ul>.<li><a.href="#Sentinel-Te |
| 288e0 | 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e | rminated-Slices">Sentinel-Termin |
| 28900 | 61 74 65 64 20 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | ated.Slices</a></li>.<li><a.href |
| 28920 | 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 | ="#Sentinel-Terminated-Arrays">S |
| 28940 | 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c | entinel-Terminated.Arrays</a></l |
| 28960 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c | i>.</ul>.......................< |
| 28980 | 68 31 20 69 64 3d 22 53 6c 69 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 6c 69 | h1.id="Slices"><a.href="#toc-Sli |
| 289a0 | 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ces">Slices</a>.<a.class="hdr".h |
| 289c0 | 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 | ref="#Slices">..</a></h1>....... |
| 289e0 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 28a00 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 28a20 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c | "tok-kw">const</span>.expect.=.< |
| 28a40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| 28a60 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| 28a80 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 | uot;std"</span>).testing.ex |
| 28aa0 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | pect;..<span.class="tok-kw">test |
| 28ac0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 28ae0 | 75 6f 74 3b 62 61 73 69 63 20 73 6c 69 63 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | uot;basic.slices"</span>.{. |
| 28b00 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 | ....<span.class="tok-kw">var</sp |
| 28b20 | 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.array.=.[_]<span.class="tok- |
| 28b40 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">i32</span>{.<span.class="t |
| 28b60 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">1</span>,.<span.class |
| 28b80 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">2</span>,.<span.cl |
| 28ba0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-number">3</span>,.<span |
| 28bc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a | .class="tok-number">4</span>.};. |
| 28be0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | ....<span.class="tok-comment">// |
| 28c00 | 20 41 20 73 6c 69 63 65 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 61 6e 64 20 61 20 6c 65 6e 67 | .A.slice.is.a.pointer.and.a.leng |
| 28c20 | 74 68 2e 20 54 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 61 6e 20 61 72 | th..The.difference.between.an.ar |
| 28c40 | 72 61 79 20 61 6e 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ray.and</span>.....<span.class=" |
| 28c60 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 20 73 6c 69 63 65 20 69 73 20 74 68 61 74 20 | tok-comment">//.a.slice.is.that. |
| 28c80 | 74 68 65 20 61 72 72 61 79 27 73 20 6c 65 6e 67 74 68 20 69 73 20 70 61 72 74 20 6f 66 20 74 68 | the.array's.length.is.part.of.th |
| 28ca0 | 65 20 74 79 70 65 20 61 6e 64 20 6b 6e 6f 77 6e 20 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | e.type.and.known.at</span>.....< |
| 28cc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6d 70 | span.class="tok-comment">//.comp |
| 28ce0 | 69 6c 65 2d 74 69 6d 65 2c 20 77 68 65 72 65 61 73 20 74 68 65 20 73 6c 69 63 65 27 73 20 6c 65 | ile-time,.whereas.the.slice's.le |
| 28d00 | 6e 67 74 68 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e | ngth.is.known.at.runtime.</span> |
| 28d20 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | .....<span.class="tok-comment">/ |
| 28d40 | 2f 20 42 6f 74 68 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65 64 20 77 69 74 68 20 74 68 65 20 | /.Both.can.be.accessed.with.the. |
| 28d60 | 60 6c 65 6e 60 20 66 69 65 6c 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | `len`.field.</span>.....<span.cl |
| 28d80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6b 6e 6f 77 6e 5f 61 74 | ass="tok-kw">var</span>.known_at |
| 28da0 | 5f 72 75 6e 74 69 6d 65 5f 7a 65 72 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | _runtime_zero:.<span.class="tok- |
| 28dc0 | 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | type">usize</span>.=.<span.class |
| 28de0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | ="tok-number">0</span>;.....<spa |
| 28e00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c | n.class="tok-kw">const</span>.sl |
| 28e20 | 69 63 65 20 3d 20 61 72 72 61 79 5b 6b 6e 6f 77 6e 5f 61 74 5f 72 75 6e 74 69 6d 65 5f 7a 65 72 | ice.=.array[known_at_runtime_zer |
| 28e40 | 6f 2e 2e 61 72 72 61 79 2e 6c 65 6e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | o..array.len];.....<span.class=" |
| 28e60 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 26 61 6d 70 3b 73 | tok-kw">try</span>.expect(&s |
| 28e80 | 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | lice[<span.class="tok-number">0< |
| 28ea0 | 2f 73 70 61 6e 3e 5d 20 3d 3d 20 26 61 6d 70 3b 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 | /span>].==.&array[<span.clas |
| 28ec0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c | s="tok-number">0</span>]);.....< |
| 28ee0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 28f00 | 78 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 61 72 72 61 79 2e 6c 65 6e 29 3b 0a 0a | xpect(slice.len.==.array.len);.. |
| 28f20 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | ....<span.class="tok-comment">// |
| 28f40 | 20 55 73 69 6e 67 20 74 68 65 20 61 64 64 72 65 73 73 2d 6f 66 20 6f 70 65 72 61 74 6f 72 20 6f | .Using.the.address-of.operator.o |
| 28f60 | 6e 20 61 20 73 6c 69 63 65 20 67 69 76 65 73 20 61 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f | n.a.slice.gives.a.single-item.po |
| 28f80 | 69 6e 74 65 72 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | inter,</span>.....<span.class="t |
| 28fa0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 68 69 6c 65 20 75 73 69 6e 67 20 74 68 65 20 60 | ok-comment">//.while.using.the.` |
| 28fc0 | 70 74 72 60 20 66 69 65 6c 64 20 67 69 76 65 73 20 61 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 | ptr`.field.gives.a.many-item.poi |
| 28fe0 | 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nter.</span>.....<span.class="to |
| 29000 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | k-kw">try</span>.expect(<span.cl |
| 29020 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@TypeOf</span> |
| 29040 | 28 73 6c 69 63 65 2e 70 74 72 29 20 3d 3d 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | (slice.ptr).==.[*]<span.class="t |
| 29060 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ok-type">i32</span>);.....<span. |
| 29080 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 290a0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 | (<span.class="tok-builtin">@Type |
| 290c0 | 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | Of</span>(&slice[<span.class |
| 290e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 20 3d 3d 20 2a 3c 73 70 | ="tok-number">0</span>]).==.*<sp |
| 29100 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-type">i32</span>); |
| 29120 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 29140 | 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | pan>.expect(<span.class="tok-bui |
| 29160 | 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 2e 70 74 72 | ltin">@ptrToInt</span>(slice.ptr |
| 29180 | 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | ).==.<span.class="tok-builtin">@ |
| 291a0 | 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e | ptrToInt</span>(&slice[<span |
| 291c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 29 3b | .class="tok-number">0</span>])); |
| 291e0 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ......<span.class="tok-comment"> |
| 29200 | 2f 2f 20 53 6c 69 63 65 73 20 68 61 76 65 20 61 72 72 61 79 20 62 6f 75 6e 64 73 20 63 68 65 63 | //.Slices.have.array.bounds.chec |
| 29220 | 6b 69 6e 67 2e 20 49 66 20 79 6f 75 20 74 72 79 20 74 6f 20 61 63 63 65 73 73 20 73 6f 6d 65 74 | king..If.you.try.to.access.somet |
| 29240 | 68 69 6e 67 20 6f 75 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | hing.out</span>.....<span.class= |
| 29260 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 66 20 62 6f 75 6e 64 73 2c 20 79 6f 75 27 | "tok-comment">//.of.bounds,.you' |
| 29280 | 6c 6c 20 67 65 74 20 61 20 73 61 66 65 74 79 20 63 68 65 63 6b 20 66 61 69 6c 75 72 65 3a 3c 2f | ll.get.a.safety.check.failure:</ |
| 292a0 | 73 70 61 6e 3e 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.....slice[<span.class="tok |
| 292c0 | 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 | -number">10</span>].+=.<span.cla |
| 292e0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c | ss="tok-number">1</span>;......< |
| 29300 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 | span.class="tok-comment">//.Note |
| 29320 | 20 74 68 61 74 20 60 73 6c 69 63 65 2e 70 74 72 60 20 64 6f 65 73 20 6e 6f 74 20 69 6e 76 6f 6b | .that.`slice.ptr`.does.not.invok |
| 29340 | 65 20 73 61 66 65 74 79 20 63 68 65 63 6b 69 6e 67 2c 20 77 68 69 6c 65 20 60 26 61 6d 70 3b 73 | e.safety.checking,.while.`&s |
| 29360 | 6c 69 63 65 5b 30 5d 60 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | lice[0]`</span>.....<span.class= |
| 29380 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 73 20 74 68 61 74 20 74 68 | "tok-comment">//.asserts.that.th |
| 293a0 | 65 20 73 6c 69 63 65 20 68 61 73 20 6c 65 6e 20 26 67 74 3b 3d 20 31 2e 3c 2f 73 70 61 6e 3e 0a | e.slice.has.len.>=.1.</span>. |
| 293c0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 293e0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 20 0a 54 65 73 74 | shell">$.zig.test.test.zig..Test |
| 29400 | 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 62 61 73 69 63 20 73 6c 69 63 65 73 26 71 | .[1/1].test."basic.slices&q |
| 29420 | 75 6f 74 3b 2e 2e 2e 20 0a 74 68 72 65 61 64 20 31 30 38 32 37 20 70 61 6e 69 63 3a 20 69 6e 64 | uot;.....thread.10827.panic:.ind |
| 29440 | 65 78 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 | ex.out.of.bounds.<span.class="t1 |
| 29460 | 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 | _0">/home/andy/Downloads/zig/doc |
| 29480 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 32 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 3c | gen_tmp/test.zig:22:10</span>:.< |
| 294a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 39 62 33 20 69 6e 20 74 65 | span.class="t2_0">0x2069b3.in.te |
| 294c0 | 73 74 20 26 71 75 6f 74 3b 62 61 73 69 63 20 73 6c 69 63 65 73 26 71 75 6f 74 3b 20 28 74 65 73 | st."basic.slices".(tes |
| 294e0 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 6c 69 63 65 5b 31 30 5d 20 2b 3d 20 31 3b 0a 20 20 | t)</span>.....slice[10].+=.1;... |
| 29500 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | .......<span.class="t32_1">^</sp |
| 29520 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | an>.<span.class="t1_0">/home/and |
| 29540 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f | y/Downloads/zig/lib/std/special/ |
| 29560 | 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 37 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | test_runner.zig:76:28</span>:.<s |
| 29580 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 64 32 64 61 20 69 6e 20 73 74 64 | pan.class="t2_0">0x22d2da.in.std |
| 295a0 | 2e 73 70 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .special.main.(test)</span>..... |
| 295c0 | 20 20 20 20 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 20 20 | ....}.else.test_fn.func();...... |
| 295e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......................<span.clas |
| 29600 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 29620 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c | t1_0">/home/andy/Downloads/zig/l |
| 29640 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 37 31 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/start.zig:471:37</span>:. |
| 29660 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 35 38 33 61 20 69 6e 20 73 | <span.class="t2_0">0x22583a.in.s |
| 29680 | 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | td.start.callMain.(test)</span>. |
| 296a0 | 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e | ............const.result.=.root. |
| 296c0 | 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | main().catch.|err|.{............ |
| 296e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | .........................<span.c |
| 29700 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| 29720 | 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 | s="t1_0">/home/andy/Downloads/zi |
| 29740 | 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e | g/lib/std/start.zig:413:12</span |
| 29760 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 39 37 30 65 20 69 | >:.<span.class="t2_0">0x20970e.i |
| 29780 | 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 | n.std.start.callMainWithArgs.(te |
| 297a0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e | st)</span>.....return.@call(.{.. |
| 297c0 | 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c | modifier.=..always_inline.},.cal |
| 297e0 | 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | lMain,..{});............<span.cl |
| 29800 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ass="t32_1">^</span>.<span.class |
| 29820 | 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 | ="t1_0">/home/andy/Downloads/zig |
| 29840 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e | /lib/std/start.zig:332:17</span> |
| 29860 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 37 33 36 20 69 6e | :.<span.class="t2_0">0x208736.in |
| 29880 | 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 | .std.start.posixCallMainAndExit. |
| 298a0 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 | (test)</span>.....std.os.exit(@c |
| 298c0 | 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e | all(.{..modifier.=..always_inlin |
| 298e0 | 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 | e.},.callMainWithArgs,..{.argc,. |
| 29900 | 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | argv,.envp.}));................. |
| 29920 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 29940 | 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c | an.class="t1_0">/home/andy/Downl |
| 29960 | 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 | oads/zig/lib/std/start.zig:245:5 |
| 29980 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 | </span>:.<span.class="t2_0">0x20 |
| 299a0 | 38 35 34 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c | 8542.in.std.start._start.(test)< |
| 299c0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 | /span>.....@call(.{..modifier.=. |
| 299e0 | 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e | .never_inline.},.posixCallMainAn |
| 29a00 | 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | dExit,..{});.....<span.class="t3 |
| 29a20 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 | 2_1">^</span>.error:.the.followi |
| 29a40 | 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f | ng.test.command.crashed:.docgen_ |
| 29a60 | 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 33 33 33 61 38 37 34 31 38 31 36 37 30 32 64 61 | tmp/zig-cache/o/333a8741816702da |
| 29a80 | 66 64 30 66 66 39 39 61 66 33 38 30 65 62 62 31 2f 74 65 73 74 20 2f 68 6f 6d 65 2f 61 6e 64 79 | fd0ff99af380ebb1/test./home/andy |
| 29aa0 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2f 7a 69 67 | /Downloads/zig/build-release/zig |
| 29ac0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 69 73 | .</code></pre>........<p>This.is |
| 29ae0 | 20 6f 6e 65 20 72 65 61 73 6f 6e 20 77 65 20 70 72 65 66 65 72 20 73 6c 69 63 65 73 20 74 6f 20 | .one.reason.we.prefer.slices.to. |
| 29b00 | 70 6f 69 6e 74 65 72 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | pointers.</p>.......<p.class="fi |
| 29b20 | 6c 65 22 3e 73 6c 69 63 65 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | le">slices.zig</p><pre><code.cla |
| 29b40 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| 29b60 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nst</span>.std.=.<span.class="to |
| 29b80 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| 29ba0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c | class="tok-str">"std"< |
| 29bc0 | 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | /span>);.<span.class="tok-kw">co |
| 29be0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e | nst</span>.expect.=.std.testing. |
| 29c00 | 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | expect;.<span.class="tok-kw">con |
| 29c20 | 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 | st</span>.mem.=.std.mem;.<span.c |
| 29c40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6d 74 20 3d | lass="tok-kw">const</span>.fmt.= |
| 29c60 | 20 73 74 64 2e 66 6d 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .std.fmt;..<span.class="tok-kw"> |
| 29c80 | 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | test</span>.<span.class="tok-str |
| 29ca0 | 22 3e 26 71 75 6f 74 3b 75 73 69 6e 67 20 73 6c 69 63 65 73 20 66 6f 72 20 73 74 72 69 6e 67 73 | ">"using.slices.for.strings |
| 29cc0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 29ce0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 68 61 73 20 6e 6f 20 63 6f 6e 63 | "tok-comment">//.Zig.has.no.conc |
| 29d00 | 65 70 74 20 6f 66 20 73 74 72 69 6e 67 73 2e 20 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 | ept.of.strings..String.literals. |
| 29d20 | 61 72 65 20 63 6f 6e 73 74 20 70 6f 69 6e 74 65 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | are.const.pointers</span>.....<s |
| 29d40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 6e 75 | pan.class="tok-comment">//.to.nu |
| 29d60 | 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 61 72 72 61 79 73 20 6f 66 20 75 38 2c 20 61 6e 64 20 | ll-terminated.arrays.of.u8,.and. |
| 29d80 | 62 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 3c 2f 73 70 61 6e 3e 0a | by.convention.parameters</span>. |
| 29da0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | ....<span.class="tok-comment">// |
| 29dc0 | 20 74 68 61 74 20 61 72 65 20 26 71 75 6f 74 3b 73 74 72 69 6e 67 73 26 71 75 6f 74 3b 20 61 72 | .that.are."strings".ar |
| 29de0 | 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 73 | e.expected.to.be.UTF-8.encoded.s |
| 29e00 | 6c 69 63 65 73 20 6f 66 20 75 38 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | lices.of.u8.</span>.....<span.cl |
| 29e20 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 20 77 65 20 63 6f 65 | ass="tok-comment">//.Here.we.coe |
| 29e40 | 72 63 65 20 2a 63 6f 6e 73 74 20 5b 35 3a 30 5d 75 38 20 61 6e 64 20 2a 63 6f 6e 73 74 20 5b 36 | rce.*const.[5:0]u8.and.*const.[6 |
| 29e60 | 3a 30 5d 75 38 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 75 38 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | :0]u8.to.[]const.u8</span>.....< |
| 29e80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 29ea0 | 20 68 65 6c 6c 6f 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | .hello:.[]<span.class="tok-kw">c |
| 29ec0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | onst</span>.<span.class="tok-typ |
| 29ee0 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">u8</span>.=.<span.class="tok- |
| 29f00 | 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 | str">"hello"</span>;.. |
| 29f20 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| 29f40 | 70 61 6e 3e 20 77 6f 72 6c 64 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | pan>.world:.[]<span.class="tok-k |
| 29f60 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | w">const</span>.<span.class="tok |
| 29f80 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u8</span>.=.<span.class=" |
| 29fa0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b e4 b8 96 e7 95 8c 26 71 75 6f 74 3b 3c 2f 73 70 61 | tok-str">"......"</spa |
| 29fc0 | 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | n>;......<span.class="tok-kw">va |
| 29fe0 | 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 74 6f 67 65 74 68 65 72 3a 20 5b 3c 73 70 61 6e 20 63 6c | r</span>.all_together:.[<span.cl |
| 2a000 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 | ass="tok-number">100</span>]<spa |
| 2a020 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c | n.class="tok-type">u8</span>.=.< |
| 2a040 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c | span.class="tok-null">undefined< |
| 2a060 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | /span>;.....<span.class="tok-com |
| 2a080 | 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 75 73 65 20 73 6c 69 63 65 20 73 79 6e 74 61 | ment">//.You.can.use.slice.synta |
| 2a0a0 | 78 20 6f 6e 20 61 6e 20 61 72 72 61 79 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 61 72 72 61 | x.on.an.array.to.convert.an.arra |
| 2a0c0 | 79 20 69 6e 74 6f 20 61 20 73 6c 69 63 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | y.into.a.slice.</span>.....<span |
| 2a0e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c | .class="tok-kw">const</span>.all |
| 2a100 | 5f 74 6f 67 65 74 68 65 72 5f 73 6c 69 63 65 20 3d 20 61 6c 6c 5f 74 6f 67 65 74 68 65 72 5b 3c | _together_slice.=.all_together[< |
| 2a120 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e | span.class="tok-number">0</span> |
| 2a140 | 2e 2e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | ..];.....<span.class="tok-commen |
| 2a160 | 74 22 3e 2f 2f 20 53 74 72 69 6e 67 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 65 78 61 6d 70 | t">//.String.concatenation.examp |
| 2a180 | 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | le.</span>.....<span.class="tok- |
| 2a1a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 20 3d 20 3c | kw">const</span>.hello_world.=.< |
| 2a1c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 66 | span.class="tok-kw">try</span>.f |
| 2a1e0 | 6d 74 2e 62 75 66 50 72 69 6e 74 28 61 6c 6c 5f 74 6f 67 65 74 68 65 72 5f 73 6c 69 63 65 2c 20 | mt.bufPrint(all_together_slice,. |
| 2a200 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 73 7d 20 | <span.class="tok-str">"{s}. |
| 2a220 | 7b 73 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 68 65 6c 6c 6f 2c 20 77 6f 72 6c | {s}"</span>,..{.hello,.worl |
| 2a240 | 64 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | d.});......<span.class="tok-comm |
| 2a260 | 65 6e 74 22 3e 2f 2f 20 47 65 6e 65 72 61 6c 6c 79 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 55 | ent">//.Generally,.you.can.use.U |
| 2a280 | 54 46 2d 38 20 61 6e 64 20 6e 6f 74 20 77 6f 72 72 79 20 61 62 6f 75 74 20 77 68 65 74 68 65 72 | TF-8.and.not.worry.about.whether |
| 2a2a0 | 20 73 6f 6d 65 74 68 69 6e 67 20 69 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | .something.is.a</span>.....<span |
| 2a2c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 74 72 69 6e 67 2e 20 | .class="tok-comment">//.string.. |
| 2a2e0 | 49 66 20 79 6f 75 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 64 65 61 6c 20 77 69 74 68 20 69 | If.you.don't.need.to.deal.with.i |
| 2a300 | 6e 64 69 76 69 64 75 61 6c 20 63 68 61 72 61 63 74 65 72 73 2c 20 6e 6f 20 6e 65 65 64 3c 2f 73 | ndividual.characters,.no.need</s |
| 2a320 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | pan>.....<span.class="tok-commen |
| 2a340 | 74 22 3e 2f 2f 20 74 6f 20 64 65 63 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | t">//.to.decode.</span>.....<spa |
| 2a360 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 2a380 | 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ct(mem.eql(<span.class="tok-type |
| 2a3a0 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 2c 20 3c 73 70 61 6e 20 | ">u8</span>,.hello_world,.<span. |
| 2a3c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 e4 b8 96 e7 | class="tok-str">"hello..... |
| 2a3e0 | 95 8c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | .."</span>));.}..<span.clas |
| 2a400 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">test</span>.<span.cla |
| 2a420 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6c 69 63 65 20 70 6f 69 6e 74 65 72 | ss="tok-str">"slice.pointer |
| 2a440 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 2a460 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 3a 20 5b 3c 73 70 61 | "tok-kw">var</span>.array:.[<spa |
| 2a480 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 5d 3c | n.class="tok-number">10</span>]< |
| 2a4a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 | span.class="tok-type">u8</span>. |
| 2a4c0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e | =.<span.class="tok-null">undefin |
| 2a4e0 | 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ed</span>;.....<span.class="tok- |
| 2a500 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 61 72 72 61 | kw">const</span>.ptr.=.&arra |
| 2a520 | 79 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | y;......<span.class="tok-comment |
| 2a540 | 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 75 73 65 20 73 6c 69 63 69 6e 67 20 73 79 6e 74 61 78 20 | ">//.You.can.use.slicing.syntax. |
| 2a560 | 74 6f 20 63 6f 6e 76 65 72 74 20 61 20 70 6f 69 6e 74 65 72 20 69 6e 74 6f 20 61 20 73 6c 69 63 | to.convert.a.pointer.into.a.slic |
| 2a580 | 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e:</span>.....<span.class="tok-k |
| 2a5a0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 70 74 72 5b 3c 73 70 61 | w">const</span>.slice.=.ptr[<spa |
| 2a5c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c | n.class="tok-number">0</span>..< |
| 2a5e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e | span.class="tok-number">5</span> |
| 2a600 | 5d 3b 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ];.....slice[<span.class="tok-nu |
| 2a620 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | mber">2</span>].=.<span.class="t |
| 2a640 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ok-number">3</span>;.....<span.c |
| 2a660 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 2a680 | 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | slice[<span.class="tok-number">2 |
| 2a6a0 | 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | </span>].==.<span.class="tok-num |
| 2a6c0 | 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">3</span>);.....<span.class= |
| 2a6e0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 73 6c 69 63 65 20 69 73 20 6d 75 | "tok-comment">//.The.slice.is.mu |
| 2a700 | 74 61 62 6c 65 20 62 65 63 61 75 73 65 20 77 65 20 73 6c 69 63 65 64 20 61 20 6d 75 74 61 62 6c | table.because.we.sliced.a.mutabl |
| 2a720 | 65 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | e.pointer.</span>.....<span.clas |
| 2a740 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 72 74 68 65 72 6d 6f 72 65 2c 20 | s="tok-comment">//.Furthermore,. |
| 2a760 | 69 74 20 69 73 20 61 63 74 75 61 6c 6c 79 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 | it.is.actually.a.pointer.to.an.a |
| 2a780 | 72 72 61 79 2c 20 73 69 6e 63 65 20 74 68 65 20 73 74 61 72 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 | rray,.since.the.start</span>.... |
| 2a7a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6e | .<span.class="tok-comment">//.an |
| 2a7c0 | 64 20 65 6e 64 20 69 6e 64 65 78 65 73 20 77 65 72 65 20 62 6f 74 68 20 63 6f 6d 70 74 69 6d 65 | d.end.indexes.were.both.comptime |
| 2a7e0 | 2d 6b 6e 6f 77 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -known.</span>.....<span.class=" |
| 2a800 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 | tok-kw">try</span>.expect(<span. |
| 2a820 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 | class="tok-builtin">@TypeOf</spa |
| 2a840 | 6e 3e 28 73 6c 69 63 65 29 20 3d 3d 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>(slice).==.*[<span.class="tok- |
| 2a860 | 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | number">5</span>]<span.class="to |
| 2a880 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-type">u8</span>);......<span.c |
| 2a8a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 61 6c | lass="tok-comment">//.You.can.al |
| 2a8c0 | 73 6f 20 73 6c 69 63 65 20 61 20 73 6c 69 63 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | so.slice.a.slice:</span>.....<sp |
| 2a8e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 | an.class="tok-kw">const</span>.s |
| 2a900 | 6c 69 63 65 32 20 3d 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | lice2.=.slice[<span.class="tok-n |
| 2a920 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">2</span>..<span.class="to |
| 2a940 | 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-number">3</span>];.....<span.c |
| 2a960 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 2a980 | 73 6c 69 63 65 32 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | slice2.len.==.<span.class="tok-n |
| 2a9a0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">1</span>);.....<span.clas |
| 2a9c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 | s="tok-kw">try</span>.expect(sli |
| 2a9e0 | 63 65 32 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | ce2[<span.class="tok-number">0</ |
| 2aa00 | 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>].==.<span.class="tok-numbe |
| 2aa20 | 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | r">3</span>);.}</code></pre><pre |
| 2aa40 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| 2aa60 | 73 6c 69 63 65 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 | slices.zig.Test.[1/2].test." |
| 2aa80 | 3b 75 73 69 6e 67 20 73 6c 69 63 65 73 20 66 6f 72 20 73 74 72 69 6e 67 73 26 71 75 6f 74 3b 2e | ;using.slices.for.strings". |
| 2aaa0 | 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 6c 69 63 65 20 | ....Test.[2/2].test."slice. |
| 2aac0 | 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 | pointer"......All.2.tests.p |
| 2aae0 | 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 | assed..</code></pre>........<p>S |
| 2ab00 | 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 | ee.also:</p><ul>.<li><a.href="#P |
| 2ab20 | 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | ointers">Pointers</a></li>.<li>< |
| 2ab40 | 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | a.href="#for">for</a></li>.<li>< |
| 2ab60 | 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e | a.href="#Arrays">Arrays</a></li> |
| 2ab80 | 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 65 6e 74 69 6e 65 6c 2d | .</ul>.........<h2.id="Sentinel- |
| 2aba0 | 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | Terminated-Slices"><a.href="#toc |
| 2abc0 | 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e 53 65 6e | -Sentinel-Terminated-Slices">Sen |
| 2abe0 | 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 6c 69 63 65 73 3c 2f 61 3e 20 3c 61 20 63 | tinel-Terminated.Slices</a>.<a.c |
| 2ac00 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 | lass="hdr".href="#Sentinel-Termi |
| 2ac20 | 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | nated-Slices">..</a></h2>....... |
| 2ac40 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 20 63 6c 61 73 | .<p>.......The.syntax.<code.clas |
| 2ac60 | 73 3d 22 7a 69 67 22 3e 5b 3a 78 5d 54 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 73 6c 69 63 65 20 | s="zig">[:x]T</code>.is.a.slice. |
| 2ac80 | 77 68 69 63 68 20 68 61 73 20 61 20 72 75 6e 74 69 6d 65 20 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 | which.has.a.runtime.known.length |
| 2aca0 | 0a 20 20 20 20 20 20 61 6e 64 20 61 6c 73 6f 20 67 75 61 72 61 6e 74 65 65 73 20 61 20 73 65 6e | .......and.also.guarantees.a.sen |
| 2acc0 | 74 69 6e 65 6c 20 76 61 6c 75 65 20 61 74 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 69 6e 64 65 78 | tinel.value.at.the.element.index |
| 2ace0 | 65 64 20 62 79 20 74 68 65 20 6c 65 6e 67 74 68 2e 20 54 68 65 20 74 79 70 65 20 64 6f 65 73 20 | ed.by.the.length..The.type.does. |
| 2ad00 | 6e 6f 74 0a 20 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 74 68 65 72 65 20 61 | not.......guarantee.that.there.a |
| 2ad20 | 72 65 20 6e 6f 20 73 65 6e 74 69 6e 65 6c 20 65 6c 65 6d 65 6e 74 73 20 62 65 66 6f 72 65 20 74 | re.no.sentinel.elements.before.t |
| 2ad40 | 68 61 74 2e 20 53 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 73 20 | hat..Sentinel-terminated.slices. |
| 2ad60 | 61 6c 6c 6f 77 20 65 6c 65 6d 65 6e 74 0a 20 20 20 20 20 20 61 63 63 65 73 73 20 74 6f 20 74 68 | allow.element.......access.to.th |
| 2ad80 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 65 6e 3c 2f 63 6f 64 65 3e 20 69 | e.<code.class="zig">len</code>.i |
| 2ada0 | 6e 64 65 78 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | ndex........</p>.......<p.class= |
| 2adc0 | 22 66 69 6c 65 22 3e 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 65 2e 7a 69 67 | "file">null_terminated_slice.zig |
| 2ade0 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 2ae00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 | .class="tok-kw">const</span>.std |
| 2ae20 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | .=.<span.class="tok-builtin">@im |
| 2ae40 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | port</span>(<span.class="tok-str |
| 2ae60 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e | ">"std"</span>);.<span |
| 2ae80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 | .class="tok-kw">const</span>.exp |
| 2aea0 | 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e | ect.=.std.testing.expect;..<span |
| 2aec0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | .class="tok-kw">test</span>.<spa |
| 2aee0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 75 6c 6c 20 74 65 72 | n.class="tok-str">"null.ter |
| 2af00 | 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | minated.slice"</span>.{.... |
| 2af20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 2af40 | 6e 3e 20 73 6c 69 63 65 3a 20 5b 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | n>.slice:.[:<span.class="tok-num |
| 2af60 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ber">0</span>]<span.class="tok-k |
| 2af80 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | w">const</span>.<span.class="tok |
| 2afa0 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u8</span>.=.<span.class=" |
| 2afc0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | tok-str">"hello"</span |
| 2afe0 | 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | >;......<span.class="tok-kw">try |
| 2b000 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 | </span>.expect(slice.len.==.<spa |
| 2b020 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">5</span>);. |
| 2b040 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 2b060 | 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.expect(slice[<span.class="to |
| 2b080 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-number">5</span>].==.<span.cla |
| 2b0a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | ss="tok-number">0</span>);.}</co |
| 2b0c0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 2b0e0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 | ">$.zig.test.null_terminated_sli |
| 2b100 | 63 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 75 6c | ce.zig.Test.[1/1].test."nul |
| 2b120 | 6c 20 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c | l.terminated.slice"......Al |
| 2b140 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 2b160 | 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e | .......<p>See.also:</p><ul>.<li> |
| 2b180 | 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f | <a.href="#Sentinel-Terminated-Po |
| 2b1a0 | 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e | inters">Sentinel-Terminated.Poin |
| 2b1c0 | 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 | ters</a></li>.<li><a.href="#Sent |
| 2b1e0 | 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c | inel-Terminated-Arrays">Sentinel |
| 2b200 | 2d 54 65 72 6d 69 6e 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | -Terminated.Arrays</a></li>.</ul |
| 2b220 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 | >.......................<h1.id=" |
| 2b240 | 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 74 72 75 63 74 22 3e 73 74 | struct"><a.href="#toc-struct">st |
| 2b260 | 72 75 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 | ruct</a>.<a.class="hdr".href="#s |
| 2b280 | 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | truct">..</a></h1>........<p.cla |
| 2b2a0 | 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 75 63 74 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | ss="file">structs.zig</p><pre><c |
| 2b2c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 2b2e0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 20 73 74 72 75 63 74 2e 3c 2f | -comment">//.Declare.a.struct.</ |
| 2b300 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | span>.<span.class="tok-comment"> |
| 2b320 | 2f 2f 20 5a 69 67 20 67 69 76 65 73 20 6e 6f 20 67 75 61 72 61 6e 74 65 65 73 20 61 62 6f 75 74 | //.Zig.gives.no.guarantees.about |
| 2b340 | 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 66 69 65 6c 64 73 20 61 6e 64 20 74 68 65 20 73 69 7a | .the.order.of.fields.and.the.siz |
| 2b360 | 65 20 6f 66 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | e.of</span>.<span.class="tok-com |
| 2b380 | 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 73 74 72 75 63 74 20 62 75 74 20 74 68 65 20 66 69 65 6c | ment">//.the.struct.but.the.fiel |
| 2b3a0 | 64 73 20 61 72 65 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 41 42 49 2d 61 6c 69 67 | ds.are.guaranteed.to.be.ABI-alig |
| 2b3c0 | 6e 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ned.</span>.<span.class="tok-kw" |
| 2b3e0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.Point.=.<span.clas |
| 2b400 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 | s="tok-kw">struct</span>.{.....x |
| 2b420 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 | :.<span.class="tok-type">f32</sp |
| 2b440 | 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | an>,.....y:.<span.class="tok-typ |
| 2b460 | 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">f32</span>,.};..<span.class=" |
| 2b480 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 61 79 62 65 20 77 65 20 77 61 6e 74 20 74 6f | tok-comment">//.Maybe.we.want.to |
| 2b4a0 | 20 70 61 73 73 20 69 74 20 74 6f 20 4f 70 65 6e 47 4c 20 73 6f 20 77 65 20 77 61 6e 74 20 74 6f | .pass.it.to.OpenGL.so.we.want.to |
| 2b4c0 | 20 62 65 20 70 61 72 74 69 63 75 6c 61 72 20 61 62 6f 75 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | .be.particular.about</span>.<spa |
| 2b4e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 6f 77 20 74 68 65 | n.class="tok-comment">//.how.the |
| 2b500 | 20 62 79 74 65 73 20 61 72 65 20 61 72 72 61 6e 67 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | .bytes.are.arranged.</span>.<spa |
| 2b520 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f | n.class="tok-kw">const</span>.Po |
| 2b540 | 69 6e 74 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b | int2.=.<span.class="tok-kw">pack |
| 2b560 | 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | ed</span>.<span.class="tok-kw">s |
| 2b580 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | truct</span>.{.....x:.<span.clas |
| 2b5a0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 | s="tok-type">f32</span>,.....y:. |
| 2b5c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">f32</span |
| 2b5e0 | 3e 2c 0a 7d 3b 0a 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | >,.};...<span.class="tok-comment |
| 2b600 | 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 6e 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 61 20 73 74 | ">//.Declare.an.instance.of.a.st |
| 2b620 | 72 75 63 74 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ruct.</span>.<span.class="tok-kw |
| 2b640 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 50 6f 69 6e 74 20 7b 0a 20 20 20 20 2e | ">const</span>.p.=.Point.{...... |
| 2b660 | 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 31 | x.=.<span.class="tok-number">0.1 |
| 2b680 | 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 2</span>,......y.=.<span.class=" |
| 2b6a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 33 34 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 | tok-number">0.34</span>,.};..<sp |
| 2b6c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 61 79 62 65 20 | an.class="tok-comment">//.Maybe. |
| 2b6e0 | 77 65 27 72 65 20 6e 6f 74 20 72 65 61 64 79 20 74 6f 20 66 69 6c 6c 20 6f 75 74 20 73 6f 6d 65 | we're.not.ready.to.fill.out.some |
| 2b700 | 20 6f 66 20 74 68 65 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | .of.the.fields.</span>.<span.cla |
| 2b720 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 32 20 3d 20 50 6f 69 6e | ss="tok-kw">var</span>.p2.=.Poin |
| 2b740 | 74 20 7b 0a 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | t.{......x.=.<span.class="tok-nu |
| 2b760 | 6d 62 65 72 22 3e 30 2e 31 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 | mber">0.12</span>,......y.=.<spa |
| 2b780 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 | n.class="tok-null">undefined</sp |
| 2b7a0 | 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | an>,.};..<span.class="tok-commen |
| 2b7c0 | 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 6d 65 74 68 6f 64 73 3c 2f | t">//.Structs.can.have.methods</ |
| 2b7e0 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | span>.<span.class="tok-comment"> |
| 2b800 | 2f 2f 20 53 74 72 75 63 74 20 6d 65 74 68 6f 64 73 20 61 72 65 20 6e 6f 74 20 73 70 65 63 69 61 | //.Struct.methods.are.not.specia |
| 2b820 | 6c 2c 20 74 68 65 79 20 61 72 65 20 6f 6e 6c 79 20 6e 61 6d 65 73 70 61 63 65 64 3c 2f 73 70 61 | l,.they.are.only.namespaced</spa |
| 2b840 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | n>.<span.class="tok-comment">//. |
| 2b860 | 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 61 6c 6c 20 77 69 74 68 | functions.that.you.can.call.with |
| 2b880 | 20 64 6f 74 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .dot.syntax.</span>.<span.class= |
| 2b8a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 65 63 33 20 3d 20 3c 73 70 | "tok-kw">const</span>.Vec3.=.<sp |
| 2b8c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">struct</span>. |
| 2b8e0 | 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | {.....x:.<span.class="tok-type"> |
| 2b900 | 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | f32</span>,.....y:.<span.class=" |
| 2b920 | 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7a 3a 20 3c 73 70 | tok-type">f32</span>,.....z:.<sp |
| 2b940 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a | an.class="tok-type">f32</span>,. |
| 2b960 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | .....<span.class="tok-kw">pub</s |
| 2b980 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | pan>.<span.class="tok-kw">fn</sp |
| 2b9a0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 6e 69 74 3c 2f 73 | an>.<span.class="tok-fn">init</s |
| 2b9c0 | 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 | pan>(x:.<span.class="tok-type">f |
| 2b9e0 | 33 32 3c 2f 73 70 61 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | 32</span>,.y:.<span.class="tok-t |
| 2ba00 | 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 7a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">f32</span>,.z:.<span.class= |
| 2ba20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 56 65 63 33 20 7b 0a 20 20 | "tok-type">f32</span>).Vec3.{... |
| 2ba40 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 | ......<span.class="tok-kw">retur |
| 2ba60 | 6e 3c 2f 73 70 61 6e 3e 20 56 65 63 33 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 78 20 3d | n</span>.Vec3.{..............x.= |
| 2ba80 | 20 78 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 79 20 3d 20 79 2c 0a 20 20 20 20 20 20 20 20 | .x,..............y.=.y,......... |
| 2baa0 | 20 20 20 20 2e 7a 20 3d 20 7a 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 0a 20 20 | .....z.=.z,.........};.....}.... |
| 2bac0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e | ..<span.class="tok-kw">pub</span |
| 2bae0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">fn</span> |
| 2bb00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 74 3c 2f 73 70 61 6e 3e | .<span.class="tok-fn">dot</span> |
| 2bb20 | 28 73 65 6c 66 3a 20 56 65 63 33 2c 20 6f 74 68 65 72 3a 20 56 65 63 33 29 20 3c 73 70 61 6e 20 | (self:.Vec3,.other:.Vec3).<span. |
| 2bb40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | class="tok-type">f32</span>.{... |
| 2bb60 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 | ......<span.class="tok-kw">retur |
| 2bb80 | 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 78 20 2a 20 6f 74 68 65 72 2e 78 20 2b 20 73 65 6c 66 | n</span>.self.x.*.other.x.+.self |
| 2bba0 | 2e 79 20 2a 20 6f 74 68 65 72 2e 79 20 2b 20 73 65 6c 66 2e 7a 20 2a 20 6f 74 68 65 72 2e 7a 3b | .y.*.other.y.+.self.z.*.other.z; |
| 2bbc0 | 0a 20 20 20 20 7d 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .....}.};..<span.class="tok-kw"> |
| 2bbe0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.expect.=.<span.clas |
| 2bc00 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| 2bc20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| 2bc40 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 | uot;</span>).testing.expect;.<sp |
| 2bc60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 2bc80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 74 20 70 72 | pan.class="tok-str">"dot.pr |
| 2bca0 | 6f 64 75 63 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | oduct"</span>.{.....<span.c |
| 2bcc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 31 20 3d 20 | lass="tok-kw">const</span>.v1.=. |
| 2bce0 | 56 65 63 33 2e 69 6e 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | Vec3.init(<span.class="tok-numbe |
| 2bd00 | 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r">1.0</span>,.<span.class="tok- |
| 2bd20 | 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">0.0</span>,.<span.class= |
| 2bd40 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 | "tok-number">0.0</span>);.....<s |
| 2bd60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 2bd80 | 76 32 20 3d 20 56 65 63 33 2e 69 6e 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | v2.=.Vec3.init(<span.class="tok- |
| 2bda0 | 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">0.0</span>,.<span.class= |
| 2bdc0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | "tok-number">1.0</span>,.<span.c |
| 2bde0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | lass="tok-number">0.0</span>);.. |
| 2be00 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 2be20 | 6e 3e 20 65 78 70 65 63 74 28 76 31 2e 64 6f 74 28 76 32 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | n>.expect(v1.dot(v2).==.<span.cl |
| 2be40 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 | ass="tok-number">0.0</span>);... |
| 2be60 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ...<span.class="tok-comment">//. |
| 2be80 | 4f 74 68 65 72 20 74 68 61 6e 20 62 65 69 6e 67 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 63 61 | Other.than.being.available.to.ca |
| 2bea0 | 6c 6c 20 77 69 74 68 20 64 6f 74 20 73 79 6e 74 61 78 2c 20 73 74 72 75 63 74 20 6d 65 74 68 6f | ll.with.dot.syntax,.struct.metho |
| 2bec0 | 64 73 20 61 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ds.are</span>.....<span.class="t |
| 2bee0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 74 20 73 70 65 63 69 61 6c 2e 20 59 6f 75 20 | ok-comment">//.not.special..You. |
| 2bf00 | 63 61 6e 20 72 65 66 65 72 65 6e 63 65 20 74 68 65 6d 20 61 73 20 61 6e 79 20 6f 74 68 65 72 20 | can.reference.them.as.any.other. |
| 2bf20 | 64 65 63 6c 61 72 61 74 69 6f 6e 20 69 6e 73 69 64 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | declaration.inside</span>.....<s |
| 2bf40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 73 | pan.class="tok-comment">//.the.s |
| 2bf60 | 74 72 75 63 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | truct:</span>.....<span.class="t |
| 2bf80 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 56 65 63 33 2e 64 6f | ok-kw">try</span>.expect(Vec3.do |
| 2bfa0 | 74 28 76 31 2c 20 76 32 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | t(v1,.v2).==.<span.class="tok-nu |
| 2bfc0 | 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | mber">0.0</span>);.}..<span.clas |
| 2bfe0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 6e 20 68 | s="tok-comment">//.Structs.can.h |
| 2c000 | 61 76 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | ave.declarations.</span>.<span.c |
| 2c020 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 | lass="tok-comment">//.Structs.ca |
| 2c040 | 6e 20 68 61 76 65 20 30 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | n.have.0.fields.</span>.<span.cl |
| 2c060 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 6d 70 74 79 20 | ass="tok-kw">const</span>.Empty. |
| 2c080 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 | =.<span.class="tok-kw">struct</s |
| 2c0a0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 2c0c0 | 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pub</span>.<span.class="tok-kw"> |
| 2c0e0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 49 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | const</span>.PI.=.<span.class="t |
| 2c100 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 3c 73 70 61 6e | ok-number">3.14</span>;.};.<span |
| 2c120 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | .class="tok-kw">test</span>.<spa |
| 2c140 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 75 63 74 20 6e | n.class="tok-str">"struct.n |
| 2c160 | 61 6d 65 73 70 61 63 65 64 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | amespaced.variable"</span>. |
| 2c180 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | {.....<span.class="tok-kw">try</ |
| 2c1a0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 45 6d 70 74 79 2e 50 49 20 3d 3d 20 3c 73 70 61 6e 20 63 | span>.expect(Empty.PI.==.<span.c |
| 2c1c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 29 3b 0a | lass="tok-number">3.14</span>);. |
| 2c1e0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 2c200 | 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | an>.expect(<span.class="tok-buil |
| 2c220 | 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 45 6d 70 74 79 29 20 3d 3d 20 3c 73 | tin">@sizeOf</span>(Empty).==.<s |
| 2c240 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">0</span>) |
| 2c260 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | ;......<span.class="tok-comment" |
| 2c280 | 3e 2f 2f 20 79 6f 75 20 63 61 6e 20 73 74 69 6c 6c 20 69 6e 73 74 61 6e 74 69 61 74 65 20 61 6e | >//.you.can.still.instantiate.an |
| 2c2a0 | 20 65 6d 70 74 79 20 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .empty.struct</span>.....<span.c |
| 2c2c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 6f 65 73 5f | lass="tok-kw">const</span>.does_ |
| 2c2e0 | 6e 6f 74 68 69 6e 67 20 3d 20 45 6d 70 74 79 20 7b 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | nothing.=.Empty.{};.}..<span.cla |
| 2c300 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 74 72 75 63 74 20 66 69 65 6c 64 | ss="tok-comment">//.struct.field |
| 2c320 | 20 6f 72 64 65 72 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 | .order.is.determined.by.the.comp |
| 2c340 | 69 6c 65 72 20 66 6f 72 20 6f 70 74 69 6d 61 6c 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 3c 2f 73 | iler.for.optimal.performance.</s |
| 2c360 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | pan>.<span.class="tok-comment">/ |
| 2c380 | 2f 20 68 6f 77 65 76 65 72 2c 20 79 6f 75 20 63 61 6e 20 73 74 69 6c 6c 20 63 61 6c 63 75 6c 61 | /.however,.you.can.still.calcula |
| 2c3a0 | 74 65 20 61 20 73 74 72 75 63 74 20 62 61 73 65 20 70 6f 69 6e 74 65 72 20 67 69 76 65 6e 20 61 | te.a.struct.base.pointer.given.a |
| 2c3c0 | 20 66 69 65 6c 64 20 70 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | .field.pointer:</span>.<span.cla |
| 2c3e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ss="tok-kw">fn</span>.<span.clas |
| 2c400 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 65 74 59 42 61 73 65 64 4f 6e 58 3c 2f 73 70 61 6e 3e 28 78 | s="tok-fn">setYBasedOnX</span>(x |
| 2c420 | 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 | :.*<span.class="tok-type">f32</s |
| 2c440 | 70 61 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | pan>,.y:.<span.class="tok-type"> |
| 2c460 | 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | f32</span>).<span.class="tok-typ |
| 2c480 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">void</span>.{.....<span.class |
| 2c4a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 69 6e 74 20 3d 20 3c | ="tok-kw">const</span>.point.=.< |
| 2c4c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 50 | span.class="tok-builtin">@fieldP |
| 2c4e0 | 61 72 65 6e 74 50 74 72 3c 2f 73 70 61 6e 3e 28 50 6f 69 6e 74 2c 20 3c 73 70 61 6e 20 63 6c 61 | arentPtr</span>(Point,.<span.cla |
| 2c500 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ss="tok-str">"x"</span |
| 2c520 | 3e 2c 20 78 29 3b 0a 20 20 20 20 70 6f 69 6e 74 2e 79 20 3d 20 79 3b 0a 7d 0a 3c 73 70 61 6e 20 | >,.x);.....point.y.=.y;.}.<span. |
| 2c540 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">test</span>.<span |
| 2c560 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 65 6c 64 20 70 61 72 | .class="tok-str">"field.par |
| 2c580 | 65 6e 74 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ent.pointer"</span>.{.....< |
| 2c5a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 | span.class="tok-kw">var</span>.p |
| 2c5c0 | 6f 69 6e 74 20 3d 20 50 6f 69 6e 74 20 7b 0a 20 20 20 20 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 | oint.=.Point.{..........x.=.<spa |
| 2c5e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 31 32 33 34 3c 2f 73 70 61 | n.class="tok-number">0.1234</spa |
| 2c600 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>,..........y.=.<span.class="to |
| 2c620 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 35 36 37 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a | k-number">0.5678</span>,.....};. |
| 2c640 | 20 20 20 20 73 65 74 59 42 61 73 65 64 4f 6e 58 28 26 61 6d 70 3b 70 6f 69 6e 74 2e 78 2c 20 3c | ....setYBasedOnX(&point.x,.< |
| 2c660 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 39 3c 2f 73 70 61 | span.class="tok-number">0.9</spa |
| 2c680 | 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>);.....<span.class="tok-kw">tr |
| 2c6a0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 6f 69 6e 74 2e 79 20 3d 3d 20 3c 73 70 61 6e | y</span>.expect(point.y.==.<span |
| 2c6c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 39 3c 2f 73 70 61 6e 3e 29 3b | .class="tok-number">0.9</span>); |
| 2c6e0 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | .}..<span.class="tok-comment">// |
| 2c700 | 20 59 6f 75 20 63 61 6e 20 72 65 74 75 72 6e 20 61 20 73 74 72 75 63 74 20 66 72 6f 6d 20 61 20 | .You.can.return.a.struct.from.a. |
| 2c720 | 66 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 69 73 20 68 6f 77 20 77 65 20 64 6f 20 67 65 6e 65 | function..This.is.how.we.do.gene |
| 2c740 | 72 69 63 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | rics</span>.<span.class="tok-com |
| 2c760 | 6d 65 6e 74 22 3e 2f 2f 20 69 6e 20 5a 69 67 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | ment">//.in.Zig:</span>.<span.cl |
| 2c780 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| 2c7a0 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 6e 6b 65 64 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ss="tok-fn">LinkedList</span>(<s |
| 2c7c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 | pan.class="tok-kw">comptime</spa |
| 2c7e0 | 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | n>.T:.<span.class="tok-type">typ |
| 2c800 | 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | e</span>).<span.class="tok-type" |
| 2c820 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >type</span>.{.....<span.class=" |
| 2c840 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">return</span>.<span.clas |
| 2c860 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 | s="tok-kw">struct</span>.{...... |
| 2c880 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | ...<span.class="tok-kw">pub</spa |
| 2c8a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>.<span.class="tok-kw">const</s |
| 2c8c0 | 70 61 6e 3e 20 4e 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.Node.=.<span.class="tok-kw" |
| 2c8e0 | 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 65 | >struct</span>.{.............pre |
| 2c900 | 76 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74 3a 20 3f 2a 4e | v:.?*Node,.............next:.?*N |
| 2c920 | 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 61 74 61 3a 20 54 2c 0a 20 20 20 20 20 20 | ode,.............data:.T,....... |
| 2c940 | 20 20 7d 3b 0a 0a 20 20 20 20 20 20 20 20 66 69 72 73 74 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 | ..};..........first:.?*Node,.... |
| 2c960 | 20 20 20 20 20 6c 61 73 74 3a 20 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a | .....last:..?*Node,.........len: |
| 2c980 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c | ...<span.class="tok-type">usize< |
| 2c9a0 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>,.....};.}..<span.class="t |
| 2c9c0 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| 2c9e0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6c 69 6e 6b 65 64 20 6c 69 73 74 26 71 75 6f 74 3b | tok-str">"linked.list" |
| 2ca00 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | </span>.{.....<span.class="tok-c |
| 2ca20 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 63 61 6c 6c 65 64 20 61 74 20 63 | omment">//.Functions.called.at.c |
| 2ca40 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 72 65 20 6d 65 6d 6f 69 7a 65 64 2e 20 54 68 69 73 20 6d | ompile-time.are.memoized..This.m |
| 2ca60 | 65 61 6e 73 20 79 6f 75 20 63 61 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | eans.you.can</span>.....<span.cl |
| 2ca80 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 20 74 68 69 73 3a 3c 2f 73 | ass="tok-comment">//.do.this:</s |
| 2caa0 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | pan>.....<span.class="tok-kw">tr |
| 2cac0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e | y</span>.expect(LinkedList(<span |
| 2cae0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d | .class="tok-type">i32</span>).== |
| 2cb00 | 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | .LinkedList(<span.class="tok-typ |
| 2cb20 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | e">i32</span>));......<span.clas |
| 2cb40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 4c 69 6e | s="tok-kw">var</span>.list.=.Lin |
| 2cb60 | 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | kedList(<span.class="tok-type">i |
| 2cb80 | 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 66 69 72 73 74 20 3d 20 3c 73 | 32</span>).{..........first.=.<s |
| 2cba0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e | pan.class="tok-null">null</span> |
| 2cbc0 | 2c 0a 20 20 20 20 20 20 20 20 2e 6c 61 73 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ,..........last.=.<span.class="t |
| 2cbe0 | 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6c | ok-null">null</span>,..........l |
| 2cc00 | 65 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | en.=.<span.class="tok-number">0< |
| 2cc20 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>,.....};.....<span.class=" |
| 2cc40 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6c 69 73 74 2e 6c | tok-kw">try</span>.expect(list.l |
| 2cc60 | 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | en.==.<span.class="tok-number">0 |
| 2cc80 | 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>);......<span.class="tok- |
| 2cca0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 69 6e 63 65 20 74 79 70 65 73 20 61 72 65 20 66 69 72 73 | comment">//.Since.types.are.firs |
| 2ccc0 | 74 20 63 6c 61 73 73 20 76 61 6c 75 65 73 20 79 6f 75 20 63 61 6e 20 69 6e 73 74 61 6e 74 69 61 | t.class.values.you.can.instantia |
| 2cce0 | 74 65 20 74 68 65 20 74 79 70 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | te.the.type</span>.....<span.cla |
| 2cd00 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 79 20 61 73 73 69 67 6e 69 6e 67 | ss="tok-comment">//.by.assigning |
| 2cd20 | 20 69 74 20 74 6f 20 61 20 76 61 72 69 61 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | .it.to.a.variable:</span>.....<s |
| 2cd40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 2cd60 | 4c 69 73 74 4f 66 49 6e 74 73 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c | ListOfInts.=.LinkedList(<span.cl |
| 2cd80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ass="tok-type">i32</span>);..... |
| 2cda0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 2cdc0 | 65 78 70 65 63 74 28 4c 69 73 74 4f 66 49 6e 74 73 20 3d 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 | expect(ListOfInts.==.LinkedList( |
| 2cde0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">i32</span |
| 2ce00 | 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | >));......<span.class="tok-kw">v |
| 2ce20 | 61 72 3c 2f 73 70 61 6e 3e 20 6e 6f 64 65 20 3d 20 4c 69 73 74 4f 66 49 6e 74 73 2e 4e 6f 64 65 | ar</span>.node.=.ListOfInts.Node |
| 2ce40 | 20 7b 0a 20 20 20 20 20 20 20 20 2e 70 72 65 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .{..........prev.=.<span.class=" |
| 2ce60 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e | tok-null">null</span>,.......... |
| 2ce80 | 6e 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 | next.=.<span.class="tok-null">nu |
| 2cea0 | 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 64 61 74 61 20 3d 20 3c 73 70 61 6e | ll</span>,..........data.=.<span |
| 2cec0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 2c | .class="tok-number">1234</span>, |
| 2cee0 | 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .....};.....<span.class="tok-kw" |
| 2cf00 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 32 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c | >var</span>.list2.=.LinkedList(< |
| 2cf20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">i32</span> |
| 2cf40 | 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 66 69 72 73 74 20 3d 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a | ).{..........first.=.&node,. |
| 2cf60 | 20 20 20 20 20 20 20 20 2e 6c 61 73 74 20 3d 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a 20 20 20 20 20 | .........last.=.&node,...... |
| 2cf80 | 20 20 20 2e 6c 65 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ....len.=.<span.class="tok-numbe |
| 2cfa0 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | r">1</span>,.....};.....<span.cl |
| 2cfc0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6c | ass="tok-kw">try</span>.expect(l |
| 2cfe0 | 69 73 74 32 2e 66 69 72 73 74 2e 3f 2e 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ist2.first.?.data.==.<span.class |
| 2d000 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 | ="tok-number">1234</span>);.}</c |
| 2d020 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 2d040 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 74 72 75 63 74 73 2e 7a 69 67 0a 54 65 73 74 20 5b | l">$.zig.test.structs.zig.Test.[ |
| 2d060 | 31 2f 34 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 64 6f 74 20 70 72 6f 64 75 63 74 26 71 75 6f 74 | 1/4].test."dot.product" |
| 2d080 | 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 34 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 74 72 75 | ;.....Test.[2/4].test."stru |
| 2d0a0 | 63 74 20 6e 61 6d 65 73 70 61 63 65 64 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 2e 2e 2e 20 | ct.namespaced.variable".... |
| 2d0c0 | 0a 54 65 73 74 20 5b 33 2f 34 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 69 65 6c 64 20 70 61 72 | .Test.[3/4].test."field.par |
| 2d0e0 | 65 6e 74 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 34 2f 34 5d | ent.pointer".....Test.[4/4] |
| 2d100 | 20 74 65 73 74 20 26 71 75 6f 74 3b 6c 69 6e 6b 65 64 20 6c 69 73 74 26 71 75 6f 74 3b 2e 2e 2e | .test."linked.list"... |
| 2d120 | 20 0a 0a 41 6c 6c 20 34 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f | ...All.4.tests.passed..</code></ |
| 2d140 | 70 72 65 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 44 65 66 61 75 6c 74 2d 46 69 65 | pre>.........<h2.id="Default-Fie |
| 2d160 | 6c 64 2d 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 66 61 75 6c 74 | ld-Values"><a.href="#toc-Default |
| 2d180 | 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 44 65 66 61 75 6c 74 20 46 69 65 6c 64 20 56 61 6c | -Field-Values">Default.Field.Val |
| 2d1a0 | 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 | ues</a>.<a.class="hdr".href="#De |
| 2d1c0 | 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | fault-Field-Values">..</a></h2>. |
| 2d1e0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 61 63 68 20 73 74 72 75 63 74 20 66 69 65 | .......<p>.......Each.struct.fie |
| 2d200 | 6c 64 20 6d 61 79 20 68 61 76 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 6e 64 69 63 61 | ld.may.have.an.expression.indica |
| 2d220 | 74 69 6e 67 20 74 68 65 20 64 65 66 61 75 6c 74 20 66 69 65 6c 64 20 76 61 6c 75 65 2e 20 53 75 | ting.the.default.field.value..Su |
| 2d240 | 63 68 20 65 78 70 72 65 73 73 69 6f 6e 73 0a 20 20 20 20 20 20 61 72 65 20 65 78 65 63 75 74 65 | ch.expressions.......are.execute |
| 2d260 | 64 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d | d.at.<a.href="#comptime">comptim |
| 2d280 | 65 3c 2f 61 3e 2c 20 61 6e 64 20 61 6c 6c 6f 77 20 74 68 65 20 66 69 65 6c 64 20 74 6f 20 62 65 | e</a>,.and.allow.the.field.to.be |
| 2d2a0 | 20 6f 6d 69 74 74 65 64 20 69 6e 20 61 20 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 20 65 78 70 | .omitted.in.a.struct.literal.exp |
| 2d2c0 | 72 65 73 73 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | ression:.......</p>.......<p.cla |
| 2d2e0 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 2d300 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 2d320 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.Foo.=.<span.class |
| 2d340 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a | ="tok-kw">struct</span>.{.....a: |
| 2d360 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 | .<span.class="tok-type">i32</spa |
| 2d380 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | n>.=.<span.class="tok-number">12 |
| 2d3a0 | 33 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 34</span>,.....b:.<span.class="t |
| 2d3c0 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | ok-type">i32</span>,.};..<span.c |
| 2d3e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">test</span>.<span. |
| 2d400 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 65 66 61 75 6c 74 20 73 74 | class="tok-str">"default.st |
| 2d420 | 72 75 63 74 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 69 65 6c 64 73 26 71 75 6f 74 3b | ruct.initialization.fields" |
| 2d440 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| 2d460 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 46 6f 6f 7b 0a 20 20 20 20 20 20 20 | w">const</span>.x.=.Foo{........ |
| 2d480 | 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 | ..b.=.<span.class="tok-number">5 |
| 2d4a0 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>,.....};.....<span.class= |
| 2d4c0 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 78 2e 61 20 2b 20 78 2e 62 20 21 3d | "tok-kw">if</span>.(x.a.+.x.b.!= |
| 2d4e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 39 3c 2f | .<span.class="tok-number">1239</ |
| 2d500 | 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>).{.........<span.class="to |
| 2d520 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 | k-builtin">@compileError</span>( |
| 2d540 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 74 27 73 | <span.class="tok-str">"it's |
| 2d560 | 20 65 76 65 6e 20 63 6f 6d 70 74 69 6d 65 20 6b 6e 6f 77 6e 21 26 71 75 6f 74 3b 3c 2f 73 70 61 | .even.comptime.known!"</spa |
| 2d580 | 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | n>);.....}.}</code></pre><pre><c |
| 2d5a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 2d5c0 | 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 64 65 66 61 | t.zig.Test.[1/1].test."defa |
| 2d5e0 | 75 6c 74 20 73 74 72 75 63 74 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 69 65 6c 64 73 | ult.struct.initialization.fields |
| 2d600 | 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | "......All.1.tests.passed.. |
| 2d620 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 | </code></pre>................<h2 |
| 2d640 | 20 69 64 3d 22 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | .id="extern-struct"><a.href="#to |
| 2d660 | 63 2d 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 63 74 3c 2f | c-extern-struct">extern.struct</ |
| 2d680 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d | a>.<a.class="hdr".href="#extern- |
| 2d6a0 | 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e | struct">..</a></h2>........<p>An |
| 2d6c0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 2d6e0 | 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">extern</span>.<span.clas |
| 2d700 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | s="tok-kw">struct</span></code>. |
| 2d720 | 68 61 73 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 67 75 61 72 61 6e 74 65 65 64 20 | has.in-memory.layout.guaranteed. |
| 2d740 | 74 6f 20 6d 61 74 63 68 20 74 68 65 0a 20 20 20 20 20 20 43 20 41 42 49 20 66 6f 72 20 74 68 65 | to.match.the.......C.ABI.for.the |
| 2d760 | 20 74 61 72 67 65 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 6b 69 6e 64 20 | .target.</p>.......<p>This.kind. |
| 2d780 | 6f 66 20 73 74 72 75 63 74 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 62 65 20 75 73 65 64 20 66 6f | of.struct.should.only.be.used.fo |
| 2d7a0 | 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 74 68 65 20 43 20 41 42 49 2e 20 | r.compatibility.with.the.C.ABI.. |
| 2d7c0 | 45 76 65 72 79 20 6f 74 68 65 72 0a 20 20 20 20 20 20 75 73 65 20 63 61 73 65 20 73 68 6f 75 6c | Every.other.......use.case.shoul |
| 2d7e0 | 64 20 62 65 20 73 6f 6c 76 65 64 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 | d.be.solved.with.<a.href="#packe |
| 2d800 | 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 20 6f 72 20 6e | d-struct">packed.struct</a>.or.n |
| 2d820 | 6f 72 6d 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f | ormal.<a.href="#struct">struct</ |
| 2d840 | 61 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 | a>.</p>.......<p>See.also:</p><u |
| 2d860 | 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 | l>.<li><a.href="#extern-union">e |
| 2d880 | 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | xtern.union</a></li>.<li><a.href |
| 2d8a0 | 3d 22 23 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 72 6e 20 65 6e 75 6d 3c 2f 61 3e 3c | ="#extern-enum">extern.enum</a>< |
| 2d8c0 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | /li>.</ul>................<h2.id |
| 2d8e0 | 3d 22 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 | ="packed-struct"><a.href="#toc-p |
| 2d900 | 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 20 | acked-struct">packed.struct</a>. |
| 2d920 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 | <a.class="hdr".href="#packed-str |
| 2d940 | 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | uct">..</a></h2>........<p>..... |
| 2d960 | 20 20 55 6e 6c 69 6b 65 20 6e 6f 72 6d 61 6c 20 73 74 72 75 63 74 73 2c 20 3c 63 6f 64 65 20 63 | ..Unlike.normal.structs,.<code.c |
| 2d980 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 2d9a0 | 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 72 75 63 74 73 20 68 61 76 | packed</span></code>.structs.hav |
| 2d9c0 | 65 20 67 75 61 72 61 6e 74 65 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 3a 0a 20 | e.guaranteed.in-memory.layout:.. |
| 2d9e0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | .....</p>.......<ul>.........<li |
| 2da00 | 3e 46 69 65 6c 64 73 20 72 65 6d 61 69 6e 20 69 6e 20 74 68 65 20 6f 72 64 65 72 20 64 65 63 6c | >Fields.remain.in.the.order.decl |
| 2da20 | 61 72 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 72 65 20 69 73 20 | ared.</li>.........<li>There.is. |
| 2da40 | 6e 6f 20 70 61 64 64 69 6e 67 20 62 65 74 77 65 65 6e 20 66 69 65 6c 64 73 2e 3c 2f 6c 69 3e 0a | no.padding.between.fields.</li>. |
| 2da60 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 5a 69 67 20 73 75 70 70 6f 72 74 73 20 61 72 62 69 74 72 61 | ........<li>Zig.supports.arbitra |
| 2da80 | 72 79 20 77 69 64 74 68 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 | ry.width.<a.href="#Integers">Int |
| 2daa0 | 65 67 65 72 73 3c 2f 61 3e 20 61 6e 64 20 61 6c 74 68 6f 75 67 68 20 6e 6f 72 6d 61 6c 6c 79 2c | egers</a>.and.although.normally, |
| 2dac0 | 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 66 65 77 65 72 0a 20 20 20 20 20 20 20 20 74 68 61 | .integers.with.fewer.........tha |
| 2dae0 | 6e 20 38 20 62 69 74 73 20 77 69 6c 6c 20 73 74 69 6c 6c 20 75 73 65 20 31 20 62 79 74 65 20 6f | n.8.bits.will.still.use.1.byte.o |
| 2db00 | 66 20 6d 65 6d 6f 72 79 2c 20 69 6e 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 2c 20 74 68 65 | f.memory,.in.packed.structs,.the |
| 2db20 | 79 20 75 73 65 0a 20 20 20 20 20 20 20 20 65 78 61 63 74 6c 79 20 74 68 65 69 72 20 62 69 74 20 | y.use.........exactly.their.bit. |
| 2db40 | 77 69 64 74 68 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | width..........</li>.........<li |
| 2db60 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 2db80 | 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 69 65 | tok-type">bool</span></code>.fie |
| 2dba0 | 6c 64 73 20 75 73 65 20 65 78 61 63 74 6c 79 20 31 20 62 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | lds.use.exactly.1.bit.</li>..... |
| 2dbc0 | 20 20 20 20 3c 6c 69 3e 41 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c | ....<li>An.<a.href="#enum">enum< |
| 2dbe0 | 2f 61 3e 20 66 69 65 6c 64 20 75 73 65 73 20 65 78 61 63 74 6c 79 20 74 68 65 20 62 69 74 20 77 | /a>.field.uses.exactly.the.bit.w |
| 2dc00 | 69 64 74 68 20 6f 66 20 69 74 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 2e 3c 2f 6c | idth.of.its.integer.tag.type.</l |
| 2dc20 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 | i>.........<li>A.<a.href="#packe |
| 2dc40 | 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 66 69 65 6c 64 20 | d-union">packed.union</a>.field. |
| 2dc60 | 75 73 65 73 20 65 78 61 63 74 6c 79 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 74 68 | uses.exactly.the.bit.width.of.th |
| 2dc80 | 65 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 77 69 74 68 0a 20 20 20 20 20 20 20 20 74 68 65 20 6c | e.union.field.with.........the.l |
| 2dca0 | 61 72 67 65 73 74 20 62 69 74 20 77 69 64 74 68 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | argest.bit.width.</li>.........< |
| 2dcc0 | 6c 69 3e 4e 6f 6e 2d 41 42 49 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 20 61 72 65 20 70 61 | li>Non-ABI-aligned.fields.are.pa |
| 2dce0 | 63 6b 65 64 20 69 6e 74 6f 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 70 6f 73 73 69 62 6c 65 0a | cked.into.the.smallest.possible. |
| 2dd00 | 20 20 20 20 20 20 20 20 41 42 49 2d 61 6c 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 69 6e 20 | ........ABI-aligned.integers.in. |
| 2dd20 | 61 63 63 6f 72 64 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 74 61 72 67 65 74 20 65 6e 64 69 61 | accordance.with.the.target.endia |
| 2dd40 | 6e 6e 65 73 73 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | nness..........</li>.......</ul> |
| 2dd60 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 | .......<p>.......This.means.that |
| 2dd80 | 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | .a.<code.class="zig"><span.class |
| 2dda0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">packed</span>.<span.cl |
| 2ddc0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-kw">struct</span></code |
| 2dde0 | 3e 20 63 61 6e 20 70 61 72 74 69 63 69 70 61 74 65 0a 20 20 20 20 20 20 69 6e 20 61 20 3c 61 20 | >.can.participate.......in.a.<a. |
| 2de00 | 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 20 6f 72 20 | href="#bitCast">@bitCast</a>.or. |
| 2de20 | 61 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 | a.<a.href="#ptrCast">@ptrCast</a |
| 2de40 | 3e 20 74 6f 20 72 65 69 6e 74 65 72 70 72 65 74 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 20 20 54 | >.to.reinterpret.memory........T |
| 2de60 | 68 69 73 20 65 76 65 6e 20 77 6f 72 6b 73 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 | his.even.works.at.<a.href="#comp |
| 2de80 | 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | time">comptime</a>:.......</p>.. |
| 2dea0 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 2dec0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 2dee0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 | ass="tok-kw">const</span>.std.=. |
| 2df00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 | <span.class="tok-builtin">@impor |
| 2df20 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>(<span.class="tok-str">& |
| 2df40 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c | quot;std"</span>);.<span.cl |
| 2df60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 74 69 76 65 | ass="tok-kw">const</span>.native |
| 2df80 | 5f 65 6e 64 69 61 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | _endian.=.<span.class="tok-built |
| 2dfa0 | 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in">@import</span>(<span.class=" |
| 2dfc0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 | tok-str">"builtin"</sp |
| 2dfe0 | 61 6e 3e 29 2e 74 61 72 67 65 74 2e 63 70 75 2e 61 72 63 68 2e 65 6e 64 69 61 6e 28 29 3b 0a 3c | an>).target.cpu.arch.endian();.< |
| 2e000 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 2e020 | 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c | .expect.=.std.testing.expect;..< |
| 2e040 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 2e060 | 20 46 75 6c 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 | .Full.=.<span.class="tok-kw">pac |
| 2e080 | 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ked</span>.<span.class="tok-kw"> |
| 2e0a0 | 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6e 75 6d 62 65 72 3a 20 3c 73 70 61 | struct</span>.{.....number:.<spa |
| 2e0c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 2c 0a 7d | n.class="tok-type">u16</span>,.} |
| 2e0e0 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ;.<span.class="tok-kw">const</sp |
| 2e100 | 61 6e 3e 20 44 69 76 69 64 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | an>.Divided.=.<span.class="tok-k |
| 2e120 | 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">packed</span>.<span.class="to |
| 2e140 | 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 68 61 6c 66 31 3a | k-kw">struct</span>.{.....half1: |
| 2e160 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | .<span.class="tok-type">u8</span |
| 2e180 | 3e 2c 0a 20 20 20 20 71 75 61 72 74 65 72 33 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >,.....quarter3:.<span.class="to |
| 2e1a0 | 6b 2d 74 79 70 65 22 3e 75 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 71 75 61 72 74 65 72 34 3a | k-type">u4</span>,.....quarter4: |
| 2e1c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 34 3c 2f 73 70 61 6e | .<span.class="tok-type">u4</span |
| 2e1e0 | 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | >,.};..<span.class="tok-kw">test |
| 2e200 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 2e220 | 75 6f 74 3b 40 62 69 74 43 61 73 74 20 62 65 74 77 65 65 6e 20 70 61 63 6b 65 64 20 73 74 72 75 | uot;@bitCast.between.packed.stru |
| 2e240 | 63 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | cts"</span>.{.....<span.cla |
| 2e260 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 64 6f 54 68 65 54 65 73 74 | ss="tok-kw">try</span>.doTheTest |
| 2e280 | 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | ();.....<span.class="tok-kw">com |
| 2e2a0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ptime</span>.<span.class="tok-kw |
| 2e2c0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 64 6f 54 68 65 54 65 73 74 28 29 3b 0a 7d 0a 0a 3c 73 70 | ">try</span>.doTheTest();.}..<sp |
| 2e2e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| 2e300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 54 68 65 54 65 73 74 3c 2f 73 70 61 6e | n.class="tok-fn">doTheTest</span |
| 2e320 | 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | >().!<span.class="tok-type">void |
| 2e340 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| 2e360 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | w">try</span>.expect(<span.class |
| 2e380 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 46 75 | ="tok-builtin">@sizeOf</span>(Fu |
| 2e3a0 | 6c 6c 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ll).==.<span.class="tok-number"> |
| 2e3c0 | 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 2</span>);.....<span.class="tok- |
| 2e3e0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 | kw">try</span>.expect(<span.clas |
| 2e400 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 44 | s="tok-builtin">@sizeOf</span>(D |
| 2e420 | 69 76 69 64 65 64 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ivided).==.<span.class="tok-numb |
| 2e440 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">2</span>);.....<span.class=" |
| 2e460 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 75 6c 6c 20 3d 20 46 75 6c 6c 7b 20 | tok-kw">var</span>.full.=.Full{. |
| 2e480 | 2e 6e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .number.=.<span.class="tok-numbe |
| 2e4a0 | 72 22 3e 30 78 31 32 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | r">0x1234</span>.};.....<span.cl |
| 2e4c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 69 76 69 64 65 64 20 | ass="tok-kw">var</span>.divided. |
| 2e4e0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 | =.<span.class="tok-builtin">@bit |
| 2e500 | 43 61 73 74 3c 2f 73 70 61 6e 3e 28 44 69 76 69 64 65 64 2c 20 66 75 6c 6c 29 3b 0a 20 20 20 20 | Cast</span>(Divided,.full);..... |
| 2e520 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 | <span.class="tok-kw">switch</spa |
| 2e540 | 6e 3e 20 28 6e 61 74 69 76 65 5f 65 6e 64 69 61 6e 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 42 69 | n>.(native_endian).{..........Bi |
| 2e560 | 67 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | g.=>.{.............<span.clas |
| 2e580 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 69 76 | s="tok-kw">try</span>.expect(div |
| 2e5a0 | 69 64 65 64 2e 68 61 6c 66 31 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ided.half1.==.<span.class="tok-n |
| 2e5c0 | 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | umber">0x12</span>);............ |
| 2e5e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 2e600 | 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 2e 71 75 61 72 74 65 72 33 20 3d 3d 20 3c 73 70 61 | .expect(divided.quarter3.==.<spa |
| 2e620 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 33 3c 2f 73 70 61 6e 3e 29 | n.class="tok-number">0x3</span>) |
| 2e640 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ;.............<span.class="tok-k |
| 2e660 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 2e 71 75 61 | w">try</span>.expect(divided.qua |
| 2e680 | 72 74 65 72 34 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | rter4.==.<span.class="tok-number |
| 2e6a0 | 22 3e 30 78 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 | ">0x4</span>);.........},....... |
| 2e6c0 | 20 20 2e 4c 69 74 74 6c 65 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | ...Little.=>.{.............<s |
| 2e6e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 | pan.class="tok-kw">try</span>.ex |
| 2e700 | 70 65 63 74 28 64 69 76 69 64 65 64 2e 68 61 6c 66 31 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | pect(divided.half1.==.<span.clas |
| 2e720 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | s="tok-number">0x34</span>);.... |
| 2e740 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | .........<span.class="tok-kw">tr |
| 2e760 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 2e 71 75 61 72 74 65 72 33 | y</span>.expect(divided.quarter3 |
| 2e780 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 32 | .==.<span.class="tok-number">0x2 |
| 2e7a0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | </span>);.............<span.clas |
| 2e7c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 69 76 | s="tok-kw">try</span>.expect(div |
| 2e7e0 | 69 64 65 64 2e 71 75 61 72 74 65 72 34 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ided.quarter4.==.<span.class="to |
| 2e800 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d | k-number">0x1</span>);.........} |
| 2e820 | 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ,.....}.}</code></pre><pre><code |
| 2e840 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a | .class="shell">$.zig.test.test.z |
| 2e860 | 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 40 62 69 74 43 61 73 | ig.Test.[1/1].test."@bitCas |
| 2e880 | 74 20 62 65 74 77 65 65 6e 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 26 71 75 6f 74 3b 2e 2e | t.between.packed.structs".. |
| 2e8a0 | 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | ....All.1.tests.passed..</code>< |
| 2e8c0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 61 6c 6c 6f 77 | /pre>........<p>.......Zig.allow |
| 2e8e0 | 73 20 74 68 65 20 61 64 64 72 65 73 73 20 74 6f 20 62 65 20 74 61 6b 65 6e 20 6f 66 20 61 20 6e | s.the.address.to.be.taken.of.a.n |
| 2e900 | 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 3a 0a 20 20 20 20 20 20 3c 2f 70 | on-byte-aligned.field:.......</p |
| 2e920 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 2e940 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 2e960 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 | .class="tok-kw">const</span>.std |
| 2e980 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | .=.<span.class="tok-builtin">@im |
| 2e9a0 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | port</span>(<span.class="tok-str |
| 2e9c0 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e | ">"std"</span>);.<span |
| 2e9e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 | .class="tok-kw">const</span>.exp |
| 2ea00 | 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e | ect.=.std.testing.expect;..<span |
| 2ea20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 69 74 | .class="tok-kw">const</span>.Bit |
| 2ea40 | 46 69 65 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 | Field.=.<span.class="tok-kw">pac |
| 2ea60 | 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ked</span>.<span.class="tok-kw"> |
| 2ea80 | 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 | struct</span>.{.....a:.<span.cla |
| 2eaa0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 | ss="tok-type">u3</span>,.....b:. |
| 2eac0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u3</span> |
| 2eae0 | 2c 0a 20 20 20 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ,.....c:.<span.class="tok-type"> |
| 2eb00 | 75 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | u2</span>,.};..<span.class="tok- |
| 2eb20 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 42 69 74 46 69 65 6c 64 7b 0a 20 | kw">var</span>.foo.=.BitField{.. |
| 2eb40 | 20 20 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ....a.=.<span.class="tok-number" |
| 2eb60 | 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >1</span>,......b.=.<span.class= |
| 2eb80 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 63 20 3d 20 | "tok-number">2</span>,......c.=. |
| 2eba0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e | <span.class="tok-number">3</span |
| 2ebc0 | 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | >,.};..<span.class="tok-kw">test |
| 2ebe0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 2ec00 | 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 | uot;pointer.to.non-byte-aligned. |
| 2ec20 | 66 69 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | field"</span>.{.....<span.c |
| 2ec40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d | lass="tok-kw">const</span>.ptr.= |
| 2ec60 | 20 26 61 6d 70 3b 66 6f 6f 2e 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .&foo.b;.....<span.class="to |
| 2ec80 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 72 2e 2a 20 3d 3d | k-kw">try</span>.expect(ptr.*.== |
| 2eca0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | .<span.class="tok-number">2</spa |
| 2ecc0 | 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | n>);.}</code></pre><pre><code.cl |
| 2ece0 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 2ed00 | 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f | Test.[1/1].test."pointer.to |
| 2ed20 | 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 3b 2e 2e 2e | .non-byte-aligned.field"... |
| 2ed40 | 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f | ...All.1.tests.passed..</code></ |
| 2ed60 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 74 | pre>........<p>.......However,.t |
| 2ed80 | 68 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 | he.pointer.to.a.non-byte-aligned |
| 2eda0 | 20 66 69 65 6c 64 20 68 61 73 20 73 70 65 63 69 61 6c 20 70 72 6f 70 65 72 74 69 65 73 20 61 6e | .field.has.special.properties.an |
| 2edc0 | 64 20 63 61 6e 6e 6f 74 0a 20 20 20 20 20 20 62 65 20 70 61 73 73 65 64 20 77 68 65 6e 20 61 20 | d.cannot.......be.passed.when.a. |
| 2ede0 | 6e 6f 72 6d 61 6c 20 70 6f 69 6e 74 65 72 20 69 73 20 65 78 70 65 63 74 65 64 3a 0a 20 20 20 20 | normal.pointer.is.expected:..... |
| 2ee00 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | ..</p>.......<p.class="file">tes |
| 2ee20 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 2ee40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 2ee60 | 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | >.std.=.<span.class="tok-builtin |
| 2ee80 | 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">@import</span>(<span.class="to |
| 2eea0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a | k-str">"std"</span>);. |
| 2eec0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 2eee0 | 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a | >.expect.=.std.testing.expect;.. |
| 2ef00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 2ef20 | 3e 20 42 69 74 46 69 65 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >.BitField.=.<span.class="tok-kw |
| 2ef40 | 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">packed</span>.<span.class="tok |
| 2ef60 | 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 | -kw">struct</span>.{.....a:.<spa |
| 2ef80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | n.class="tok-type">u3</span>,... |
| 2efa0 | 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f | ..b:.<span.class="tok-type">u3</ |
| 2efc0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | span>,.....c:.<span.class="tok-t |
| 2efe0 | 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">u2</span>,.};..<span.class= |
| 2f000 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 69 74 5f 66 69 65 6c 64 20 3d 20 | "tok-kw">var</span>.bit_field.=. |
| 2f020 | 42 69 74 46 69 65 6c 64 7b 0a 20 20 20 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | BitField{......a.=.<span.class=" |
| 2f040 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 62 20 3d 20 3c | tok-number">1</span>,......b.=.< |
| 2f060 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e | span.class="tok-number">2</span> |
| 2f080 | 2c 0a 20 20 20 20 2e 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ,......c.=.<span.class="tok-numb |
| 2f0a0 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">3</span>,.};..<span.class="t |
| 2f0c0 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| 2f0e0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 69 | tok-str">"pointer.to.non-bi |
| 2f100 | 74 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | t-aligned.field"</span>.{.. |
| 2f120 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 2f140 | 6e 3e 20 65 78 70 65 63 74 28 62 61 72 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 62 29 20 | n>.expect(bar(&bit_field.b). |
| 2f160 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | ==.<span.class="tok-number">2</s |
| 2f180 | 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | pan>);.}..<span.class="tok-kw">f |
| 2f1a0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 | n</span>.<span.class="tok-fn">ba |
| 2f1c0 | 72 3c 2f 73 70 61 6e 3e 28 78 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | r</span>(x:.*<span.class="tok-kw |
| 2f1e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">const</span>.<span.class="tok- |
| 2f200 | 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | type">u3</span>).<span.class="to |
| 2f220 | 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | k-type">u3</span>.{.....<span.cl |
| 2f240 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 2e 2a 3b 0a | ass="tok-kw">return</span>.x.*;. |
| 2f260 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 2f280 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e | shell">$.zig.test.test.zig.<span |
| 2f2a0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 2f2c0 | 7a 69 67 3a 31 37 3a 33 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig:17:30:.</span><span.class="t |
| 2f2e0 | 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 31_1">error:.</span><span.class= |
| 2f300 | 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 2a 63 6f 6e 73 74 20 75 33 27 | "t0_1">expected.type.'*const.u3' |
| 2f320 | 2c 20 66 6f 75 6e 64 20 27 2a 61 6c 69 67 6e 28 3a 33 3a 31 29 20 75 33 27 3c 2f 73 70 61 6e 3e | ,.found.'*align(:3:1).u3'</span> |
| 2f340 | 0a 20 20 20 20 74 72 79 20 65 78 70 65 63 74 28 62 61 72 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 | .....try.expect(bar(&bit_fie |
| 2f360 | 6c 64 2e 62 29 20 3d 3d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ld.b).==.2);.................... |
| 2f380 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 2f3a0 | 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | /span>.</code></pre>........<p>. |
| 2f3c0 | 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e | ......In.this.case,.the.function |
| 2f3e0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 63 61 | .<code.class="zig">bar</code>.ca |
| 2f400 | 6e 6e 6f 74 20 62 65 20 63 61 6c 6c 65 64 20 62 65 63 75 73 65 20 74 68 65 20 70 6f 69 6e 74 65 | nnot.be.called.becuse.the.pointe |
| 2f420 | 72 0a 20 20 20 20 20 20 74 6f 20 74 68 65 20 6e 6f 6e 2d 41 42 49 2d 61 6c 69 67 6e 65 64 20 66 | r.......to.the.non-ABI-aligned.f |
| 2f440 | 69 65 6c 64 20 6d 65 6e 74 69 6f 6e 73 20 74 68 65 20 62 69 74 20 6f 66 66 73 65 74 2c 20 62 75 | ield.mentions.the.bit.offset,.bu |
| 2f460 | 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 70 65 63 74 73 20 61 6e 20 41 42 49 2d 61 6c | t.the.function.expects.an.ABI-al |
| 2f480 | 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | igned.pointer........</p>....... |
| 2f4a0 | 3c 70 3e 0a 20 20 20 20 20 20 50 6f 69 6e 74 65 72 73 20 74 6f 20 6e 6f 6e 2d 41 42 49 2d 61 6c | <p>.......Pointers.to.non-ABI-al |
| 2f4c0 | 69 67 6e 65 64 20 66 69 65 6c 64 73 20 73 68 61 72 65 20 74 68 65 20 73 61 6d 65 20 61 64 64 72 | igned.fields.share.the.same.addr |
| 2f4e0 | 65 73 73 20 61 73 20 74 68 65 20 6f 74 68 65 72 20 66 69 65 6c 64 73 20 77 69 74 68 69 6e 20 74 | ess.as.the.other.fields.within.t |
| 2f500 | 68 65 69 72 20 68 6f 73 74 20 69 6e 74 65 67 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | heir.host.integer:.......</p>... |
| 2f520 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 2f540 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 2f560 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c | ss="tok-kw">const</span>.std.=.< |
| 2f580 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| 2f5a0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| 2f5c0 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 | uot;std"</span>);.<span.cla |
| 2f5e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 | ss="tok-kw">const</span>.expect. |
| 2f600 | 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | =.std.testing.expect;..<span.cla |
| 2f620 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 69 74 46 69 65 6c | ss="tok-kw">const</span>.BitFiel |
| 2f640 | 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c | d.=.<span.class="tok-kw">packed< |
| 2f660 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 | /span>.<span.class="tok-kw">stru |
| 2f680 | 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ct</span>.{.....a:.<span.class=" |
| 2f6a0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 61 | tok-type">u3</span>,.....b:.<spa |
| 2f6c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | n.class="tok-type">u3</span>,... |
| 2f6e0 | 20 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f | ..c:.<span.class="tok-type">u2</ |
| 2f700 | 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>,.};..<span.class="tok-kw"> |
| 2f720 | 76 61 72 3c 2f 73 70 61 6e 3e 20 62 69 74 5f 66 69 65 6c 64 20 3d 20 42 69 74 46 69 65 6c 64 7b | var</span>.bit_field.=.BitField{ |
| 2f740 | 0a 20 20 20 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ......a.=.<span.class="tok-numbe |
| 2f760 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | r">1</span>,......b.=.<span.clas |
| 2f780 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 63 20 | s="tok-number">2</span>,......c. |
| 2f7a0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 | =.<span.class="tok-number">3</sp |
| 2f7c0 | 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | an>,.};..<span.class="tok-kw">te |
| 2f7e0 | 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | st</span>.<span.class="tok-str"> |
| 2f800 | 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 69 74 2d 61 6c 69 67 6e 65 64 | "pointer.to.non-bit-aligned |
| 2f820 | 20 66 69 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | .field"</span>.{.....<span. |
| 2f840 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 2f860 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 | (<span.class="tok-builtin">@ptrT |
| 2f880 | 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 61 29 20 3d 3d | oInt</span>(&bit_field.a).== |
| 2f8a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 | .<span.class="tok-builtin">@ptrT |
| 2f8c0 | 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 62 29 29 3b 0a | oInt</span>(&bit_field.b));. |
| 2f8e0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 2f900 | 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | an>.expect(<span.class="tok-buil |
| 2f920 | 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 62 69 74 5f 66 | tin">@ptrToInt</span>(&bit_f |
| 2f940 | 69 65 6c 64 2e 61 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ield.a).==.<span.class="tok-buil |
| 2f960 | 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 62 69 74 5f 66 | tin">@ptrToInt</span>(&bit_f |
| 2f980 | 69 65 6c 64 2e 63 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | ield.c));.}</code></pre><pre><co |
| 2f9a0 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 | de.class="shell">$.zig.test.test |
| 2f9c0 | 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 | .zig.Test.[1/1].test."point |
| 2f9e0 | 65 72 20 74 6f 20 6e 6f 6e 2d 62 69 74 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 | er.to.non-bit-aligned.field" |
| 2fa00 | 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | ;......All.1.tests.passed..</cod |
| 2fa20 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 | e></pre>........<p>.......This.c |
| 2fa40 | 61 6e 20 62 65 20 6f 62 73 65 72 76 65 64 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 62 69 | an.be.observed.with.<a.href="#bi |
| 2fa60 | 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 20 61 6e 64 20 | tOffsetOf">@bitOffsetOf</a>.and. |
| 2fa80 | 3c 61 20 68 72 65 66 3d 22 23 62 79 74 65 4f 66 66 73 65 74 4f 66 22 3e 62 79 74 65 4f 66 66 73 | <a.href="#byteOffsetOf">byteOffs |
| 2faa0 | 65 74 4f 66 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | etOf</a>:.......</p>.......<p.cl |
| 2fac0 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| 2fae0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 2fb00 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.std.=.<span.clas |
| 2fb20 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| 2fb40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| 2fb60 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | uot;</span>);.<span.class="tok-k |
| 2fb80 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 | w">const</span>.expect.=.std.tes |
| 2fba0 | 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ting.expect;..<span.class="tok-k |
| 2fbc0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 69 74 46 69 65 6c 64 20 3d 20 3c 73 70 61 6e | w">const</span>.BitField.=.<span |
| 2fbe0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 | .class="tok-kw">packed</span>.<s |
| 2fc00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">struct</span> |
| 2fc20 | 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | .{.....a:.<span.class="tok-type" |
| 2fc40 | 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >u3</span>,.....b:.<span.class=" |
| 2fc60 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 63 3a 20 3c 73 70 61 | tok-type">u3</span>,.....c:.<spa |
| 2fc80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b | n.class="tok-type">u2</span>,.}; |
| 2fca0 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | ..<span.class="tok-kw">test</spa |
| 2fcc0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 | n>.<span.class="tok-str">"p |
| 2fce0 | 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 69 74 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 | ointer.to.non-bit-aligned.field& |
| 2fd00 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 2fd20 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 | tok-kw">comptime</span>.{....... |
| 2fd40 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 2fd60 | 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | >.expect(<span.class="tok-builti |
| 2fd80 | 6e 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c | n">@bitOffsetOf</span>(BitField, |
| 2fda0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 26 71 | .<span.class="tok-str">"a&q |
| 2fdc0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | uot;</span>).==.<span.class="tok |
| 2fde0 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | -number">0</span>);.........<spa |
| 2fe00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 2fe20 | 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 | ct(<span.class="tok-builtin">@bi |
| 2fe40 | 74 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e | tOffsetOf</span>(BitField,.<span |
| 2fe60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 26 71 75 6f 74 3b 3c 2f | .class="tok-str">"b"</ |
| 2fe80 | 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>).==.<span.class="tok-numbe |
| 2fea0 | 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | r">3</span>);.........<span.clas |
| 2fec0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 | s="tok-kw">try</span>.expect(<sp |
| 2fee0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 4f 66 66 73 65 | an.class="tok-builtin">@bitOffse |
| 2ff00 | 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tOf</span>(BitField,.<span.class |
| 2ff20 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | ="tok-str">"c"</span>) |
| 2ff40 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f | .==.<span.class="tok-number">6</ |
| 2ff60 | 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>);..........<span.class="to |
| 2ff80 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | k-kw">try</span>.expect(<span.cl |
| 2ffa0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c | ass="tok-builtin">@byteOffsetOf< |
| 2ffc0 | 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>(BitField,.<span.class="to |
| 2ffe0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 | k-str">"a"</span>).==. |
| 30000 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e | <span.class="tok-number">0</span |
| 30020 | 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >);.........<span.class="tok-kw" |
| 30040 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >try</span>.expect(<span.class=" |
| 30060 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e | tok-builtin">@byteOffsetOf</span |
| 30080 | 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | >(BitField,.<span.class="tok-str |
| 300a0 | 22 3e 26 71 75 6f 74 3b 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e | ">"b"</span>).==.<span |
| 300c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .class="tok-number">0</span>);.. |
| 300e0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | .......<span.class="tok-kw">try< |
| 30100 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | /span>.expect(<span.class="tok-b |
| 30120 | 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 | uiltin">@byteOffsetOf</span>(Bit |
| 30140 | 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | Field,.<span.class="tok-str">&qu |
| 30160 | 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ot;c"</span>).==.<span.clas |
| 30180 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a | s="tok-number">0</span>);.....}. |
| 301a0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 301c0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 | shell">$.zig.test.test.zig.Test. |
| 301e0 | 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d | [1/1].test."pointer.to.non- |
| 30200 | 62 69 74 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c | bit-aligned.field"......All |
| 30220 | 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | .1.tests.passed..</code></pre>.. |
| 30240 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 68 | ......<p>.......Packed.structs.h |
| 30260 | 61 76 65 20 31 2d 62 79 74 65 20 61 6c 69 67 6e 6d 65 6e 74 2e 20 48 6f 77 65 76 65 72 20 69 66 | ave.1-byte.alignment..However.if |
| 30280 | 20 79 6f 75 20 68 61 76 65 20 61 6e 20 6f 76 65 72 61 6c 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 | .you.have.an.overaligned.pointer |
| 302a0 | 20 74 6f 20 61 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 2c 0a 20 20 20 20 20 20 5a 69 67 20 73 | .to.a.packed.struct,.......Zig.s |
| 302c0 | 68 6f 75 6c 64 20 63 6f 72 72 65 63 74 6c 79 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 61 | hould.correctly.understand.the.a |
| 302e0 | 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 66 69 65 6c 64 73 2e 20 48 6f 77 65 76 65 72 20 74 68 65 72 | lignment.of.fields..However.ther |
| 30300 | 65 20 69 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 | e.is.......<a.href="https://gith |
| 30320 | 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 39 39 34 22 3e | ub.com/ziglang/zig/issues/1994"> |
| 30340 | 61 20 62 75 67 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 | a.bug</a>:.......</p>.......<p.c |
| 30360 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | lass="file">test.zig</p><pre><co |
| 30380 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 303a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.S.=.<span.class |
| 303c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">packed</span>.<span.cl |
| 303e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ass="tok-kw">struct</span>.{.... |
| 30400 | 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | .a:.<span.class="tok-type">u32</ |
| 30420 | 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | span>,.....b:.<span.class="tok-t |
| 30440 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">u32</span>,.};.<span.class= |
| 30460 | 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-kw">test</span>.<span.class |
| 30480 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 76 65 72 61 6c 69 67 6e 65 64 20 70 6f 69 | ="tok-str">"overaligned.poi |
| 304a0 | 6e 74 65 72 20 74 6f 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 26 71 75 6f 74 3b 3c 2f 73 70 61 | nter.to.packed.struct"</spa |
| 304c0 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | n>.{.....<span.class="tok-kw">va |
| 304e0 | 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 53 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r</span>.foo:.S.<span.class="tok |
| 30500 | 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">align</span>(<span.class="t |
| 30520 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ok-number">4</span>).=.<span.cla |
| 30540 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a | ss="tok-null">undefined</span>;. |
| 30560 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| 30580 | 73 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.ptr:.*<span.class="tok-kw" |
| 305a0 | 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >align</span>(<span.class="tok-n |
| 305c0 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 53 20 3d 20 26 61 6d 70 3b 66 6f 6f 3b 0a 20 | umber">4</span>).S.=.&foo;.. |
| 305e0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| 30600 | 70 61 6e 3e 20 70 74 72 5f 74 6f 5f 62 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.ptr_to_b:.*<span.class="tok |
| 30620 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 70 74 72 2e 62 3b 0a | -type">u32</span>.=.&ptr.b;. |
| 30640 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 30660 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e | shell">$.zig.test.test.zig.<span |
| 30680 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 306a0 | 7a 69 67 3a 38 3a 33 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | zig:8:32:.</span><span.class="t3 |
| 306c0 | 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 1_1">error:.</span><span.class=" |
| 306e0 | 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 2a 75 33 32 27 2c 20 66 6f 75 6e | t0_1">expected.type.'*u32',.foun |
| 30700 | 64 20 27 2a 61 6c 69 67 6e 28 31 29 20 75 33 32 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e | d.'*align(1).u32'</span>.....con |
| 30720 | 73 74 20 70 74 72 5f 74 6f 5f 62 3a 20 2a 75 33 32 20 3d 20 26 61 6d 70 3b 70 74 72 2e 62 3b 0a | st.ptr_to_b:.*u32.=.&ptr.b;. |
| 30740 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ...............................< |
| 30760 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f | span.class="t32_1">^</span>.</co |
| 30780 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 74 68 69 73 20 62 75 | de></pre>........<p>When.this.bu |
| 307a0 | 67 20 69 73 20 66 69 78 65 64 2c 20 74 68 65 20 61 62 6f 76 65 20 74 65 73 74 20 69 6e 20 74 68 | g.is.fixed,.the.above.test.in.th |
| 307c0 | 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 77 69 6c 6c 20 75 6e 65 78 70 65 63 74 65 64 6c | e.documentation.will.unexpectedl |
| 307e0 | 79 20 70 61 73 73 2c 20 77 68 69 63 68 20 77 69 6c 6c 0a 20 20 20 20 20 20 63 61 75 73 65 20 74 | y.pass,.which.will.......cause.t |
| 30800 | 68 65 20 74 65 73 74 20 73 75 69 74 65 20 74 6f 20 66 61 69 6c 2c 20 6e 6f 74 69 66 79 69 6e 67 | he.test.suite.to.fail,.notifying |
| 30820 | 20 74 68 65 20 62 75 67 20 66 69 78 65 72 20 74 6f 20 75 70 64 61 74 65 20 74 68 65 73 65 20 64 | .the.bug.fixer.to.update.these.d |
| 30840 | 6f 63 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ocs........</p>.......<p>....... |
| 30860 | 49 74 27 73 20 61 6c 73 6f 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 73 65 74 20 61 6c 69 67 6e 6d | It's.also.possible.to.set.alignm |
| 30880 | 65 6e 74 20 6f 66 20 73 74 72 75 63 74 20 66 69 65 6c 64 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | ent.of.struct.fields:.......</p> |
| 308a0 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c | .......<p.class="file">test.zig< |
| 308c0 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 308e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 | class="tok-kw">const</span>.std. |
| 30900 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 | =.<span.class="tok-builtin">@imp |
| 30920 | 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ort</span>(<span.class="tok-str" |
| 30940 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 | >"std"</span>);.<span. |
| 30960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | class="tok-kw">const</span>.expe |
| 30980 | 63 74 45 71 75 61 6c 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 | ctEqual.=.std.testing.expectEqua |
| 309a0 | 6c 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | l;..<span.class="tok-kw">test</s |
| 309c0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 309e0 | 3b 61 6c 69 67 6e 65 64 20 73 74 72 75 63 74 20 66 69 65 6c 64 73 26 71 75 6f 74 3b 3c 2f 73 70 | ;aligned.struct.fields"</sp |
| 30a00 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | an>.{.....<span.class="tok-kw">c |
| 30a20 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | onst</span>.S.=.<span.class="tok |
| 30a40 | 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 61 3a 20 | -kw">struct</span>.{.........a:. |
| 30a60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">u32</span |
| 30a80 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 | >.<span.class="tok-kw">align</sp |
| 30aa0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | an>(<span.class="tok-number">2</ |
| 30ac0 | 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>),.........b:.<span.class=" |
| 30ae0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">u32</span>.<span.class |
| 30b00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">align</span>(<span.cla |
| 30b20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 | ss="tok-number">64</span>),..... |
| 30b40 | 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | };.....<span.class="tok-kw">var< |
| 30b60 | 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 53 7b 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>.foo.=.S{..a.=.<span.class |
| 30b80 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 62 20 3d 20 3c 73 70 | ="tok-number">1</span>,..b.=.<sp |
| 30ba0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d | an.class="tok-number">2</span>.} |
| 30bc0 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | ;......<span.class="tok-kw">try< |
| 30be0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.expectEqual(<span.class=" |
| 30c00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | tok-number">64</span>,.<span.cla |
| 30c20 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e | ss="tok-builtin">@alignOf</span> |
| 30c40 | 28 53 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | (S));.....<span.class="tok-kw">t |
| 30c60 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 2a 3c 73 70 61 6e 20 63 6c 61 | ry</span>.expectEqual(*<span.cla |
| 30c80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ss="tok-kw">align</span>(<span.c |
| 30ca0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | lass="tok-number">2</span>).<spa |
| 30cc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c | n.class="tok-type">u32</span>,.< |
| 30ce0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 | span.class="tok-builtin">@TypeOf |
| 30d00 | 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 2e 61 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | </span>(&foo.a));.....<span. |
| 30d20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 30d40 | 45 71 75 61 6c 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 | Equal(*<span.class="tok-kw">alig |
| 30d60 | 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | n</span>(<span.class="tok-number |
| 30d80 | 22 3e 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ">64</span>).<span.class="tok-ty |
| 30da0 | 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe">u32</span>,.<span.class="tok |
| 30dc0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 6f | -builtin">@TypeOf</span>(&fo |
| 30de0 | 6f 2e 62 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | o.b));.}</code></pre><pre><code. |
| 30e00 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 30e20 | 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 61 6c 69 67 6e 65 64 20 | g.Test.[1/1].test."aligned. |
| 30e40 | 73 74 72 75 63 74 20 66 69 65 6c 64 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 | struct.fields"......All.1.t |
| 30e60 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 30e80 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 69 6e 67 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 | ..<p>.......Using.packed.structs |
| 30ea0 | 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 | .with.<a.href="#volatile">volati |
| 30ec0 | 6c 65 3c 2f 61 3e 20 69 73 20 70 72 6f 62 6c 65 6d 61 74 69 63 2c 20 61 6e 64 20 6d 61 79 20 62 | le</a>.is.problematic,.and.may.b |
| 30ee0 | 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 2e | e.a.compile.error.in.the.future. |
| 30f00 | 0a 20 20 20 20 20 20 46 6f 72 20 64 65 74 61 69 6c 73 20 6f 6e 20 74 68 69 73 20 73 75 62 73 63 | .......For.details.on.this.subsc |
| 30f20 | 72 69 62 65 20 74 6f 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 | ribe.to.......<a.href="https://g |
| 30f40 | 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 37 36 | ithub.com/ziglang/zig/issues/176 |
| 30f60 | 31 22 3e 74 68 69 73 20 69 73 73 75 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 54 4f 44 4f 20 75 70 | 1">this.issue</a>........TODO.up |
| 30f80 | 64 61 74 65 20 74 68 65 73 65 20 64 6f 63 73 20 77 69 74 68 20 61 20 72 65 63 6f 6d 6d 65 6e 64 | date.these.docs.with.a.recommend |
| 30fa0 | 61 74 69 6f 6e 20 6f 6e 20 68 6f 77 20 74 6f 20 75 73 65 20 70 61 63 6b 65 64 20 73 74 72 75 63 | ation.on.how.to.use.packed.struc |
| 30fc0 | 74 73 20 77 69 74 68 20 4d 4d 49 4f 0a 20 20 20 20 20 20 28 74 68 65 20 75 73 65 20 63 61 73 65 | ts.with.MMIO.......(the.use.case |
| 30fe0 | 20 66 6f 72 20 76 6f 6c 61 74 69 6c 65 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 29 20 6f 6e | .for.volatile.packed.structs).on |
| 31000 | 63 65 20 74 68 69 73 20 69 73 73 75 65 20 69 73 20 72 65 73 6f 6c 76 65 64 2e 0a 20 20 20 20 20 | ce.this.issue.is.resolved....... |
| 31020 | 20 44 6f 6e 27 74 20 77 6f 72 72 79 2c 20 74 68 65 72 65 20 77 69 6c 6c 20 62 65 20 61 20 67 6f | .Don't.worry,.there.will.be.a.go |
| 31040 | 6f 64 20 73 6f 6c 75 74 69 6f 6e 20 66 6f 72 20 74 68 69 73 20 75 73 65 20 63 61 73 65 20 69 6e | od.solution.for.this.use.case.in |
| 31060 | 20 7a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c | .zig........</p>...............< |
| 31080 | 68 32 20 69 64 3d 22 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 | h2.id="Struct-Naming"><a.href="# |
| 310a0 | 74 6f 63 2d 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 3e 53 74 72 75 63 74 20 4e 61 6d 69 6e 67 | toc-Struct-Naming">Struct.Naming |
| 310c0 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 72 75 63 | </a>.<a.class="hdr".href="#Struc |
| 310e0 | 74 2d 4e 61 6d 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | t-Naming">..</a></h2>........<p> |
| 31100 | 53 69 6e 63 65 20 61 6c 6c 20 73 74 72 75 63 74 73 20 61 72 65 20 61 6e 6f 6e 79 6d 6f 75 73 2c | Since.all.structs.are.anonymous, |
| 31120 | 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 74 79 70 65 20 6e 61 6d 65 20 62 61 73 65 64 20 | .Zig.infers.the.type.name.based. |
| 31140 | 6f 6e 20 61 20 66 65 77 20 72 75 6c 65 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | on.a.few.rules.</p>.......<ul>.. |
| 31160 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 6e | .........<li>If.the.struct.is.in |
| 31180 | 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 6f | .the.initialization.expression.o |
| 311a0 | 66 20 61 20 76 61 72 69 61 62 6c 65 2c 20 69 74 20 67 65 74 73 20 6e 61 6d 65 64 20 61 66 74 65 | f.a.variable,.it.gets.named.afte |
| 311c0 | 72 0a 20 20 20 20 20 20 20 20 20 20 74 68 61 74 20 76 61 72 69 61 62 6c 65 2e 3c 2f 6c 69 3e 0a | r...........that.variable.</li>. |
| 311e0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 | ..........<li>If.the.struct.is.i |
| 31200 | 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | n.the.<code.class="zig"><span.cl |
| 31220 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-kw">return</span></code |
| 31240 | 3e 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 69 74 20 67 65 74 73 20 6e 61 6d 65 64 20 61 66 74 65 | >.expression,.it.gets.named.afte |
| 31260 | 72 0a 20 20 20 20 20 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 74 20 69 73 20 72 | r...........the.function.it.is.r |
| 31280 | 65 74 75 72 6e 69 6e 67 20 66 72 6f 6d 2c 20 77 69 74 68 20 74 68 65 20 70 61 72 61 6d 65 74 65 | eturning.from,.with.the.paramete |
| 312a0 | 72 20 76 61 6c 75 65 73 20 73 65 72 69 61 6c 69 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | r.values.serialized.</li>....... |
| 312c0 | 20 20 20 20 3c 6c 69 3e 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 73 74 72 75 63 74 20 67 65 | ....<li>Otherwise,.the.struct.ge |
| 312e0 | 74 73 20 61 20 6e 61 6d 65 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 28 61 6e 6f 6e 79 6d 6f | ts.a.name.such.as.<code>(anonymo |
| 31300 | 75 73 20 73 74 72 75 63 74 20 61 74 20 66 69 6c 65 2e 7a 69 67 3a 37 3a 33 38 29 3c 2f 63 6f 64 | us.struct.at.file.zig:7:38)</cod |
| 31320 | 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | e>.</li>.......</ul>.......<p.cl |
| 31340 | 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 75 63 74 5f 6e 61 6d 65 2e 7a 69 67 3c 2f 70 3e 3c 70 | ass="file">struct_name.zig</p><p |
| 31360 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 31380 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 | ="tok-kw">const</span>.std.=.<sp |
| 313a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f | an.class="tok-builtin">@import</ |
| 313c0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>(<span.class="tok-str">&quo |
| 313e0 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | t;std"</span>);..<span.clas |
| 31400 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | s="tok-kw">pub</span>.<span.clas |
| 31420 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | s="tok-kw">fn</span>.<span.class |
| 31440 | 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c | ="tok-fn">main</span>().<span.cl |
| 31460 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ass="tok-type">void</span>.{.... |
| 31480 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 314a0 | 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 | n>.Foo.=.<span.class="tok-kw">st |
| 314c0 | 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 | ruct</span>.{};.....std.debug.pr |
| 314e0 | 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | int(<span.class="tok-str">" |
| 31500 | 76 61 72 69 61 62 6c 65 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | variable:.{s}\n"</span>,..{ |
| 31520 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e | <span.class="tok-builtin">@typeN |
| 31540 | 61 6d 65 3c 2f 73 70 61 6e 3e 28 46 6f 6f 29 7d 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 | ame</span>(Foo)});.....std.debug |
| 31560 | 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .print(<span.class="tok-str">&qu |
| 31580 | 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ot;anonymous:.{s}\n"</span> |
| 315a0 | 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 | ,..{<span.class="tok-builtin">@t |
| 315c0 | 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ypeName</span>(<span.class="tok- |
| 315e0 | 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 29 7d 29 3b 0a 20 20 20 20 73 74 64 | kw">struct</span>.{})});.....std |
| 31600 | 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | .debug.print(<span.class="tok-st |
| 31620 | 72 22 3e 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f | r">"function:.{s}\n"</ |
| 31640 | 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | span>,..{<span.class="tok-builti |
| 31660 | 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 4c 69 73 74 28 3c 73 70 61 6e 20 63 | n">@typeName</span>(List(<span.c |
| 31680 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 7d 29 3b 0a | lass="tok-type">i32</span>))});. |
| 316a0 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | }..<span.class="tok-kw">fn</span |
| 316c0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 | >.<span.class="tok-fn">List</spa |
| 316e0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | n>(<span.class="tok-kw">comptime |
| 31700 | 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.T:.<span.class="tok-type |
| 31720 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">type</span>).<span.class="tok- |
| 31740 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | type">type</span>.{.....<span.cl |
| 31760 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | ass="tok-kw">return</span>.<span |
| 31780 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-kw">struct</span>.{. |
| 317a0 | 20 20 20 20 20 20 20 20 78 3a 20 54 2c 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | ........x:.T,.....};.}</code></p |
| 317c0 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 317e0 | 67 20 62 75 69 6c 64 2d 65 78 65 20 73 74 72 75 63 74 5f 6e 61 6d 65 2e 7a 69 67 0a 24 20 2e 2f | g.build-exe.struct_name.zig.$../ |
| 31800 | 73 74 72 75 63 74 5f 6e 61 6d 65 0a 76 61 72 69 61 62 6c 65 3a 20 46 6f 6f 0a 61 6e 6f 6e 79 6d | struct_name.variable:.Foo.anonym |
| 31820 | 6f 75 73 3a 20 73 74 72 75 63 74 3a 36 3a 35 33 0a 66 75 6e 63 74 69 6f 6e 3a 20 4c 69 73 74 28 | ous:.struct:6:53.function:.List( |
| 31840 | 69 33 32 29 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | i32).</code></pre>.............. |
| 31860 | 20 20 3c 68 32 20 69 64 3d 22 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 | ..<h2.id="Anonymous-Struct-Liter |
| 31880 | 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 | als"><a.href="#toc-Anonymous-Str |
| 318a0 | 75 63 74 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 74 72 75 63 74 20 4c | uct-Literals">Anonymous.Struct.L |
| 318c0 | 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | iterals</a>.<a.class="hdr".href= |
| 318e0 | 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c | "#Anonymous-Struct-Literals">..< |
| 31900 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 61 6c | /a></h2>........<p>.......Zig.al |
| 31920 | 6c 6f 77 73 20 6f 6d 69 74 74 69 6e 67 20 74 68 65 20 73 74 72 75 63 74 20 74 79 70 65 20 6f 66 | lows.omitting.the.struct.type.of |
| 31940 | 20 61 20 6c 69 74 65 72 61 6c 2e 20 57 68 65 6e 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 3c | .a.literal..When.the.result.is.< |
| 31960 | 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 64 3c | a.href="#Type-Coercion">coerced< |
| 31980 | 2f 61 3e 2c 0a 20 20 20 20 20 20 74 68 65 20 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 20 77 69 | /a>,.......the.struct.literal.wi |
| 319a0 | 6c 6c 20 64 69 72 65 63 74 6c 79 20 69 6e 73 74 61 6e 74 69 61 74 65 20 74 68 65 20 72 65 73 75 | ll.directly.instantiate.the.resu |
| 319c0 | 6c 74 20 6c 6f 63 61 74 69 6f 6e 2c 20 77 69 74 68 20 6e 6f 20 63 6f 70 79 3a 0a 20 20 20 20 20 | lt.location,.with.no.copy:...... |
| 319e0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 75 | .</p>.......<p.class="file">stru |
| 31a00 | 63 74 5f 72 65 73 75 6c 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ct_result.zig</p><pre><code.clas |
| 31a20 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 31a40 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| 31a60 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 31a80 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 31aa0 | 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | span>);.<span.class="tok-kw">con |
| 31ac0 | 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 | st</span>.expect.=.std.testing.e |
| 31ae0 | 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | xpect;..<span.class="tok-kw">con |
| 31b00 | 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | st</span>.Point.=.<span.class="t |
| 31b20 | 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 78 3a 20 3c 73 70 61 6e 20 63 | ok-kw">struct</span>.{x:.<span.c |
| 31b40 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 79 3a 20 3c | lass="tok-type">i32</span>,.y:.< |
| 31b60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">i32</span> |
| 31b80 | 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | };..<span.class="tok-kw">test</s |
| 31ba0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 31bc0 | 3b 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 26 71 75 6f 74 3b 3c | ;anonymous.struct.literal"< |
| 31be0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.{.....<span.class="tok-kw |
| 31c00 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 3a 20 50 6f 69 6e 74 20 3d 20 2e 7b 0a 20 20 20 20 | ">var</span>.pt:.Point.=..{..... |
| 31c20 | 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | .....x.=.<span.class="tok-number |
| 31c40 | 22 3e 31 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 | ">13</span>,..........y.=.<span. |
| 31c60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 37 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | class="tok-number">67</span>,... |
| 31c80 | 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | ..};.....<span.class="tok-kw">tr |
| 31ca0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 2e 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | y</span>.expect(pt.x.==.<span.cl |
| 31cc0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | ass="tok-number">13</span>);.... |
| 31ce0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 31d00 | 20 65 78 70 65 63 74 28 70 74 2e 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .expect(pt.y.==.<span.class="tok |
| 31d20 | 2d 6e 75 6d 62 65 72 22 3e 36 37 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | -number">67</span>);.}</code></p |
| 31d40 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 31d60 | 67 20 74 65 73 74 20 73 74 72 75 63 74 5f 72 65 73 75 6c 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 | g.test.struct_result.zig.Test.[1 |
| 31d80 | 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 | /1].test."anonymous.struct. |
| 31da0 | 6c 69 74 65 72 61 6c 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 | literal"......All.1.tests.p |
| 31dc0 | 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | assed..</code></pre>........<p>. |
| 31de0 | 20 20 20 20 20 20 54 68 65 20 73 74 72 75 63 74 20 74 79 70 65 20 63 61 6e 20 62 65 20 69 6e 66 | ......The.struct.type.can.be.inf |
| 31e00 | 65 72 72 65 64 2e 20 48 65 72 65 20 74 68 65 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 | erred..Here.the.result.location. |
| 31e20 | 64 6f 65 73 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 61 20 74 79 70 65 2c 20 61 6e 64 0a 20 20 20 | does.not.include.a.type,.and.... |
| 31e40 | 20 20 20 73 6f 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 74 79 70 65 3a 0a 20 20 20 20 20 | ...so.Zig.infers.the.type:...... |
| 31e60 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 75 | .</p>.......<p.class="file">stru |
| 31e80 | 63 74 5f 61 6e 6f 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ct_anon.zig</p><pre><code.class= |
| 31ea0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | "zig"><span.class="tok-kw">const |
| 31ec0 | 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | </span>.std.=.<span.class="tok-b |
| 31ee0 | 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | uiltin">@import</span>(<span.cla |
| 31f00 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 | ss="tok-str">"std"</sp |
| 31f20 | 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | an>);.<span.class="tok-kw">const |
| 31f40 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 | </span>.expect.=.std.testing.exp |
| 31f60 | 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | ect;..<span.class="tok-kw">test< |
| 31f80 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>.<span.class="tok-str">&qu |
| 31fa0 | 6f 74 3b 66 75 6c 6c 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 26 71 75 6f 74 3b 3c | ot;fully.anonymous.struct"< |
| 31fc0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.{.....<span.class="tok-kw |
| 31fe0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 64 75 6d 70 28 2e 7b 0a 20 20 20 20 20 20 20 20 2e 69 6e | ">try</span>.dump(.{..........in |
| 32000 | 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 | t.=.<span.class="tok-builtin">@a |
| 32020 | 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | s</span>(<span.class="tok-type"> |
| 32040 | 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | u32</span>,.<span.class="tok-num |
| 32060 | 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 66 6c 6f 61 | ber">1234</span>),..........floa |
| 32080 | 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 | t.=.<span.class="tok-builtin">@a |
| 320a0 | 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | s</span>(<span.class="tok-type"> |
| 320c0 | 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | f64</span>,.<span.class="tok-num |
| 320e0 | 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 62 20 3d | ber">12.34</span>),..........b.= |
| 32100 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 | .<span.class="tok-null">true</sp |
| 32120 | 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>,..........s.=.<span.class="t |
| 32140 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 | ok-str">"hi"</span>,.. |
| 32160 | 20 20 20 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ...});.}..<span.class="tok-kw">f |
| 32180 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 75 | n</span>.<span.class="tok-fn">du |
| 321a0 | 6d 70 3c 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mp</span>(args:.<span.class="tok |
| 321c0 | 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | -kw">anytype</span>).!<span.clas |
| 321e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | s="tok-type">void</span>.{.....< |
| 32200 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 32220 | 78 70 65 63 74 28 61 72 67 73 2e 69 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | xpect(args.int.==.<span.class="t |
| 32240 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | ok-number">1234</span>);.....<sp |
| 32260 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 | an.class="tok-kw">try</span>.exp |
| 32280 | 65 63 74 28 61 72 67 73 2e 66 6c 6f 61 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ect(args.float.==.<span.class="t |
| 322a0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 | ok-number">12.34</span>);.....<s |
| 322c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 | pan.class="tok-kw">try</span>.ex |
| 322e0 | 70 65 63 74 28 61 72 67 73 2e 62 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pect(args.b);.....<span.class="t |
| 32300 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 67 73 2e 73 5b | ok-kw">try</span>.expect(args.s[ |
| 32320 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e | <span.class="tok-number">0</span |
| 32340 | 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c | >].==.<span.class="tok-str">'h'< |
| 32360 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>);.....<span.class="tok-kw |
| 32380 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 67 73 2e 73 5b 3c 73 70 61 6e | ">try</span>.expect(args.s[<span |
| 323a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d | .class="tok-number">1</span>].== |
| 323c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 69 27 3c 2f 73 70 61 6e | .<span.class="tok-str">'i'</span |
| 323e0 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >);.}</code></pre><pre><code.cla |
| 32400 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 74 72 75 63 74 5f 61 6e 6f | ss="shell">$.zig.test.struct_ano |
| 32420 | 6e 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 75 6c 6c | n.zig.Test.[1/1].test."full |
| 32440 | 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c | y.anonymous.struct"......Al |
| 32460 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 32480 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 | .......<p>.......Anonymous.struc |
| 324a0 | 74 73 20 63 61 6e 20 62 65 20 63 72 65 61 74 65 64 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 66 | ts.can.be.created.without.specif |
| 324c0 | 79 69 6e 67 20 66 69 65 6c 64 20 6e 61 6d 65 73 2c 20 61 6e 64 20 61 72 65 20 72 65 66 65 72 72 | ying.field.names,.and.are.referr |
| 324e0 | 65 64 20 74 6f 20 61 73 20 22 74 75 70 6c 65 73 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ed.to.as."tuples"........</p>... |
| 32500 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 69 65 6c 64 73 20 61 72 65 20 69 6d 70 | ....<p>.......The.fields.are.imp |
| 32520 | 6c 69 63 69 74 6c 79 20 6e 61 6d 65 64 20 75 73 69 6e 67 20 6e 75 6d 62 65 72 73 20 73 74 61 72 | licitly.named.using.numbers.star |
| 32540 | 74 69 6e 67 20 66 72 6f 6d 20 30 2e 20 42 65 63 61 75 73 65 20 74 68 65 69 72 20 6e 61 6d 65 73 | ting.from.0..Because.their.names |
| 32560 | 20 61 72 65 20 69 6e 74 65 67 65 72 73 2c 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 20 63 | .are.integers,.......the.<code.c |
| 32580 | 6c 61 73 73 3d 22 7a 69 67 22 3e 40 26 71 75 6f 74 3b 30 26 71 75 6f 74 3b 3c 2f 63 6f 64 65 3e | lass="zig">@"0"</code> |
| 325a0 | 20 73 79 6e 74 61 78 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 74 6f 20 61 63 63 65 73 73 20 74 | .syntax.must.be.used.to.access.t |
| 325c0 | 68 65 6d 2e 20 4e 61 6d 65 73 20 69 6e 73 69 64 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | hem..Names.inside.<code.class="z |
| 325e0 | 69 67 22 3e 40 26 71 75 6f 74 3b 26 71 75 6f 74 3b 3c 2f 63 6f 64 65 3e 20 61 72 65 20 61 6c 77 | ig">@""</code>.are.alw |
| 32600 | 61 79 73 20 72 65 63 6f 67 6e 69 73 65 64 20 61 73 20 69 64 65 6e 74 69 66 69 65 72 73 2e 0a 20 | ays.recognised.as.identifiers... |
| 32620 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 69 6b 65 20 61 | .....</p>.......<p>.......Like.a |
| 32640 | 72 72 61 79 73 2c 20 74 75 70 6c 65 73 20 68 61 76 65 20 61 20 2e 6c 65 6e 20 66 69 65 6c 64 2c | rrays,.tuples.have.a..len.field, |
| 32660 | 20 63 61 6e 20 62 65 20 69 6e 64 65 78 65 64 20 61 6e 64 20 20 77 6f 72 6b 20 77 69 74 68 20 74 | .can.be.indexed.and..work.with.t |
| 32680 | 68 65 20 2b 2b 20 61 6e 64 20 2a 2a 20 6f 70 65 72 61 74 6f 72 73 2e 20 54 68 65 79 20 63 61 6e | he.++.and.**.operators..They.can |
| 326a0 | 20 61 6c 73 6f 20 62 65 20 69 74 65 72 61 74 65 64 20 6f 76 65 72 20 77 69 74 68 20 3c 61 20 68 | .also.be.iterated.over.with.<a.h |
| 326c0 | 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e | ref="#inline-for">inline.for</a> |
| 326e0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | ........</p>.......<p.class="fil |
| 32700 | 65 22 3e 74 75 70 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | e">tuple.zig</p><pre><code.class |
| 32720 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 32740 | 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.std.=.<span.class="tok- |
| 32760 | 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | builtin">@import</span>(<span.cl |
| 32780 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 | ass="tok-str">"std"</s |
| 327a0 | 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | pan>);.<span.class="tok-kw">cons |
| 327c0 | 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 | t</span>.expect.=.std.testing.ex |
| 327e0 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | pect;..<span.class="tok-kw">test |
| 32800 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 32820 | 75 6f 74 3b 74 75 70 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | uot;tuple"</span>.{.....<sp |
| 32840 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 | an.class="tok-kw">const</span>.v |
| 32860 | 61 6c 75 65 73 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | alues.=..{.........<span.class=" |
| 32880 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | tok-builtin">@as</span>(<span.cl |
| 328a0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-type">u32</span>,.<span |
| 328c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 | .class="tok-number">1234</span>) |
| 328e0 | 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ,.........<span.class="tok-built |
| 32900 | 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | in">@as</span>(<span.class="tok- |
| 32920 | 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">f64</span>,.<span.class="t |
| 32940 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 | ok-number">12.34</span>),....... |
| 32960 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | ..<span.class="tok-null">true</s |
| 32980 | 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | pan>,.........<span.class="tok-s |
| 329a0 | 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d | tr">"hi"</span>,.....} |
| 329c0 | 20 2b 2b 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c | .++..{<span.class="tok-null">fal |
| 329e0 | 73 65 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | se</span>}.**.<span.class="tok-n |
| 32a00 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">2</span>;.....<span.class |
| 32a20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 | ="tok-kw">try</span>.expect(valu |
| 32a40 | 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 | es[<span.class="tok-number">0</s |
| 32a60 | 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | pan>].==.<span.class="tok-number |
| 32a80 | 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">1234</span>);.....<span.class= |
| 32aa0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 | "tok-kw">try</span>.expect(value |
| 32ac0 | 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 | s[<span.class="tok-number">4</sp |
| 32ae0 | 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | an>].==.<span.class="tok-null">f |
| 32b00 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | alse</span>);.....<span.class="t |
| 32b20 | 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">inline</span>.<span.class |
| 32b40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 76 61 6c 75 65 73 29 20 7c 76 | ="tok-kw">for</span>.(values).|v |
| 32b60 | 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ,.i|.{.........<span.class="tok- |
| 32b80 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | kw">if</span>.(i.!=.<span.class= |
| 32ba0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">2</span>).<span.cla |
| 32bc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | ss="tok-kw">continue</span>;.... |
| 32be0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 32c00 | 70 61 6e 3e 20 65 78 70 65 63 74 28 76 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 | pan>.expect(v);.....}.....<span. |
| 32c20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 32c40 | 28 76 61 6c 75 65 73 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | (values.len.==.<span.class="tok- |
| 32c60 | 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | number">6</span>);.....<span.cla |
| 32c80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 | ss="tok-kw">try</span>.expect(va |
| 32ca0 | 6c 75 65 73 2e 40 26 71 75 6f 74 3b 33 26 71 75 6f 74 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | lues.@"3"[<span.class= |
| 32cc0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 | "tok-number">0</span>].==.<span. |
| 32ce0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f | class="tok-str">'h'</span>);.}</ |
| 32d00 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 32d20 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 75 70 6c 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 | ll">$.zig.test.tuple.zig.Test.[1 |
| 32d40 | 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 75 70 6c 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a | /1].test."tuple"...... |
| 32d60 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.1.tests.passed..</code></pre |
| 32d80 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e | >...............<p>See.also:</p> |
| 32da0 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d | <ul>.<li><a.href="#comptime">com |
| 32dc0 | 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 69 65 | ptime</a></li>.<li><a.href="#fie |
| 32de0 | 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 61 3e | ldParentPtr">@fieldParentPtr</a> |
| 32e00 | 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 | </li>.</ul>...............<h1.id |
| 32e20 | 3d 22 65 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 6e 75 6d 22 3e 65 6e 75 6d | ="enum"><a.href="#toc-enum">enum |
| 32e40 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 | </a>.<a.class="hdr".href="#enum" |
| 32e60 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | >..</a></h1>........<p.class="fi |
| 32e80 | 6c 65 22 3e 65 6e 75 6d 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | le">enums.zig</p><pre><code.clas |
| 32ea0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 32ec0 | 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st</span>.expect.=.<span.class=" |
| 32ee0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@import</span>(<spa |
| 32f00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 | n.class="tok-str">"std" |
| 32f20 | 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 | ;</span>).testing.expect;.<span. |
| 32f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 | class="tok-kw">const</span>.mem. |
| 32f60 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 | =.<span.class="tok-builtin">@imp |
| 32f80 | 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ort</span>(<span.class="tok-str" |
| 32fa0 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 0a 3c | >"std"</span>).mem;..< |
| 32fc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c | span.class="tok-comment">//.Decl |
| 32fe0 | 61 72 65 20 61 6e 20 65 6e 75 6d 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | are.an.enum.</span>.<span.class= |
| 33000 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 79 70 65 20 3d 20 3c 73 70 | "tok-kw">const</span>.Type.=.<sp |
| 33020 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a | an.class="tok-kw">enum</span>.{. |
| 33040 | 20 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c | ....ok,.....not_ok,.};..<span.cl |
| 33060 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 20 73 | ass="tok-comment">//.Declare.a.s |
| 33080 | 70 65 63 69 66 69 63 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 74 68 65 20 65 6e 75 6d 20 76 61 72 | pecific.instance.of.the.enum.var |
| 330a0 | 69 61 6e 74 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | iant.</span>.<span.class="tok-kw |
| 330c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 54 79 70 65 2e 6f 6b 3b 0a 0a 3c 73 70 | ">const</span>.c.=.Type.ok;..<sp |
| 330e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 79 6f 75 | an.class="tok-comment">//.If.you |
| 33100 | 20 77 61 6e 74 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 | .want.access.to.the.ordinal.valu |
| 33120 | 65 20 6f 66 20 61 6e 20 65 6e 75 6d 2c 20 79 6f 75 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | e.of.an.enum,.you</span>.<span.c |
| 33140 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6e 20 73 70 65 63 69 66 | lass="tok-comment">//.can.specif |
| 33160 | 79 20 74 68 65 20 74 61 67 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | y.the.tag.type.</span>.<span.cla |
| 33180 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 61 6c 75 65 20 3d | ss="tok-kw">const</span>.Value.= |
| 331a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e | .<span.class="tok-kw">enum</span |
| 331c0 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 | >(<span.class="tok-type">u2</spa |
| 331e0 | 6e 3e 29 20 7b 0a 20 20 20 20 7a 65 72 6f 2c 0a 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f | n>).{.....zero,.....one,.....two |
| 33200 | 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ,.};..<span.class="tok-comment"> |
| 33220 | 2f 2f 20 4e 6f 77 20 79 6f 75 20 63 61 6e 20 63 61 73 74 20 62 65 74 77 65 65 6e 20 75 32 20 61 | //.Now.you.can.cast.between.u2.a |
| 33240 | 6e 64 20 56 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nd.Value.</span>.<span.class="to |
| 33260 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 20 | k-comment">//.The.ordinal.value. |
| 33280 | 73 74 61 72 74 73 20 66 72 6f 6d 20 30 2c 20 63 6f 75 6e 74 69 6e 67 20 75 70 20 66 6f 72 20 65 | starts.from.0,.counting.up.for.e |
| 332a0 | 61 63 68 20 6d 65 6d 62 65 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ach.member.</span>.<span.class=" |
| 332c0 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">test</span>.<span.class= |
| 332e0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c | "tok-str">"enum.ordinal.val |
| 33300 | 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ue"</span>.{.....<span.clas |
| 33320 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 | s="tok-kw">try</span>.expect(<sp |
| 33340 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 54 6f 49 6e | an.class="tok-builtin">@enumToIn |
| 33360 | 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 2e 7a 65 72 6f 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | t</span>(Value.zero).==.<span.cl |
| 33380 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ass="tok-number">0</span>);..... |
| 333a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 333c0 | 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | expect(<span.class="tok-builtin" |
| 333e0 | 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 2e 6f 6e 65 29 20 3d 3d | >@enumToInt</span>(Value.one).== |
| 33400 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | .<span.class="tok-number">1</spa |
| 33420 | 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>);.....<span.class="tok-kw">tr |
| 33440 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | y</span>.expect(<span.class="tok |
| 33460 | 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 | -builtin">@enumToInt</span>(Valu |
| 33480 | 65 2e 74 77 6f 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | e.two).==.<span.class="tok-numbe |
| 334a0 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">2</span>);.}..<span.class="to |
| 334c0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 6f 76 65 72 72 69 64 65 20 74 | k-comment">//.You.can.override.t |
| 334e0 | 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 20 65 6e 75 6d 2e 3c 2f 73 | he.ordinal.value.for.an.enum.</s |
| 33500 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | pan>.<span.class="tok-kw">const< |
| 33520 | 2f 73 70 61 6e 3e 20 56 61 6c 75 65 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.Value2.=.<span.class="tok |
| 33540 | 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">enum</span>(<span.class="to |
| 33560 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 68 75 6e 64 72 65 | k-type">u32</span>).{.....hundre |
| 33580 | 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 | d.=.<span.class="tok-number">100 |
| 335a0 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 74 68 6f 75 73 61 6e 64 20 3d 20 3c 73 70 61 6e 20 63 6c | </span>,.....thousand.=.<span.cl |
| 335c0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | ass="tok-number">1000</span>,... |
| 335e0 | 20 20 6d 69 6c 6c 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ..million.=.<span.class="tok-num |
| 33600 | 62 65 72 22 3e 31 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c | ber">1000000</span>,.};.<span.cl |
| 33620 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">test</span>.<span.c |
| 33640 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 65 74 20 65 6e 75 6d 20 6f 72 | lass="tok-str">"set.enum.or |
| 33660 | 64 69 6e 61 6c 20 76 61 6c 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | dinal.value"</span>.{.....< |
| 33680 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 336a0 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | xpect(<span.class="tok-builtin"> |
| 336c0 | 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e 68 75 6e 64 72 65 64 | @enumToInt</span>(Value2.hundred |
| 336e0 | 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | ).==.<span.class="tok-number">10 |
| 33700 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 0</span>);.....<span.class="tok- |
| 33720 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 | kw">try</span>.expect(<span.clas |
| 33740 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e | s="tok-builtin">@enumToInt</span |
| 33760 | 3e 28 56 61 6c 75 65 32 2e 74 68 6f 75 73 61 6e 64 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >(Value2.thousand).==.<span.clas |
| 33780 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | s="tok-number">1000</span>);.... |
| 337a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 337c0 | 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | .expect(<span.class="tok-builtin |
| 337e0 | 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e 6d 69 6c 6c 69 | ">@enumToInt</span>(Value2.milli |
| 33800 | 6f 6e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | on).==.<span.class="tok-number"> |
| 33820 | 31 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 1000000</span>);.}..<span.class= |
| 33840 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 73 20 63 61 6e 20 68 61 76 65 20 | "tok-comment">//.Enums.can.have. |
| 33860 | 6d 65 74 68 6f 64 73 2c 20 74 68 65 20 73 61 6d 65 20 61 73 20 73 74 72 75 63 74 73 20 61 6e 64 | methods,.the.same.as.structs.and |
| 33880 | 20 75 6e 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .unions.</span>.<span.class="tok |
| 338a0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 20 6d 65 74 68 6f 64 73 20 61 72 65 20 6e 6f | -comment">//.Enum.methods.are.no |
| 338c0 | 74 20 73 70 65 63 69 61 6c 2c 20 74 68 65 79 20 61 72 65 20 6f 6e 6c 79 20 6e 61 6d 65 73 70 61 | t.special,.they.are.only.namespa |
| 338e0 | 63 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ced</span>.<span.class="tok-comm |
| 33900 | 65 6e 74 22 3e 2f 2f 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 | ent">//.functions.that.you.can.c |
| 33920 | 61 6c 6c 20 77 69 74 68 20 64 6f 74 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | all.with.dot.syntax.</span>.<spa |
| 33940 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 75 | n.class="tok-kw">const</span>.Su |
| 33960 | 69 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f | it.=.<span.class="tok-kw">enum</ |
| 33980 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 63 6c 75 62 73 2c 0a 20 20 20 20 73 70 61 64 65 73 2c 0a 20 | span>.{.....clubs,.....spades,.. |
| 339a0 | 20 20 20 64 69 61 6d 6f 6e 64 73 2c 0a 20 20 20 20 68 65 61 72 74 73 2c 0a 0a 20 20 20 20 3c 73 | ...diamonds,.....hearts,......<s |
| 339c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 | pan.class="tok-kw">pub</span>.<s |
| 339e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 | pan.class="tok-kw">fn</span>.<sp |
| 33a00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 73 43 6c 75 62 73 3c 2f 73 70 61 6e 3e | an.class="tok-fn">isClubs</span> |
| 33a20 | 28 73 65 6c 66 3a 20 53 75 69 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | (self:.Suit).<span.class="tok-ty |
| 33a40 | 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | pe">bool</span>.{.........<span. |
| 33a60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c | class="tok-kw">return</span>.sel |
| 33a80 | 66 20 3d 3d 20 53 75 69 74 2e 63 6c 75 62 73 3b 0a 20 20 20 20 7d 0a 7d 3b 0a 3c 73 70 61 6e 20 | f.==.Suit.clubs;.....}.};.<span. |
| 33aa0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">test</span>.<span |
| 33ac0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6d 65 74 68 | .class="tok-str">"enum.meth |
| 33ae0 | 6f 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | od"</span>.{.....<span.clas |
| 33b00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 53 75 69 74 | s="tok-kw">const</span>.p.=.Suit |
| 33b20 | 2e 73 70 61 64 65 73 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .spades;.....<span.class="tok-kw |
| 33b40 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 70 2e 69 73 43 6c 75 62 73 28 29 | ">try</span>.expect(!p.isClubs() |
| 33b60 | 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | );.}..<span.class="tok-comment"> |
| 33b80 | 2f 2f 20 41 6e 20 65 6e 75 6d 20 76 61 72 69 61 6e 74 20 6f 66 20 64 69 66 66 65 72 65 6e 74 20 | //.An.enum.variant.of.different. |
| 33ba0 | 74 79 70 65 73 20 63 61 6e 20 62 65 20 73 77 69 74 63 68 65 64 20 75 70 6f 6e 2e 3c 2f 73 70 61 | types.can.be.switched.upon.</spa |
| 33bc0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>.<span.class="tok-kw">const</s |
| 33be0 | 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.Foo.=.<span.class="tok-kw"> |
| 33c00 | 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 72 69 6e 67 2c 0a 20 20 20 20 6e 75 | enum</span>.{.....string,.....nu |
| 33c20 | 6d 62 65 72 2c 0a 20 20 20 20 6e 6f 6e 65 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber,.....none,.};.<span.class=" |
| 33c40 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">test</span>.<span.class= |
| 33c60 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 76 61 72 69 61 6e 74 20 73 77 69 | "tok-str">"enum.variant.swi |
| 33c80 | 74 63 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | tch"</span>.{.....<span.cla |
| 33ca0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 46 6f 6f | ss="tok-kw">const</span>.p.=.Foo |
| 33cc0 | 2e 6e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .number;.....<span.class="tok-kw |
| 33ce0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 68 61 74 5f 69 73 5f 69 74 20 3d 20 3c 73 70 61 | ">const</span>.what_is_it.=.<spa |
| 33d00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 | n.class="tok-kw">switch</span>.( |
| 33d20 | 70 29 20 7b 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 73 74 72 69 6e 67 20 3d 26 67 74 3b 20 3c 73 | p).{.........Foo.string.=>.<s |
| 33d40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 | pan.class="tok-str">"this.i |
| 33d60 | 73 20 61 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | s.a.string"</span>,........ |
| 33d80 | 20 46 6f 6f 2e 6e 75 6d 62 65 72 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .Foo.number.=>.<span.class="t |
| 33da0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 61 20 6e 75 6d 62 65 72 26 71 | ok-str">"this.is.a.number&q |
| 33dc0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 6e 6f 6e 65 20 3d 26 | uot;</span>,.........Foo.none.=& |
| 33de0 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | gt;.<span.class="tok-str">" |
| 33e00 | 74 68 69 73 20 69 73 20 61 20 6e 6f 6e 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | this.is.a.none"</span>,.... |
| 33e20 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | .};.....<span.class="tok-kw">try |
| 33e40 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 | </span>.expect(mem.eql(<span.cla |
| 33e60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 77 68 61 74 5f 69 73 | ss="tok-type">u8</span>,.what_is |
| 33e80 | 5f 69 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | _it,.<span.class="tok-str">" |
| 33ea0 | 3b 74 68 69 73 20 69 73 20 61 20 6e 75 6d 62 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 | ;this.is.a.number"</span>)) |
| 33ec0 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | ;.}..<span.class="tok-comment">/ |
| 33ee0 | 2f 20 40 74 79 70 65 49 6e 66 6f 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 61 63 63 65 73 | /.@typeInfo.can.be.used.to.acces |
| 33f00 | 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 20 6f 66 20 61 6e 20 65 6e 75 | s.the.integer.tag.type.of.an.enu |
| 33f20 | 6d 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | m.</span>.<span.class="tok-kw">c |
| 33f40 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 6d 61 6c 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | onst</span>.Small.=.<span.class= |
| 33f60 | 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6e 65 2c 0a | "tok-kw">enum</span>.{.....one,. |
| 33f80 | 20 20 20 20 74 77 6f 2c 0a 20 20 20 20 74 68 72 65 65 2c 0a 20 20 20 20 66 6f 75 72 2c 0a 7d 3b | ....two,.....three,.....four,.}; |
| 33fa0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e | .<span.class="tok-kw">test</span |
| 33fc0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 | >.<span.class="tok-str">"st |
| 33fe0 | 64 2e 6d 65 74 61 2e 54 61 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | d.meta.Tag"</span>.{.....<s |
| 34000 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 | pan.class="tok-kw">try</span>.ex |
| 34020 | 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | pect(<span.class="tok-builtin">@ |
| 34040 | 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 2e 45 6e 75 6d 2e 74 61 67 5f | typeInfo</span>(Small).Enum.tag_ |
| 34060 | 74 79 70 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | type.==.<span.class="tok-type">u |
| 34080 | 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | 2</span>);.}..<span.class="tok-c |
| 340a0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 74 79 70 65 49 6e 66 6f 20 74 65 6c 6c 73 20 75 73 20 74 68 | omment">//.@typeInfo.tells.us.th |
| 340c0 | 65 20 66 69 65 6c 64 20 63 6f 75 6e 74 20 61 6e 64 20 74 68 65 20 66 69 65 6c 64 73 20 6e 61 6d | e.field.count.and.the.fields.nam |
| 340e0 | 65 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | es:</span>.<span.class="tok-kw"> |
| 34100 | 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | test</span>.<span.class="tok-str |
| 34120 | 22 3e 26 71 75 6f 74 3b 40 74 79 70 65 49 6e 66 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | ">"@typeInfo"</span>.{ |
| 34140 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 34160 | 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | pan>.expect(<span.class="tok-bui |
| 34180 | 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 2e 45 6e | ltin">@typeInfo</span>(Small).En |
| 341a0 | 75 6d 2e 66 69 65 6c 64 73 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | um.fields.len.==.<span.class="to |
| 341c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-number">4</span>);.....<span.c |
| 341e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 34200 | 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | mem.eql(<span.class="tok-type">u |
| 34220 | 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | 8</span>,.<span.class="tok-built |
| 34240 | 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 2e 45 6e 75 6d | in">@typeInfo</span>(Small).Enum |
| 34260 | 2e 66 69 65 6c 64 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | .fields[<span.class="tok-number" |
| 34280 | 3e 31 3c 2f 73 70 61 6e 3e 5d 2e 6e 61 6d 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >1</span>].name,.<span.class="to |
| 342a0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 77 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b | k-str">"two"</span>)); |
| 342c0 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | .}..<span.class="tok-comment">// |
| 342e0 | 20 40 74 61 67 4e 61 6d 65 20 67 69 76 65 73 20 61 20 5b 5d 63 6f 6e 73 74 20 75 38 20 72 65 70 | .@tagName.gives.a.[]const.u8.rep |
| 34300 | 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 65 3a 3c 2f 73 | resentation.of.an.enum.value:</s |
| 34320 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | pan>.<span.class="tok-kw">test</ |
| 34340 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| 34360 | 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | t;@tagName"</span>.{.....<s |
| 34380 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 | pan.class="tok-kw">try</span>.ex |
| 343a0 | 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | pect(mem.eql(<span.class="tok-ty |
| 343c0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>,.<span.class="tok- |
| 343e0 | 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 2e 74 | builtin">@tagName</span>(Small.t |
| 34400 | 68 72 65 65 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | hree),.<span.class="tok-str">&qu |
| 34420 | 6f 74 3b 74 68 72 65 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 | ot;three"</span>));.}</code |
| 34440 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 34460 | 24 20 7a 69 67 20 74 65 73 74 20 65 6e 75 6d 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 37 5d 20 | $.zig.test.enums.zig.Test.[1/7]. |
| 34480 | 74 65 73 74 20 26 71 75 6f 74 3b 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 26 71 75 | test."enum.ordinal.value&qu |
| 344a0 | 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 65 | ot;.....Test.[2/7].test."se |
| 344c0 | 74 20 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 | t.enum.ordinal.value".....T |
| 344e0 | 65 73 74 20 5b 33 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 65 6e 75 6d 20 6d 65 74 68 6f 64 | est.[3/7].test."enum.method |
| 34500 | 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 34 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 | ".....Test.[4/7].test." |
| 34520 | 3b 65 6e 75 6d 20 76 61 72 69 61 6e 74 20 73 77 69 74 63 68 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 | ;enum.variant.switch".....T |
| 34540 | 65 73 74 20 5b 35 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 74 64 2e 6d 65 74 61 2e 54 61 | est.[5/7].test."std.meta.Ta |
| 34560 | 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 36 2f 37 5d 20 74 65 73 74 20 26 71 75 6f | g".....Test.[6/7].test.&quo |
| 34580 | 74 3b 40 74 79 70 65 49 6e 66 6f 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 37 2f 37 5d | t;@typeInfo".....Test.[7/7] |
| 345a0 | 20 74 65 73 74 20 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a | .test."@tagName"...... |
| 345c0 | 41 6c 6c 20 37 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.7.tests.passed..</code></pre |
| 345e0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | >........<p>See.also:</p><ul>.<l |
| 34600 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c | i><a.href="#typeInfo">@typeInfo< |
| 34620 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e | /a></li>.<li><a.href="#tagName"> |
| 34640 | 40 74 61 67 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | @tagName</a></li>.<li><a.href="# |
| 34660 | 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | sizeOf">@sizeOf</a></li>.</ul>.. |
| 34680 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 3c 61 20 68 | .......<h2.id="extern-enum"><a.h |
| 346a0 | 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 72 6e 20 65 6e | ref="#toc-extern-enum">extern.en |
| 346c0 | 75 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 74 | um</a>.<a.class="hdr".href="#ext |
| 346e0 | 65 72 6e 2d 65 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | ern-enum">..</a></h2>........<p> |
| 34700 | 0a 20 20 20 20 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 65 6e 75 6d 73 20 61 72 65 20 6e 6f 74 | .......By.default,.enums.are.not |
| 34720 | 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 | .guaranteed.to.be.compatible.wit |
| 34740 | 68 20 74 68 65 20 43 20 41 42 49 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | h.the.C.ABI:.......</p>.......<p |
| 34760 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | .class="file">test.zig</p><pre>< |
| 34780 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 347a0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.Foo.=.<span.c |
| 347c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 61 2c 20 62 | lass="tok-kw">enum</span>.{.a,.b |
| 347e0 | 2c 20 63 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f | ,.c.};.<span.class="tok-kw">expo |
| 34800 | 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | rt</span>.<span.class="tok-kw">f |
| 34820 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e | n</span>.<span.class="tok-fn">en |
| 34840 | 74 72 79 3c 2f 73 70 61 6e 3e 28 66 6f 6f 3a 20 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | try</span>(foo:.Foo).<span.class |
| 34860 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 20 7d 3c 2f 63 6f 64 | ="tok-type">void</span>.{.}</cod |
| 34880 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 348a0 | 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 | >$.zig.build-obj.test.zig.<span. |
| 348c0 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | class="t0_1">./docgen_tmp/test.z |
| 348e0 | 69 67 3a 32 3a 32 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 | ig:2:22:.</span><span.class="t31 |
| 34900 | 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _1">error:.</span><span.class="t |
| 34920 | 30 5f 31 22 3e 70 61 72 61 6d 65 74 65 72 20 6f 66 20 74 79 70 65 20 27 46 6f 6f 27 20 6e 6f 74 | 0_1">parameter.of.type.'Foo'.not |
| 34940 | 20 61 6c 6c 6f 77 65 64 20 69 6e 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 63 61 6c 6c 69 6e | .allowed.in.function.with.callin |
| 34960 | 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 27 43 27 3c 2f 73 70 61 6e 3e 0a 65 78 70 6f 72 74 20 66 | g.convention.'C'</span>.export.f |
| 34980 | 6e 20 65 6e 74 72 79 28 66 6f 6f 3a 20 46 6f 6f 29 20 76 6f 69 64 20 7b 20 7d 0a 20 20 20 20 20 | n.entry(foo:.Foo).void.{.}...... |
| 349a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | ................<span.class="t32 |
| 349c0 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | _1">^</span>.</code></pre>...... |
| 349e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 61 20 43 2d 41 42 49 2d 63 6f 6d 70 61 74 69 62 | ..<p>.......For.a.C-ABI-compatib |
| 34a00 | 6c 65 20 65 6e 75 6d 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | le.enum,.use.<code.class="zig">< |
| 34a20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e | span.class="tok-kw">extern</span |
| 34a40 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 | >.<span.class="tok-kw">enum</spa |
| 34a60 | 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 | n></code>:.......</p>.......<p.c |
| 34a80 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | lass="file">test.zig</p><pre><co |
| 34aa0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 34ac0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.Foo.=.<span.cla |
| 34ae0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ss="tok-kw">extern</span>.<span. |
| 34b00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 61 2c 20 | class="tok-kw">enum</span>.{.a,. |
| 34b20 | 62 2c 20 63 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 | b,.c.};.<span.class="tok-kw">exp |
| 34b40 | 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ort</span>.<span.class="tok-kw"> |
| 34b60 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 | fn</span>.<span.class="tok-fn">e |
| 34b80 | 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 66 6f 6f 3a 20 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 | ntry</span>(foo:.Foo).<span.clas |
| 34ba0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 20 7d 3c 2f 63 6f | s="tok-type">void</span>.{.}</co |
| 34bc0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 34be0 | 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 | ">$.zig.build-obj.test.zig</code |
| 34c00 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 | ></pre>................<h2.id="E |
| 34c20 | 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 6e 75 6d | num-Literals"><a.href="#toc-Enum |
| 34c40 | 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 | -Literals">Enum.Literals</a>.<a. |
| 34c60 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 | class="hdr".href="#Enum-Literals |
| 34c80 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 | ">..</a></h2>........<p>.......E |
| 34ca0 | 6e 75 6d 20 6c 69 74 65 72 61 6c 73 20 61 6c 6c 6f 77 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 | num.literals.allow.specifying.th |
| 34cc0 | 65 20 6e 61 6d 65 20 6f 66 20 61 6e 20 65 6e 75 6d 20 66 69 65 6c 64 20 77 69 74 68 6f 75 74 20 | e.name.of.an.enum.field.without. |
| 34ce0 | 73 70 65 63 69 66 79 69 6e 67 20 74 68 65 20 65 6e 75 6d 20 74 79 70 65 3a 0a 20 20 20 20 20 20 | specifying.the.enum.type:....... |
| 34d00 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 34d20 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 34d40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 34d60 | 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | std.=.<span.class="tok-builtin"> |
| 34d80 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| 34da0 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 | str">"std"</span>);.<s |
| 34dc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 34de0 | 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 | expect.=.std.testing.expect;..<s |
| 34e00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 34e20 | 43 6f 6c 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 | Color.=.<span.class="tok-kw">enu |
| 34e40 | 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 75 74 6f 2c 0a 20 20 20 20 6f 66 66 2c 0a 20 20 | m</span>.{.....auto,.....off,... |
| 34e60 | 20 20 6f 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ..on,.};..<span.class="tok-kw">t |
| 34e80 | 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | est</span>.<span.class="tok-str" |
| 34ea0 | 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | >"enum.literals"</span |
| 34ec0 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | >.{.....<span.class="tok-kw">con |
| 34ee0 | 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 31 3a 20 43 6f 6c 6f 72 20 3d 20 2e 61 75 74 6f 3b | st</span>.color1:.Color.=..auto; |
| 34f00 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| 34f20 | 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 32 20 3d 20 43 6f 6c 6f 72 2e 61 75 74 6f 3b 0a 20 20 20 20 | /span>.color2.=.Color.auto;..... |
| 34f40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 34f60 | 65 78 70 65 63 74 28 63 6f 6c 6f 72 31 20 3d 3d 20 63 6f 6c 6f 72 32 29 3b 0a 7d 0a 0a 3c 73 70 | expect(color1.==.color2);.}..<sp |
| 34f80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 34fa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 | pan.class="tok-str">"switch |
| 34fc0 | 20 75 73 69 6e 67 20 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | .using.enum.literals"</span |
| 34fe0 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | >.{.....<span.class="tok-kw">con |
| 35000 | 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 20 3d 20 43 6f 6c 6f 72 2e 6f 6e 3b 0a 20 20 20 20 | st</span>.color.=.Color.on;..... |
| 35020 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 35040 | 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.result.=.<span.class="tok-kw"> |
| 35060 | 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 20 20 20 20 | switch</span>.(color).{......... |
| 35080 | 2e 61 75 74 6f 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | .auto.=>.<span.class="tok-nul |
| 350a0 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 6e 20 3d 26 67 | l">false</span>,..........on.=&g |
| 350c0 | 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f | t;.<span.class="tok-null">true</ |
| 350e0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 66 66 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 | span>,..........off.=>.<span. |
| 35100 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 | class="tok-null">false</span>,.. |
| 35120 | 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ...};.....<span.class="tok-kw">t |
| 35140 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 7d 3c 2f 63 6f 64 | ry</span>.expect(result);.}</cod |
| 35160 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 35180 | 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 32 5d 20 | >$.zig.test.test.zig.Test.[1/2]. |
| 351a0 | 74 65 73 74 20 26 71 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 2e 2e | test."enum.literals".. |
| 351c0 | 2e 20 0a 54 65 73 74 20 5b 32 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 | ...Test.[2/2].test."switch. |
| 351e0 | 75 73 69 6e 67 20 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 | using.enum.literals"......A |
| 35200 | 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.2.tests.passed..</code></pre> |
| 35220 | 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4e 6f 6e 2d 65 78 68 61 | ................<h2.id="Non-exha |
| 35240 | 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4e 6f 6e 2d 65 | ustive-enum"><a.href="#toc-Non-e |
| 35260 | 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 | xhaustive-enum">Non-exhaustive.e |
| 35280 | 6e 75 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4e 6f | num</a>.<a.class="hdr".href="#No |
| 352a0 | 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | n-exhaustive-enum">..</a></h2>.. |
| 352c0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 | ......<p>.......A.Non-exhaustive |
| 352e0 | 20 65 6e 75 6d 20 63 61 6e 20 62 65 20 63 72 65 61 74 65 64 20 62 79 20 61 64 64 69 6e 67 20 61 | .enum.can.be.created.by.adding.a |
| 35300 | 20 74 72 61 69 6c 69 6e 67 20 27 5f 27 20 66 69 65 6c 64 2e 0a 20 20 20 20 20 20 49 74 20 20 6d | .trailing.'_'.field........It..m |
| 35320 | 75 73 74 20 73 70 65 63 69 66 79 20 61 20 74 61 67 20 74 79 70 65 20 61 6e 64 20 63 61 6e 6e 6f | ust.specify.a.tag.type.and.canno |
| 35340 | 74 20 63 6f 6e 73 75 6d 65 20 65 76 65 72 79 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 | t.consume.every.enumeration.valu |
| 35360 | 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 | e........</p>.......<p>.......<a |
| 35380 | 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 | .href="#intToEnum">@intToEnum</a |
| 353a0 | 3e 20 6f 6e 20 61 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 20 63 61 6e 6e 6f | >.on.a.non-exhaustive.enum.canno |
| 353c0 | 74 20 66 61 69 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | t.fail........</p>.......<p>.... |
| 353e0 | 20 20 20 41 20 73 77 69 74 63 68 20 6f 6e 20 61 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 | ...A.switch.on.a.non-exhaustive. |
| 35400 | 65 6e 75 6d 20 63 61 6e 20 69 6e 63 6c 75 64 65 20 61 20 27 5f 27 20 70 72 6f 6e 67 20 61 73 20 | enum.can.include.a.'_'.prong.as. |
| 35420 | 61 6e 20 61 6c 74 65 72 6e 61 74 69 76 65 20 74 6f 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 | an.alternative.to.an.<code.class |
| 35440 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | ="zig"><span.class="tok-kw">else |
| 35460 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 0a 20 20 20 20 20 20 77 69 74 68 20 | </span></code>.prong.......with. |
| 35480 | 74 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 62 65 69 6e 67 20 74 68 61 74 20 69 74 20 6d 61 6b | the.difference.being.that.it.mak |
| 354a0 | 65 73 20 69 74 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 61 6c 6c 20 74 68 65 | es.it.a.compile.error.if.all.the |
| 354c0 | 20 6b 6e 6f 77 6e 20 74 61 67 20 6e 61 6d 65 73 20 61 72 65 20 6e 6f 74 20 68 61 6e 64 6c 65 64 | .known.tag.names.are.not.handled |
| 354e0 | 20 62 79 20 74 68 65 20 73 77 69 74 63 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .by.the.switch........</p>...... |
| 35500 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 35520 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 35540 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 | "tok-kw">const</span>.std.=.<spa |
| 35560 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| 35580 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| 355a0 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;std"</span>);.<span.class= |
| 355c0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 | "tok-kw">const</span>.expect.=.s |
| 355e0 | 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | td.testing.expect;..<span.class= |
| 35600 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 75 6d 62 65 72 20 3d 20 3c | "tok-kw">const</span>.Number.=.< |
| 35620 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 | span.class="tok-kw">enum</span>( |
| 35640 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| 35660 | 29 20 7b 0a 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f 2c 0a 20 20 20 20 74 68 72 65 65 2c | ).{.....one,.....two,.....three, |
| 35680 | 0a 20 20 20 20 5f 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ....._,.};..<span.class="tok-kw" |
| 356a0 | 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >test</span>.<span.class="tok-st |
| 356c0 | 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 | r">"switch.on.non-exhaustiv |
| 356e0 | 65 20 65 6e 75 6d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | e.enum"</span>.{.....<span. |
| 35700 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 | class="tok-kw">const</span>.numb |
| 35720 | 65 72 20 3d 20 4e 75 6d 62 65 72 2e 6f 6e 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er.=.Number.one;.....<span.class |
| 35740 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 | ="tok-kw">const</span>.result.=. |
| 35760 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 | <span.class="tok-kw">switch</spa |
| 35780 | 6e 3e 20 28 6e 75 6d 62 65 72 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 6f 6e 65 20 3d 26 67 74 3b | n>.(number).{..........one.=> |
| 357a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 | .<span.class="tok-null">true</sp |
| 357c0 | 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 74 77 6f 2c 0a 20 20 20 20 20 20 20 20 2e 74 68 72 65 | an>,..........two,..........thre |
| 357e0 | 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | e.=>.<span.class="tok-null">f |
| 35800 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 5f 20 3d 26 67 74 3b 20 3c 73 70 | alse</span>,........._.=>.<sp |
| 35820 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e | an.class="tok-null">false</span> |
| 35840 | 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ,.....};.....<span.class="tok-kw |
| 35860 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 | ">try</span>.expect(result);.... |
| 35880 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 358a0 | 6e 3e 20 69 73 5f 6f 6e 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | n>.is_one.=.<span.class="tok-kw" |
| 358c0 | 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 20 7b 0a 20 20 20 20 20 20 | >switch</span>.(number).{....... |
| 358e0 | 20 20 2e 6f 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ...one.=>.<span.class="tok-nu |
| 35900 | 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ll">true</span>,.........<span.c |
| 35920 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 | lass="tok-kw">else</span>.=>. |
| 35940 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 | <span.class="tok-null">false</sp |
| 35960 | 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>,.....};.....<span.class="tok |
| 35980 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 73 5f 6f 6e 65 29 3b 0a | -kw">try</span>.expect(is_one);. |
| 359a0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 359c0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 | shell">$.zig.test.test.zig.Test. |
| 359e0 | 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 6e 6f 6e 2d 65 | [1/1].test."switch.on.non-e |
| 35a00 | 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 | xhaustive.enum"......All.1. |
| 35a20 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | tests.passed..</code></pre>..... |
| 35a40 | 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 75 6e 69 6f 6e 22 | ..................<h1.id="union" |
| 35a60 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 | ><a.href="#toc-union">union</a>. |
| 35a80 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e c2 a7 3c | <a.class="hdr".href="#union">..< |
| 35aa0 | 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 62 61 72 65 | /a></h1>........<p>.......A.bare |
| 35ac0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 35ae0 | 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 | tok-kw">union</span></code>.defi |
| 35b00 | 6e 65 73 20 61 20 73 65 74 20 6f 66 20 70 6f 73 73 69 62 6c 65 20 74 79 70 65 73 20 74 68 61 74 | nes.a.set.of.possible.types.that |
| 35b20 | 20 61 20 76 61 6c 75 65 0a 20 20 20 20 20 20 63 61 6e 20 62 65 20 61 73 20 61 20 6c 69 73 74 20 | .a.value.......can.be.as.a.list. |
| 35b40 | 6f 66 20 66 69 65 6c 64 73 2e 20 4f 6e 6c 79 20 6f 6e 65 20 66 69 65 6c 64 20 63 61 6e 20 62 65 | of.fields..Only.one.field.can.be |
| 35b60 | 20 61 63 74 69 76 65 20 61 74 20 61 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 54 68 65 20 69 6e 2d | .active.at.a.time........The.in- |
| 35b80 | 6d 65 6d 6f 72 79 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 62 61 72 65 20 75 6e | memory.representation.of.bare.un |
| 35ba0 | 69 6f 6e 73 20 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 2e 0a 20 20 20 20 20 20 42 61 | ions.is.not.guaranteed........Ba |
| 35bc0 | 72 65 20 75 6e 69 6f 6e 73 20 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 64 20 74 6f 20 72 65 69 6e | re.unions.cannot.be.used.to.rein |
| 35be0 | 74 65 72 70 72 65 74 20 6d 65 6d 6f 72 79 2e 20 46 6f 72 20 74 68 61 74 2c 20 75 73 65 20 3c 61 | terpret.memory..For.that,.use.<a |
| 35c00 | 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 2c 0a 20 | .href="#ptrCast">@ptrCast</a>,.. |
| 35c20 | 20 20 20 20 20 6f 72 20 75 73 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d | .....or.use.an.<a.href="#extern- |
| 35c40 | 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 20 6f 72 20 61 20 3c 61 20 | union">extern.union</a>.or.a.<a. |
| 35c60 | 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f | href="#packed-union">packed.unio |
| 35c80 | 6e 3c 2f 61 3e 20 77 68 69 63 68 20 68 61 76 65 0a 20 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 | n</a>.which.have.......guarantee |
| 35ca0 | 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 2e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 | d.in-memory.layout........<a.hre |
| 35cc0 | 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 41 63 | f="#Wrong-Union-Field-Access">Ac |
| 35ce0 | 63 65 73 73 69 6e 67 20 74 68 65 20 6e 6f 6e 2d 61 63 74 69 76 65 20 66 69 65 6c 64 3c 2f 61 3e | cessing.the.non-active.field</a> |
| 35d00 | 20 69 73 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 | .is.......safety-checked.<a.href |
| 35d20 | 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 | ="#Undefined-Behavior">Undefined |
| 35d40 | 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .Behavior</a>:.......</p>....... |
| 35d60 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 35d80 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 35da0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 61 79 6c 6f 61 64 20 3d 20 3c | tok-kw">const</span>.Payload.=.< |
| 35dc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e | span.class="tok-kw">union</span> |
| 35de0 | 20 7b 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | .{.....int:.<span.class="tok-typ |
| 35e00 | 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 | e">i64</span>,.....float:.<span. |
| 35e20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | class="tok-type">f64</span>,.... |
| 35e40 | 20 62 6f 6f 6c 65 61 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | .boolean:.<span.class="tok-type" |
| 35e60 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >bool</span>,.};.<span.class="to |
| 35e80 | 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | k-kw">test</span>.<span.class="t |
| 35ea0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 26 71 75 6f 74 3b | ok-str">"simple.union" |
| 35ec0 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| 35ee0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 61 79 6c 6f 61 64 20 3d 20 50 61 79 6c 6f 61 64 7b | w">var</span>.payload.=.Payload{ |
| 35f00 | 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ..int.=.<span.class="tok-number" |
| 35f20 | 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 70 61 79 6c 6f 61 64 2e 66 6c 6f 61 | >1234</span>.};.....payload.floa |
| 35f40 | 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e | t.=.<span.class="tok-number">12. |
| 35f60 | 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | 34</span>;.}</code></pre><pre><c |
| 35f80 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 35fa0 | 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 69 6d 70 | t.zig.Test.[1/1].test."simp |
| 35fc0 | 6c 65 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 74 68 72 65 61 64 20 31 31 35 33 37 20 | le.union".....thread.11537. |
| 35fe0 | 70 61 6e 69 63 3a 20 61 63 63 65 73 73 20 6f 66 20 69 6e 61 63 74 69 76 65 20 75 6e 69 6f 6e 20 | panic:.access.of.inactive.union. |
| 36000 | 66 69 65 6c 64 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 | field.<span.class="t1_0">/home/a |
| 36020 | 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | ndy/Downloads/zig/docgen_tmp/tes |
| 36040 | 74 2e 7a 69 67 3a 38 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.zig:8:12</span>:.<span.class=" |
| 36060 | 74 32 5f 30 22 3e 30 78 32 30 36 37 37 62 20 69 6e 20 74 65 73 74 20 26 71 75 6f 74 3b 73 69 6d | t2_0">0x20677b.in.test."sim |
| 36080 | 70 6c 65 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | ple.union".(test)</span>... |
| 360a0 | 20 20 70 61 79 6c 6f 61 64 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 20 20 20 | ..payload.float.=.12.34;........ |
| 360c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 360e0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | .<span.class="t1_0">/home/andy/D |
| 36100 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 | ownloads/zig/lib/std/special/tes |
| 36120 | 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 37 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | t_runner.zig:76:28</span>:.<span |
| 36140 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 64 30 35 61 20 69 6e 20 73 74 64 2e 73 70 | .class="t2_0">0x22d05a.in.std.sp |
| 36160 | 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | ecial.main.(test)</span>........ |
| 36180 | 20 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 20 20 20 20 20 | .}.else.test_fn.func();......... |
| 361a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...................<span.class=" |
| 361c0 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f | t32_1">^</span>.<span.class="t1_ |
| 361e0 | 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f | 0">/home/andy/Downloads/zig/lib/ |
| 36200 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 37 31 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:471:37</span>:.<sp |
| 36220 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 35 35 62 61 20 69 6e 20 73 74 64 2e | an.class="t2_0">0x2255ba.in.std. |
| 36240 | 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | start.callMain.(test)</span>.... |
| 36260 | 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 | .........const.result.=.root.mai |
| 36280 | 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | n().catch.|err|.{............... |
| 362a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......................<span.clas |
| 362c0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 362e0 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c | t1_0">/home/andy/Downloads/zig/l |
| 36300 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/start.zig:413:12</span>:. |
| 36320 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 39 34 33 65 20 69 6e 20 73 | <span.class="t2_0">0x20943e.in.s |
| 36340 | 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 | td.start.callMainWithArgs.(test) |
| 36360 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 | </span>.....return.@call(.{..mod |
| 36380 | 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 | ifier.=..always_inline.},.callMa |
| 363a0 | 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | in,..{});............<span.class |
| 363c0 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 363e0 | 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 | 1_0">/home/andy/Downloads/zig/li |
| 36400 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c | b/std/start.zig:332:17</span>:.< |
| 36420 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 34 36 36 20 69 6e 20 73 74 | span.class="t2_0">0x208466.in.st |
| 36440 | 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 | d.start.posixCallMainAndExit.(te |
| 36460 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c | st)</span>.....std.os.exit(@call |
| 36480 | 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d | (.{..modifier.=..always_inline.} |
| 364a0 | 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 | ,.callMainWithArgs,..{.argc,.arg |
| 364c0 | 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | v,.envp.}));.................<sp |
| 364e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| 36500 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| 36520 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 | s/zig/lib/std/start.zig:245:5</s |
| 36540 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 32 37 | pan>:.<span.class="t2_0">0x20827 |
| 36560 | 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 | 2.in.std.start._start.(test)</sp |
| 36580 | 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 | an>.....@call(.{..modifier.=..ne |
| 365a0 | 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 | ver_inline.},.posixCallMainAndEx |
| 365c0 | 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | it,..{});.....<span.class="t32_1 |
| 365e0 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 | ">^</span>.error:.the.following. |
| 36600 | 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 | test.command.crashed:.docgen_tmp |
| 36620 | 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 33 33 33 61 38 37 34 31 38 31 36 37 30 32 64 61 66 64 30 | /zig-cache/o/333a8741816702dafd0 |
| 36640 | 66 66 39 39 61 66 33 38 30 65 62 62 31 2f 74 65 73 74 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | ff99af380ebb1/test./home/andy/Do |
| 36660 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2f 7a 69 67 0a 3c 2f | wnloads/zig/build-release/zig.</ |
| 36680 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 59 6f 75 20 63 61 6e 20 61 63 | code></pre>........<p>You.can.ac |
| 366a0 | 74 69 76 61 74 65 20 61 6e 6f 74 68 65 72 20 66 69 65 6c 64 20 62 79 20 61 73 73 69 67 6e 69 6e | tivate.another.field.by.assignin |
| 366c0 | 67 20 74 68 65 20 65 6e 74 69 72 65 20 75 6e 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | g.the.entire.union:</p>.......<p |
| 366e0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | .class="file">test.zig</p><pre>< |
| 36700 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 36720 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.std.=.<span.c |
| 36740 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e | lass="tok-builtin">@import</span |
| 36760 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 | >(<span.class="tok-str">"st |
| 36780 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | d"</span>);.<span.class="to |
| 367a0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e | k-kw">const</span>.expect.=.std. |
| 367c0 | 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | testing.expect;..<span.class="to |
| 367e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 61 79 6c 6f 61 64 20 3d 20 3c 73 70 | k-kw">const</span>.Payload.=.<sp |
| 36800 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b | an.class="tok-kw">union</span>.{ |
| 36820 | 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | .....int:.<span.class="tok-type" |
| 36840 | 3e 69 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c | >i64</span>,.....float:.<span.cl |
| 36860 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 | ass="tok-type">f64</span>,.....b |
| 36880 | 6f 6f 6c 65 61 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 | oolean:.<span.class="tok-type">b |
| 368a0 | 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ool</span>,.};.<span.class="tok- |
| 368c0 | 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">test</span>.<span.class="tok |
| 368e0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f | -str">"simple.union"</ |
| 36900 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.{.....<span.class="tok-kw" |
| 36920 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 61 79 6c 6f 61 64 20 3d 20 50 61 79 6c 6f 61 64 7b 20 2e | >var</span>.payload.=.Payload{.. |
| 36940 | 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | int.=.<span.class="tok-number">1 |
| 36960 | 32 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 234</span>.};.....<span.class="t |
| 36980 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 61 79 6c 6f 61 64 | ok-kw">try</span>.expect(payload |
| 369a0 | 2e 69 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | .int.==.<span.class="tok-number" |
| 369c0 | 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 70 61 79 6c 6f 61 64 20 3d 20 50 61 79 | >1234</span>);.....payload.=.Pay |
| 369e0 | 6c 6f 61 64 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | load{..float.=.<span.class="tok- |
| 36a00 | 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 | number">12.34</span>.};.....<spa |
| 36a20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 36a40 | 63 74 28 70 61 79 6c 6f 61 64 2e 66 6c 6f 61 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ct(payload.float.==.<span.class= |
| 36a60 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 | "tok-number">12.34</span>);.}</c |
| 36a80 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 36aa0 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 | l">$.zig.test.test.zig.Test.[1/1 |
| 36ac0 | 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e | ].test."simple.union". |
| 36ae0 | 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e | .....All.1.tests.passed..</code> |
| 36b00 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 6f 72 64 65 72 | </pre>........<p>.......In.order |
| 36b20 | 20 74 6f 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 | .to.use.<a.href="#switch">switch |
| 36b40 | 3c 2f 61 3e 20 77 69 74 68 20 61 20 75 6e 69 6f 6e 2c 20 69 74 20 6d 75 73 74 20 62 65 20 61 20 | </a>.with.a.union,.it.must.be.a. |
| 36b60 | 3c 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 | <a.href="#Tagged-union">Tagged.u |
| 36b80 | 6e 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | nion</a>........</p>.......<p>.. |
| 36ba0 | 20 20 20 20 20 54 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 20 75 6e 69 6f 6e 20 77 68 65 6e 20 | .....To.initialize.a.union.when. |
| 36bc0 | 74 68 65 20 74 61 67 20 69 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 | the.tag.is.a.<a.href="#comptime" |
| 36be0 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 6e 61 6d 65 2c 20 73 65 65 20 3c 61 | >comptime</a>-known.name,.see.<a |
| 36c00 | 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 61 | .href="#unionInit">@unionInit</a |
| 36c20 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 61 67 | >........</p>........<h2.id="Tag |
| 36c40 | 67 65 64 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 61 67 67 65 64 2d | ged-union"><a.href="#toc-Tagged- |
| 36c60 | 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | union">Tagged.union</a>.<a.class |
| 36c80 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e c2 a7 3c 2f | ="hdr".href="#Tagged-union">..</ |
| 36ca0 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 | a></h2>........<p>Unions.can.be. |
| 36cc0 | 64 65 63 6c 61 72 65 64 20 77 69 74 68 20 61 6e 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 0a | declared.with.an.enum.tag.type.. |
| 36ce0 | 20 20 20 20 20 20 54 68 69 73 20 74 75 72 6e 73 20 74 68 65 20 75 6e 69 6f 6e 20 69 6e 74 6f 20 | ......This.turns.the.union.into. |
| 36d00 | 61 20 3c 65 6d 3e 74 61 67 67 65 64 3c 2f 65 6d 3e 20 75 6e 69 6f 6e 2c 20 77 68 69 63 68 20 6d | a.<em>tagged</em>.union,.which.m |
| 36d20 | 61 6b 65 73 20 69 74 20 65 6c 69 67 69 62 6c 65 0a 20 20 20 20 20 20 74 6f 20 75 73 65 20 77 69 | akes.it.eligible.......to.use.wi |
| 36d40 | 74 68 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 | th.<a.href="#switch">switch</a>. |
| 36d60 | 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 54 61 67 67 65 64 20 75 6e 69 6f 6e 73 | expressions........Tagged.unions |
| 36d80 | 20 63 6f 65 72 63 65 20 74 6f 20 74 68 65 69 72 20 74 61 67 20 74 79 70 65 3a 20 3c 61 20 68 72 | .coerce.to.their.tag.type:.<a.hr |
| 36da0 | 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e | ef="#Type-Coercion-unions-and-en |
| 36dc0 | 75 6d 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 75 6e 69 6f 6e 73 20 61 6e 64 20 65 | ums">Type.Coercion:.unions.and.e |
| 36de0 | 6e 75 6d 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | nums</a>........</p>.......<p.cl |
| 36e00 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| 36e20 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 36e40 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.std.=.<span.clas |
| 36e60 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| 36e80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| 36ea0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | uot;</span>);.<span.class="tok-k |
| 36ec0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 | w">const</span>.expect.=.std.tes |
| 36ee0 | 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ting.expect;..<span.class="tok-k |
| 36f00 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 20 3d | w">const</span>.ComplexTypeTag.= |
| 36f20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e | .<span.class="tok-kw">enum</span |
| 36f40 | 3e 20 7b 0a 20 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d 3b 0a 3c 73 70 61 6e | >.{.....ok,.....not_ok,.};.<span |
| 36f60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d | .class="tok-kw">const</span>.Com |
| 36f80 | 70 6c 65 78 54 79 70 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | plexType.=.<span.class="tok-kw"> |
| 36fa0 | 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 20 7b 0a 20 | union</span>(ComplexTypeTag).{.. |
| 36fc0 | 20 20 20 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | ...ok:.<span.class="tok-type">u8 |
| 36fe0 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>,.....not_ok:.<span.class |
| 37000 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 | ="tok-type">void</span>,.};..<sp |
| 37020 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 37040 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 | pan.class="tok-str">"switch |
| 37060 | 20 6f 6e 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | .on.tagged.union"</span>.{. |
| 37080 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| 370a0 | 73 70 61 6e 3e 20 63 20 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 7b 20 2e 6f 6b 20 3d 20 3c 73 70 | span>.c.=.ComplexType{..ok.=.<sp |
| 370c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 | an.class="tok-number">42</span>. |
| 370e0 | 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | };.....<span.class="tok-kw">try< |
| 37100 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | /span>.expect(<span.class="tok-b |
| 37120 | 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 | uiltin">@as</span>(ComplexTypeTa |
| 37140 | 67 2c 20 63 29 20 3d 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6f 6b 29 3b 0a 0a 20 20 | g,.c).==.ComplexTypeTag.ok);.... |
| 37160 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 | ..<span.class="tok-kw">switch</s |
| 37180 | 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 | pan>.(c).{.........ComplexTypeTa |
| 371a0 | 67 2e 6f 6b 20 3d 26 67 74 3b 20 7c 76 61 6c 75 65 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | g.ok.=>.|value|.<span.class=" |
| 371c0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 | tok-kw">try</span>.expect(value. |
| 371e0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f | ==.<span.class="tok-number">42</ |
| 37200 | 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6e | span>),.........ComplexTypeTag.n |
| 37220 | 6f 74 5f 6f 6b 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ot_ok.=>.<span.class="tok-kw" |
| 37240 | 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 | >unreachable</span>,.....}.}..<s |
| 37260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">test</span>.< |
| 37280 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 65 74 20 74 | span.class="tok-str">"get.t |
| 372a0 | 61 67 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ag.type"</span>.{.....<span |
| 372c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 372e0 | 74 28 73 74 64 2e 6d 65 74 61 2e 54 61 67 28 43 6f 6d 70 6c 65 78 54 79 70 65 29 20 3d 3d 20 43 | t(std.meta.Tag(ComplexType).==.C |
| 37300 | 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | omplexTypeTag);.}..<span.class=" |
| 37320 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">test</span>.<span.class= |
| 37340 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 74 6f 20 65 6e 75 6d 26 71 | "tok-str">"coerce.to.enum&q |
| 37360 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>.{.....<span.class="t |
| 37380 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 31 20 3d 20 43 6f 6d 70 6c 65 78 | ok-kw">const</span>.c1.=.Complex |
| 373a0 | 54 79 70 65 7b 20 2e 6f 6b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | Type{..ok.=.<span.class="tok-num |
| 373c0 | 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ber">42</span>.};.....<span.clas |
| 373e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 32 20 3d 20 43 6f 6d | s="tok-kw">const</span>.c2.=.Com |
| 37400 | 70 6c 65 78 54 79 70 65 2e 6e 6f 74 5f 6f 6b 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | plexType.not_ok;......<span.clas |
| 37420 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 31 20 | s="tok-kw">try</span>.expect(c1. |
| 37440 | 3d 3d 20 2e 6f 6b 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ==..ok);.....<span.class="tok-kw |
| 37460 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 32 20 3d 3d 20 2e 6e 6f 74 5f 6f | ">try</span>.expect(c2.==..not_o |
| 37480 | 6b 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | k);.}</code></pre><pre><code.cla |
| 374a0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 | ss="shell">$.zig.test.test.zig.T |
| 374c0 | 65 73 74 20 5b 31 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 74 | est.[1/3].test."switch.on.t |
| 374e0 | 61 67 67 65 64 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 33 5d | agged.union".....Test.[2/3] |
| 37500 | 20 74 65 73 74 20 26 71 75 6f 74 3b 67 65 74 20 74 61 67 20 74 79 70 65 26 71 75 6f 74 3b 2e 2e | .test."get.tag.type".. |
| 37520 | 2e 20 0a 54 65 73 74 20 5b 33 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 | ...Test.[3/3].test."coerce. |
| 37540 | 74 6f 20 65 6e 75 6d 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 | to.enum"......All.3.tests.p |
| 37560 | 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 | assed..</code></pre>........<p>I |
| 37580 | 6e 20 6f 72 64 65 72 20 74 6f 20 6d 6f 64 69 66 79 20 74 68 65 20 70 61 79 6c 6f 61 64 20 6f 66 | n.order.to.modify.the.payload.of |
| 375a0 | 20 61 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 6e 20 61 20 73 77 69 74 63 68 20 65 78 70 72 | .a.tagged.union.in.a.switch.expr |
| 375c0 | 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 70 6c 61 63 65 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 | ession,.......place.a.<code.clas |
| 375e0 | 73 3d 22 7a 69 67 22 3e 2a 3c 2f 63 6f 64 65 3e 20 62 65 66 6f 72 65 20 74 68 65 20 76 61 72 69 | s="zig">*</code>.before.the.vari |
| 37600 | 61 62 6c 65 20 6e 61 6d 65 20 74 6f 20 6d 61 6b 65 20 69 74 20 61 20 70 6f 69 6e 74 65 72 3a 0a | able.name.to.make.it.a.pointer:. |
| 37620 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ......</p>.......<p.class="file" |
| 37640 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 37660 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 37680 | 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>.std.=.<span.class="tok-bui |
| 376a0 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| 376c0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ="tok-str">"std"</span |
| 376e0 | 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | >);.<span.class="tok-kw">const</ |
| 37700 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | span>.expect.=.std.testing.expec |
| 37720 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | t;..<span.class="tok-kw">const</ |
| 37740 | 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | span>.ComplexTypeTag.=.<span.cla |
| 37760 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6b | ss="tok-kw">enum</span>.{.....ok |
| 37780 | 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ,.....not_ok,.};.<span.class="to |
| 377a0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 20 3d | k-kw">const</span>.ComplexType.= |
| 377c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 | .<span.class="tok-kw">union</spa |
| 377e0 | 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 20 7b 0a 20 20 20 20 6f 6b 3a 20 3c 73 70 | n>(ComplexTypeTag).{.....ok:.<sp |
| 37800 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 | an.class="tok-type">u8</span>,.. |
| 37820 | 20 20 20 6e 6f 74 5f 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ...not_ok:.<span.class="tok-type |
| 37840 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">void</span>,.};..<span.class=" |
| 37860 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">test</span>.<span.class= |
| 37880 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 6f 64 69 66 79 20 74 61 67 67 65 64 20 75 6e | "tok-str">"modify.tagged.un |
| 378a0 | 69 6f 6e 20 69 6e 20 73 77 69 74 63 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ion.in.switch"</span>.{.... |
| 378c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 378e0 | 20 63 20 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 7b 20 2e 6f 6b 20 3d 20 3c 73 70 61 6e 20 63 6c | .c.=.ComplexType{..ok.=.<span.cl |
| 37900 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 | ass="tok-number">42</span>.};... |
| 37920 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 37940 | 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | >.expect(<span.class="tok-builti |
| 37960 | 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2c 20 63 29 | n">@as</span>(ComplexTypeTag,.c) |
| 37980 | 20 3d 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6f 6b 29 3b 0a 0a 20 20 20 20 3c 73 70 | .==.ComplexTypeTag.ok);......<sp |
| 379a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">switch</span>. |
| 379c0 | 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6f 6b 20 | (c).{.........ComplexTypeTag.ok. |
| 379e0 | 3d 26 67 74 3b 20 7c 2a 76 61 6c 75 65 7c 20 76 61 6c 75 65 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 | =>.|*value|.value.*.+=.<span. |
| 37a00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | class="tok-number">1</span>,.... |
| 37a20 | 20 20 20 20 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6e 6f 74 5f 6f 6b 20 3d 26 67 74 3b | .....ComplexTypeTag.not_ok.=> |
| 37a40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c | .<span.class="tok-kw">unreachabl |
| 37a60 | 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e</span>,.....}......<span.class |
| 37a80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 2e 6f 6b | ="tok-kw">try</span>.expect(c.ok |
| 37aa0 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 33 3c | .==.<span.class="tok-number">43< |
| 37ac0 | 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | /span>);.}</code></pre><pre><cod |
| 37ae0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e | e.class="shell">$.zig.test.test. |
| 37b00 | 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6d 6f 64 69 66 79 | zig.Test.[1/1].test."modify |
| 37b20 | 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 6e 20 73 77 69 74 63 68 26 71 75 6f 74 3b 2e 2e 2e | .tagged.union.in.switch"... |
| 37b40 | 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f | ...All.1.tests.passed..</code></ |
| 37b60 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 69 6f 6e 73 20 63 61 6e | pre>........<p>.......Unions.can |
| 37b80 | 20 62 65 20 6d 61 64 65 20 74 6f 20 69 6e 66 65 72 20 74 68 65 20 65 6e 75 6d 20 74 61 67 20 74 | .be.made.to.infer.the.enum.tag.t |
| 37ba0 | 79 70 65 2e 0a 20 20 20 20 20 20 46 75 72 74 68 65 72 2c 20 75 6e 69 6f 6e 73 20 63 61 6e 20 68 | ype........Further,.unions.can.h |
| 37bc0 | 61 76 65 20 6d 65 74 68 6f 64 73 20 6a 75 73 74 20 6c 69 6b 65 20 73 74 72 75 63 74 73 20 61 6e | ave.methods.just.like.structs.an |
| 37be0 | 64 20 65 6e 75 6d 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | d.enums........</p>.......<p.cla |
| 37c00 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 37c20 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 37c40 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.std.=.<span.class |
| 37c60 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@import</span>(<s |
| 37c80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 | pan.class="tok-str">"std&qu |
| 37ca0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ot;</span>);.<span.class="tok-kw |
| 37cc0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 | ">const</span>.expect.=.std.test |
| 37ce0 | 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ing.expect;..<span.class="tok-kw |
| 37d00 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 61 72 69 61 6e 74 20 3d 20 3c 73 70 61 6e 20 63 | ">const</span>.Variant.=.<span.c |
| 37d20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | lass="tok-kw">union</span>(<span |
| 37d40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 | .class="tok-kw">enum</span>).{.. |
| 37d60 | 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | ...int:.<span.class="tok-type">i |
| 37d80 | 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 6f 6f 6c 65 61 6e 3a 20 3c 73 70 61 6e 20 63 6c | 32</span>,.....boolean:.<span.cl |
| 37da0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 | ass="tok-type">bool</span>,..... |
| 37dc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 6f | .<span.class="tok-comment">//.vo |
| 37de0 | 69 64 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 77 68 65 6e 20 69 6e 66 65 72 72 69 6e 67 | id.can.be.omitted.when.inferring |
| 37e00 | 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 6f 6e 65 2c | .enum.tag.type.</span>.....none, |
| 37e20 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | ......<span.class="tok-kw">fn</s |
| 37e40 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 72 75 74 68 79 | pan>.<span.class="tok-fn">truthy |
| 37e60 | 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 56 61 72 69 61 6e 74 29 20 3c 73 70 61 6e 20 63 6c 61 | </span>(self:.Variant).<span.cla |
| 37e80 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ss="tok-type">bool</span>.{..... |
| 37ea0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | ....<span.class="tok-kw">return< |
| 37ec0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 | /span>.<span.class="tok-kw">swit |
| 37ee0 | 63 68 3c 2f 73 70 61 6e 3e 20 28 73 65 6c 66 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 | ch</span>.(self).{.............V |
| 37f00 | 61 72 69 61 6e 74 2e 69 6e 74 20 3d 26 67 74 3b 20 7c 78 5f 69 6e 74 7c 20 78 5f 69 6e 74 20 21 | ariant.int.=>.|x_int|.x_int.! |
| 37f20 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 | =.<span.class="tok-number">0</sp |
| 37f40 | 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 2e 62 6f 6f 6c 65 61 6e | an>,.............Variant.boolean |
| 37f60 | 20 3d 26 67 74 3b 20 7c 78 5f 62 6f 6f 6c 7c 20 78 5f 62 6f 6f 6c 2c 0a 20 20 20 20 20 20 20 20 | .=>.|x_bool|.x_bool,......... |
| 37f80 | 20 20 20 20 56 61 72 69 61 6e 74 2e 6e 6f 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 | ....Variant.none.=>.<span.cla |
| 37fa0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | ss="tok-null">false</span>,..... |
| 37fc0 | 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ....};.....}.};..<span.class="to |
| 37fe0 | 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | k-kw">test</span>.<span.class="t |
| 38000 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 69 6f 6e 20 6d 65 74 68 6f 64 26 71 75 6f 74 3b | ok-str">"union.method" |
| 38020 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| 38040 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 31 20 3d 20 56 61 72 69 61 6e 74 7b 20 2e 69 6e 74 | w">var</span>.v1.=.Variant{..int |
| 38060 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | .=.<span.class="tok-number">1</s |
| 38080 | 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.};.....<span.class="tok-kw" |
| 380a0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 32 20 3d 20 56 61 72 69 61 6e 74 7b 20 2e 62 6f 6f 6c 65 | >var</span>.v2.=.Variant{..boole |
| 380c0 | 61 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 | an.=.<span.class="tok-null">fals |
| 380e0 | 65 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | e</span>.};......<span.class="to |
| 38100 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 31 2e 74 72 75 74 68 | k-kw">try</span>.expect(v1.truth |
| 38120 | 79 28 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | y());.....<span.class="tok-kw">t |
| 38140 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 76 32 2e 74 72 75 74 68 79 28 29 29 3b 0a | ry</span>.expect(!v2.truthy());. |
| 38160 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 38180 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 | shell">$.zig.test.test.zig.Test. |
| 381a0 | 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 75 6e 69 6f 6e 20 6d 65 74 68 6f 64 26 71 75 | [1/1].test."union.method&qu |
| 381c0 | 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 | ot;......All.1.tests.passed..</c |
| 381e0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 | ode></pre>........<p>.......<a.h |
| 38200 | 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 61 3e 20 63 61 6e 20 | ref="#tagName">@tagName</a>.can. |
| 38220 | 62 65 20 75 73 65 64 20 74 6f 20 72 65 74 75 72 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 63 6f | be.used.to.return.a.<a.href="#co |
| 38240 | 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 | mptime">comptime</a>.......<code |
| 38260 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .class="zig">[]<span.class="tok- |
| 38280 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | kw">const</span>.<span.class="to |
| 382a0 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 65 20 72 | k-type">u8</span></code>.value.r |
| 382c0 | 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 3a 0a 20 20 20 20 | epresenting.the.field.name:..... |
| 382e0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | ..</p>.......<p.class="file">tes |
| 38300 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 38320 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 38340 | 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | >.std.=.<span.class="tok-builtin |
| 38360 | 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">@import</span>(<span.class="to |
| 38380 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a | k-str">"std"</span>);. |
| 383a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 383c0 | 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a | >.expect.=.std.testing.expect;.. |
| 383e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 38400 | 3e 20 53 6d 61 6c 6c 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.Small2.=.<span.class="tok-kw"> |
| 38420 | 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | union</span>(<span.class="tok-kw |
| 38440 | 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c | ">enum</span>).{.....a:.<span.cl |
| 38460 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 | ass="tok-type">i32</span>,.....b |
| 38480 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 | :.<span.class="tok-type">bool</s |
| 384a0 | 70 61 6e 3e 2c 0a 20 20 20 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | pan>,.....c:.<span.class="tok-ty |
| 384c0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pe">u8</span>,.};.<span.class="t |
| 384e0 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| 38500 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 | tok-str">"@tagName"</s |
| 38520 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 38540 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 | try</span>.expect(std.mem.eql(<s |
| 38560 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 | pan.class="tok-type">u8</span>,. |
| 38580 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 | <span.class="tok-builtin">@tagNa |
| 385a0 | 6d 65 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 32 2e 61 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | me</span>(Small2.a),.<span.class |
| 385c0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | ="tok-str">"a"</span>) |
| 385e0 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 38600 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 | s="shell">$.zig.test.test.zig.Te |
| 38620 | 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f | st.[1/1].test."@tagName&quo |
| 38640 | 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f | t;......All.1.tests.passed..</co |
| 38660 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | de></pre>................<h2.id= |
| 38680 | 22 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 | "extern-union"><a.href="#toc-ext |
| 386a0 | 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 | ern-union">extern.union</a>.<a.c |
| 386c0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e | lass="hdr".href="#extern-union"> |
| 386e0 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 | ..</a></h2>........<p>.......An. |
| 38700 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 38720 | 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">extern</span>.<span.class |
| 38740 | 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 | ="tok-kw">union</span></code>.ha |
| 38760 | 73 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 | s.memory.layout.guaranteed.to.be |
| 38780 | 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 74 61 72 67 65 | .compatible.with.......the.targe |
| 387a0 | 74 20 43 20 41 42 49 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | t.C.ABI........</p>.......<p>See |
| 387c0 | 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 74 | .also:</p><ul>.<li><a.href="#ext |
| 387e0 | 65 72 6e 2d 73 74 72 75 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c | ern-struct">extern.struct</a></l |
| 38800 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | i>.</ul>................<h2.id=" |
| 38820 | 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 61 63 6b | packed-union"><a.href="#toc-pack |
| 38840 | 65 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c | ed-union">packed.union</a>.<a.cl |
| 38860 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e c2 | ass="hdr".href="#packed-union">. |
| 38880 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 20 3c 63 6f 64 65 20 63 6c 61 | .</a></h2>........<p>A.<code.cla |
| 388a0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 | ss="zig"><span.class="tok-kw">pa |
| 388c0 | 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | cked</span>.<span.class="tok-kw" |
| 388e0 | 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 77 65 6c 6c 2d 64 65 | >union</span></code>.has.well-de |
| 38900 | 66 69 6e 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 61 6e 64 20 69 73 20 65 6c | fined.in-memory.layout.and.is.el |
| 38920 | 69 67 69 62 6c 65 0a 20 20 20 20 20 20 74 6f 20 62 65 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d | igible.......to.be.in.a.<a.href= |
| 38940 | 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f | "#packed-struct">packed.struct</ |
| 38960 | 61 3e 2e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 6e 6f 6e 79 6d | a>................<h2.id="Anonym |
| 38980 | 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ous-Union-Literals"><a.href="#to |
| 389a0 | 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e | c-Anonymous-Union-Literals">Anon |
| 389c0 | 79 6d 6f 75 73 20 55 6e 69 6f 6e 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | ymous.Union.Literals</a>.<a.clas |
| 389e0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c | s="hdr".href="#Anonymous-Union-L |
| 38a00 | 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c | iterals">..</a></h2>........<p>< |
| 38a20 | 61 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 61 | a.href="#Anonymous-Struct-Litera |
| 38a40 | 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 74 72 75 63 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 | ls">Anonymous.Struct.Literals</a |
| 38a60 | 3e 20 73 79 6e 74 61 78 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 69 6e 69 74 69 61 6c 69 | >.syntax.can.be.used.to.initiali |
| 38a80 | 7a 65 20 75 6e 69 6f 6e 73 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 66 79 69 6e 67 0a 20 20 20 | ze.unions.without.specifying.... |
| 38aa0 | 20 20 20 74 68 65 20 74 79 70 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | ...the.type:</p>.......<p.class= |
| 38ac0 | 22 66 69 6c 65 22 3e 61 6e 6f 6e 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | "file">anon_union.zig</p><pre><c |
| 38ae0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 38b00 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.std.=.<span.cl |
| 38b20 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 38b40 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 38b60 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | "</span>);.<span.class="tok |
| 38b80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 | -kw">const</span>.expect.=.std.t |
| 38ba0 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | esting.expect;..<span.class="tok |
| 38bc0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e | -kw">const</span>.Number.=.<span |
| 38be0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .class="tok-kw">union</span>.{.. |
| 38c00 | 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | ...int:.<span.class="tok-type">i |
| 38c20 | 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | 32</span>,.....float:.<span.clas |
| 38c40 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 | s="tok-type">f64</span>,.};..<sp |
| 38c60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 38c80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d | pan.class="tok-str">"anonym |
| 38ca0 | 6f 75 73 20 75 6e 69 6f 6e 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 3c 2f | ous.union.literal.syntax"</ |
| 38cc0 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.{.....<span.class="tok-kw" |
| 38ce0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 4e 75 6d 62 65 72 20 3d 20 2e 7b 2e 69 6e 74 20 3d | >var</span>.i:.Number.=..{.int.= |
| 38d00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 | .<span.class="tok-number">42</sp |
| 38d20 | 61 6e 3e 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>};.....<span.class="tok-kw">v |
| 38d40 | 61 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 6d 61 6b 65 4e 75 6d 62 65 72 28 29 3b 0a 20 20 20 20 | ar</span>.f.=.makeNumber();..... |
| 38d60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 38d80 | 65 78 70 65 63 74 28 69 2e 69 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | expect(i.int.==.<span.class="tok |
| 38da0 | 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -number">42</span>);.....<span.c |
| 38dc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 38de0 | 66 2e 66 6c 6f 61 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | f.float.==.<span.class="tok-numb |
| 38e00 | 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | er">12.34</span>);.}..<span.clas |
| 38e20 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | s="tok-kw">fn</span>.<span.class |
| 38e40 | 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 6b 65 4e 75 6d 62 65 72 3c 2f 73 70 61 6e 3e 28 29 20 4e 75 | ="tok-fn">makeNumber</span>().Nu |
| 38e60 | 6d 62 65 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | mber.{.....<span.class="tok-kw"> |
| 38e80 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 7b 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 | return</span>..{.float.=.<span.c |
| 38ea0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 7d 3b | lass="tok-number">12.34</span>}; |
| 38ec0 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 38ee0 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 6e 6f 6e 5f 75 6e 69 6f 6e 2e 7a 69 | "shell">$.zig.test.anon_union.zi |
| 38f00 | 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 | g.Test.[1/1].test."anonymou |
| 38f20 | 73 20 75 6e 69 6f 6e 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 2e 2e 2e 20 | s.union.literal.syntax".... |
| 38f40 | 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | ..All.1.tests.passed..</code></p |
| 38f60 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 | re>........................<h1.i |
| 38f80 | 64 3d 22 6f 70 61 71 75 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6f 70 61 71 75 65 22 | d="opaque"><a.href="#toc-opaque" |
| 38fa0 | 3e 6f 70 61 71 75 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | >opaque</a>.<a.class="hdr".href= |
| 38fc0 | 22 23 6f 70 61 71 75 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | "#opaque">..</a></h1>........<p> |
| 38fe0 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | .......<code.class="zig"><span.c |
| 39000 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f | lass="tok-kw">opaque</span>.{}</ |
| 39020 | 63 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 20 61 20 6e 65 77 20 74 79 70 65 20 77 69 74 68 20 61 | code>.declares.a.new.type.with.a |
| 39040 | 6e 20 75 6e 6b 6e 6f 77 6e 20 28 62 75 74 20 6e 6f 6e 2d 7a 65 72 6f 29 20 73 69 7a 65 20 61 6e | n.unknown.(but.non-zero).size.an |
| 39060 | 64 20 61 6c 69 67 6e 6d 65 6e 74 2e 0a 20 20 20 20 20 20 49 74 20 63 61 6e 20 63 6f 6e 74 61 69 | d.alignment........It.can.contai |
| 39080 | 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 61 20 68 72 | n.declarations.the.same.as.<a.hr |
| 390a0 | 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 | ef="#struct">structs</a>,.<a.hre |
| 390c0 | 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 73 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 61 6e 64 | f="#union">unions</a>,.......and |
| 390e0 | 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2e 0a 20 20 20 20 | .<a.href="#enum">enums</a>...... |
| 39100 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 | ..</p>.......<p>.......This.is.t |
| 39120 | 79 70 69 63 61 6c 6c 79 20 75 73 65 64 20 66 6f 72 20 74 79 70 65 20 73 61 66 65 74 79 20 77 68 | ypically.used.for.type.safety.wh |
| 39140 | 65 6e 20 69 6e 74 65 72 61 63 74 69 6e 67 20 77 69 74 68 20 43 20 63 6f 64 65 20 74 68 61 74 20 | en.interacting.with.C.code.that. |
| 39160 | 64 6f 65 73 20 6e 6f 74 20 65 78 70 6f 73 65 20 73 74 72 75 63 74 20 64 65 74 61 69 6c 73 2e 0a | does.not.expose.struct.details.. |
| 39180 | 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ......Example:.......</p>....... |
| 391a0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 391c0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 391e0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 44 65 72 70 20 3d 20 3c 73 70 61 | tok-kw">const</span>.Derp.=.<spa |
| 39200 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-kw">opaque</span>.{ |
| 39220 | 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | };.<span.class="tok-kw">const</s |
| 39240 | 70 61 6e 3e 20 57 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.Wat.=.<span.class="tok-kw"> |
| 39260 | 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | opaque</span>.{};..<span.class=" |
| 39280 | 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">extern</span>.<span.clas |
| 392a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | s="tok-kw">fn</span>.<span.class |
| 392c0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 64 3a 20 2a 44 65 72 70 29 20 3c | ="tok-fn">bar</span>(d:.*Derp).< |
| 392e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e | span.class="tok-type">void</span |
| 39300 | 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | >;.<span.class="tok-kw">fn</span |
| 39320 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e | >.<span.class="tok-fn">foo</span |
| 39340 | 3e 28 77 3a 20 2a 57 61 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >(w:.*Wat).<span.class="tok-kw"> |
| 39360 | 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 43 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | callconv</span>(.C).<span.class= |
| 39380 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 62 61 72 | "tok-type">void</span>.{.....bar |
| 393a0 | 28 77 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | (w);.}..<span.class="tok-kw">tes |
| 393c0 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>.<span.class="tok-str">& |
| 393e0 | 71 75 6f 74 3b 63 61 6c 6c 20 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | quot;call.foo"</span>.{.... |
| 39400 | 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 | .foo(<span.class="tok-null">unde |
| 39420 | 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | fined</span>);.}</code></pre><pr |
| 39440 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 39460 | 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 | .test.zig.<span.class="t0_1">./d |
| 39480 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c | ocgen_tmp/test.zig:6:9:.</span>< |
| 394a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e | span.class="t31_1">error:.</span |
| 394c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 | ><span.class="t0_1">expected.typ |
| 394e0 | 65 20 27 2a 44 65 72 70 27 2c 20 66 6f 75 6e 64 20 27 2a 57 61 74 27 3c 2f 73 70 61 6e 3e 0a 20 | e.'*Derp',.found.'*Wat'</span>.. |
| 39500 | 20 20 20 62 61 72 28 77 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...bar(w);.........<span.class=" |
| 39520 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | t32_1">^</span>.<span.class="t0_ |
| 39540 | 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f | 1">./docgen_tmp/test.zig:6:9:.</ |
| 39560 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c | span><span.class="t36_1">note:.< |
| 39580 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 70 6f 69 6e 74 65 72 | /span><span.class="t0_1">pointer |
| 395a0 | 20 74 79 70 65 20 63 68 69 6c 64 20 27 57 61 74 27 20 63 61 6e 6e 6f 74 20 63 61 73 74 20 69 6e | .type.child.'Wat'.cannot.cast.in |
| 395c0 | 74 6f 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 63 68 69 6c 64 20 27 44 65 72 70 27 3c 2f 73 70 | to.pointer.type.child.'Derp'</sp |
| 395e0 | 61 6e 3e 0a 20 20 20 20 62 61 72 28 77 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | an>.....bar(w);.........<span.cl |
| 39600 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ass="t32_1">^</span>.</code></pr |
| 39620 | 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 62 6c 6f 63 6b 73 | e>................<h1.id="blocks |
| 39640 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 73 3c 2f | "><a.href="#toc-blocks">blocks</ |
| 39660 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 6c 6f 63 6b 73 22 | a>.<a.class="hdr".href="#blocks" |
| 39680 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 6c | >..</a></h1>........<p>.......Bl |
| 396a0 | 6f 63 6b 73 20 61 72 65 20 75 73 65 64 20 74 6f 20 6c 69 6d 69 74 20 74 68 65 20 73 63 6f 70 65 | ocks.are.used.to.limit.the.scope |
| 396c0 | 20 6f 66 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 3a 0a 20 20 20 20 20 | .of.variable.declarations:...... |
| 396e0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | .</p>.......<p.class="file">test |
| 39700 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 39720 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">test</span>. |
| 39740 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 63 63 65 | <span.class="tok-str">"acce |
| 39760 | 73 73 20 76 61 72 69 61 62 6c 65 20 61 66 74 65 72 20 62 6c 6f 63 6b 20 73 63 6f 70 65 26 71 75 | ss.variable.after.block.scope&qu |
| 39780 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ot;</span>.{.....{.........<span |
| 397a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 | .class="tok-kw">var</span>.x:.<s |
| 397c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| 397e0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 | =.<span.class="tok-number">1</sp |
| 39800 | 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>;.....}.....x.+=.<span.class= |
| 39820 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | "tok-number">1</span>;.}</code>< |
| 39840 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 39860 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig.test.test.zig.<span.class="t |
| 39880 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 35 3a 20 | 0_1">./docgen_tmp/test.zig:5:5:. |
| 398a0 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 | </span><span.class="t31_1">error |
| 398c0 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 75 73 65 20 | :.</span><span.class="t0_1">use. |
| 398e0 | 6f 66 20 75 6e 64 65 63 6c 61 72 65 64 20 69 64 65 6e 74 69 66 69 65 72 20 27 78 27 3c 2f 73 70 | of.undeclared.identifier.'x'</sp |
| 39900 | 61 6e 3e 0a 20 20 20 20 78 20 2b 3d 20 31 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.....x.+=.1;.....<span.class= |
| 39920 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | "t32_1">^</span>.</code></pre>.. |
| 39940 | 20 20 20 20 20 20 3c 70 3e 42 6c 6f 63 6b 73 20 61 72 65 20 65 78 70 72 65 73 73 69 6f 6e 73 2e | ......<p>Blocks.are.expressions. |
| 39960 | 20 57 68 65 6e 20 6c 61 62 65 6c 65 64 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .When.labeled,.<code.class="zig" |
| 39980 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 | ><span.class="tok-kw">break</spa |
| 399a0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 72 | n></code>.can.be.used.......to.r |
| 399c0 | 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 62 6c 6f 63 6b 3a 0a 20 20 | eturn.a.value.from.the.block:... |
| 399e0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| 39a00 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 39a20 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 39a40 | 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>.std.=.<span.class="tok-built |
| 39a60 | 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in">@import</span>(<span.class=" |
| 39a80 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | tok-str">"std"</span>) |
| 39aa0 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ;.<span.class="tok-kw">const</sp |
| 39ac0 | 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b | an>.expect.=.std.testing.expect; |
| 39ae0 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | ..<span.class="tok-kw">test</spa |
| 39b00 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6c | n>.<span.class="tok-str">"l |
| 39b20 | 61 62 65 6c 65 64 20 62 72 65 61 6b 20 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f 63 6b 20 | abeled.break.from.labeled.block. |
| 39b40 | 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | expression"</span>.{.....<s |
| 39b60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a | pan.class="tok-kw">var</span>.y: |
| 39b80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 | .<span.class="tok-type">i32</spa |
| 39ba0 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | n>.=.<span.class="tok-number">12 |
| 39bc0 | 33 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 3</span>;......<span.class="tok- |
| 39be0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 | kw">const</span>.x.=.blk:.{..... |
| 39c00 | 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ....y.+=.<span.class="tok-number |
| 39c20 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">1</span>;.........<span.class= |
| 39c40 | 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 79 3b 0a 20 20 | "tok-kw">break</span>.:blk.y;... |
| 39c60 | 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | ..};.....<span.class="tok-kw">tr |
| 39c80 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | y</span>.expect(x.==.<span.class |
| 39ca0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c | ="tok-number">124</span>);.....< |
| 39cc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 39ce0 | 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | xpect(y.==.<span.class="tok-numb |
| 39d00 | 65 72 22 3e 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | er">124</span>);.}</code></pre>< |
| 39d20 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| 39d40 | 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f | st.test.zig.Test.[1/1].test.&quo |
| 39d60 | 74 3b 6c 61 62 65 6c 65 64 20 62 72 65 61 6b 20 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f | t;labeled.break.from.labeled.blo |
| 39d80 | 63 6b 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 | ck.expression"......All.1.t |
| 39da0 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 39dc0 | 20 20 3c 70 3e 48 65 72 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 6c 6b | ..<p>Here,.<code.class="zig">blk |
| 39de0 | 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 61 6e 79 20 6e 61 6d 65 2e 3c 2f 70 3e 0a 20 20 20 | </code>.can.be.any.name.</p>.... |
| 39e00 | 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 | ...<p>See.also:</p><ul>.<li><a.h |
| 39e20 | 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 | ref="#Labeled-while">Labeled.whi |
| 39e40 | 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 | le</a></li>.<li><a.href="#Labele |
| 39e60 | 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | d-for">Labeled.for</a></li>.</ul |
| 39e80 | 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 68 61 64 6f 77 69 6e 67 22 3e 3c 61 20 | >.........<h2.id="Shadowing"><a. |
| 39ea0 | 68 72 65 66 3d 22 23 74 6f 63 2d 53 68 61 64 6f 77 69 6e 67 22 3e 53 68 61 64 6f 77 69 6e 67 3c | href="#toc-Shadowing">Shadowing< |
| 39ec0 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 68 61 64 6f 77 | /a>.<a.class="hdr".href="#Shadow |
| 39ee0 | 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 74 20 69 73 | ing">..</a></h2>........<p>It.is |
| 39f00 | 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 | .never.allowed.for.an.identifier |
| 39f20 | 20 74 6f 20 22 68 69 64 65 22 20 61 6e 6f 74 68 65 72 20 6f 6e 65 20 62 79 20 75 73 69 6e 67 20 | .to."hide".another.one.by.using. |
| 39f40 | 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | the.same.name:</p>.......<p.clas |
| 39f60 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 39f80 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 39fa0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >const</span>.pi.=.<span.class=" |
| 39fc0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 | tok-number">3.14</span>;..<span. |
| 39fe0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">test</span>.<span |
| 3a000 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 73 69 64 65 20 74 65 | .class="tok-str">"inside.te |
| 3a020 | 73 74 20 62 6c 6f 63 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | st.block"</span>.{.....<spa |
| 3a040 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 65 74 27 73 20 65 | n.class="tok-comment">//.Let's.e |
| 3a060 | 76 65 6e 20 67 6f 20 69 6e 73 69 64 65 20 61 6e 6f 74 68 65 72 20 62 6c 6f 63 6b 3c 2f 73 70 61 | ven.go.inside.another.block</spa |
| 3a080 | 6e 3e 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.....{.........<span.class="to |
| 3a0a0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-kw">var</span>.pi:.<span.class |
| 3a0c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">i32</span>.=.<span.c |
| 3a0e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 | lass="tok-number">1234</span>;.. |
| 3a100 | 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ...}.}</code></pre><pre><code.cl |
| 3a120 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 3a140 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f | <span.class="t0_1">./docgen_tmp/ |
| 3a160 | 74 65 73 74 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | test.zig:6:9:.</span><span.class |
| 3a180 | 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ="t31_1">error:.</span><span.cla |
| 3a1a0 | 73 73 3d 22 74 30 5f 31 22 3e 72 65 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 27 70 69 27 3c 2f | ss="t0_1">redefinition.of.'pi'</ |
| 3a1c0 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 76 61 72 20 70 69 3a 20 69 33 32 20 3d 20 31 32 33 34 | span>.........var.pi:.i32.=.1234 |
| 3a1e0 | 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ;.........<span.class="t32_1">^< |
| 3a200 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 | /span>.<span.class="t0_1">./docg |
| 3a220 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 3a 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | en_tmp/test.zig:1:1:.</span><spa |
| 3a240 | 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | n.class="t36_1">note:.</span><sp |
| 3a260 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 70 72 65 76 69 6f 75 73 20 64 65 66 69 6e 69 74 | an.class="t0_1">previous.definit |
| 3a280 | 69 6f 6e 20 69 73 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 63 6f 6e 73 74 20 70 69 20 3d 20 33 2e | ion.is.here</span>.const.pi.=.3. |
| 3a2a0 | 31 34 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | 14;.<span.class="t32_1">^</span> |
| 3a2c0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | .</code></pre>........<p>....... |
| 3a2e0 | 42 65 63 61 75 73 65 20 6f 66 20 74 68 69 73 2c 20 77 68 65 6e 20 79 6f 75 20 72 65 61 64 20 5a | Because.of.this,.when.you.read.Z |
| 3a300 | 69 67 20 63 6f 64 65 20 79 6f 75 20 63 61 6e 20 72 65 6c 79 20 6f 6e 20 61 6e 20 69 64 65 6e 74 | ig.code.you.can.rely.on.an.ident |
| 3a320 | 69 66 69 65 72 20 61 6c 77 61 79 73 20 6d 65 61 6e 69 6e 67 20 74 68 65 20 73 61 6d 65 20 74 68 | ifier.always.meaning.the.same.th |
| 3a340 | 69 6e 67 2c 0a 20 20 20 20 20 20 77 69 74 68 69 6e 20 74 68 65 20 73 63 6f 70 65 20 69 74 20 69 | ing,.......within.the.scope.it.i |
| 3a360 | 73 20 64 65 66 69 6e 65 64 2e 20 4e 6f 74 65 20 74 68 61 74 20 79 6f 75 20 63 61 6e 2c 20 68 6f | s.defined..Note.that.you.can,.ho |
| 3a380 | 77 65 76 65 72 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 20 69 66 20 74 68 65 20 73 | wever.use.the.same.name.if.the.s |
| 3a3a0 | 63 6f 70 65 73 20 61 72 65 20 73 65 70 61 72 61 74 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | copes.are.separate:.......</p>.. |
| 3a3c0 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 3a3e0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 3a400 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">test</span>.<span.c |
| 3a420 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 65 70 61 72 61 74 65 20 73 63 | lass="tok-str">"separate.sc |
| 3a440 | 6f 70 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 | opes"</span>.{.....{....... |
| 3a460 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| 3a480 | 61 6e 3e 20 70 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | an>.pi.=.<span.class="tok-number |
| 3a4a0 | 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 7b 0a 20 20 20 20 20 | ">3.14</span>;.....}.....{...... |
| 3a4c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 | ...<span.class="tok-kw">var</spa |
| 3a4e0 | 6e 3e 20 70 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f | n>.pi:.<span.class="tok-type">bo |
| 3a500 | 6f 6c 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | ol</span>.=.<span.class="tok-nul |
| 3a520 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | l">true</span>;.....}.}</code></ |
| 3a540 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 3a560 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 | ig.test.test.zig.Test.[1/1].test |
| 3a580 | 20 26 71 75 6f 74 3b 73 65 70 61 72 61 74 65 20 73 63 6f 70 65 73 26 71 75 6f 74 3b 2e 2e 2e 20 | ."separate.scopes".... |
| 3a5a0 | 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | ..All.1.tests.passed..</code></p |
| 3a5c0 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 | re>.......................<h1.id |
| 3a5e0 | 3d 22 73 77 69 74 63 68 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 77 69 74 63 68 22 3e | ="switch"><a.href="#toc-switch"> |
| 3a600 | 73 77 69 74 63 68 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | switch</a>.<a.class="hdr".href=" |
| 3a620 | 23 73 77 69 74 63 68 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 | #switch">..</a></h1>........<p.c |
| 3a640 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 77 69 74 63 68 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | lass="file">switch.zig</p><pre>< |
| 3a660 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 3a680 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.std.=.<span.c |
| 3a6a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e | lass="tok-builtin">@import</span |
| 3a6c0 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 | >(<span.class="tok-str">"st |
| 3a6e0 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | d"</span>);.<span.class="to |
| 3a700 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e | k-kw">const</span>.expect.=.std. |
| 3a720 | 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | testing.expect;..<span.class="to |
| 3a740 | 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | k-kw">test</span>.<span.class="t |
| 3a760 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 73 69 6d 70 6c 65 26 71 75 6f 74 | ok-str">"switch.simple" |
| 3a780 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;</span>.{.....<span.class="tok- |
| 3a7a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | kw">const</span>.a:.<span.class= |
| 3a7c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | "tok-type">u64</span>.=.<span.cl |
| 3a7e0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | ass="tok-number">10</span>;..... |
| 3a800 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 3a820 | 3e 20 7a 7a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 | >.zz:.<span.class="tok-type">u64 |
| 3a840 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | </span>.=.<span.class="tok-numbe |
| 3a860 | 72 22 3e 31 30 33 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r">103</span>;......<span.class= |
| 3a880 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6c 6c 20 62 72 61 6e 63 68 65 73 20 6f 66 | "tok-comment">//.All.branches.of |
| 3a8a0 | 20 61 20 73 77 69 74 63 68 20 65 78 70 72 65 73 73 69 6f 6e 20 6d 75 73 74 20 62 65 20 61 62 6c | .a.switch.expression.must.be.abl |
| 3a8c0 | 65 20 74 6f 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | e.to.be.coerced.to.a</span>..... |
| 3a8e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6d | <span.class="tok-comment">//.com |
| 3a900 | 6d 6f 6e 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mon.type.</span>.....<span.class |
| 3a920 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | ="tok-comment">//</span>.....<sp |
| 3a940 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 72 61 6e 63 68 | an.class="tok-comment">//.Branch |
| 3a960 | 65 73 20 63 61 6e 6e 6f 74 20 66 61 6c 6c 74 68 72 6f 75 67 68 2e 20 49 66 20 66 61 6c 6c 74 68 | es.cannot.fallthrough..If.fallth |
| 3a980 | 72 6f 75 67 68 20 62 65 68 61 76 69 6f 72 20 69 73 20 64 65 73 69 72 65 64 2c 20 63 6f 6d 62 69 | rough.behavior.is.desired,.combi |
| 3a9a0 | 6e 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | ne</span>.....<span.class="tok-c |
| 3a9c0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 63 61 73 65 73 20 61 6e 64 20 75 73 65 20 61 6e 20 | omment">//.the.cases.and.use.an. |
| 3a9e0 | 69 66 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | if.</span>.....<span.class="tok- |
| 3aa00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.b.=.<span.class |
| 3aa20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7b 0a 20 20 | ="tok-kw">switch</span>.(a).{... |
| 3aa40 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ......<span.class="tok-comment"> |
| 3aa60 | 2f 2f 20 4d 75 6c 74 69 70 6c 65 20 63 61 73 65 73 20 63 61 6e 20 62 65 20 63 6f 6d 62 69 6e 65 | //.Multiple.cases.can.be.combine |
| 3aa80 | 64 20 76 69 61 20 61 20 27 2c 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | d.via.a.','</span>.........<span |
| 3aaa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">1</span>,.<s |
| 3aac0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c | pan.class="tok-number">2</span>, |
| 3aae0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 | .<span.class="tok-number">3</spa |
| 3ab00 | 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | n>.=>.<span.class="tok-number |
| 3ab20 | 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">0</span>,..........<span.class |
| 3ab40 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 52 61 6e 67 65 73 20 63 61 6e 20 62 65 20 | ="tok-comment">//.Ranges.can.be. |
| 3ab60 | 73 70 65 63 69 66 69 65 64 20 75 73 69 6e 67 20 74 68 65 20 2e 2e 2e 20 73 79 6e 74 61 78 2e 20 | specified.using.the.....syntax.. |
| 3ab80 | 54 68 65 73 65 20 61 72 65 20 69 6e 63 6c 75 73 69 76 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | These.are.inclusive</span>...... |
| 3aba0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ...<span.class="tok-comment">//. |
| 3abc0 | 62 6f 74 68 20 65 6e 64 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | both.ends.</span>.........<span. |
| 3abe0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 | class="tok-number">5</span>...<s |
| 3ac00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e | pan.class="tok-number">100</span |
| 3ac20 | 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | >.=>.<span.class="tok-number" |
| 3ac40 | 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >1</span>,..........<span.class= |
| 3ac60 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 72 61 6e 63 68 65 73 20 63 61 6e 20 62 65 | "tok-comment">//.Branches.can.be |
| 3ac80 | 20 61 72 62 69 74 72 61 72 69 6c 79 20 63 6f 6d 70 6c 65 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | .arbitrarily.complex.</span>.... |
| 3aca0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | .....<span.class="tok-number">10 |
| 3acc0 | 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | 1</span>.=>.blk:.{........... |
| 3ace0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| 3ad00 | 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 | an>.c:.<span.class="tok-type">u6 |
| 3ad20 | 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | 4</span>.=.<span.class="tok-numb |
| 3ad40 | 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | er">5</span>;.............<span. |
| 3ad60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b | class="tok-kw">break</span>.:blk |
| 3ad80 | 20 63 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | .c.*.<span.class="tok-number">2< |
| 3ada0 | 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | /span>.+.<span.class="tok-number |
| 3adc0 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 0a 20 20 20 20 20 20 20 20 | ">1</span>;.........},.......... |
| 3ade0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 | <span.class="tok-comment">//.Swi |
| 3ae00 | 74 63 68 69 6e 67 20 6f 6e 20 61 72 62 69 74 72 61 72 79 20 65 78 70 72 65 73 73 69 6f 6e 73 20 | tching.on.arbitrary.expressions. |
| 3ae20 | 69 73 20 61 6c 6c 6f 77 65 64 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 3c 2f 73 70 61 6e 3e | is.allowed.as.long.as.the</span> |
| 3ae40 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | .........<span.class="tok-commen |
| 3ae60 | 74 22 3e 2f 2f 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d | t">//.expression.is.known.at.com |
| 3ae80 | 70 69 6c 65 2d 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7a 7a 20 3d 26 67 | pile-time.</span>.........zz.=&g |
| 3aea0 | 74 3b 20 7a 7a 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t;.zz,.........<span.class="tok- |
| 3aec0 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 | kw">comptime</span>.blk:.{...... |
| 3aee0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | .......<span.class="tok-kw">cons |
| 3af00 | 74 3c 2f 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | t</span>.d:.<span.class="tok-typ |
| 3af20 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e">u32</span>.=.<span.class="tok |
| 3af40 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | -number">5</span>;.............< |
| 3af60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 3af80 | 20 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | .e:.<span.class="tok-type">u32</ |
| 3afa0 | 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | span>.=.<span.class="tok-number" |
| 3afc0 | 3e 31 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | >100</span>;.............<span.c |
| 3afe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 | lass="tok-kw">break</span>.:blk. |
| 3b000 | 64 20 2b 20 65 3b 0a 20 20 20 20 20 20 20 20 7d 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 | d.+.e;.........}.=>.<span.cla |
| 3b020 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 37 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 | ss="tok-number">107</span>,..... |
| 3b040 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | .....<span.class="tok-comment">/ |
| 3b060 | 2f 20 54 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 63 61 74 63 68 65 73 20 65 76 65 72 79 74 | /.The.else.branch.catches.everyt |
| 3b080 | 68 69 6e 67 20 6e 6f 74 20 61 6c 72 65 61 64 79 20 63 61 70 74 75 72 65 64 2e 3c 2f 73 70 61 6e | hing.not.already.captured.</span |
| 3b0a0 | 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | >.........<span.class="tok-comme |
| 3b0c0 | 6e 74 22 3e 2f 2f 20 45 6c 73 65 20 62 72 61 6e 63 68 65 73 20 61 72 65 20 6d 61 6e 64 61 74 6f | nt">//.Else.branches.are.mandato |
| 3b0e0 | 72 79 20 75 6e 6c 65 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 72 61 6e 67 65 20 6f 66 20 76 61 | ry.unless.the.entire.range.of.va |
| 3b100 | 6c 75 65 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | lues</span>.........<span.class= |
| 3b120 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 73 20 68 61 6e 64 6c 65 64 2e 3c 2f 73 70 | "tok-comment">//.is.handled.</sp |
| 3b140 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>.........<span.class="tok-kw" |
| 3b160 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >else</span>.=>.<span.class=" |
| 3b180 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 | tok-number">9</span>,.....};.... |
| 3b1a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 3b1c0 | 3e 20 65 78 70 65 63 74 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >.expect(b.==.<span.class="tok-n |
| 3b1e0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">1</span>);.}..<span.class |
| 3b200 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 74 63 68 20 65 78 70 72 65 73 73 | ="tok-comment">//.Switch.express |
| 3b220 | 69 6f 6e 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 6f 75 74 73 69 64 65 20 61 20 66 75 6e 63 74 | ions.can.be.used.outside.a.funct |
| 3b240 | 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ion:</span>.<span.class="tok-kw" |
| 3b260 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 5f 6d 73 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | >const</span>.os_msg.=.<span.cla |
| 3b280 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 73 74 64 2e 54 | ss="tok-kw">switch</span>.(std.T |
| 3b2a0 | 61 72 67 65 74 2e 63 75 72 72 65 6e 74 2e 6f 73 2e 74 61 67 29 20 7b 0a 20 20 20 20 2e 6c 69 6e | arget.current.os.tag).{......lin |
| 3b2c0 | 75 78 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ux.=>.<span.class="tok-str">& |
| 3b2e0 | 71 75 6f 74 3b 77 65 20 66 6f 75 6e 64 20 61 20 6c 69 6e 75 78 20 75 73 65 72 26 71 75 6f 74 3b | quot;we.found.a.linux.user" |
| 3b300 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>,.....<span.class="tok-kw |
| 3b320 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">else</span>.=>.<span.class= |
| 3b340 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 74 20 61 20 6c 69 6e 75 78 20 75 73 65 72 | "tok-str">"not.a.linux.user |
| 3b360 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "</span>,.};..<span.class=" |
| 3b380 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 73 69 64 65 20 61 20 66 75 6e 63 74 69 6f | tok-comment">//.Inside.a.functio |
| 3b3a0 | 6e 2c 20 73 77 69 74 63 68 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6d 70 6c 69 63 69 74 6c 79 20 | n,.switch.statements.implicitly. |
| 3b3c0 | 61 72 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | are.compile-time</span>.<span.cl |
| 3b3e0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 61 6c 75 61 74 65 64 20 69 | ass="tok-comment">//.evaluated.i |
| 3b400 | 66 20 74 68 65 20 74 61 72 67 65 74 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 63 6f 6d 70 69 | f.the.target.expression.is.compi |
| 3b420 | 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | le-time.known.</span>.<span.clas |
| 3b440 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">test</span>.<span.cla |
| 3b460 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 69 6e 73 69 64 65 | ss="tok-str">"switch.inside |
| 3b480 | 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | .function"</span>.{.....<sp |
| 3b4a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">switch</span>. |
| 3b4c0 | 28 73 74 64 2e 54 61 72 67 65 74 2e 63 75 72 72 65 6e 74 2e 6f 73 2e 74 61 67 29 20 7b 0a 20 20 | (std.Target.current.os.tag).{... |
| 3b4e0 | 20 20 20 20 20 20 2e 66 75 63 68 73 69 61 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 | .......fuchsia.=>.{.......... |
| 3b500 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ...<span.class="tok-comment">//. |
| 3b520 | 4f 6e 20 61 6e 20 4f 53 20 6f 74 68 65 72 20 74 68 61 6e 20 66 75 63 68 73 69 61 2c 20 62 6c 6f | On.an.OS.other.than.fuchsia,.blo |
| 3b540 | 63 6b 20 69 73 20 6e 6f 74 20 65 76 65 6e 20 61 6e 61 6c 79 7a 65 64 2c 3c 2f 73 70 61 6e 3e 0a | ck.is.not.even.analyzed,</span>. |
| 3b560 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | ............<span.class="tok-com |
| 3b580 | 6d 65 6e 74 22 3e 2f 2f 20 73 6f 20 74 68 69 73 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 | ment">//.so.this.compile.error.i |
| 3b5a0 | 73 20 6e 6f 74 20 74 72 69 67 67 65 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | s.not.triggered.</span>......... |
| 3b5c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | ....<span.class="tok-comment">// |
| 3b5e0 | 20 4f 6e 20 66 75 63 68 73 69 61 20 74 68 69 73 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 77 | .On.fuchsia.this.compile.error.w |
| 3b600 | 6f 75 6c 64 20 62 65 20 74 72 69 67 67 65 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 | ould.be.triggered.</span>....... |
| 3b620 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | ......<span.class="tok-builtin"> |
| 3b640 | 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | @compileError</span>(<span.class |
| 3b660 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 63 68 73 69 61 20 6e 6f 74 20 73 75 70 | ="tok-str">"fuchsia.not.sup |
| 3b680 | 70 6f 72 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d 2c | ported"</span>);.........}, |
| 3b6a0 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c | .........<span.class="tok-kw">el |
| 3b6c0 | 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 | se</span>.=>.{},.....}.}</cod |
| 3b6e0 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 3b700 | 3e 24 20 7a 69 67 20 74 65 73 74 20 73 77 69 74 63 68 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 32 | >$.zig.test.switch.zig.Test.[1/2 |
| 3b720 | 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 73 69 6d 70 6c 65 26 71 75 6f 74 3b | ].test."switch.simple" |
| 3b740 | 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 | .....Test.[2/2].test."switc |
| 3b760 | 68 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c | h.inside.function"......All |
| 3b780 | 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | .2.tests.passed..</code></pre>.. |
| 3b7a0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ......<p>.......<code.class="zig |
| 3b7c0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 | "><span.class="tok-kw">switch</s |
| 3b7e0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 63 61 70 74 75 | pan></code>.can.be.used.to.captu |
| 3b800 | 72 65 20 74 68 65 20 66 69 65 6c 64 20 76 61 6c 75 65 73 0a 20 20 20 20 20 20 6f 66 20 61 20 3c | re.the.field.values.......of.a.< |
| 3b820 | 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e | a.href="#Tagged-union">Tagged.un |
| 3b840 | 69 6f 6e 3c 2f 61 3e 2e 20 4d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 66 69 | ion</a>..Modifications.to.the.fi |
| 3b860 | 65 6c 64 20 76 61 6c 75 65 73 20 63 61 6e 20 62 65 0a 20 20 20 20 20 20 64 6f 6e 65 20 62 79 20 | eld.values.can.be.......done.by. |
| 3b880 | 70 6c 61 63 69 6e 67 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 2f 63 | placing.a.<code.class="zig">*</c |
| 3b8a0 | 6f 64 65 3e 20 62 65 66 6f 72 65 20 74 68 65 20 63 61 70 74 75 72 65 20 76 61 72 69 61 62 6c 65 | ode>.before.the.capture.variable |
| 3b8c0 | 20 6e 61 6d 65 2c 0a 20 20 20 20 20 20 74 75 72 6e 69 6e 67 20 69 74 20 69 6e 74 6f 20 61 20 70 | .name,.......turning.it.into.a.p |
| 3b8e0 | 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | ointer........</p>.......<p.clas |
| 3b900 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 3b920 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 3b940 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | >const</span>.expect.=.<span.cla |
| 3b960 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@import</span>( |
| 3b980 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 | <span.class="tok-str">"std& |
| 3b9a0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c | quot;</span>).testing.expect;..< |
| 3b9c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">test</span>. |
| 3b9e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 | <span.class="tok-str">"swit |
| 3ba00 | 63 68 20 6f 6e 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ch.on.tagged.union"</span>. |
| 3ba20 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | {.....<span.class="tok-kw">const |
| 3ba40 | 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.Point.=.<span.class="tok |
| 3ba60 | 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 78 3a 20 | -kw">struct</span>.{.........x:. |
| 3ba80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| 3baa0 | 2c 0a 20 20 20 20 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ,.........y:.<span.class="tok-ty |
| 3bac0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | pe">u8</span>,.....};.....<span. |
| 3bae0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 49 74 65 6d | class="tok-kw">const</span>.Item |
| 3bb00 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 | .=.<span.class="tok-kw">union</s |
| 3bb20 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f | pan>(<span.class="tok-kw">enum</ |
| 3bb40 | 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>).{.........a:.<span.class= |
| 3bb60 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 63 | "tok-type">u32</span>,.........c |
| 3bb80 | 3a 20 50 6f 69 6e 74 2c 0a 20 20 20 20 20 20 20 20 64 2c 0a 20 20 20 20 20 20 20 20 65 3a 20 3c | :.Point,.........d,.........e:.< |
| 3bba0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">u32</span> |
| 3bbc0 | 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ,.....};......<span.class="tok-k |
| 3bbe0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 49 74 65 6d 7b 20 2e 63 20 3d 20 50 6f 69 | w">var</span>.a.=.Item{..c.=.Poi |
| 3bc00 | 6e 74 7b 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | nt{..x.=.<span.class="tok-number |
| 3bc20 | 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">1</span>,..y.=.<span.class="to |
| 3bc40 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 | k-number">2</span>.}.};......<sp |
| 3bc60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 74 63 68 | an.class="tok-comment">//.Switch |
| 3bc80 | 69 6e 67 20 6f 6e 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 78 20 65 6e 75 6d 73 20 69 73 20 61 6c 6c | ing.on.more.complex.enums.is.all |
| 3bca0 | 6f 77 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | owed.</span>.....<span.class="to |
| 3bcc0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">const</span>.b.=.<span.cla |
| 3bce0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7b 0a | ss="tok-kw">switch</span>.(a).{. |
| 3bd00 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | ........<span.class="tok-comment |
| 3bd20 | 22 3e 2f 2f 20 41 20 63 61 70 74 75 72 65 20 67 72 6f 75 70 20 69 73 20 61 6c 6c 6f 77 65 64 20 | ">//.A.capture.group.is.allowed. |
| 3bd40 | 6f 6e 20 61 20 6d 61 74 63 68 2c 20 61 6e 64 20 77 69 6c 6c 20 72 65 74 75 72 6e 20 74 68 65 20 | on.a.match,.and.will.return.the. |
| 3bd60 | 65 6e 75 6d 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | enum</span>.........<span.class= |
| 3bd80 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 20 6d 61 74 63 68 65 64 2e 20 | "tok-comment">//.value.matched.. |
| 3bda0 | 49 66 20 74 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 73 20 6f 66 20 62 6f 74 68 20 63 61 73 | If.the.payload.types.of.both.cas |
| 3bdc0 | 65 73 20 61 72 65 20 74 68 65 20 73 61 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c | es.are.the.same</span>.........< |
| 3bde0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 79 | span.class="tok-comment">//.they |
| 3be00 | 20 63 61 6e 20 62 65 20 70 75 74 20 69 6e 74 6f 20 74 68 65 20 73 61 6d 65 20 73 77 69 74 63 68 | .can.be.put.into.the.same.switch |
| 3be20 | 20 70 72 6f 6e 67 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 49 74 65 6d 2e 61 2c 20 49 | .prong.</span>.........Item.a,.I |
| 3be40 | 74 65 6d 2e 65 20 3d 26 67 74 3b 20 7c 69 74 65 6d 7c 20 69 74 65 6d 2c 0a 0a 20 20 20 20 20 20 | tem.e.=>.|item|.item,........ |
| 3be60 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 | ..<span.class="tok-comment">//.A |
| 3be80 | 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 20 6d 61 74 63 68 65 64 20 76 61 6c 75 65 20 | .reference.to.the.matched.value. |
| 3bea0 | 63 61 6e 20 62 65 20 6f 62 74 61 69 6e 65 64 20 75 73 69 6e 67 20 60 2a 60 20 73 79 6e 74 61 78 | can.be.obtained.using.`*`.syntax |
| 3bec0 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 49 74 65 6d 2e 63 20 3d 26 67 74 3b 20 7c 2a | .</span>.........Item.c.=>.|* |
| 3bee0 | 69 74 65 6d 7c 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 74 65 6d 2e 2a 2e | item|.blk:.{.............item.*. |
| 3bf00 | 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | x.+=.<span.class="tok-number">1< |
| 3bf20 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>;.............<span.class= |
| 3bf40 | 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 3c 73 70 61 6e | "tok-kw">break</span>.:blk.<span |
| 3bf60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">6</span>;... |
| 3bf80 | 20 20 20 20 20 20 7d 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ......},..........<span.class="t |
| 3bfa0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 20 65 6c 73 65 20 69 73 20 72 65 71 75 69 72 | ok-comment">//.No.else.is.requir |
| 3bfc0 | 65 64 20 69 66 20 74 68 65 20 74 79 70 65 73 20 63 61 73 65 73 20 77 61 73 20 65 78 68 61 75 73 | ed.if.the.types.cases.was.exhaus |
| 3bfe0 | 74 69 76 65 6c 79 20 68 61 6e 64 6c 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 49 74 | tively.handled</span>.........It |
| 3c000 | 65 6d 2e 64 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | em.d.=>.<span.class="tok-numb |
| 3c020 | 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | er">8</span>,.....};......<span. |
| 3c040 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 3c060 | 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 | (b.==.<span.class="tok-number">6 |
| 3c080 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>);.....<span.class="tok-k |
| 3c0a0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 2e 63 2e 78 20 3d 3d 20 3c 73 | w">try</span>.expect(a.c.x.==.<s |
| 3c0c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">2</span>) |
| 3c0e0 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 3c100 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 | ="shell">$.zig.test.test.zig.Tes |
| 3c120 | 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 74 61 67 | t.[1/1].test."switch.on.tag |
| 3c140 | 67 65 64 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 | ged.union"......All.1.tests |
| 3c160 | 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | .passed..</code></pre>........<p |
| 3c180 | 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | >See.also:</p><ul>.<li><a.href=" |
| 3c1a0 | 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | #comptime">comptime</a></li>.<li |
| 3c1c0 | 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | ><a.href="#enum">enum</a></li>.< |
| 3c1e0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e 40 63 6f 6d 70 | li><a.href="#compileError">@comp |
| 3c200 | 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ileError</a></li>.<li><a.href="# |
| 3c220 | 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 | Compile-Variables">Compile.Varia |
| 3c240 | 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 | bles</a></li>.</ul>.........<h2. |
| 3c260 | 69 64 3d 22 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 3e 3c 61 20 68 72 65 | id="Exhaustive-Switching"><a.hre |
| 3c280 | 66 3d 22 23 74 6f 63 2d 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 3e 45 78 | f="#toc-Exhaustive-Switching">Ex |
| 3c2a0 | 68 61 75 73 74 69 76 65 20 53 77 69 74 63 68 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | haustive.Switching</a>.<a.class= |
| 3c2c0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e | "hdr".href="#Exhaustive-Switchin |
| 3c2e0 | 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | g">..</a></h2>........<p>....... |
| 3c300 | 57 68 65 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | When.a.<code.class="zig"><span.c |
| 3c320 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">switch</span></cod |
| 3c340 | 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 61 6e 20 3c | e>.expression.does.not.have.an.< |
| 3c360 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 3c380 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6c 61 75 73 65 2c | k-kw">else</span></code>.clause, |
| 3c3a0 | 0a 20 20 20 20 20 20 69 74 20 6d 75 73 74 20 65 78 68 61 75 73 74 69 76 65 6c 79 20 6c 69 73 74 | .......it.must.exhaustively.list |
| 3c3c0 | 20 61 6c 6c 20 74 68 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 2e 20 46 61 69 6c 75 72 | .all.the.possible.values..Failur |
| 3c3e0 | 65 20 74 6f 20 64 6f 20 73 6f 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 3a 0a 20 | e.to.do.so.is.a.compile.error:.. |
| 3c400 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 3c420 | 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | test.zig</p><pre><code.class="zi |
| 3c440 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 3c460 | 70 61 6e 3e 20 43 6f 6c 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | pan>.Color.=.<span.class="tok-kw |
| 3c480 | 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 75 74 6f 2c 0a 20 20 20 20 6f 66 | ">enum</span>.{.....auto,.....of |
| 3c4a0 | 66 2c 0a 20 20 20 20 6f 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | f,.....on,.};..<span.class="tok- |
| 3c4c0 | 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">test</span>.<span.class="tok |
| 3c4e0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 68 61 75 73 74 69 76 65 20 73 77 69 74 63 68 69 6e 67 | -str">"exhaustive.switching |
| 3c500 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 3c520 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 20 3d 20 43 6f | "tok-kw">const</span>.color.=.Co |
| 3c540 | 6c 6f 72 2e 6f 66 66 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | lor.off;.....<span.class="tok-kw |
| 3c560 | 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 20 20 | ">switch</span>.(color).{....... |
| 3c580 | 20 20 43 6f 6c 6f 72 2e 61 75 74 6f 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 43 | ..Color.auto.=>.{},.........C |
| 3c5a0 | 6f 6c 6f 72 2e 6f 6e 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e | olor.on.=>.{},.....}.}</code> |
| 3c5c0 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 3c5e0 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig.test.test.zig.<span.class=" |
| 3c600 | 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 35 3a | t0_1">./docgen_tmp/test.zig:9:5: |
| 3c620 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f | .</span><span.class="t31_1">erro |
| 3c640 | 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 6e 75 | r:.</span><span.class="t0_1">enu |
| 3c660 | 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 20 27 43 6f 6c 6f 72 2e 6f 66 66 27 20 6e 6f 74 20 68 | meration.value.'Color.off'.not.h |
| 3c680 | 61 6e 64 6c 65 64 20 69 6e 20 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 77 69 74 | andled.in.switch</span>.....swit |
| 3c6a0 | 63 68 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | ch.(color).{.....<span.class="t3 |
| 3c6c0 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | 2_1">^</span>.<span.class="t0_1" |
| 3c6e0 | 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 37 3a 32 39 3a 20 3c 2f 73 | >./docgen_tmp/test.zig:7:29:.</s |
| 3c700 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f | pan><span.class="t36_1">note:.</ |
| 3c720 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 | span><span.class="t0_1">referenc |
| 3c740 | 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b 65 78 68 61 75 73 | ed.here</span>.test."exhaus |
| 3c760 | 74 69 76 65 20 73 77 69 74 63 68 69 6e 67 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 | tive.switching".{.......... |
| 3c780 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...................<span.class=" |
| 3c7a0 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | t32_1">^</span>.</code></pre>... |
| 3c7c0 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 77 69 74 63 68 69 6e 67 2d 77 | .............<h2.id="Switching-w |
| 3c7e0 | 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ith-Enum-Literals"><a.href="#toc |
| 3c800 | 2d 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 53 | -Switching-with-Enum-Literals">S |
| 3c820 | 77 69 74 63 68 69 6e 67 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 | witching.with.Enum.Literals</a>. |
| 3c840 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 77 69 74 63 68 69 6e 67 2d | <a.class="hdr".href="#Switching- |
| 3c860 | 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | with-Enum-Literals">..</a></h2>. |
| 3c880 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d | .......<p>.......<a.href="#Enum- |
| 3c8a0 | 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 63 61 6e 20 | Literals">Enum.Literals</a>.can. |
| 3c8c0 | 62 65 20 75 73 65 66 75 6c 20 74 6f 20 75 73 65 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 | be.useful.to.use.with.<code.clas |
| 3c8e0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 | s="zig"><span.class="tok-kw">swi |
| 3c900 | 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 61 76 6f 69 64 0a 20 20 20 20 20 | tch</span></code>.to.avoid...... |
| 3c920 | 20 72 65 70 65 74 69 74 69 76 65 6c 79 20 73 70 65 63 69 66 79 69 6e 67 20 3c 61 20 68 72 65 66 | .repetitively.specifying.<a.href |
| 3c940 | 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 75 | ="#enum">enum</a>.or.<a.href="#u |
| 3c960 | 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 74 79 70 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 | nion">union</a>.types:.......</p |
| 3c980 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 3c9a0 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 3c9c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 | .class="tok-kw">const</span>.std |
| 3c9e0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | .=.<span.class="tok-builtin">@im |
| 3ca00 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | port</span>(<span.class="tok-str |
| 3ca20 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e | ">"std"</span>);.<span |
| 3ca40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 | .class="tok-kw">const</span>.exp |
| 3ca60 | 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e | ect.=.std.testing.expect;..<span |
| 3ca80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6c | .class="tok-kw">const</span>.Col |
| 3caa0 | 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f | or.=.<span.class="tok-kw">enum</ |
| 3cac0 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 75 74 6f 2c 0a 20 20 20 20 6f 66 66 2c 0a 20 20 20 20 6f | span>.{.....auto,.....off,.....o |
| 3cae0 | 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | n,.};..<span.class="tok-kw">test |
| 3cb00 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 3cb20 | 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 20 77 69 74 68 20 73 77 69 74 63 68 26 71 75 | uot;enum.literals.with.switch&qu |
| 3cb40 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ot;</span>.{.....<span.class="to |
| 3cb60 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 20 3d 20 43 6f 6c 6f 72 | k-kw">const</span>.color.=.Color |
| 3cb80 | 2e 6f 66 66 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | .off;.....<span.class="tok-kw">c |
| 3cba0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onst</span>.result.=.<span.class |
| 3cbc0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 6c 6f 72 29 20 | ="tok-kw">switch</span>.(color). |
| 3cbe0 | 7b 0a 20 20 20 20 20 20 20 20 2e 61 75 74 6f 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | {..........auto.=>.<span.clas |
| 3cc00 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 | s="tok-null">false</span>,...... |
| 3cc20 | 20 20 20 2e 6f 6e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ....on.=>.<span.class="tok-nu |
| 3cc40 | 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 66 66 20 3d | ll">false</span>,..........off.= |
| 3cc60 | 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 | >.<span.class="tok-null">true |
| 3cc80 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>,.....};.....<span.class= |
| 3cca0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c | "tok-kw">try</span>.expect(resul |
| 3ccc0 | 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | t);.}</code></pre><pre><code.cla |
| 3cce0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 | ss="shell">$.zig.test.test.zig.T |
| 3cd00 | 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 | est.[1/1].test."enum.litera |
| 3cd20 | 6c 73 20 77 69 74 68 20 73 77 69 74 63 68 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 | ls.with.switch"......All.1. |
| 3cd40 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | tests.passed..</code></pre>..... |
| 3cd60 | 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 77 68 69 6c 65 22 | ..................<h1.id="while" |
| 3cd80 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 20 | ><a.href="#toc-while">while</a>. |
| 3cda0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e c2 a7 3c | <a.class="hdr".href="#while">..< |
| 3cdc0 | 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 77 68 69 6c | /a></h1>........<p>.......A.whil |
| 3cde0 | 65 20 6c 6f 6f 70 20 69 73 20 75 73 65 64 20 74 6f 20 72 65 70 65 61 74 65 64 6c 79 20 65 78 65 | e.loop.is.used.to.repeatedly.exe |
| 3ce00 | 63 75 74 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 75 6e 74 69 6c 0a 20 20 20 20 20 20 73 | cute.an.expression.until.......s |
| 3ce20 | 6f 6d 65 20 63 6f 6e 64 69 74 69 6f 6e 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 74 72 75 65 2e | ome.condition.is.no.longer.true. |
| 3ce40 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | .......</p>.......<p.class="file |
| 3ce60 | 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ">while.zig</p><pre><code.class= |
| 3ce80 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | "zig"><span.class="tok-kw">const |
| 3cea0 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.expect.=.<span.class="to |
| 3cec0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| 3cee0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c | class="tok-str">"std"< |
| 3cf00 | 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 | /span>).testing.expect;..<span.c |
| 3cf20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">test</span>.<span. |
| 3cf40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 62 61 73 69 | class="tok-str">"while.basi |
| 3cf60 | 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | c"</span>.{.....<span.class |
| 3cf80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">var</span>.i:.<span.cl |
| 3cfa0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | ass="tok-type">usize</span>.=.<s |
| 3cfc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">0</span>; |
| 3cfe0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c | .....<span.class="tok-kw">while< |
| 3d000 | 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.(i.<.<span.class="tok- |
| 3d020 | 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 69 20 2b | number">10</span>).{.........i.+ |
| 3d040 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 | =.<span.class="tok-number">1</sp |
| 3d060 | 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>;.....}.....<span.class="tok- |
| 3d080 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 20 3d 3d 20 3c 73 70 61 6e | kw">try</span>.expect(i.==.<span |
| 3d0a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a | .class="tok-number">10</span>);. |
| 3d0c0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 3d0e0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 | shell">$.zig.test.while.zig.Test |
| 3d100 | 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 62 61 73 69 63 26 71 75 | .[1/1].test."while.basic&qu |
| 3d120 | 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 | ot;......All.1.tests.passed..</c |
| 3d140 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 | ode></pre>........<p>.......Use. |
| 3d160 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 3d180 | 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 65 78 | ok-kw">break</span></code>.to.ex |
| 3d1a0 | 69 74 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 20 65 61 72 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 | it.a.while.loop.early........</p |
| 3d1c0 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 | >.......<p.class="file">while.zi |
| 3d1e0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 3d200 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 | n.class="tok-kw">const</span>.ex |
| 3d220 | 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | pect.=.<span.class="tok-builtin" |
| 3d240 | 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >@import</span>(<span.class="tok |
| 3d260 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 | -str">"std"</span>).te |
| 3d280 | 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | sting.expect;..<span.class="tok- |
| 3d2a0 | 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">test</span>.<span.class="tok |
| 3d2c0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 62 72 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 | -str">"while.break"</s |
| 3d2e0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 3d300 | 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.i:.<span.class="tok-t |
| 3d320 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">usize</span>.=.<span.class= |
| 3d340 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-number">0</span>;.....<span |
| 3d360 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 | .class="tok-kw">while</span>.(<s |
| 3d380 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e | pan.class="tok-null">true</span> |
| 3d3a0 | 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ).{.........<span.class="tok-kw" |
| 3d3c0 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >if</span>.(i.==.<span.class="to |
| 3d3e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 0a 20 20 20 20 20 20 20 20 20 20 20 | k-number">10</span>)............ |
| 3d400 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 | .<span.class="tok-kw">break</spa |
| 3d420 | 6e 3e 3b 0a 20 20 20 20 20 20 20 20 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>;.........i.+=.<span.class="to |
| 3d440 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 | k-number">1</span>;.....}.....<s |
| 3d460 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 | pan.class="tok-kw">try</span>.ex |
| 3d480 | 70 65 63 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | pect(i.==.<span.class="tok-numbe |
| 3d4a0 | 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | r">10</span>);.}</code></pre><pr |
| 3d4c0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 3d4e0 | 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 | .while.zig.Test.[1/1].test." |
| 3d500 | 3b 77 68 69 6c 65 20 62 72 65 61 6b 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 | ;while.break"......All.1.te |
| 3d520 | 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | sts.passed..</code></pre>....... |
| 3d540 | 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .<p>.......Use.<code.class="zig" |
| 3d560 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f | ><span.class="tok-kw">continue</ |
| 3d580 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 6a 75 6d 70 20 62 61 63 6b 20 74 6f 20 74 68 65 | span></code>.to.jump.back.to.the |
| 3d5a0 | 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 6c 6f 6f 70 2e 0a 20 20 20 20 20 20 3c 2f | .beginning.of.the.loop........</ |
| 3d5c0 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a | p>.......<p.class="file">while.z |
| 3d5e0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 3d600 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 | an.class="tok-kw">const</span>.e |
| 3d620 | 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | xpect.=.<span.class="tok-builtin |
| 3d640 | 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">@import</span>(<span.class="to |
| 3d660 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 | k-str">"std"</span>).t |
| 3d680 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | esting.expect;..<span.class="tok |
| 3d6a0 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 3d6c0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 | k-str">"while.continue" |
| 3d6e0 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;</span>.{.....<span.class="tok- |
| 3d700 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">var</span>.i:.<span.class="t |
| 3d720 | 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | ok-type">usize</span>.=.<span.cl |
| 3d740 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | ass="tok-number">0</span>;.....< |
| 3d760 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e | span.class="tok-kw">while</span> |
| 3d780 | 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | .(<span.class="tok-null">true</s |
| 3d7a0 | 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>).{.........i.+=.<span.class |
| 3d7c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 | ="tok-number">1</span>;......... |
| 3d7e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 | <span.class="tok-kw">if</span>.( |
| 3d800 | 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | i.<.<span.class="tok-number"> |
| 3d820 | 31 30 3c 2f 73 70 61 6e 3e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | 10</span>).............<span.cla |
| 3d840 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | ss="tok-kw">continue</span>;.... |
| 3d860 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c | .....<span.class="tok-kw">break< |
| 3d880 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>;.....}.....<span.class="t |
| 3d8a0 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 20 3d 3d 20 3c 73 | ok-kw">try</span>.expect(i.==.<s |
| 3d8c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e | pan.class="tok-number">10</span> |
| 3d8e0 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 3d900 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 | s="shell">$.zig.test.while.zig.T |
| 3d920 | 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 63 6f 6e 74 69 | est.[1/1].test."while.conti |
| 3d940 | 6e 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 | nue"......All.1.tests.passe |
| 3d960 | 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | d..</code></pre>........<p>..... |
| 3d980 | 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 73 75 70 70 6f 72 74 20 61 20 63 6f 6e 74 69 6e 75 65 | ..While.loops.support.a.continue |
| 3d9a0 | 20 65 78 70 72 65 73 73 69 6f 6e 20 77 68 69 63 68 20 69 73 20 65 78 65 63 75 74 65 64 20 77 68 | .expression.which.is.executed.wh |
| 3d9c0 | 65 6e 20 74 68 65 20 6c 6f 6f 70 0a 20 20 20 20 20 20 69 73 20 63 6f 6e 74 69 6e 75 65 64 2e 20 | en.the.loop.......is.continued.. |
| 3d9e0 | 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | The.<code.class="zig"><span.clas |
| 3da00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | s="tok-kw">continue</span></code |
| 3da20 | 3e 20 6b 65 79 77 6f 72 64 20 72 65 73 70 65 63 74 73 20 74 68 69 73 20 65 78 70 72 65 73 73 69 | >.keyword.respects.this.expressi |
| 3da40 | 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | on........</p>.......<p.class="f |
| 3da60 | 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | ile">while.zig</p><pre><code.cla |
| 3da80 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| 3daa0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nst</span>.expect.=.<span.class= |
| 3dac0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | "tok-builtin">@import</span>(<sp |
| 3dae0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f | an.class="tok-str">"std&quo |
| 3db00 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 | t;</span>).testing.expect;..<spa |
| 3db20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | n.class="tok-kw">test</span>.<sp |
| 3db40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c | an.class="tok-str">"while.l |
| 3db60 | 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 | oop.continue.expression"</s |
| 3db80 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 3dba0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.i:.<span.class="tok-t |
| 3dbc0 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">usize</span>.=.<span.class= |
| 3dbe0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-number">0</span>;.....<span |
| 3dc00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 | .class="tok-kw">while</span>.(i. |
| 3dc20 | 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | <.<span.class="tok-number">10 |
| 3dc40 | 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>).:.(i.+=.<span.class="to |
| 3dc60 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 20 20 20 20 3c 73 70 61 6e | k-number">1</span>).{}.....<span |
| 3dc80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 3dca0 | 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | t(i.==.<span.class="tok-number"> |
| 3dcc0 | 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 10</span>);.}..<span.class="tok- |
| 3dce0 | 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">test</span>.<span.class="tok |
| 3dd00 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 | -str">"while.loop.continue. |
| 3dd20 | 65 78 70 72 65 73 73 69 6f 6e 2c 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 26 71 75 6f | expression,.more.complicated&quo |
| 3dd40 | 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t;</span>.{.....<span.class="tok |
| 3dd60 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">var</span>.i:.<span.class=" |
| 3dd80 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | tok-type">usize</span>.=.<span.c |
| 3dda0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">1</span>;..... |
| 3ddc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">var</span>. |
| 3dde0 | 6a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c | j:.<span.class="tok-type">usize< |
| 3de00 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | /span>.=.<span.class="tok-number |
| 3de20 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">1</span>;.....<span.class="tok |
| 3de40 | 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 2a 20 6a 20 26 6c 74 3b 20 3c 73 | -kw">while</span>.(i.*.j.<.<s |
| 3de60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 30 3c 2f 73 70 61 | pan.class="tok-number">2000</spa |
| 3de80 | 6e 3e 29 20 3a 20 28 7b 20 69 20 2a 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | n>).:.({.i.*=.<span.class="tok-n |
| 3dea0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 20 6a 20 2a 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">2</span>;.j.*=.<span.clas |
| 3dec0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 20 7d 29 20 7b 0a 20 20 | s="tok-number">3</span>;.}).{... |
| 3dee0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | ......<span.class="tok-kw">const |
| 3df00 | 3c 2f 73 70 61 6e 3e 20 6d 79 5f 69 6a 20 3d 20 69 20 2a 20 6a 3b 0a 20 20 20 20 20 20 20 20 3c | </span>.my_ij.=.i.*.j;.........< |
| 3df20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 3df40 | 78 70 65 63 74 28 6d 79 5f 69 6a 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | xpect(my_ij.<.<span.class="to |
| 3df60 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c | k-number">2000</span>);.....}.}< |
| 3df80 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 3dfa0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 5b | ell">$.zig.test.while.zig.Test.[ |
| 3dfc0 | 31 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 | 1/2].test."while.loop.conti |
| 3dfe0 | 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 | nue.expression".....Test.[2 |
| 3e000 | 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e | /2].test."while.loop.contin |
| 3e020 | 75 65 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 26 | ue.expression,.more.complicated& |
| 3e040 | 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | quot;......All.2.tests.passed..< |
| 3e060 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 | /code></pre>........<p>.......Wh |
| 3e080 | 69 6c 65 20 6c 6f 6f 70 73 20 61 72 65 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 54 68 65 20 72 | ile.loops.are.expressions..The.r |
| 3e0a0 | 65 73 75 6c 74 20 6f 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 74 68 65 0a 20 | esult.of.the.expression.is.the.. |
| 3e0c0 | 20 20 20 20 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | .....result.of.the.<code.class=" |
| 3e0e0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f | zig"><span.class="tok-kw">else</ |
| 3e100 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6c 61 75 73 65 20 6f 66 20 61 20 77 68 69 6c 65 20 6c | span></code>.clause.of.a.while.l |
| 3e120 | 6f 6f 70 2c 20 77 68 69 63 68 20 69 73 20 65 78 65 63 75 74 65 64 20 77 68 65 6e 0a 20 20 20 20 | oop,.which.is.executed.when..... |
| 3e140 | 20 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 69 6c 65 20 6c 6f 6f | ..the.condition.of.the.while.loo |
| 3e160 | 70 20 69 73 20 74 65 73 74 65 64 20 61 73 20 66 61 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | p.is.tested.as.false........</p> |
| 3e180 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .......<p>.......<code.class="zi |
| 3e1a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 | g"><span.class="tok-kw">break</s |
| 3e1c0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | pan></code>,.like.<code.class="z |
| 3e1e0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | ig"><span.class="tok-kw">return< |
| 3e200 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 63 63 65 70 74 73 20 61 20 76 61 6c 75 65 0a 20 | /span></code>,.accepts.a.value.. |
| 3e220 | 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 72 61 6d 65 74 65 72 2e 20 54 68 69 73 20 69 73 20 | .............parameter..This.is. |
| 3e240 | 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | the.result.of.the.<code.class="z |
| 3e260 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f | ig"><span.class="tok-kw">while</ |
| 3e280 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 | span></code>.expression......... |
| 3e2a0 | 20 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 79 6f 75 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ...........When.you.<code.class= |
| 3e2c0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b | "zig"><span.class="tok-kw">break |
| 3e2e0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 | </span></code>.from.a.while.loop |
| 3e300 | 2c 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ,.the.<code.class="zig"><span.cl |
| 3e320 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | ass="tok-kw">else</span></code>. |
| 3e340 | 62 72 61 6e 63 68 20 69 73 20 6e 6f 74 0a 20 20 20 20 20 20 65 76 61 6c 75 61 74 65 64 2e 0a 20 | branch.is.not.......evaluated... |
| 3e360 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 3e380 | 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | while.zig</p><pre><code.class="z |
| 3e3a0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 3e3c0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 3e3e0 | 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | builtin">@import</span>(<span.cl |
| 3e400 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 | ass="tok-str">"std"</s |
| 3e420 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>).testing.expect;..<span.cla |
| 3e440 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ss="tok-kw">test</span>.<span.cl |
| 3e460 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 6c 73 65 26 71 | ass="tok-str">"while.else&q |
| 3e480 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>.{.....<span.class="t |
| 3e4a0 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 61 6e 67 65 48 61 | ok-kw">try</span>.expect(rangeHa |
| 3e4c0 | 73 4e 75 6d 62 65 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | sNumber(<span.class="tok-number" |
| 3e4e0 | 3e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >0</span>,.<span.class="tok-numb |
| 3e500 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | er">10</span>,.<span.class="tok- |
| 3e520 | 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | number">5</span>));.....<span.cl |
| 3e540 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 | ass="tok-kw">try</span>.expect(! |
| 3e560 | 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | rangeHasNumber(<span.class="tok- |
| 3e580 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">0</span>,.<span.class="t |
| 3e5a0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-number">10</span>,.<span.clas |
| 3e5c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 35 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c | s="tok-number">15</span>));.}..< |
| 3e5e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 3e600 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 | pan.class="tok-fn">rangeHasNumbe |
| 3e620 | 72 3c 2f 73 70 61 6e 3e 28 62 65 67 69 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r</span>(begin:.<span.class="tok |
| 3e640 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 65 6e 64 3a 20 3c 73 70 61 6e 20 | -type">usize</span>,.end:.<span. |
| 3e660 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 6e | class="tok-type">usize</span>,.n |
| 3e680 | 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | umber:.<span.class="tok-type">us |
| 3e6a0 | 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ize</span>).<span.class="tok-typ |
| 3e6c0 | 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">bool</span>.{.....<span.class |
| 3e6e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 62 65 67 69 6e 3b 0a | ="tok-kw">var</span>.i.=.begin;. |
| 3e700 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | ....<span.class="tok-kw">return< |
| 3e720 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c | /span>.<span.class="tok-kw">whil |
| 3e740 | 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 65 6e 64 29 20 3a 20 28 69 20 2b 3d 20 3c 73 | e</span>.(i.<.end).:.(i.+=.<s |
| 3e760 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">1</span>) |
| 3e780 | 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .{.........<span.class="tok-kw"> |
| 3e7a0 | 69 66 3c 2f 73 70 61 6e 3e 20 28 69 20 3d 3d 20 6e 75 6d 62 65 72 29 20 7b 0a 20 20 20 20 20 20 | if</span>.(i.==.number).{....... |
| 3e7c0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b | ......<span.class="tok-kw">break |
| 3e7e0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 | </span>.<span.class="tok-null">t |
| 3e800 | 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 20 3c 73 70 61 | rue</span>;.........}.....}.<spa |
| 3e820 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 | n.class="tok-kw">else</span>.<sp |
| 3e840 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e | an.class="tok-null">false</span> |
| 3e860 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 3e880 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 | ="shell">$.zig.test.while.zig.Te |
| 3e8a0 | 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 6c 73 65 26 71 | st.[1/1].test."while.else&q |
| 3e8c0 | 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | uot;......All.1.tests.passed..</ |
| 3e8e0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4c 61 62 65 6c | code></pre>........<h2.id="Label |
| 3e900 | 65 64 2d 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4c 61 62 65 6c 65 64 2d | ed-while"><a.href="#toc-Labeled- |
| 3e920 | 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | while">Labeled.while</a>.<a.clas |
| 3e940 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e c2 a7 | s="hdr".href="#Labeled-while">.. |
| 3e960 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 61 20 3c 63 6f 64 65 | </a></h2>........<p>When.a.<code |
| 3e980 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 3e9a0 | 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 20 69 73 20 6c 61 | ">while</span></code>.loop.is.la |
| 3e9c0 | 62 65 6c 65 64 2c 20 69 74 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 66 72 6f 6d | beled,.it.can.be.referenced.from |
| 3e9e0 | 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | .a.<code.class="zig"><span.class |
| 3ea00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 | ="tok-kw">break</span></code>... |
| 3ea20 | 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ............or.<code.class="zig" |
| 3ea40 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f | ><span.class="tok-kw">continue</ |
| 3ea60 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 77 69 74 68 69 6e 20 61 20 6e 65 73 74 65 | span></code>.from.within.a.neste |
| 3ea80 | 64 20 6c 6f 6f 70 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | d.loop:</p>.......<p.class="file |
| 3eaa0 | 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ">test.zig</p><pre><code.class=" |
| 3eac0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | zig"><span.class="tok-kw">test</ |
| 3eae0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| 3eb00 | 74 3b 6e 65 73 74 65 64 20 62 72 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | t;nested.break"</span>.{... |
| 3eb20 | 20 20 6f 75 74 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 | ..outer:.<span.class="tok-kw">wh |
| 3eb40 | 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | ile</span>.(<span.class="tok-nul |
| 3eb60 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | l">true</span>).{.........<span. |
| 3eb80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 | class="tok-kw">while</span>.(<sp |
| 3eba0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 | an.class="tok-null">true</span>) |
| 3ebc0 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .{.............<span.class="tok- |
| 3ebe0 | 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 20 20 | kw">break</span>.:outer;........ |
| 3ec00 | 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .}.....}.}..<span.class="tok-kw" |
| 3ec20 | 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >test</span>.<span.class="tok-st |
| 3ec40 | 72 22 3e 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f | r">"nested.continue"</ |
| 3ec60 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.{.....<span.class="tok-kw" |
| 3ec80 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >var</span>.i:.<span.class="tok- |
| 3eca0 | 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | type">usize</span>.=.<span.class |
| 3ecc0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6f 75 74 65 | ="tok-number">0</span>;.....oute |
| 3ece0 | 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 | r:.<span.class="tok-kw">while</s |
| 3ed00 | 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | pan>.(i.<.<span.class="tok-nu |
| 3ed20 | 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 | mber">10</span>).:.(i.+=.<span.c |
| 3ed40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 | lass="tok-number">1</span>).{... |
| 3ed60 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 | ......<span.class="tok-kw">while |
| 3ed80 | 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | </span>.(<span.class="tok-null"> |
| 3eda0 | 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | true</span>).{.............<span |
| 3edc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 | .class="tok-kw">continue</span>. |
| 3ede0 | 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e | :outer;.........}.....}.}</code> |
| 3ee00 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 3ee20 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 32 5d 20 74 65 | .zig.test.test.zig.Test.[1/2].te |
| 3ee40 | 73 74 20 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 62 72 65 61 6b 26 71 75 6f 74 3b 2e 2e 2e 20 0a | st."nested.break"..... |
| 3ee60 | 54 65 73 74 20 5b 32 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 63 6f 6e | Test.[2/2].test."nested.con |
| 3ee80 | 74 69 6e 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 | tinue"......All.2.tests.pas |
| 3eea0 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | sed..</code></pre>.............. |
| 3eec0 | 20 3c 68 32 20 69 64 3d 22 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c | .<h2.id="while-with-Optionals">< |
| 3eee0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c | a.href="#toc-while-with-Optional |
| 3ef00 | 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 | s">while.with.Optionals</a>.<a.c |
| 3ef20 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 | lass="hdr".href="#while-with-Opt |
| 3ef40 | 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ionals">..</a></h2>........<p>.. |
| 3ef60 | 20 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c | .....Just.like.<a.href="#if">if< |
| 3ef80 | 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 77 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e | /a>.expressions,.while.loops.can |
| 3efa0 | 20 74 61 6b 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 73 20 74 68 65 0a 20 20 20 20 20 20 63 | .take.an.optional.as.the.......c |
| 3efc0 | 6f 6e 64 69 74 69 6f 6e 20 61 6e 64 20 63 61 70 74 75 72 65 20 74 68 65 20 70 61 79 6c 6f 61 64 | ondition.and.capture.the.payload |
| 3efe0 | 2e 20 57 68 65 6e 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 | ..When.<a.href="#null">null</a>. |
| 3f000 | 69 73 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 74 68 65 20 6c 6f 6f 70 0a 20 20 20 20 20 20 65 78 | is.encountered.the.loop.......ex |
| 3f020 | 69 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | its........</p>.......<p>....... |
| 3f040 | 57 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 7c 78 7c 3c 2f | When.the.<code.class="zig">|x|</ |
| 3f060 | 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 69 73 20 70 72 65 73 65 6e 74 20 6f 6e 20 61 20 3c 63 6f | code>.syntax.is.present.on.a.<co |
| 3f080 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 3f0a0 | 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 | kw">while</span></code>.expressi |
| 3f0c0 | 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 77 68 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 20 6d 75 | on,.......the.while.condition.mu |
| 3f0e0 | 73 74 20 68 61 76 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 54 79 | st.have.an.<a.href="#Optional-Ty |
| 3f100 | 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | pe">Optional.Type</a>........</p |
| 3f120 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 | >.......<p>.......The.<code.clas |
| 3f140 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | s="zig"><span.class="tok-kw">els |
| 3f160 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 72 61 6e 63 68 20 69 73 20 61 6c 6c 6f 77 65 | e</span></code>.branch.is.allowe |
| 3f180 | 64 20 6f 6e 20 6f 70 74 69 6f 6e 61 6c 20 69 74 65 72 61 74 69 6f 6e 2e 20 49 6e 20 74 68 69 73 | d.on.optional.iteration..In.this |
| 3f1a0 | 20 63 61 73 65 2c 20 69 74 20 77 69 6c 6c 0a 20 20 20 20 20 20 62 65 20 65 78 65 63 75 74 65 64 | .case,.it.will.......be.executed |
| 3f1c0 | 20 6f 6e 20 74 68 65 20 66 69 72 73 74 20 6e 75 6c 6c 20 76 61 6c 75 65 20 65 6e 63 6f 75 6e 74 | .on.the.first.null.value.encount |
| 3f1e0 | 65 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | ered........</p>.......<p.class= |
| 3f200 | 22 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | "file">while.zig</p><pre><code.c |
| 3f220 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 3f240 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.expect.=.<span.clas |
| 3f260 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| 3f280 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| 3f2a0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 | uot;</span>).testing.expect;..<s |
| 3f2c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">test</span>.< |
| 3f2e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 | span.class="tok-str">"while |
| 3f300 | 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | .null.capture"</span>.{.... |
| 3f320 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 3f340 | 20 73 75 6d 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | .sum1:.<span.class="tok-type">u3 |
| 3f360 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | 2</span>.=.<span.class="tok-numb |
| 3f380 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d | er">0</span>;.....numbers_left.= |
| 3f3a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 | .<span.class="tok-number">3</spa |
| 3f3c0 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 | n>;.....<span.class="tok-kw">whi |
| 3f3e0 | 6c 65 3c 2f 73 70 61 6e 3e 20 28 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 65 71 75 65 6e 63 | le</span>.(eventuallyNullSequenc |
| 3f400 | 65 28 29 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 31 20 2b 3d 20 76 | e()).|value|.{.........sum1.+=.v |
| 3f420 | 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | alue;.....}.....<span.class="tok |
| 3f440 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 31 20 3d 3d 20 3c | -kw">try</span>.expect(sum1.==.< |
| 3f460 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e | span.class="tok-number">3</span> |
| 3f480 | 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | );......<span.class="tok-kw">var |
| 3f4a0 | 3c 2f 73 70 61 6e 3e 20 73 75 6d 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | </span>.sum2:.<span.class="tok-t |
| 3f4c0 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">u32</span>.=.<span.class="t |
| 3f4e0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 | ok-number">0</span>;.....numbers |
| 3f500 | 5f 6c 65 66 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | _left.=.<span.class="tok-number" |
| 3f520 | 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >3</span>;.....<span.class="tok- |
| 3f540 | 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c | kw">while</span>.(eventuallyNull |
| 3f560 | 53 65 71 75 65 6e 63 65 28 29 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 | Sequence()).|value|.{.........su |
| 3f580 | 6d 32 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | m2.+=.value;.....}.<span.class=" |
| 3f5a0 | 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 | tok-kw">else</span>.{.........<s |
| 3f5c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 | pan.class="tok-kw">try</span>.ex |
| 3f5e0 | 70 65 63 74 28 73 75 6d 32 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | pect(sum2.==.<span.class="tok-nu |
| 3f600 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 | mber">3</span>);.....}.}..<span. |
| 3f620 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 | class="tok-kw">var</span>.number |
| 3f640 | 73 5f 6c 65 66 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | s_left:.<span.class="tok-type">u |
| 3f660 | 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | 32</span>.=.<span.class="tok-nul |
| 3f680 | 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | l">undefined</span>;.<span.class |
| 3f6a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="tok-kw">fn</span>.<span.class= |
| 3f6c0 | 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 65 71 75 65 6e 63 65 3c | "tok-fn">eventuallyNullSequence< |
| 3f6e0 | 2f 73 70 61 6e 3e 28 29 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>().?<span.class="tok-type" |
| 3f700 | 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >u32</span>.{.....<span.class="t |
| 3f720 | 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">return</span>.<span.class |
| 3f740 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 73 5f 6c 65 66 | ="tok-kw">if</span>.(numbers_lef |
| 3f760 | 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | t.==.<span.class="tok-number">0< |
| 3f780 | 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e | /span>).<span.class="tok-null">n |
| 3f7a0 | 75 6c 6c 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ull</span>.<span.class="tok-kw"> |
| 3f7c0 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 | else</span>.blk:.{.........numbe |
| 3f7e0 | 72 73 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | rs_left.-=.<span.class="tok-numb |
| 3f800 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | er">1</span>;.........<span.clas |
| 3f820 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d | s="tok-kw">break</span>.:blk.num |
| 3f840 | 62 65 72 73 5f 6c 65 66 74 3b 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | bers_left;.....};.}</code></pre> |
| 3f860 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 | <pre><code.class="shell">$.zig.t |
| 3f880 | 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 | est.while.zig.Test.[1/1].test.&q |
| 3f8a0 | 75 6f 74 3b 77 68 69 6c 65 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 2e 2e 2e 20 | uot;while.null.capture".... |
| 3f8c0 | 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | ..All.1.tests.passed..</code></p |
| 3f8e0 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 68 69 6c 65 | re>................<h2.id="while |
| 3f900 | 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | -with-Error-Unions"><a.href="#to |
| 3f920 | 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 77 68 69 6c 65 | c-while-with-Error-Unions">while |
| 3f940 | 20 77 69 74 68 20 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | .with.Error.Unions</a>.<a.class= |
| 3f960 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e | "hdr".href="#while-with-Error-Un |
| 3f980 | 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ions">..</a></h2>........<p>.... |
| 3f9a0 | 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 | ...Just.like.<a.href="#if">if</a |
| 3f9c0 | 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 77 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 74 | >.expressions,.while.loops.can.t |
| 3f9e0 | 61 6b 65 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 61 73 0a 20 20 20 20 20 20 74 68 65 20 | ake.an.error.union.as.......the. |
| 3fa00 | 63 6f 6e 64 69 74 69 6f 6e 20 61 6e 64 20 63 61 70 74 75 72 65 20 74 68 65 20 70 61 79 6c 6f 61 | condition.and.capture.the.payloa |
| 3fa20 | 64 20 6f 72 20 74 68 65 20 65 72 72 6f 72 20 63 6f 64 65 2e 20 57 68 65 6e 20 74 68 65 0a 20 20 | d.or.the.error.code..When.the... |
| 3fa40 | 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 61 6e 20 65 72 72 6f | ....condition.results.in.an.erro |
| 3fa60 | 72 20 63 6f 64 65 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 69 73 20 65 76 61 6c 75 61 | r.code.the.else.branch.is.evalua |
| 3fa80 | 74 65 64 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 20 6c 6f 6f 70 20 69 73 20 66 69 6e 69 73 68 | ted.and.......the.loop.is.finish |
| 3faa0 | 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 | ed........</p>.......<p>.......W |
| 3fac0 | 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | hen.the.<code.class="zig"><span. |
| 3fae0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 78 7c 3c 2f | class="tok-kw">else</span>.|x|</ |
| 3fb00 | 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 69 73 20 70 72 65 73 65 6e 74 20 6f 6e 20 61 20 3c 63 6f | code>.syntax.is.present.on.a.<co |
| 3fb20 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 3fb40 | 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 | kw">while</span></code>.expressi |
| 3fb60 | 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 77 68 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 20 6d 75 | on,.......the.while.condition.mu |
| 3fb80 | 73 74 20 68 61 76 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e | st.have.an.<a.href="#Error-Union |
| 3fba0 | 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 | -Type">Error.Union.Type</a>..... |
| 3fbc0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 77 68 | ...</p>.......<p.class="file">wh |
| 3fbe0 | 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ile.zig</p><pre><code.class="zig |
| 3fc00 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 3fc20 | 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | an>.expect.=.<span.class="tok-bu |
| 3fc40 | 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | iltin">@import</span>(<span.clas |
| 3fc60 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 | s="tok-str">"std"</spa |
| 3fc80 | 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | n>).testing.expect;..<span.class |
| 3fca0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ="tok-kw">test</span>.<span.clas |
| 3fcc0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 72 72 6f 72 20 75 6e | s="tok-str">"while.error.un |
| 3fce0 | 69 6f 6e 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ion.capture"</span>.{.....< |
| 3fd00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 | span.class="tok-kw">var</span>.s |
| 3fd20 | 75 6d 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | um1:.<span.class="tok-type">u32< |
| 3fd40 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | /span>.=.<span.class="tok-number |
| 3fd60 | 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 20 3c | ">0</span>;.....numbers_left.=.< |
| 3fd80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e | span.class="tok-number">3</span> |
| 3fda0 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 | ;.....<span.class="tok-kw">while |
| 3fdc0 | 3c 2f 73 70 61 6e 3e 20 28 65 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 6e 63 65 | </span>.(eventuallyErrorSequence |
| 3fde0 | 28 29 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 31 20 2b 3d 20 76 61 | ()).|value|.{.........sum1.+=.va |
| 3fe00 | 6c 75 65 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lue;.....}.<span.class="tok-kw"> |
| 3fe20 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | else</span>.|err|.{.........<spa |
| 3fe40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 3fe60 | 63 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ct(err.==.<span.class="tok-kw">e |
| 3fe80 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 52 65 61 63 68 65 64 5a 65 72 6f 29 3b 0a 20 20 20 20 7d 0a | rror</span>.ReachedZero);.....}. |
| 3fea0 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 | }..<span.class="tok-kw">var</spa |
| 3fec0 | 6e 3e 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.numbers_left:.<span.class="to |
| 3fee0 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-type">u32</span>.=.<span.class |
| 3ff00 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c | ="tok-null">undefined</span>;..< |
| 3ff20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 3ff40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c 79 45 72 72 | pan.class="tok-fn">eventuallyErr |
| 3ff60 | 6f 72 53 65 71 75 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | orSequence</span>().<span.class= |
| 3ff80 | 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e | "tok-type">anyerror</span>!<span |
| 3ffa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .class="tok-type">u32</span>.{.. |
| 3ffc0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f | ...<span.class="tok-kw">return</ |
| 3ffe0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 | span>.<span.class="tok-kw">if</s |
| 40000 | 70 61 6e 3e 20 28 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | pan>.(numbers_left.==.<span.clas |
| 40020 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | s="tok-number">0</span>).<span.c |
| 40040 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 52 65 61 63 68 | lass="tok-kw">error</span>.Reach |
| 40060 | 65 64 5a 65 72 6f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | edZero.<span.class="tok-kw">else |
| 40080 | 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c | </span>.blk:.{.........numbers_l |
| 400a0 | 65 66 74 20 2d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | eft.-=.<span.class="tok-number"> |
| 400c0 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 1</span>;.........<span.class="t |
| 400e0 | 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 | ok-kw">break</span>.:blk.numbers |
| 40100 | 5f 6c 65 66 74 3b 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | _left;.....};.}</code></pre><pre |
| 40120 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| 40140 | 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b | while.zig.Test.[1/1].test." |
| 40160 | 77 68 69 6c 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 2e | while.error.union.capture". |
| 40180 | 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e | .....All.1.tests.passed..</code> |
| 401a0 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e | </pre>................<h2.id="in |
| 401c0 | 6c 69 6e 65 2d 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 | line-while"><a.href="#toc-inline |
| 401e0 | 2d 77 68 69 6c 65 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | -while">inline.while</a>.<a.clas |
| 40200 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e c2 a7 3c | s="hdr".href="#inline-while">..< |
| 40220 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 | /a></h2>........<p>.......While. |
| 40240 | 6c 6f 6f 70 73 20 63 61 6e 20 62 65 20 69 6e 6c 69 6e 65 64 2e 20 54 68 69 73 20 63 61 75 73 65 | loops.can.be.inlined..This.cause |
| 40260 | 73 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 62 65 20 75 6e 72 6f 6c 6c 65 64 2c 20 77 68 69 63 68 | s.the.loop.to.be.unrolled,.which |
| 40280 | 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 74 68 65 20 63 6f 64 65 20 74 6f 20 64 6f 20 73 6f 6d | .......allows.the.code.to.do.som |
| 402a0 | 65 20 74 68 69 6e 67 73 20 77 68 69 63 68 20 6f 6e 6c 79 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 | e.things.which.only.work.at.comp |
| 402c0 | 69 6c 65 20 74 69 6d 65 2c 0a 20 20 20 20 20 20 73 75 63 68 20 61 73 20 75 73 65 20 74 79 70 65 | ile.time,.......such.as.use.type |
| 402e0 | 73 20 61 73 20 66 69 72 73 74 20 63 6c 61 73 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 3c | s.as.first.class.values........< |
| 40300 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 40320 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 40340 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 | an.class="tok-kw">const</span>.e |
| 40360 | 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | xpect.=.<span.class="tok-builtin |
| 40380 | 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">@import</span>(<span.class="to |
| 403a0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 | k-str">"std"</span>).t |
| 403c0 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | esting.expect;..<span.class="tok |
| 403e0 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 40400 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 77 68 69 6c 65 20 6c 6f 6f 70 26 71 | k-str">"inline.while.loop&q |
| 40420 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>.{.....<span.class="t |
| 40440 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">comptime</span>.<span.cla |
| 40460 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e | ss="tok-kw">var</span>.i.=.<span |
| 40480 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">0</span>;... |
| 404a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| 404c0 | 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | >.sum:.<span.class="tok-type">us |
| 404e0 | 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ize</span>.=.<span.class="tok-nu |
| 40500 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">0</span>;.....<span.class= |
| 40520 | 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">inline</span>.<span.cla |
| 40540 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b | ss="tok-kw">while</span>.(i.< |
| 40560 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 | .<span.class="tok-number">3</spa |
| 40580 | 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | n>).:.(i.+=.<span.class="tok-num |
| 405a0 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ber">1</span>).{.........<span.c |
| 405c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c | lass="tok-kw">const</span>.T.=.< |
| 405e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e | span.class="tok-kw">switch</span |
| 40600 | 3e 20 28 69 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >.(i).{.............<span.class= |
| 40620 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 | "tok-number">0</span>.=>.<spa |
| 40640 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 | n.class="tok-type">f32</span>,.. |
| 40660 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ...........<span.class="tok-numb |
| 40680 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">1</span>.=>.<span.class=" |
| 406a0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | tok-type">i8</span>,............ |
| 406c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | .<span.class="tok-number">2</spa |
| 406e0 | 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | n>.=>.<span.class="tok-type"> |
| 40700 | 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | bool</span>,.............<span.c |
| 40720 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 | lass="tok-kw">else</span>.=>. |
| 40740 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 | <span.class="tok-kw">unreachable |
| 40760 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 | </span>,.........};.........sum. |
| 40780 | 2b 3d 20 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 28 54 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | +=.typeNameLength(T);.....}..... |
| 407a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 407c0 | 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | expect(sum.==.<span.class="tok-n |
| 407e0 | 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">9</span>);.}..<span.class |
| 40800 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="tok-kw">fn</span>.<span.class= |
| 40820 | 22 74 6f 6b 2d 66 6e 22 3e 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 3c | "tok-fn">typeNameLength</span>(< |
| 40840 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 | span.class="tok-kw">comptime</sp |
| 40860 | 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 | an>.T:.<span.class="tok-type">ty |
| 40880 | 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | pe</span>).<span.class="tok-type |
| 408a0 | 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">usize</span>.{.....<span.class |
| 408c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">return</span>.<span.cl |
| 408e0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 | ass="tok-builtin">@typeName</spa |
| 40900 | 6e 3e 28 54 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | n>(T).len;.}</code></pre><pre><c |
| 40920 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 40940 | 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6e 6c 69 | t.zig.Test.[1/1].test."inli |
| 40960 | 6e 65 20 77 68 69 6c 65 20 6c 6f 6f 70 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 | ne.while.loop"......All.1.t |
| 40980 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 409a0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f | ..<p>.......It.is.recommended.to |
| 409c0 | 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .use.<code.class="zig"><span.cla |
| 409e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-kw">inline</span></code> |
| 40a00 | 20 6c 6f 6f 70 73 20 6f 6e 6c 79 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 72 65 61 | .loops.only.for.one.of.these.rea |
| 40a20 | 73 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | sons:.......</p>.......<ul>..... |
| 40a40 | 20 20 20 20 3c 6c 69 3e 59 6f 75 20 6e 65 65 64 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 65 78 65 | ....<li>You.need.the.loop.to.exe |
| 40a60 | 63 75 74 65 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 | cute.at.<a.href="#comptime">comp |
| 40a80 | 74 69 6d 65 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 20 74 6f 20 77 6f | time</a>.for.the.semantics.to.wo |
| 40aa0 | 72 6b 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 59 6f | rk.</li>.........<li>.........Yo |
| 40ac0 | 75 20 68 61 76 65 20 61 20 62 65 6e 63 68 6d 61 72 6b 20 74 6f 20 70 72 6f 76 65 20 74 68 61 74 | u.have.a.benchmark.to.prove.that |
| 40ae0 | 20 66 6f 72 63 69 62 6c 79 20 75 6e 72 6f 6c 6c 69 6e 67 20 74 68 65 20 6c 6f 6f 70 20 69 6e 20 | .forcibly.unrolling.the.loop.in. |
| 40b00 | 74 68 69 73 20 77 61 79 20 69 73 20 6d 65 61 73 75 72 61 62 6c 79 20 66 61 73 74 65 72 2e 0a 20 | this.way.is.measurably.faster... |
| 40b20 | 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a | .......</li>.......</ul>........ |
| 40b40 | 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c | ......<p>See.also:</p><ul>.<li>< |
| 40b60 | 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | a.href="#if">if</a></li>.<li><a. |
| 40b80 | 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c | href="#Optionals">Optionals</a>< |
| 40ba0 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 | /li>.<li><a.href="#Errors">Error |
| 40bc0 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d | s</a></li>.<li><a.href="#comptim |
| 40be0 | 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | e">comptime</a></li>.<li><a.href |
| 40c00 | 3d 22 23 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 3c | ="#unreachable">unreachable</a>< |
| 40c20 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d | /li>.</ul>...............<h1.id= |
| 40c40 | 22 66 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e | "for"><a.href="#toc-for">for</a> |
| 40c60 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 6f 72 22 3e c2 a7 3c 2f | .<a.class="hdr".href="#for">..</ |
| 40c80 | 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 | a></h1>........<p.class="file">f |
| 40ca0 | 6f 72 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | or.zig</p><pre><code.class="zig" |
| 40cc0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | ><span.class="tok-kw">const</spa |
| 40ce0 | 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | n>.expect.=.<span.class="tok-bui |
| 40d00 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| 40d20 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ="tok-str">"std"</span |
| 40d40 | 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >).testing.expect;..<span.class= |
| 40d60 | 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-kw">test</span>.<span.class |
| 40d80 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 62 61 73 69 63 73 26 71 75 6f 74 | ="tok-str">"for.basics" |
| 40da0 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;</span>.{.....<span.class="tok- |
| 40dc0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 | kw">const</span>.items.=.[_]<spa |
| 40de0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 | n.class="tok-type">i32</span>.{. |
| 40e00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e | <span.class="tok-number">4</span |
| 40e20 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | >,.<span.class="tok-number">5</s |
| 40e40 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | pan>,.<span.class="tok-number">3 |
| 40e60 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>,.<span.class="tok-number |
| 40e80 | 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">4</span>,.<span.class="tok-num |
| 40ea0 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ber">0</span>.};.....<span.class |
| 40ec0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 | ="tok-kw">var</span>.sum:.<span. |
| 40ee0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | class="tok-type">i32</span>.=.<s |
| 40f00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">0</span>; |
| 40f20 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ......<span.class="tok-comment"> |
| 40f40 | 2f 2f 20 46 6f 72 20 6c 6f 6f 70 73 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 73 6c 69 63 65 73 | //.For.loops.iterate.over.slices |
| 40f60 | 20 61 6e 64 20 61 72 72 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | .and.arrays.</span>.....<span.cl |
| 40f80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 | ass="tok-kw">for</span>.(items). |
| 40fa0 | 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | |value|.{.........<span.class="t |
| 40fc0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 72 65 61 6b 20 61 6e 64 20 63 6f 6e 74 69 6e 75 | ok-comment">//.Break.and.continu |
| 40fe0 | 65 20 61 72 65 20 73 75 70 70 6f 72 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | e.are.supported.</span>......... |
| 41000 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 | <span.class="tok-kw">if</span>.( |
| 41020 | 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | value.==.<span.class="tok-number |
| 41040 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ">0</span>).{.............<span. |
| 41060 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a | class="tok-kw">continue</span>;. |
| 41080 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 3b 0a | ........}.........sum.+=.value;. |
| 410a0 | 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ....}.....<span.class="tok-kw">t |
| 410c0 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ry</span>.expect(sum.==.<span.cl |
| 410e0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 36 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 | ass="tok-number">16</span>);.... |
| 41100 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 | ..<span.class="tok-comment">//.T |
| 41120 | 6f 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 61 20 73 6c | o.iterate.over.a.portion.of.a.sl |
| 41140 | 69 63 65 2c 20 72 65 73 6c 69 63 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ice,.reslice.</span>.....<span.c |
| 41160 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 5b | lass="tok-kw">for</span>.(items[ |
| 41180 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e | <span.class="tok-number">0</span |
| 411a0 | 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | >..<span.class="tok-number">1</s |
| 411c0 | 70 61 6e 3e 5d 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 | pan>]).|value|.{.........sum.+=. |
| 411e0 | 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | value;.....}.....<span.class="to |
| 41200 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c | k-kw">try</span>.expect(sum.==.< |
| 41220 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 3c 2f 73 70 61 6e | span.class="tok-number">20</span |
| 41240 | 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | >);......<span.class="tok-commen |
| 41260 | 74 22 3e 2f 2f 20 54 6f 20 61 63 63 65 73 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 69 74 65 | t">//.To.access.the.index.of.ite |
| 41280 | 72 61 74 69 6f 6e 2c 20 73 70 65 63 69 66 79 20 61 20 73 65 63 6f 6e 64 20 63 61 70 74 75 72 65 | ration,.specify.a.second.capture |
| 412a0 | 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .value.</span>.....<span.class=" |
| 412c0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 7a 65 72 6f 2d 69 6e 64 | tok-comment">//.This.is.zero-ind |
| 412e0 | 65 78 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | exed.</span>.....<span.class="to |
| 41300 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 32 3a 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">var</span>.sum2:.<span.cla |
| 41320 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e | ss="tok-type">i32</span>.=.<span |
| 41340 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">0</span>;... |
| 41360 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">for</span |
| 41380 | 3e 20 28 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c | >.(items).|value,.i|.{.........< |
| 413a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 413c0 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | xpect(<span.class="tok-builtin"> |
| 413e0 | 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 69 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | @TypeOf</span>(i).==.<span.class |
| 41400 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 | ="tok-type">usize</span>);...... |
| 41420 | 20 20 20 73 75 6d 32 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ...sum2.+=.<span.class="tok-buil |
| 41440 | 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | tin">@intCast</span>(<span.class |
| 41460 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 69 29 3b 0a 20 20 20 20 | ="tok-type">i32</span>,.i);..... |
| 41480 | 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | }.....<span.class="tok-kw">try</ |
| 414a0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 32 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | span>.expect(sum2.==.<span.class |
| 414c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | ="tok-number">10</span>);.}..<sp |
| 414e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 41500 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 72 65 | pan.class="tok-str">"for.re |
| 41520 | 66 65 72 65 6e 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ference"</span>.{.....<span |
| 41540 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 | .class="tok-kw">var</span>.items |
| 41560 | 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | .=.[_]<span.class="tok-type">i32 |
| 41580 | 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | </span>.{.<span.class="tok-numbe |
| 415a0 | 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">3</span>,.<span.class="tok-nu |
| 415c0 | 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">4</span>,.<span.class="tok |
| 415e0 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | -number">2</span>.};......<span. |
| 41600 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 65 72 61 74 65 20 6f | class="tok-comment">//.Iterate.o |
| 41620 | 76 65 72 20 74 68 65 20 73 6c 69 63 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 62 79 3c 2f 73 | ver.the.slice.by.reference.by</s |
| 41640 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | pan>.....<span.class="tok-commen |
| 41660 | 74 22 3e 2f 2f 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 61 74 20 74 68 65 20 63 61 70 74 75 72 | t">//.specifying.that.the.captur |
| 41680 | 65 20 76 61 6c 75 65 20 69 73 20 61 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | e.value.is.a.pointer.</span>.... |
| 416a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">for</span> |
| 416c0 | 20 28 69 74 65 6d 73 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 | .(items).|*value|.{.........valu |
| 416e0 | 65 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | e.*.+=.<span.class="tok-number"> |
| 41700 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | 1</span>;.....}......<span.class |
| 41720 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 74 65 6d | ="tok-kw">try</span>.expect(item |
| 41740 | 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 | s[<span.class="tok-number">0</sp |
| 41760 | 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | an>].==.<span.class="tok-number" |
| 41780 | 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >4</span>);.....<span.class="tok |
| 417a0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 74 65 6d 73 5b 3c 73 70 | -kw">try</span>.expect(items[<sp |
| 417c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 | an.class="tok-number">1</span>]. |
| 417e0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | ==.<span.class="tok-number">5</s |
| 41800 | 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>);.....<span.class="tok-kw"> |
| 41820 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c | try</span>.expect(items[<span.cl |
| 41840 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 | ass="tok-number">2</span>].==.<s |
| 41860 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">3</span>) |
| 41880 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ;.}..<span.class="tok-kw">test</ |
| 418a0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| 418c0 | 74 3b 66 6f 72 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | t;for.else"</span>.{.....<s |
| 418e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 61 | pan.class="tok-comment">//.For.a |
| 41900 | 6c 6c 6f 77 73 20 61 6e 20 65 6c 73 65 20 61 74 74 61 63 68 65 64 20 74 6f 20 69 74 2c 20 74 68 | llows.an.else.attached.to.it,.th |
| 41920 | 65 20 73 61 6d 65 20 61 73 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2e 3c 2f 73 70 61 6e 3e 0a 20 | e.same.as.a.while.loop.</span>.. |
| 41940 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 | ...<span.class="tok-kw">var</spa |
| 41960 | 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>.items.=.[_]?<span.class="tok- |
| 41980 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">i32</span>.{.<span.class=" |
| 419a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">3</span>,.<span.clas |
| 419c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-number">4</span>,.<span.c |
| 419e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | lass="tok-null">null</span>,.<sp |
| 41a00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d | an.class="tok-number">5</span>.} |
| 41a20 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | ;......<span.class="tok-comment" |
| 41a40 | 3e 2f 2f 20 46 6f 72 20 6c 6f 6f 70 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 61 | >//.For.loops.can.also.be.used.a |
| 41a60 | 73 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | s.expressions.</span>.....<span. |
| 41a80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 69 6d 69 6c 61 72 20 74 | class="tok-comment">//.Similar.t |
| 41aa0 | 6f 20 77 68 69 6c 65 20 6c 6f 6f 70 73 2c 20 77 68 65 6e 20 79 6f 75 20 62 72 65 61 6b 20 66 72 | o.while.loops,.when.you.break.fr |
| 41ac0 | 6f 6d 20 61 20 66 6f 72 20 6c 6f 6f 70 2c 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 69 | om.a.for.loop,.the.else.branch.i |
| 41ae0 | 73 20 6e 6f 74 20 65 76 61 6c 75 61 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | s.not.evaluated.</span>.....<spa |
| 41b00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a | n.class="tok-kw">var</span>.sum: |
| 41b20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 | .<span.class="tok-type">i32</spa |
| 41b40 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | n>.=.<span.class="tok-number">0< |
| 41b60 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | /span>;.....<span.class="tok-kw" |
| 41b80 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | >const</span>.result.=.<span.cla |
| 41ba0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 7c | ss="tok-kw">for</span>.(items).| |
| 41bc0 | 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | value|.{.........<span.class="to |
| 41be0 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 21 3d 20 3c 73 70 61 6e 20 | k-kw">if</span>.(value.!=.<span. |
| 41c00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a | class="tok-null">null</span>).{. |
| 41c20 | 20 20 20 20 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 2e 3f 3b 0a 20 20 20 20 | ............sum.+=.value.?;..... |
| 41c40 | 20 20 20 20 7d 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ....}.....}.<span.class="tok-kw" |
| 41c60 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | >else</span>.blk:.{.........<spa |
| 41c80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 41ca0 | 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ct(sum.==.<span.class="tok-numbe |
| 41cc0 | 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | r">12</span>);.........<span.cla |
| 41ce0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 73 75 | ss="tok-kw">break</span>.:blk.su |
| 41d00 | 6d 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | m;.....};.....<span.class="tok-k |
| 41d20 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 20 3d 3d 20 3c | w">try</span>.expect(result.==.< |
| 41d40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e | span.class="tok-number">12</span |
| 41d60 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >);.}</code></pre><pre><code.cla |
| 41d80 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 66 6f 72 2e 7a 69 67 0a 54 65 | ss="shell">$.zig.test.for.zig.Te |
| 41da0 | 73 74 20 5b 31 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 6f 72 20 62 61 73 69 63 73 26 71 | st.[1/3].test."for.basics&q |
| 41dc0 | 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 | uot;.....Test.[2/3].test."f |
| 41de0 | 6f 72 20 72 65 66 65 72 65 6e 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 33 2f 33 | or.reference".....Test.[3/3 |
| 41e00 | 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 6f 72 20 65 6c 73 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a | ].test."for.else"..... |
| 41e20 | 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.3.tests.passed..</code></pr |
| 41e40 | 65 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e 3c | e>........<h2.id="Labeled-for">< |
| 41e60 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 | a.href="#toc-Labeled-for">Labele |
| 41e80 | 64 20 66 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | d.for</a>.<a.class="hdr".href="# |
| 41ea0 | 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | Labeled-for">..</a></h2>........ |
| 41ec0 | 3c 70 3e 57 68 65 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | <p>When.a.<code.class="zig"><spa |
| 41ee0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | n.class="tok-kw">for</span></cod |
| 41f00 | 65 3e 20 6c 6f 6f 70 20 69 73 20 6c 61 62 65 6c 65 64 2c 20 69 74 20 63 61 6e 20 62 65 20 72 65 | e>.loop.is.labeled,.it.can.be.re |
| 41f20 | 66 65 72 65 6e 63 65 64 20 66 72 6f 6d 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ferenced.from.a.<code.class="zig |
| 41f40 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 | "><span.class="tok-kw">break</sp |
| 41f60 | 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 3c 63 6f 64 | an></code>...............or.<cod |
| 41f80 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 41fa0 | 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 77 | w">continue</span></code>.from.w |
| 41fc0 | 69 74 68 69 6e 20 61 20 6e 65 73 74 65 64 20 6c 6f 6f 70 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ithin.a.nested.loop:</p>.......< |
| 41fe0 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 42000 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 42020 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.std.=.<span. |
| 42040 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 | class="tok-builtin">@import</spa |
| 42060 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>(<span.class="tok-str">"s |
| 42080 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | td"</span>);.<span.class="t |
| 420a0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 | ok-kw">const</span>.expect.=.std |
| 420c0 | 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .testing.expect;..<span.class="t |
| 420e0 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| 42100 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 62 72 65 61 6b 26 71 75 6f 74 | tok-str">"nested.break" |
| 42120 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;</span>.{.....<span.class="tok- |
| 42140 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | kw">var</span>.count:.<span.clas |
| 42160 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | s="tok-type">usize</span>.=.<spa |
| 42180 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 | n.class="tok-number">0</span>;.. |
| 421a0 | 20 20 20 6f 75 74 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ...outer:.<span.class="tok-kw">f |
| 421c0 | 6f 72 3c 2f 73 70 61 6e 3e 20 28 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | or</span>.([_]<span.class="tok-t |
| 421e0 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">i32</span>{.<span.class="to |
| 42200 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-number">1</span>,.<span.class= |
| 42220 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">2</span>,.<span.cla |
| 42240 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">3</span>,.<span. |
| 42260 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">4</span>,.<sp |
| 42280 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d | an.class="tok-number">5</span>.} |
| 422a0 | 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ).|_|.{.........<span.class="tok |
| 422c0 | 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -kw">for</span>.([_]<span.class= |
| 422e0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">i32</span>{.<span.cla |
| 42300 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">1</span>,.<span. |
| 42320 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">2</span>,.<sp |
| 42340 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">3</span>,. |
| 42360 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e | <span.class="tok-number">4</span |
| 42380 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | >,.<span.class="tok-number">5</s |
| 423a0 | 70 61 6e 3e 20 7d 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 | pan>.}).|_|.{.............count. |
| 423c0 | 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | +=.<span.class="tok-number">1</s |
| 423e0 | 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>;.............<span.class="t |
| 42400 | 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 | ok-kw">break</span>.:outer;..... |
| 42420 | 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ....}.....}.....<span.class="tok |
| 42440 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 6f 75 6e 74 20 3d 3d 20 | -kw">try</span>.expect(count.==. |
| 42460 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e | <span.class="tok-number">1</span |
| 42480 | 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | >);.}..<span.class="tok-kw">test |
| 424a0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 424c0 | 75 6f 74 3b 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | uot;nested.continue"</span> |
| 424e0 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | .{.....<span.class="tok-kw">var< |
| 42500 | 2f 73 70 61 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | /span>.count:.<span.class="tok-t |
| 42520 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">usize</span>.=.<span.class= |
| 42540 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6f 75 74 65 72 | "tok-number">0</span>;.....outer |
| 42560 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e | :.<span.class="tok-kw">for</span |
| 42580 | 3e 20 28 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | >.([_]<span.class="tok-type">i32 |
| 425a0 | 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>{.<span.class="tok-number |
| 425c0 | 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">1</span>,.<span.class="tok-num |
| 425e0 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">2</span>,.<span.class="tok- |
| 42600 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">3</span>,.<span.class="t |
| 42620 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">4</span>,.<span.class |
| 42640 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">5</span>,.<span.cl |
| 42660 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-number">6</span>,.<span |
| 42680 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">7</span>,.<s |
| 426a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-number">8</span>. |
| 426c0 | 7d 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | }).|_|.{.........<span.class="to |
| 426e0 | 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | k-kw">for</span>.([_]<span.class |
| 42700 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c | ="tok-type">i32</span>{.<span.cl |
| 42720 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-number">1</span>,.<span |
| 42740 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">2</span>,.<s |
| 42760 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c | pan.class="tok-number">3</span>, |
| 42780 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 | .<span.class="tok-number">4</spa |
| 427a0 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f | n>,.<span.class="tok-number">5</ |
| 427c0 | 73 70 61 6e 3e 20 7d 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 | span>.}).|_|.{.............count |
| 427e0 | 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | .+=.<span.class="tok-number">1</ |
| 42800 | 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>;.............<span.class=" |
| 42820 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a | tok-kw">continue</span>.:outer;. |
| 42840 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ........}.....}......<span.class |
| 42860 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 6f 75 6e | ="tok-kw">try</span>.expect(coun |
| 42880 | 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c | t.==.<span.class="tok-number">8< |
| 428a0 | 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | /span>);.}</code></pre><pre><cod |
| 428c0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e | e.class="shell">$.zig.test.test. |
| 428e0 | 7a 69 67 0a 54 65 73 74 20 5b 31 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 65 73 74 65 64 | zig.Test.[1/2].test."nested |
| 42900 | 20 62 72 65 61 6b 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 32 5d 20 74 65 73 74 | .break".....Test.[2/2].test |
| 42920 | 20 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 | ."nested.continue".... |
| 42940 | 0a 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | ..All.2.tests.passed..</code></p |
| 42960 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 6c 69 6e 65 | re>...............<h2.id="inline |
| 42980 | 2d 66 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e | -for"><a.href="#toc-inline-for"> |
| 429a0 | 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | inline.for</a>.<a.class="hdr".hr |
| 429c0 | 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | ef="#inline-for">..</a></h2>.... |
| 429e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 6c 6f 6f 70 73 20 63 61 6e 20 62 65 20 69 | ....<p>.......For.loops.can.be.i |
| 42a00 | 6e 6c 69 6e 65 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 | nlined..This.causes.the.loop.to. |
| 42a20 | 62 65 20 75 6e 72 6f 6c 6c 65 64 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 | be.unrolled,.which.......allows. |
| 42a40 | 74 68 65 20 63 6f 64 65 20 74 6f 20 64 6f 20 73 6f 6d 65 20 74 68 69 6e 67 73 20 77 68 69 63 68 | the.code.to.do.some.things.which |
| 42a60 | 20 6f 6e 6c 79 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2c 0a 20 20 20 20 | .only.work.at.compile.time,..... |
| 42a80 | 20 20 73 75 63 68 20 61 73 20 75 73 65 20 74 79 70 65 73 20 61 73 20 66 69 72 73 74 20 63 6c 61 | ..such.as.use.types.as.first.cla |
| 42aa0 | 73 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 54 68 65 20 63 61 70 74 75 72 65 20 76 61 6c | ss.values........The.capture.val |
| 42ac0 | 75 65 20 61 6e 64 20 69 74 65 72 61 74 6f 72 20 76 61 6c 75 65 20 6f 66 20 69 6e 6c 69 6e 65 64 | ue.and.iterator.value.of.inlined |
| 42ae0 | 20 66 6f 72 20 6c 6f 6f 70 73 20 61 72 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d | .for.loops.are.......compile-tim |
| 42b00 | 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | e.known........</p>.......<p.cla |
| 42b20 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 42b40 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 42b60 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c | ">const</span>.expect.=.<span.cl |
| 42b80 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 42ba0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 42bc0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a | "</span>).testing.expect;.. |
| 42be0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e | <span.class="tok-kw">test</span> |
| 42c00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 6c | .<span.class="tok-str">"inl |
| 42c20 | 69 6e 65 20 66 6f 72 20 6c 6f 6f 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ine.for.loop"</span>.{..... |
| 42c40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 42c60 | 3e 20 6e 75 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | >.nums.=.[_]<span.class="tok-typ |
| 42c80 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | e">i32</span>{<span.class="tok-n |
| 42ca0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">2</span>,.<span.class="to |
| 42cc0 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-number">4</span>,.<span.class= |
| 42ce0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 7d 3b 0a 20 20 20 20 3c 73 70 61 | "tok-number">6</span>};.....<spa |
| 42d00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a | n.class="tok-kw">var</span>.sum: |
| 42d20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 | .<span.class="tok-type">usize</s |
| 42d40 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pan>.=.<span.class="tok-number"> |
| 42d60 | 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 0</span>;.....<span.class="tok-k |
| 42d80 | 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">inline</span>.<span.class="to |
| 42da0 | 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 73 29 20 7c 69 7c 20 7b 0a 20 20 | k-kw">for</span>.(nums).|i|.{... |
| 42dc0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | ......<span.class="tok-kw">const |
| 42de0 | 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | </span>.T.=.<span.class="tok-kw" |
| 42e00 | 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 69 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | >switch</span>.(i).{............ |
| 42e20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | .<span.class="tok-number">2</spa |
| 42e40 | 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | n>.=>.<span.class="tok-type"> |
| 42e60 | 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | f32</span>,.............<span.cl |
| 42e80 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 | ass="tok-number">4</span>.=>. |
| 42ea0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">i8</span> |
| 42ec0 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ,.............<span.class="tok-n |
| 42ee0 | 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">6</span>.=>.<span.clas |
| 42f00 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 | s="tok-type">bool</span>,....... |
| 42f20 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | ......<span.class="tok-kw">else< |
| 42f40 | 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.=>.<span.class="tok-kw |
| 42f60 | 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b | ">unreachable</span>,.........}; |
| 42f80 | 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 28 54 | .........sum.+=.typeNameLength(T |
| 42fa0 | 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | );.....}.....<span.class="tok-kw |
| 42fc0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e | ">try</span>.expect(sum.==.<span |
| 42fe0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | .class="tok-number">9</span>);.} |
| 43000 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | ..<span.class="tok-kw">fn</span> |
| 43020 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 79 70 65 4e 61 6d 65 4c 65 | .<span.class="tok-fn">typeNameLe |
| 43040 | 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ngth</span>(<span.class="tok-kw" |
| 43060 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >comptime</span>.T:.<span.class= |
| 43080 | 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | "tok-type">type</span>).<span.cl |
| 430a0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ass="tok-type">usize</span>.{... |
| 430c0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | ..<span.class="tok-kw">return</s |
| 430e0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | pan>.<span.class="tok-builtin">@ |
| 43100 | 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 6f 64 65 3e | typeName</span>(T).len;.}</code> |
| 43120 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 43140 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 | .zig.test.test.zig.Test.[1/1].te |
| 43160 | 73 74 20 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 66 6f 72 20 6c 6f 6f 70 26 71 75 6f 74 3b 2e 2e | st."inline.for.loop".. |
| 43180 | 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | ....All.1.tests.passed..</code>< |
| 431a0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 | /pre>........<p>.......It.is.rec |
| 431c0 | 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ommended.to.use.<code.class="zig |
| 431e0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 | "><span.class="tok-kw">inline</s |
| 43200 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 20 6f 6e 6c 79 20 66 6f 72 20 6f 6e 65 20 6f | pan></code>.loops.only.for.one.o |
| 43220 | 66 20 74 68 65 73 65 20 72 65 61 73 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | f.these.reasons:.......</p>..... |
| 43240 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 6e 65 65 64 20 74 68 65 20 | ..<ul>.........<li>You.need.the. |
| 43260 | 6c 6f 6f 70 20 74 6f 20 65 78 65 63 75 74 65 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d | loop.to.execute.at.<a.href="#com |
| 43280 | 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 73 65 6d 61 | ptime">comptime</a>.for.the.sema |
| 432a0 | 6e 74 69 63 73 20 74 6f 20 77 6f 72 6b 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | ntics.to.work.</li>.........<li> |
| 432c0 | 0a 20 20 20 20 20 20 20 20 59 6f 75 20 68 61 76 65 20 61 20 62 65 6e 63 68 6d 61 72 6b 20 74 6f | .........You.have.a.benchmark.to |
| 432e0 | 20 70 72 6f 76 65 20 74 68 61 74 20 66 6f 72 63 69 62 6c 79 20 75 6e 72 6f 6c 6c 69 6e 67 20 74 | .prove.that.forcibly.unrolling.t |
| 43300 | 68 65 20 6c 6f 6f 70 20 69 6e 20 74 68 69 73 20 77 61 79 20 69 73 20 6d 65 61 73 75 72 61 62 6c | he.loop.in.this.way.is.measurabl |
| 43320 | 79 20 66 61 73 74 65 72 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f | y.faster..........</li>.......</ |
| 43340 | 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 | ul>..............<p>See.also:</p |
| 43360 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 | ><ul>.<li><a.href="#while">while |
| 43380 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 | </a></li>.<li><a.href="#comptime |
| 433a0 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ">comptime</a></li>.<li><a.href= |
| 433c0 | 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | "#Arrays">Arrays</a></li>.<li><a |
| 433e0 | 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | .href="#Slices">Slices</a></li>. |
| 43400 | 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 69 66 22 3e | </ul>...............<h1.id="if"> |
| 43420 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 66 22 3e 69 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | <a.href="#toc-if">if</a>.<a.clas |
| 43440 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a | s="hdr".href="#if">..</a></h1>.. |
| 43460 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 66 2e 7a 69 67 3c 2f 70 3e | ......<p.class="file">if.zig</p> |
| 43480 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 434a0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f | ss="tok-comment">//.If.expressio |
| 434c0 | 6e 73 20 68 61 76 65 20 74 68 72 65 65 20 75 73 65 73 2c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e | ns.have.three.uses,.correspondin |
| 434e0 | 67 20 74 6f 20 74 68 65 20 74 68 72 65 65 20 74 79 70 65 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | g.to.the.three.types:</span>.<sp |
| 43500 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 62 6f 6f 6c | an.class="tok-comment">//.*.bool |
| 43520 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | </span>.<span.class="tok-comment |
| 43540 | 22 3e 2f 2f 20 2a 20 3f 54 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">//.*.?T</span>.<span.class="to |
| 43560 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 61 6e 79 65 72 72 6f 72 21 54 3c 2f 73 70 61 6e | k-comment">//.*.anyerror!T</span |
| 43580 | 3e 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | >..<span.class="tok-kw">const</s |
| 435a0 | 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | pan>.expect.=.<span.class="tok-b |
| 435c0 | 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | uiltin">@import</span>(<span.cla |
| 435e0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 | ss="tok-str">"std"</sp |
| 43600 | 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | an>).testing.expect;..<span.clas |
| 43620 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">test</span>.<span.cla |
| 43640 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 65 78 70 72 65 73 73 69 6f 6e | ss="tok-str">"if.expression |
| 43660 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 43680 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 | "tok-comment">//.If.expressions. |
| 436a0 | 61 72 65 20 75 73 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 61 20 74 65 72 6e 61 72 79 20 65 78 | are.used.instead.of.a.ternary.ex |
| 436c0 | 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pression.</span>.....<span.class |
| 436e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 | ="tok-kw">const</span>.a:.<span. |
| 43700 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | class="tok-type">u32</span>.=.<s |
| 43720 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">5</span>; |
| 43740 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| 43760 | 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.b:.<span.class="tok-type" |
| 43780 | 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >u32</span>.=.<span.class="tok-n |
| 437a0 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">4</span>;.....<span.class |
| 437c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 | ="tok-kw">const</span>.result.=. |
| 437e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 | <span.class="tok-kw">if</span>.( |
| 43800 | 61 20 21 3d 20 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | a.!=.b).<span.class="tok-number" |
| 43820 | 3e 34 37 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >47</span>.<span.class="tok-kw"> |
| 43840 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | else</span>.<span.class="tok-num |
| 43860 | 62 65 72 22 3e 33 30 38 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ber">3089</span>;.....<span.clas |
| 43880 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 | s="tok-kw">try</span>.expect(res |
| 438a0 | 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ult.==.<span.class="tok-number"> |
| 438c0 | 34 37 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 47</span>);.}..<span.class="tok- |
| 438e0 | 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">test</span>.<span.class="tok |
| 43900 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 62 6f 6f 6c 65 61 6e 26 71 75 6f 74 3b 3c 2f 73 70 | -str">"if.boolean"</sp |
| 43920 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | an>.{.....<span.class="tok-comme |
| 43940 | 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 62 6f 6f 6c 65 | nt">//.If.expressions.test.boole |
| 43960 | 61 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | an.conditions.</span>.....<span. |
| 43980 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c | class="tok-kw">const</span>.a:.< |
| 439a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">u32</span> |
| 439c0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | .=.<span.class="tok-number">5</s |
| 439e0 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>;.....<span.class="tok-kw">c |
| 43a00 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | onst</span>.b:.<span.class="tok- |
| 43a20 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">u32</span>.=.<span.class=" |
| 43a40 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-number">4</span>;.....<span. |
| 43a60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 21 3d 20 62 | class="tok-kw">if</span>.(a.!=.b |
| 43a80 | 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ).{.........<span.class="tok-kw" |
| 43aa0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >try</span>.expect(<span.class=" |
| 43ac0 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 | tok-null">true</span>);.....}.<s |
| 43ae0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">else</span>.< |
| 43b00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 | span.class="tok-kw">if</span>.(a |
| 43b20 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f | .==.<span.class="tok-number">9</ |
| 43b40 | 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>).{.........<span.class="to |
| 43b60 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 | k-kw">unreachable</span>;.....}. |
| 43b80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e | <span.class="tok-kw">else</span> |
| 43ba0 | 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .{.........<span.class="tok-kw"> |
| 43bc0 | 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 | unreachable</span>;.....}.}..<sp |
| 43be0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 43c00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 6f 70 74 | pan.class="tok-str">"if.opt |
| 43c20 | 69 6f 6e 61 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ional"</span>.{.....<span.c |
| 43c40 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 | lass="tok-comment">//.If.express |
| 43c60 | 69 6f 6e 73 20 74 65 73 74 20 66 6f 72 20 6e 75 6c 6c 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 | ions.test.for.null.</span>...... |
| 43c80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 43ca0 | 3e 20 61 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | >.a:.?<span.class="tok-type">u32 |
| 43cc0 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | </span>.=.<span.class="tok-numbe |
| 43ce0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">0</span>;.....<span.class="to |
| 43d00 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 | k-kw">if</span>.(a).|value|.{... |
| 43d20 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | ......<span.class="tok-kw">try</ |
| 43d40 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | span>.expect(value.==.<span.clas |
| 43d60 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 | s="tok-number">0</span>);.....}. |
| 43d80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e | <span.class="tok-kw">else</span> |
| 43da0 | 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .{.........<span.class="tok-kw"> |
| 43dc0 | 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c | unreachable</span>;.....}......< |
| 43de0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 43e00 | 20 62 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | .b:.?<span.class="tok-type">u32< |
| 43e20 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | /span>.=.<span.class="tok-null"> |
| 43e40 | 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | null</span>;.....<span.class="to |
| 43e60 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 | k-kw">if</span>.(b).|value|.{... |
| 43e80 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 | ......<span.class="tok-kw">unrea |
| 43ea0 | 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | chable</span>;.....}.<span.class |
| 43ec0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 | ="tok-kw">else</span>.{......... |
| 43ee0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 43f00 | 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | expect(<span.class="tok-null">tr |
| 43f20 | 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ue</span>);.....}......<span.cla |
| 43f40 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 69 73 20 | ss="tok-comment">//.The.else.is. |
| 43f60 | 6e 6f 74 20 72 65 71 75 69 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | not.required.</span>.....<span.c |
| 43f80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c | lass="tok-kw">if</span>.(a).|val |
| 43fa0 | 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ue|.{.........<span.class="tok-k |
| 43fc0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 | w">try</span>.expect(value.==.<s |
| 43fe0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">0</span>) |
| 44000 | 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | ;.....}......<span.class="tok-co |
| 44020 | 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 74 65 73 74 20 61 67 61 69 6e 73 74 20 6e 75 6c 6c 20 6f | mment">//.To.test.against.null.o |
| 44040 | 6e 6c 79 2c 20 75 73 65 20 74 68 65 20 62 69 6e 61 72 79 20 65 71 75 61 6c 69 74 79 20 6f 70 65 | nly,.use.the.binary.equality.ope |
| 44060 | 72 61 74 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | rator.</span>.....<span.class="t |
| 44080 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">if</span>.(b.==.<span.cla |
| 440a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 | ss="tok-null">null</span>).{.... |
| 440c0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 440e0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | pan>.expect(<span.class="tok-nul |
| 44100 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 | l">true</span>);.....}......<spa |
| 44120 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 | n.class="tok-comment">//.Access. |
| 44140 | 74 68 65 20 76 61 6c 75 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 75 73 69 6e 67 20 61 20 70 | the.value.by.reference.using.a.p |
| 44160 | 6f 69 6e 74 65 72 20 63 61 70 74 75 72 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | ointer.capture.</span>.....<span |
| 44180 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3f 3c | .class="tok-kw">var</span>.c:.?< |
| 441a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">u32</span> |
| 441c0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 | .=.<span.class="tok-number">3</s |
| 441e0 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 | pan>;.....<span.class="tok-kw">i |
| 44200 | 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 | f</span>.(c).|*value|.{......... |
| 44220 | 76 61 6c 75 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | value.*.=.<span.class="tok-numbe |
| 44240 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | r">2</span>;.....}......<span.cl |
| 44260 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 76 61 6c 75 | ass="tok-kw">if</span>.(c).|valu |
| 44280 | 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | e|.{.........<span.class="tok-kw |
| 442a0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 | ">try</span>.expect(value.==.<sp |
| 442c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-number">2</span>); |
| 442e0 | 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | .....}.<span.class="tok-kw">else |
| 44300 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.{.........<span.class="t |
| 44320 | 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d | ok-kw">unreachable</span>;.....} |
| 44340 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | .}..<span.class="tok-kw">test</s |
| 44360 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 44380 | 3b 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ;if.error.union"</span>.{.. |
| 443a0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ...<span.class="tok-comment">//. |
| 443c0 | 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 66 6f 72 20 65 72 72 6f 72 73 2e 3c | If.expressions.test.for.errors.< |
| 443e0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | /span>.....<span.class="tok-comm |
| 44400 | 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 20 74 68 65 20 7c 65 72 72 7c 20 63 61 70 74 75 72 65 20 6f | ent">//.Note.the.|err|.capture.o |
| 44420 | 6e 20 74 68 65 20 65 6c 73 65 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | n.the.else.</span>......<span.cl |
| 44440 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 | ass="tok-kw">const</span>.a:.<sp |
| 44460 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 | an.class="tok-type">anyerror</sp |
| 44480 | 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | an>!<span.class="tok-type">u32</ |
| 444a0 | 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | span>.=.<span.class="tok-number" |
| 444c0 | 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >0</span>;.....<span.class="tok- |
| 444e0 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 | kw">if</span>.(a).|value|.{..... |
| 44500 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 44520 | 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.expect(value.==.<span.class= |
| 44540 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 | "tok-number">0</span>);.....}.<s |
| 44560 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c | pan.class="tok-kw">else</span>.| |
| 44580 | 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | err|.{.........<span.class="tok- |
| 445a0 | 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 | kw">unreachable</span>;.....}... |
| 445c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| 445e0 | 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 | pan>.b:.<span.class="tok-type">a |
| 44600 | 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nyerror</span>!<span.class="tok- |
| 44620 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">u32</span>.=.<span.class=" |
| 44640 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 3b 0a 20 | tok-kw">error</span>.BadValue;.. |
| 44660 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | ...<span.class="tok-kw">if</span |
| 44680 | 3e 20 28 62 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | >.(b).|value|.{.........<span.cl |
| 446a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b | ass="tok-kw">unreachable</span>; |
| 446c0 | 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | .....}.<span.class="tok-kw">else |
| 446e0 | 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | </span>.|err|.{.........<span.cl |
| 44700 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 | ass="tok-kw">try</span>.expect(e |
| 44720 | 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 | rr.==.<span.class="tok-kw">error |
| 44740 | 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 | </span>.BadValue);.....}......<s |
| 44760 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 | pan.class="tok-comment">//.The.e |
| 44780 | 6c 73 65 20 61 6e 64 20 7c 65 72 72 7c 20 63 61 70 74 75 72 65 20 69 73 20 73 74 72 69 63 74 6c | lse.and.|err|.capture.is.strictl |
| 447a0 | 79 20 72 65 71 75 69 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | y.required.</span>.....<span.cla |
| 447c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 | ss="tok-kw">if</span>.(a).|value |
| 447e0 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | |.{.........<span.class="tok-kw" |
| 44800 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 | >try</span>.expect(value.==.<spa |
| 44820 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">0</span>);. |
| 44840 | 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | ....}.<span.class="tok-kw">else< |
| 44860 | 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.|_|.{}......<span.class=" |
| 44880 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 63 68 65 63 6b 20 6f 6e 6c 79 20 74 68 | tok-comment">//.To.check.only.th |
| 448a0 | 65 20 65 72 72 6f 72 20 76 61 6c 75 65 2c 20 75 73 65 20 61 6e 20 65 6d 70 74 79 20 62 6c 6f 63 | e.error.value,.use.an.empty.bloc |
| 448c0 | 6b 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k.expression.</span>.....<span.c |
| 448e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 5f 7c 20 | lass="tok-kw">if</span>.(b).|_|. |
| 44900 | 7b 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 | {}.<span.class="tok-kw">else</sp |
| 44920 | 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.|err|.{.........<span.class= |
| 44940 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 72 72 20 3d | "tok-kw">try</span>.expect(err.= |
| 44960 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 | =.<span.class="tok-kw">error</sp |
| 44980 | 61 6e 3e 2e 42 61 64 56 61 6c 75 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | an>.BadValue);.....}......<span. |
| 449a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 | class="tok-comment">//.Access.th |
| 449c0 | 65 20 76 61 6c 75 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 75 73 69 6e 67 20 61 20 70 6f 69 | e.value.by.reference.using.a.poi |
| 449e0 | 6e 74 65 72 20 63 61 70 74 75 72 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | nter.capture.</span>.....<span.c |
| 44a00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.c:.<spa |
| 44a20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 | n.class="tok-type">anyerror</spa |
| 44a40 | 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | n>!<span.class="tok-type">u32</s |
| 44a60 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pan>.=.<span.class="tok-number"> |
| 44a80 | 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 3</span>;.....<span.class="tok-k |
| 44aa0 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 | w">if</span>.(c).|*value|.{..... |
| 44ac0 | 20 20 20 20 76 61 6c 75 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ....value.*.=.<span.class="tok-n |
| 44ae0 | 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 | umber">9</span>;.....}.<span.cla |
| 44b00 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a | ss="tok-kw">else</span>.|err|.{. |
| 44b20 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 | ........<span.class="tok-kw">unr |
| 44b40 | 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 | eachable</span>;.....}......<spa |
| 44b60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c | n.class="tok-kw">if</span>.(c).| |
| 44b80 | 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | value|.{.........<span.class="to |
| 44ba0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d | k-kw">try</span>.expect(value.== |
| 44bc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 | .<span.class="tok-number">9</spa |
| 44be0 | 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | n>);.....}.<span.class="tok-kw"> |
| 44c00 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | else</span>.|err|.{.........<spa |
| 44c20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 | n.class="tok-kw">unreachable</sp |
| 44c40 | 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | an>;.....}.}..<span.class="tok-k |
| 44c60 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | w">test</span>.<span.class="tok- |
| 44c80 | 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 77 69 74 68 20 6f | str">"if.error.union.with.o |
| 44ca0 | 70 74 69 6f 6e 61 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ptional"</span>.{.....<span |
| 44cc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 | .class="tok-comment">//.If.expre |
| 44ce0 | 73 73 69 6f 6e 73 20 74 65 73 74 20 66 6f 72 20 65 72 72 6f 72 73 20 62 65 66 6f 72 65 20 75 6e | ssions.test.for.errors.before.un |
| 44d00 | 77 72 61 70 70 69 6e 67 20 6f 70 74 69 6f 6e 61 6c 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | wrapping.optionals.</span>.....< |
| 44d20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 | span.class="tok-comment">//.The. |
| 44d40 | 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 63 61 70 74 75 72 65 27 73 20 74 79 70 65 20 | |optional_value|.capture's.type. |
| 44d60 | 69 73 20 3f 75 33 32 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | is.?u32.</span>......<span.class |
| 44d80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 | ="tok-kw">const</span>.a:.<span. |
| 44da0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e | class="tok-type">anyerror</span> |
| 44dc0 | 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 | !?<span.class="tok-type">u32</sp |
| 44de0 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | an>.=.<span.class="tok-number">0 |
| 44e00 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>;.....<span.class="tok-kw |
| 44e20 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c | ">if</span>.(a).|optional_value| |
| 44e40 | 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .{.........<span.class="tok-kw"> |
| 44e60 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 | try</span>.expect(optional_value |
| 44e80 | 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | .?.==.<span.class="tok-number">0 |
| 44ea0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>);.....}.<span.class="tok |
| 44ec0 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 | -kw">else</span>.|err|.{........ |
| 44ee0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c | .<span.class="tok-kw">unreachabl |
| 44f00 | 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e</span>;.....}......<span.class |
| 44f20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 | ="tok-kw">const</span>.b:.<span. |
| 44f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e | class="tok-type">anyerror</span> |
| 44f60 | 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 | !?<span.class="tok-type">u32</sp |
| 44f80 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c | an>.=.<span.class="tok-null">nul |
| 44fa0 | 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | l</span>;.....<span.class="tok-k |
| 44fc0 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 | w">if</span>.(b).|optional_value |
| 44fe0 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | |.{.........<span.class="tok-kw" |
| 45000 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 | >try</span>.expect(optional_valu |
| 45020 | 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | e.==.<span.class="tok-null">null |
| 45040 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>);.....}.<span.class="tok |
| 45060 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 | -kw">else</span>.|err|.{........ |
| 45080 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c | .<span.class="tok-kw">unreachabl |
| 450a0 | 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e</span>;.....}......<span.class |
| 450c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 | ="tok-kw">const</span>.c:.<span. |
| 450e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e | class="tok-type">anyerror</span> |
| 45100 | 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 | !?<span.class="tok-type">u32</sp |
| 45120 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 | an>.=.<span.class="tok-kw">error |
| 45140 | 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | </span>.BadValue;.....<span.clas |
| 45160 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 6f 70 74 69 6f 6e | s="tok-kw">if</span>.(c).|option |
| 45180 | 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | al_value|.{.........<span.class= |
| 451a0 | 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | "tok-kw">unreachable</span>;.... |
| 451c0 | 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 | .}.<span.class="tok-kw">else</sp |
| 451e0 | 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.|err|.{.........<span.class= |
| 45200 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 72 72 20 3d | "tok-kw">try</span>.expect(err.= |
| 45220 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 | =.<span.class="tok-kw">error</sp |
| 45240 | 61 6e 3e 2e 42 61 64 56 61 6c 75 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | an>.BadValue);.....}......<span. |
| 45260 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 | class="tok-comment">//.Access.th |
| 45280 | 65 20 76 61 6c 75 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 62 79 20 75 73 69 6e 67 20 61 20 | e.value.by.reference.by.using.a. |
| 452a0 | 70 6f 69 6e 74 65 72 20 63 61 70 74 75 72 65 20 65 61 63 68 20 74 69 6d 65 2e 3c 2f 73 70 61 6e | pointer.capture.each.time.</span |
| 452c0 | 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | >.....<span.class="tok-kw">var</ |
| 452e0 | 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.d:.<span.class="tok-type"> |
| 45300 | 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | anyerror</span>!?<span.class="to |
| 45320 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-type">u32</span>.=.<span.class |
| 45340 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | ="tok-number">3</span>;.....<spa |
| 45360 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 64 29 20 7c | n.class="tok-kw">if</span>.(d).| |
| 45380 | 2a 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | *optional_value|.{.........<span |
| 453a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 70 74 69 6f | .class="tok-kw">if</span>.(optio |
| 453c0 | 6e 61 6c 5f 76 61 6c 75 65 2e 2a 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 | nal_value.*).|*value|.{......... |
| 453e0 | 20 20 20 20 76 61 6c 75 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ....value.*.=.<span.class="tok-n |
| 45400 | 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d | umber">9</span>;.........}.....} |
| 45420 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e | .<span.class="tok-kw">else</span |
| 45440 | 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >.|err|.{.........<span.class="t |
| 45460 | 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d | ok-kw">unreachable</span>;.....} |
| 45480 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 | ......<span.class="tok-kw">if</s |
| 454a0 | 70 61 6e 3e 20 28 64 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 | pan>.(d).|optional_value|.{..... |
| 454c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 454e0 | 61 6e 3e 20 65 78 70 65 63 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c | an>.expect(optional_value.?.==.< |
| 45500 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e | span.class="tok-number">9</span> |
| 45520 | 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c | );.....}.<span.class="tok-kw">el |
| 45540 | 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | se</span>.|err|.{.........<span. |
| 45560 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e | class="tok-kw">unreachable</span |
| 45580 | 3e 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | >;.....}.}</code></pre><pre><cod |
| 455a0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 69 66 2e 7a 69 | e.class="shell">$.zig.test.if.zi |
| 455c0 | 67 0a 54 65 73 74 20 5b 31 2f 35 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 69 66 20 65 78 70 72 65 | g.Test.[1/5].test."if.expre |
| 455e0 | 73 73 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 35 5d 20 74 65 73 74 20 | ssion".....Test.[2/5].test. |
| 45600 | 26 71 75 6f 74 3b 69 66 20 62 6f 6f 6c 65 61 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 | "if.boolean".....Test. |
| 45620 | 5b 33 2f 35 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 69 66 20 6f 70 74 69 6f 6e 61 6c 26 71 75 6f | [3/5].test."if.optional&quo |
| 45640 | 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 34 2f 35 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 69 66 20 | t;.....Test.[4/5].test."if. |
| 45660 | 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 35 2f 35 5d | error.union".....Test.[5/5] |
| 45680 | 20 74 65 73 74 20 26 71 75 6f 74 3b 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 77 69 74 68 20 | .test."if.error.union.with. |
| 456a0 | 6f 70 74 69 6f 6e 61 6c 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 35 20 74 65 73 74 73 20 | optional"......All.5.tests. |
| 456c0 | 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | passed..</code></pre>........<p> |
| 456e0 | 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | See.also:</p><ul>.<li><a.href="# |
| 45700 | 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c | Optionals">Optionals</a></li>.<l |
| 45720 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f | i><a.href="#Errors">Errors</a></ |
| 45740 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 | li>.</ul>...............<h1.id=" |
| 45760 | 64 65 66 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 65 66 65 72 22 3e 64 65 66 65 | defer"><a.href="#toc-defer">defe |
| 45780 | 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 64 65 66 65 | r</a>.<a.class="hdr".href="#defe |
| 457a0 | 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | r">..</a></h1>........<p.class=" |
| 457c0 | 66 69 6c 65 22 3e 64 65 66 65 72 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | file">defer.zig</p><pre><code.cl |
| 457e0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ass="zig"><span.class="tok-kw">c |
| 45800 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | onst</span>.std.=.<span.class="t |
| 45820 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-builtin">@import</span>(<span |
| 45840 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b | .class="tok-str">"std" |
| 45860 | 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | </span>);.<span.class="tok-kw">c |
| 45880 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 | onst</span>.expect.=.std.testing |
| 458a0 | 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | .expect;.<span.class="tok-kw">co |
| 458c0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 | nst</span>.print.=.std.debug.pri |
| 458e0 | 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | nt;..<span.class="tok-comment">/ |
| 45900 | 2f 20 64 65 66 65 72 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 72 65 73 73 69 | /.defer.will.execute.an.expressi |
| 45920 | 6f 6e 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f | on.at.the.end.of.the.current.sco |
| 45940 | 70 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pe.</span>.<span.class="tok-kw"> |
| 45960 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 | fn</span>.<span.class="tok-fn">d |
| 45980 | 65 66 65 72 45 78 61 6d 70 6c 65 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | eferExample</span>().!<span.clas |
| 459a0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | s="tok-type">usize</span>.{..... |
| 459c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">var</span>. |
| 459e0 | 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c | a:.<span.class="tok-type">usize< |
| 45a00 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | /span>.=.<span.class="tok-number |
| 45a20 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ">1</span>;......{.........<span |
| 45a40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 20 3d | .class="tok-kw">defer</span>.a.= |
| 45a60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | .<span.class="tok-number">2</spa |
| 45a80 | 6e 3e 3b 0a 20 20 20 20 20 20 20 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>;.........a.=.<span.class="tok |
| 45aa0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 | -number">1</span>;.....}.....<sp |
| 45ac0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 | an.class="tok-kw">try</span>.exp |
| 45ae0 | 65 63 74 28 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ect(a.==.<span.class="tok-number |
| 45b00 | 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ">2</span>);......a.=.<span.clas |
| 45b20 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | s="tok-number">5</span>;.....<sp |
| 45b40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">return</span>. |
| 45b60 | 61 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | a;.}..<span.class="tok-kw">test< |
| 45b80 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>.<span.class="tok-str">&qu |
| 45ba0 | 6f 74 3b 64 65 66 65 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ot;defer.basics"</span>.{.. |
| 45bc0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 45be0 | 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | n>.expect((<span.class="tok-kw"> |
| 45c00 | 74 72 79 3c 2f 73 70 61 6e 3e 20 64 65 66 65 72 45 78 61 6d 70 6c 65 28 29 29 20 3d 3d 20 3c 73 | try</span>.deferExample()).==.<s |
| 45c20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">5</span>) |
| 45c40 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | ;.}..<span.class="tok-comment">/ |
| 45c60 | 2f 20 49 66 20 6d 75 6c 74 69 70 6c 65 20 64 65 66 65 72 20 73 74 61 74 65 6d 65 6e 74 73 20 61 | /.If.multiple.defer.statements.a |
| 45c80 | 72 65 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 79 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 | re.specified,.they.will.be.execu |
| 45ca0 | 74 65 64 20 69 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | ted.in</span>.<span.class="tok-c |
| 45cc0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 72 65 76 65 72 73 65 20 6f 72 64 65 72 20 74 68 65 | omment">//.the.reverse.order.the |
| 45ce0 | 79 20 77 65 72 65 20 72 75 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | y.were.run.</span>.<span.class=" |
| 45d00 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 45d20 | 6f 6b 2d 66 6e 22 3e 64 65 66 65 72 55 6e 77 69 6e 64 45 78 61 6d 70 6c 65 3c 2f 73 70 61 6e 3e | ok-fn">deferUnwindExample</span> |
| 45d40 | 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | ().<span.class="tok-type">void</ |
| 45d60 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>.{.....print(<span.class="t |
| 45d80 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | ok-str">"\n"</span>,.. |
| 45da0 | 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 | {});......<span.class="tok-kw">d |
| 45dc0 | 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 | efer</span>.{.........print(<spa |
| 45de0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 20 26 71 75 6f 74 3b | n.class="tok-str">"1." |
| 45e00 | 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 | </span>,..{});.....}.....<span.c |
| 45e20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | lass="tok-kw">defer</span>.{.... |
| 45e40 | 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | .....print(<span.class="tok-str" |
| 45e60 | 3e 26 71 75 6f 74 3b 32 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 | >"2."</span>,..{});... |
| 45e80 | 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | ..}.....<span.class="tok-kw">if< |
| 45ea0 | 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | /span>.(<span.class="tok-null">f |
| 45ec0 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | alse</span>).{.........<span.cla |
| 45ee0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 65 66 65 72 73 20 61 72 65 20 6e | ss="tok-comment">//.defers.are.n |
| 45f00 | 6f 74 20 72 75 6e 20 69 66 20 74 68 65 79 20 61 72 65 20 6e 65 76 65 72 20 65 78 65 63 75 74 65 | ot.run.if.they.are.never.execute |
| 45f20 | 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | d.</span>.........<span.class="t |
| 45f40 | 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | ok-kw">defer</span>.{........... |
| 45f60 | 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | ..print(<span.class="tok-str">&q |
| 45f80 | 75 6f 74 3b 33 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 | uot;3."</span>,..{});...... |
| 45fa0 | 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ...}.....}.}..<span.class="tok-k |
| 45fc0 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | w">test</span>.<span.class="tok- |
| 45fe0 | 73 74 72 22 3e 26 71 75 6f 74 3b 64 65 66 65 72 20 75 6e 77 69 6e 64 69 6e 67 26 71 75 6f 74 3b | str">"defer.unwinding" |
| 46000 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 64 65 66 65 72 55 6e 77 69 6e 64 45 78 61 6d 70 6c 65 | </span>.{.....deferUnwindExample |
| 46020 | 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | ();.}..<span.class="tok-comment" |
| 46040 | 3e 2f 2f 20 54 68 65 20 65 72 72 64 65 66 65 72 20 6b 65 79 77 6f 72 64 20 69 73 20 73 69 6d 69 | >//.The.errdefer.keyword.is.simi |
| 46060 | 6c 61 72 20 74 6f 20 64 65 66 65 72 2c 20 62 75 74 20 77 69 6c 6c 20 6f 6e 6c 79 20 65 78 65 63 | lar.to.defer,.but.will.only.exec |
| 46080 | 75 74 65 20 69 66 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ute.if.the</span>.<span.class="t |
| 460a0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 63 6f 70 65 20 72 65 74 75 72 6e 73 20 77 69 74 | ok-comment">//.scope.returns.wit |
| 460c0 | 68 20 61 6e 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | h.an.error.</span>.<span.class=" |
| 460e0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | tok-comment">//</span>.<span.cla |
| 46100 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 65 73 70 65 | ss="tok-comment">//.This.is.espe |
| 46120 | 63 69 61 6c 6c 79 20 75 73 65 66 75 6c 20 69 6e 20 61 6c 6c 6f 77 69 6e 67 20 61 20 66 75 6e 63 | cially.useful.in.allowing.a.func |
| 46140 | 74 69 6f 6e 20 74 6f 20 63 6c 65 61 6e 20 75 70 20 70 72 6f 70 65 72 6c 79 3c 2f 73 70 61 6e 3e | tion.to.clean.up.properly</span> |
| 46160 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 6e | .<span.class="tok-comment">//.on |
| 46180 | 20 65 72 72 6f 72 2c 20 61 6e 64 20 72 65 70 6c 61 63 65 73 20 67 6f 74 6f 20 65 72 72 6f 72 20 | .error,.and.replaces.goto.error. |
| 461a0 | 68 61 6e 64 6c 69 6e 67 20 74 61 63 74 69 63 73 20 61 73 20 73 65 65 6e 20 69 6e 20 63 2e 3c 2f | handling.tactics.as.seen.in.c.</ |
| 461c0 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | span>.<span.class="tok-kw">fn</s |
| 461e0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 66 65 72 45 | pan>.<span.class="tok-fn">deferE |
| 46200 | 72 72 6f 72 45 78 61 6d 70 6c 65 3c 2f 73 70 61 6e 3e 28 69 73 5f 65 72 72 6f 72 3a 20 3c 73 70 | rrorExample</span>(is_error:.<sp |
| 46220 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 | an.class="tok-type">bool</span>) |
| 46240 | 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | .!<span.class="tok-type">void</s |
| 46260 | 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.{.....print(<span.class="to |
| 46280 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 73 74 61 72 74 20 6f 66 20 66 75 6e 63 74 69 6f 6e | k-str">"\nstart.of.function |
| 462a0 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 | \n"</span>,..{});......<spa |
| 462c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 77 69 | n.class="tok-comment">//.This.wi |
| 462e0 | 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 65 78 65 63 75 74 65 64 20 6f 6e 20 65 78 69 74 3c 2f 73 | ll.always.be.executed.on.exit</s |
| 46300 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 | pan>.....<span.class="tok-kw">de |
| 46320 | 66 65 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e | fer</span>.{.........print(<span |
| 46340 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 64 20 6f 66 20 66 75 | .class="tok-str">"end.of.fu |
| 46360 | 6e 63 74 69 6f 6e 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 | nction\n"</span>,..{});.... |
| 46380 | 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 | .}......<span.class="tok-kw">err |
| 463a0 | 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 | defer</span>.{.........print(<sp |
| 463c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 63 6f 75 6e 74 | an.class="tok-str">"encount |
| 463e0 | 65 72 65 64 20 61 6e 20 65 72 72 6f 72 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | ered.an.error!\n"</span>,.. |
| 46400 | 7b 7d 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | {});.....}......<span.class="tok |
| 46420 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 73 5f 65 72 72 6f 72 29 20 7b 0a 20 20 20 20 | -kw">if</span>.(is_error).{..... |
| 46440 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | ....<span.class="tok-kw">return< |
| 46460 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | /span>.<span.class="tok-kw">erro |
| 46480 | 72 3c 2f 73 70 61 6e 3e 2e 44 65 66 65 72 45 72 72 6f 72 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 | r</span>.DeferError;.....}.}..<s |
| 464a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">test</span>.< |
| 464c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 64 65 | span.class="tok-str">"errde |
| 464e0 | 66 65 72 20 75 6e 77 69 6e 64 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | fer.unwinding"</span>.{.... |
| 46500 | 20 64 65 66 65 72 45 72 72 6f 72 45 78 61 6d 70 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .deferErrorExample(<span.class=" |
| 46520 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | tok-null">false</span>).<span.cl |
| 46540 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 20 20 | ass="tok-kw">catch</span>.{};... |
| 46560 | 20 20 64 65 66 65 72 45 72 72 6f 72 45 78 61 6d 70 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..deferErrorExample(<span.class= |
| 46580 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | "tok-null">true</span>).<span.cl |
| 465a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 7d 3c | ass="tok-kw">catch</span>.{};.}< |
| 465c0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 465e0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 64 65 66 65 72 2e 7a 69 67 0a 54 65 73 74 20 5b | ell">$.zig.test.defer.zig.Test.[ |
| 46600 | 31 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 64 65 66 65 72 20 62 61 73 69 63 73 26 71 75 6f | 1/3].test."defer.basics&quo |
| 46620 | 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 64 65 66 | t;.....Test.[2/3].test."def |
| 46640 | 65 72 20 75 6e 77 69 6e 64 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 32 20 31 20 54 65 73 74 | er.unwinding"......2.1.Test |
| 46660 | 20 5b 33 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 65 72 72 64 65 66 65 72 20 75 6e 77 69 6e | .[3/3].test."errdefer.unwin |
| 46680 | 64 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 73 74 61 72 74 20 6f 66 20 66 75 6e 63 74 69 6f | ding"......start.of.functio |
| 466a0 | 6e 0a 65 6e 64 20 6f 66 20 66 75 6e 63 74 69 6f 6e 0a 0a 73 74 61 72 74 20 6f 66 20 66 75 6e 63 | n.end.of.function..start.of.func |
| 466c0 | 74 69 6f 6e 0a 65 6e 63 6f 75 6e 74 65 72 65 64 20 61 6e 20 65 72 72 6f 72 21 0a 65 6e 64 20 6f | tion.encountered.an.error!.end.o |
| 466e0 | 66 20 66 75 6e 63 74 69 6f 6e 0a 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | f.function..All.3.tests.passed.. |
| 46700 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | </code></pre>........<p>See.also |
| 46720 | 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e | :</p><ul>.<li><a.href="#Errors"> |
| 46740 | 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 | Errors</a></li>.</ul>........... |
| 46760 | 20 20 20 20 3c 68 31 20 69 64 3d 22 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 3c 61 20 68 72 65 66 | ....<h1.id="unreachable"><a.href |
| 46780 | 3d 22 23 74 6f 63 2d 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c | ="#toc-unreachable">unreachable< |
| 467a0 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 | /a>.<a.class="hdr".href="#unreac |
| 467c0 | 68 61 62 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | hable">..</a></h1>........<p>... |
| 467e0 | 20 20 20 20 49 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 44 65 62 75 67 3c 2f | ....In.<code.class="zig">Debug</ |
| 46800 | 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 | code>.and.<code.class="zig">Rele |
| 46820 | 61 73 65 53 61 66 65 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 20 61 6e 64 20 77 68 65 6e 20 75 73 | aseSafe</code>.mode,.and.when.us |
| 46840 | 69 6e 67 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 | ing.<code>zig.test</code>,...... |
| 46860 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 46880 | 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | tok-kw">unreachable</span></code |
| 468a0 | 3e 20 65 6d 69 74 73 20 61 20 63 61 6c 6c 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.emits.a.call.to.<code.class="z |
| 468c0 | 69 67 22 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 74 68 65 20 6d 65 73 73 61 67 | ig">panic</code>.with.the.messag |
| 468e0 | 65 20 3c 63 6f 64 65 3e 72 65 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 | e.<code>reached.unreachable.code |
| 46900 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | </code>........</p>.......<p>... |
| 46920 | 20 20 20 20 49 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 61 73 65 | ....In.<code.class="zig">Release |
| 46940 | 46 61 73 74 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 | Fast</code>.mode,.the.optimizer. |
| 46960 | 75 73 65 73 20 74 68 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 74 68 61 74 20 3c 63 6f 64 65 20 63 | uses.the.assumption.that.<code.c |
| 46980 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 469a0 | 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 0a 20 | unreachable</span></code>.code.. |
| 469c0 | 20 20 20 20 20 77 69 6c 6c 20 6e 65 76 65 72 20 62 65 20 68 69 74 20 74 6f 20 70 65 72 66 6f 72 | .....will.never.be.hit.to.perfor |
| 469e0 | 6d 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e 20 48 6f 77 65 76 65 72 2c 20 3c 63 6f 64 65 3e | m.optimizations..However,.<code> |
| 46a00 | 7a 69 67 20 74 65 73 74 3c 2f 63 6f 64 65 3e 20 65 76 65 6e 20 69 6e 20 3c 63 6f 64 65 20 63 6c | zig.test</code>.even.in.<code.cl |
| 46a20 | 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 20 6d 6f 64 | ass="zig">ReleaseFast</code>.mod |
| 46a40 | 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 69 6c 6c 20 65 6d 69 74 73 20 | e...................still.emits. |
| 46a60 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 46a80 | 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ok-kw">unreachable</span></code> |
| 46aa0 | 20 61 73 20 63 61 6c 6c 73 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 | .as.calls.to.<code.class="zig">p |
| 46ac0 | 61 6e 69 63 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 | anic</code>........</p>.......<h |
| 46ae0 | 32 20 69 64 3d 22 42 61 73 69 63 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 61 73 69 | 2.id="Basics"><a.href="#toc-Basi |
| 46b00 | 63 73 22 3e 42 61 73 69 63 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | cs">Basics</a>.<a.class="hdr".hr |
| 46b20 | 65 66 3d 22 23 42 61 73 69 63 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | ef="#Basics">..</a></h2>........ |
| 46b40 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 46b60 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 46b80 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 75 6e 72 65 61 63 68 61 62 6c 65 20 69 73 20 75 | tok-comment">//.unreachable.is.u |
| 46ba0 | 73 65 64 20 74 6f 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 | sed.to.assert.that.control.flow. |
| 46bc0 | 77 69 6c 6c 20 6e 65 76 65 72 20 68 61 70 70 65 6e 20 75 70 6f 6e 20 61 3c 2f 73 70 61 6e 3e 0a | will.never.happen.upon.a</span>. |
| 46be0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 61 72 | <span.class="tok-comment">//.par |
| 46c00 | 74 69 63 75 6c 61 72 20 6c 6f 63 61 74 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | ticular.location:</span>.<span.c |
| 46c20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">test</span>.<span. |
| 46c40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 69 63 20 6d 61 74 68 | class="tok-str">"basic.math |
| 46c60 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 46c80 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 | "tok-kw">const</span>.x.=.<span. |
| 46ca0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">1</span>;.... |
| 46cc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 46ce0 | 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n>.y.=.<span.class="tok-number"> |
| 46d00 | 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 2</span>;.....<span.class="tok-k |
| 46d20 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 78 20 2b 20 79 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 | w">if</span>.(x.+.y.!=.<span.cla |
| 46d40 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 | ss="tok-number">3</span>).{..... |
| 46d60 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 | ....<span.class="tok-kw">unreach |
| 46d80 | 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | able</span>;.....}.}</code></pre |
| 46da0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 46dc0 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 | test.test.zig.Test.[1/1].test.&q |
| 46de0 | 75 6f 74 3b 62 61 73 69 63 20 6d 61 74 68 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 | uot;basic.math"......All.1. |
| 46e00 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | tests.passed..</code></pre>..... |
| 46e20 | 20 20 20 3c 70 3e 49 6e 20 66 61 63 74 2c 20 74 68 69 73 20 69 73 20 68 6f 77 20 3c 63 6f 64 65 | ...<p>In.fact,.this.is.how.<code |
| 46e40 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3c 2f 63 | .class="zig">std.debug.assert</c |
| 46e60 | 6f 64 65 3e 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ode>.is.implemented:</p>.......< |
| 46e80 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 46ea0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 46ec0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 68 6f 77 20 73 74 64 2e 64 | ok-comment">//.This.is.how.std.d |
| 46ee0 | 65 62 75 67 2e 61 73 73 65 72 74 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3c 2f 73 70 61 6e | ebug.assert.is.implemented</span |
| 46f00 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">fn</span> |
| 46f20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 73 73 65 72 74 3c 2f 73 70 | .<span.class="tok-fn">assert</sp |
| 46f40 | 61 6e 3e 28 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 | an>(ok:.<span.class="tok-type">b |
| 46f60 | 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ool</span>).<span.class="tok-typ |
| 46f80 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">void</span>.{.....<span.class |
| 46fa0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 6f 6b 29 20 3c 73 70 61 6e 20 | ="tok-kw">if</span>.(!ok).<span. |
| 46fc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e | class="tok-kw">unreachable</span |
| 46fe0 | 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | >;.<span.class="tok-comment">//. |
| 47000 | 61 73 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 3c 2f 73 70 61 6e 3e 0a 7d 0a 0a 3c 73 70 61 | assertion.failure</span>.}..<spa |
| 47020 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 74 65 | n.class="tok-comment">//.This.te |
| 47040 | 73 74 20 77 69 6c 6c 20 66 61 69 6c 20 62 65 63 61 75 73 65 20 77 65 20 68 69 74 20 75 6e 72 65 | st.will.fail.because.we.hit.unre |
| 47060 | 61 63 68 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | achable.</span>.<span.class="tok |
| 47080 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 470a0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 26 71 75 6f 74 | k-str">"this.will.fail" |
| 470c0 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 | ;</span>.{.....assert(<span.clas |
| 470e0 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 | s="tok-null">false</span>);.}</c |
| 47100 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 47120 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 | l">$.zig.test.test.zig.Test.[1/1 |
| 47140 | 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 26 71 75 6f 74 | ].test."this.will.fail" |
| 47160 | 3b 2e 2e 2e 20 0a 74 68 72 65 61 64 20 31 32 35 39 32 20 70 61 6e 69 63 3a 20 72 65 61 63 68 65 | ;.....thread.12592.panic:.reache |
| 47180 | 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | d.unreachable.code.<span.class=" |
| 471a0 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 | t1_0">/home/andy/Downloads/zig/d |
| 471c0 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 | ocgen_tmp/test.zig:3:14</span>:. |
| 471e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 37 66 65 62 20 69 6e 20 61 | <span.class="t2_0">0x207feb.in.a |
| 47200 | 73 73 65 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 | ssert.(test)</span>.....if.(!ok) |
| 47220 | 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 20 2f 2f 20 61 73 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 | .unreachable;.//.assertion.failu |
| 47240 | 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | re..............<span.class="t32 |
| 47260 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e | _1">^</span>.<span.class="t1_0"> |
| 47280 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f | /home/andy/Downloads/zig/docgen_ |
| 472a0 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 38 3a 31 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | tmp/test.zig:8:11</span>:.<span. |
| 472c0 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 36 64 65 20 69 6e 20 74 65 73 74 20 26 71 | class="t2_0">0x2066de.in.test.&q |
| 472e0 | 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 26 71 75 6f 74 3b 20 28 74 65 73 74 29 3c | uot;this.will.fail".(test)< |
| 47300 | 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 | /span>.....assert(false);....... |
| 47320 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 47340 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | .<span.class="t1_0">/home/andy/D |
| 47360 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 | ownloads/zig/lib/std/special/tes |
| 47380 | 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 37 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | t_runner.zig:76:28</span>:.<span |
| 473a0 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 64 30 30 61 20 69 6e 20 73 74 64 2e 73 70 | .class="t2_0">0x22d00a.in.std.sp |
| 473c0 | 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | ecial.main.(test)</span>........ |
| 473e0 | 20 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 20 20 20 20 20 | .}.else.test_fn.func();......... |
| 47400 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...................<span.class=" |
| 47420 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f | t32_1">^</span>.<span.class="t1_ |
| 47440 | 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f | 0">/home/andy/Downloads/zig/lib/ |
| 47460 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 37 31 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:471:37</span>:.<sp |
| 47480 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 35 35 36 61 20 69 6e 20 73 74 64 2e | an.class="t2_0">0x22556a.in.std. |
| 474a0 | 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | start.callMain.(test)</span>.... |
| 474c0 | 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 | .........const.result.=.root.mai |
| 474e0 | 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | n().catch.|err|.{............... |
| 47500 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......................<span.clas |
| 47520 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 47540 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c | t1_0">/home/andy/Downloads/zig/l |
| 47560 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/start.zig:413:12</span>:. |
| 47580 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 39 33 65 65 20 69 6e 20 73 | <span.class="t2_0">0x2093ee.in.s |
| 475a0 | 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 | td.start.callMainWithArgs.(test) |
| 475c0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 | </span>.....return.@call(.{..mod |
| 475e0 | 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 | ifier.=..always_inline.},.callMa |
| 47600 | 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | in,..{});............<span.class |
| 47620 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 47640 | 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 | 1_0">/home/andy/Downloads/zig/li |
| 47660 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c | b/std/start.zig:332:17</span>:.< |
| 47680 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 34 31 36 20 69 6e 20 73 74 | span.class="t2_0">0x208416.in.st |
| 476a0 | 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 | d.start.posixCallMainAndExit.(te |
| 476c0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c | st)</span>.....std.os.exit(@call |
| 476e0 | 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d | (.{..modifier.=..always_inline.} |
| 47700 | 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 | ,.callMainWithArgs,..{.argc,.arg |
| 47720 | 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | v,.envp.}));.................<sp |
| 47740 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| 47760 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| 47780 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 | s/zig/lib/std/start.zig:245:5</s |
| 477a0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 32 32 | pan>:.<span.class="t2_0">0x20822 |
| 477c0 | 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 | 2.in.std.start._start.(test)</sp |
| 477e0 | 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 | an>.....@call(.{..modifier.=..ne |
| 47800 | 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 | ver_inline.},.posixCallMainAndEx |
| 47820 | 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | it,..{});.....<span.class="t32_1 |
| 47840 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 | ">^</span>.error:.the.following. |
| 47860 | 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 | test.command.crashed:.docgen_tmp |
| 47880 | 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 33 33 33 61 38 37 34 31 38 31 36 37 30 32 64 61 66 64 30 | /zig-cache/o/333a8741816702dafd0 |
| 478a0 | 66 66 39 39 61 66 33 38 30 65 62 62 31 2f 74 65 73 74 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | ff99af380ebb1/test./home/andy/Do |
| 478c0 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2f 7a 69 67 0a 3c 2f | wnloads/zig/build-release/zig.</ |
| 478e0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | code></pre>...............<h2.id |
| 47900 | 3d 22 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ="At-Compile-Time"><a.href="#toc |
| 47920 | 2d 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 41 74 20 43 6f 6d 70 69 6c 65 2d 54 69 6d | -At-Compile-Time">At.Compile-Tim |
| 47940 | 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 74 2d 43 | e</a>.<a.class="hdr".href="#At-C |
| 47960 | 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | ompile-Time">..</a></h2>........ |
| 47980 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 479a0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 479c0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 | tok-kw">const</span>.assert.=.<s |
| 479e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c | pan.class="tok-builtin">@import< |
| 47a00 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>(<span.class="tok-str">&qu |
| 47a20 | 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 | ot;std"</span>).debug.asser |
| 47a40 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | t;..<span.class="tok-kw">test</s |
| 47a60 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 47a80 | 3b 74 79 70 65 20 6f 66 20 75 6e 72 65 61 63 68 61 62 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ;type.of.unreachable"</span |
| 47aa0 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | >.{.....<span.class="tok-kw">com |
| 47ac0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ptime</span>.{.........<span.cla |
| 47ae0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 74 79 70 65 20 6f 66 20 | ss="tok-comment">//.The.type.of. |
| 47b00 | 75 6e 72 65 61 63 68 61 62 6c 65 20 69 73 20 6e 6f 72 65 74 75 72 6e 2e 3c 2f 73 70 61 6e 3e 0a | unreachable.is.noreturn.</span>. |
| 47b20 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | .........<span.class="tok-commen |
| 47b40 | 74 22 3e 2f 2f 20 48 6f 77 65 76 65 72 20 74 68 69 73 20 61 73 73 65 72 74 69 6f 6e 20 77 69 6c | t">//.However.this.assertion.wil |
| 47b60 | 6c 20 73 74 69 6c 6c 20 66 61 69 6c 20 62 65 63 61 75 73 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | l.still.fail.because</span>..... |
| 47b80 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | ....<span.class="tok-comment">// |
| 47ba0 | 20 65 76 61 6c 75 61 74 69 6e 67 20 75 6e 72 65 61 63 68 61 62 6c 65 20 61 74 20 63 6f 6d 70 69 | .evaluating.unreachable.at.compi |
| 47bc0 | 6c 65 2d 74 69 6d 65 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 73 70 61 | le-time.is.a.compile.error.</spa |
| 47be0 | 6e 3e 0a 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>..........assert(<span.class=" |
| 47c00 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@TypeOf</span>(<spa |
| 47c20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 | n.class="tok-kw">unreachable</sp |
| 47c40 | 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e | an>).==.<span.class="tok-type">n |
| 47c60 | 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c | oreturn</span>);.....}.}</code>< |
| 47c80 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 47ca0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig.test.test.zig.<span.class="t |
| 47cc0 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 31 36 | 0_1">./docgen_tmp/test.zig:10:16 |
| 47ce0 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 | :.</span><span.class="t31_1">err |
| 47d00 | 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 75 6e | or:.</span><span.class="t0_1">un |
| 47d20 | 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 61 73 | reachable.code</span>.........as |
| 47d40 | 73 65 72 74 28 40 54 79 70 65 4f 66 28 75 6e 72 65 61 63 68 61 62 6c 65 29 20 3d 3d 20 6e 6f 72 | sert(@TypeOf(unreachable).==.nor |
| 47d60 | 65 74 75 72 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | eturn);................<span.cla |
| 47d80 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 47da0 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 32 | "t0_1">./docgen_tmp/test.zig:3:2 |
| 47dc0 | 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f | 8:.</span><span.class="t36_1">no |
| 47de0 | 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 | te:.</span><span.class="t0_1">re |
| 47e00 | 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b | ferenced.here</span>.test." |
| 47e20 | 74 79 70 65 20 6f 66 20 75 6e 72 65 61 63 68 61 62 6c 65 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 | type.of.unreachable".{..... |
| 47e40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .......................<span.cla |
| 47e60 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ss="t32_1">^</span>.</code></pre |
| 47e80 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | >........<p>See.also:</p><ul>.<l |
| 47ea0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f | i><a.href="#Zig-Test">Zig.Test</ |
| 47ec0 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 | a></li>.<li><a.href="#Build-Mode |
| 47ee0 | 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | ">Build.Mode</a></li>.<li><a.hre |
| 47f00 | 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | f="#comptime">comptime</a></li>. |
| 47f20 | 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 | </ul>......................<h1.i |
| 47f40 | 64 3d 22 6e 6f 72 65 74 75 72 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6e 6f 72 65 74 | d="noreturn"><a.href="#toc-noret |
| 47f60 | 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | urn">noreturn</a>.<a.class="hdr" |
| 47f80 | 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 | .href="#noreturn">..</a></h1>... |
| 47fa0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .....<p>.......<code.class="zig" |
| 47fc0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e | ><span.class="tok-type">noreturn |
| 47fe0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 74 79 70 65 20 6f 66 3a 0a 20 | </span></code>.is.the.type.of:.. |
| 48000 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | .....</p>.......<ul>...........< |
| 48020 | 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | li><code.class="zig"><span.class |
| 48040 | 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c | ="tok-kw">break</span></code></l |
| 48060 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | i>...........<li><code.class="zi |
| 48080 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 | g"><span.class="tok-kw">continue |
| 480a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | </span></code></li>...........<l |
| 480c0 | 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | i><code.class="zig"><span.class= |
| 480e0 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c | "tok-kw">return</span></code></l |
| 48100 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | i>...........<li><code.class="zi |
| 48120 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 | g"><span.class="tok-kw">unreacha |
| 48140 | 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ble</span></code></li>.......... |
| 48160 | 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .<li><code.class="zig"><span.cla |
| 48180 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 | ss="tok-kw">while</span>.(<span. |
| 481a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 7d | class="tok-null">true</span>).{} |
| 481c0 | 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c | </code></li>.......</ul>.......< |
| 481e0 | 70 3e 57 68 65 6e 20 72 65 73 6f 6c 76 69 6e 67 20 74 79 70 65 73 20 74 6f 67 65 74 68 65 72 2c | p>When.resolving.types.together, |
| 48200 | 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .such.as.<code.class="zig"><span |
| 48220 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | .class="tok-kw">if</span></code> |
| 48240 | 20 63 6c 61 75 73 65 73 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .clauses.or.<code.class="zig"><s |
| 48260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">switch</span> |
| 48280 | 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 | </code>.prongs,...............th |
| 482a0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e.<code.class="zig"><span.class= |
| 482c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | "tok-type">noreturn</span></code |
| 482e0 | 3e 20 74 79 70 65 20 69 73 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 65 76 65 72 79 20 | >.type.is.compatible.with.every. |
| 48300 | 6f 74 68 65 72 20 74 79 70 65 2e 20 43 6f 6e 73 69 64 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | other.type..Consider:.......</p> |
| 48320 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c | .......<p.class="file">test.zig< |
| 48340 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 48360 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | class="tok-kw">fn</span>.<span.c |
| 48380 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 63 6f 6e 64 69 74 69 | lass="tok-fn">foo</span>(conditi |
| 483a0 | 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c | on:.<span.class="tok-type">bool< |
| 483c0 | 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>,.b:.<span.class="tok-type |
| 483e0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ">u32</span>).<span.class="tok-t |
| 48400 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ype">void</span>.{.....<span.cla |
| 48420 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 3c 73 70 | ss="tok-kw">const</span>.a.=.<sp |
| 48440 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 6f 6e | an.class="tok-kw">if</span>.(con |
| 48460 | 64 69 74 69 6f 6e 29 20 62 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | dition).b.<span.class="tok-kw">e |
| 48480 | 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lse</span>.<span.class="tok-kw"> |
| 484a0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | return</span>;.....<span.class=" |
| 484c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | tok-builtin">@panic</span>(<span |
| 484e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 20 73 6f 6d 65 74 68 | .class="tok-str">"do.someth |
| 48500 | 69 6e 67 20 77 69 74 68 20 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 | ing.with.a"</span>);.}.<spa |
| 48520 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | n.class="tok-kw">test</span>.<sp |
| 48540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 72 65 74 75 72 | an.class="tok-str">"noretur |
| 48560 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 | n"</span>.{.....foo(<span.c |
| 48580 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | lass="tok-null">false</span>,.<s |
| 485a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">1</span>) |
| 485c0 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 485e0 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 | ="shell">$.zig.test.test.zig.Tes |
| 48600 | 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 6f 72 65 74 75 72 6e 26 71 75 6f 74 | t.[1/1].test."noreturn" |
| 48620 | 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | ;......All.1.tests.passed..</cod |
| 48640 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 6f 74 68 65 72 20 75 73 65 20 63 | e></pre>........<p>Another.use.c |
| 48660 | 61 73 65 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ase.for.<code.class="zig"><span. |
| 48680 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e | class="tok-type">noreturn</span> |
| 486a0 | 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | </code>.is.the.<code.class="zig" |
| 486c0 | 3e 65 78 69 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 | >exit</code>.function:</p>...... |
| 486e0 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 48700 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 48720 | 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">pub</span>.<span.class= |
| 48740 | 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">extern</span>.<span.cla |
| 48760 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 | ss="tok-str">"kernel32" |
| 48780 | 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | ;</span>.<span.class="tok-kw">fn |
| 487a0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 45 78 69 | </span>.<span.class="tok-fn">Exi |
| 487c0 | 74 50 72 6f 63 65 73 73 3c 2f 73 70 61 6e 3e 28 65 78 69 74 5f 63 6f 64 65 3a 20 3c 73 70 61 6e | tProcess</span>(exit_code:.<span |
| 487e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 69 6e 74 3c 2f 73 70 61 6e 3e 29 | .class="tok-type">c_uint</span>) |
| 48800 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f | .<span.class="tok-kw">callconv</ |
| 48820 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 | span>(<span.class="tok-kw">if</s |
| 48840 | 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | pan>.(<span.class="tok-builtin"> |
| 48860 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| 48880 | 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | str">"builtin"</span>) |
| 488a0 | 2e 74 61 72 67 65 74 2e 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 3c 73 70 61 6e 20 63 6c 61 73 73 | .target.cpu.arch.==..<span.class |
| 488c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 38 36 3c 2f 73 70 61 6e 3e 29 20 2e 53 74 64 63 61 6c | ="tok-type">i386</span>)..Stdcal |
| 488e0 | 6c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 | l.<span.class="tok-kw">else</spa |
| 48900 | 6e 3e 20 2e 43 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f | n>..C).<span.class="tok-type">no |
| 48920 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | return</span>;..<span.class="tok |
| 48940 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 48960 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | k-str">"foo"</span>.{. |
| 48980 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| 489a0 | 73 70 61 6e 3e 20 76 61 6c 75 65 20 3d 20 62 61 72 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>.value.=.bar().<span.class= |
| 489c0 | 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 45 78 69 74 50 72 6f 63 65 73 | "tok-kw">catch</span>.ExitProces |
| 489e0 | 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 | s(<span.class="tok-number">1</sp |
| 48a00 | 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>);.....<span.class="tok-kw">t |
| 48a20 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 | ry</span>.expect(value.==.<span. |
| 48a40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b | class="tok-number">1234</span>); |
| 48a60 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | .}..<span.class="tok-kw">fn</spa |
| 48a80 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 | n>.<span.class="tok-fn">bar</spa |
| 48aa0 | 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 | n>().<span.class="tok-type">anye |
| 48ac0 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | rror</span>!<span.class="tok-typ |
| 48ae0 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">u32</span>.{.....<span.class= |
| 48b00 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">return</span>.<span.cla |
| 48b20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a | ss="tok-number">1234</span>;.}.. |
| 48b40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 48b60 | 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | >.expect.=.<span.class="tok-buil |
| 48b80 | 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@import</span>(<span.class= |
| 48ba0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "tok-str">"std"</span> |
| 48bc0 | 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | ).testing.expect;</code></pre><p |
| 48be0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 48c00 | 74 20 74 65 73 74 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 34 2d 77 69 6e 64 6f 77 | t.test.zig.-target.x86_64-window |
| 48c20 | 73 0a 77 61 72 6e 69 6e 67 3a 20 63 72 65 61 74 65 64 20 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 | s.warning:.created.docgen_tmp/zi |
| 48c40 | 67 2d 63 61 63 68 65 2f 6f 2f 63 34 32 66 64 31 37 66 36 66 33 62 37 37 39 64 39 35 38 66 61 34 | g-cache/o/c42fd17f6f3b779d958fa4 |
| 48c60 | 32 33 34 35 65 39 33 39 39 64 2f 74 65 73 74 2e 65 78 65 20 62 75 74 20 73 6b 69 70 70 69 6e 67 | 2345e9399d/test.exe.but.skipping |
| 48c80 | 20 65 78 65 63 75 74 69 6f 6e 20 62 65 63 61 75 73 65 20 69 74 20 69 73 20 6e 6f 6e 2d 6e 61 74 | .execution.because.it.is.non-nat |
| 48ca0 | 69 76 65 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | ive.</code></pre>............... |
| 48cc0 | 3c 68 31 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | <h1.id="Functions"><a.href="#toc |
| 48ce0 | 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | -Functions">Functions</a>.<a.cla |
| 48d00 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 | ss="hdr".href="#Functions">..</a |
| 48d20 | 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 75 | ></h1>........<p.class="file">fu |
| 48d40 | 6e 63 74 69 6f 6e 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | nctions.zig</p><pre><code.class= |
| 48d60 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | "zig"><span.class="tok-kw">const |
| 48d80 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.expect.=.<span.class="to |
| 48da0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| 48dc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c | class="tok-str">"std"< |
| 48de0 | 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 | /span>).testing.expect;..<span.c |
| 48e00 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 | lass="tok-comment">//.Functions. |
| 48e20 | 61 72 65 20 64 65 63 6c 61 72 65 64 20 6c 69 6b 65 20 74 68 69 73 3c 2f 73 70 61 6e 3e 0a 3c 73 | are.declared.like.this</span>.<s |
| 48e40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 | pan.class="tok-kw">fn</span>.<sp |
| 48e60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 61 3a 20 | an.class="tok-fn">add</span>(a:. |
| 48e80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">i8</span> |
| 48ea0 | 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f | ,.b:.<span.class="tok-type">i8</ |
| 48ec0 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 | span>).<span.class="tok-type">i8 |
| 48ee0 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| 48f00 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | w">if</span>.(a.==.<span.class=" |
| 48f20 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 | tok-number">0</span>).{......... |
| 48f40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 | <span.class="tok-kw">return</spa |
| 48f60 | 6e 3e 20 62 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.b;.....}......<span.class="to |
| 48f80 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 0a 0a 3c 73 | k-kw">return</span>.a.+.b;.}..<s |
| 48fa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 | pan.class="tok-comment">//.The.e |
| 48fc0 | 78 70 6f 72 74 20 73 70 65 63 69 66 69 65 72 20 6d 61 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e | xport.specifier.makes.a.function |
| 48fe0 | 20 65 78 74 65 72 6e 61 6c 6c 79 20 76 69 73 69 62 6c 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 | .externally.visible.in.the.gener |
| 49000 | 61 74 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | ated</span>.<span.class="tok-com |
| 49020 | 6d 65 6e 74 22 3e 2f 2f 20 6f 62 6a 65 63 74 20 66 69 6c 65 2c 20 61 6e 64 20 6d 61 6b 65 73 20 | ment">//.object.file,.and.makes. |
| 49040 | 69 74 20 75 73 65 20 74 68 65 20 43 20 41 42 49 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | it.use.the.C.ABI.</span>.<span.c |
| 49060 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | lass="tok-kw">export</span>.<spa |
| 49080 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| 490a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 75 62 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 | .class="tok-fn">sub</span>(a:.<s |
| 490c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 | pan.class="tok-type">i8</span>,. |
| 490e0 | 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 | b:.<span.class="tok-type">i8</sp |
| 49100 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f | an>).<span.class="tok-type">i8</ |
| 49120 | 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | span>.{.<span.class="tok-kw">ret |
| 49140 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2d 20 62 3b 20 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | urn</span>.a.-.b;.}..<span.class |
| 49160 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 78 74 65 72 6e 20 73 70 65 | ="tok-comment">//.The.extern.spe |
| 49180 | 63 69 66 69 65 72 20 69 73 20 75 73 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 61 20 66 75 6e 63 | cifier.is.used.to.declare.a.func |
| 491a0 | 74 69 6f 6e 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 72 65 73 6f 6c 76 65 64 3c 2f 73 70 61 6e | tion.that.will.be.resolved</span |
| 491c0 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 | >.<span.class="tok-comment">//.a |
| 491e0 | 74 20 6c 69 6e 6b 20 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 73 74 61 74 69 63 | t.link.time,.when.linking.static |
| 49200 | 61 6c 6c 79 2c 20 6f 72 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e | ally,.or.at.runtime,.when.linkin |
| 49220 | 67 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | g</span>.<span.class="tok-commen |
| 49240 | 74 22 3e 2f 2f 20 64 79 6e 61 6d 69 63 61 6c 6c 79 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | t">//.dynamically.</span>.<span. |
| 49260 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 63 61 6c 6c 63 | class="tok-comment">//.The.callc |
| 49280 | 6f 6e 76 20 73 70 65 63 69 66 69 65 72 20 63 68 61 6e 67 65 73 20 74 68 65 20 63 61 6c 6c 69 6e | onv.specifier.changes.the.callin |
| 492a0 | 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 | g.convention.of.the.function.</s |
| 492c0 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e | pan>.<span.class="tok-kw">extern |
| 492e0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 49300 | 75 6f 74 3b 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | uot;kernel32"</span>.<span. |
| 49320 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | class="tok-kw">fn</span>.<span.c |
| 49340 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 45 78 69 74 50 72 6f 63 65 73 73 3c 2f 73 70 61 6e 3e | lass="tok-fn">ExitProcess</span> |
| 49360 | 28 65 78 69 74 5f 63 6f 64 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | (exit_code:.<span.class="tok-typ |
| 49380 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">u32</span>).<span.class="tok- |
| 493a0 | 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | kw">callconv</span>(<span.class= |
| 493c0 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">if</span>.(<span.class= |
| 493e0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | "tok-builtin">@import</span>(<sp |
| 49400 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e | an.class="tok-str">"builtin |
| 49420 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 61 72 67 65 74 2e 63 70 75 2e 61 72 63 68 20 3d | "</span>).target.cpu.arch.= |
| 49440 | 3d 20 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 38 36 3c 2f | =..<span.class="tok-type">i386</ |
| 49460 | 73 70 61 6e 3e 29 20 2e 53 74 64 63 61 6c 6c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>)..Stdcall.<span.class="tok |
| 49480 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 2e 43 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -kw">else</span>..C).<span.class |
| 494a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 | ="tok-type">noreturn</span>;.<sp |
| 494c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">extern</span>. |
| 494e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 | <span.class="tok-str">"c&qu |
| 49500 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ot;</span>.<span.class="tok-kw"> |
| 49520 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 | fn</span>.<span.class="tok-fn">a |
| 49540 | 74 61 6e 32 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | tan2</span>(a:.<span.class="tok- |
| 49560 | 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | type">f64</span>,.b:.<span.class |
| 49580 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | ="tok-type">f64</span>).<span.cl |
| 495a0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 | ass="tok-type">f64</span>;..<spa |
| 495c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 40 73 65 | n.class="tok-comment">//.The.@se |
| 495e0 | 74 43 6f 6c 64 20 62 75 69 6c 74 69 6e 20 74 65 6c 6c 73 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 | tCold.builtin.tells.the.optimize |
| 49600 | 72 20 74 68 61 74 20 61 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 72 61 72 65 6c 79 20 63 61 6c 6c | r.that.a.function.is.rarely.call |
| 49620 | 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ed.</span>.<span.class="tok-kw"> |
| 49640 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 | fn</span>.<span.class="tok-fn">a |
| 49660 | 62 6f 72 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | bort</span>().<span.class="tok-t |
| 49680 | 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ype">noreturn</span>.{.....<span |
| 496a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 73 | .class="tok-builtin">@setCold</s |
| 496c0 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 | pan>(<span.class="tok-null">true |
| 496e0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>);.....<span.class="tok-k |
| 49700 | 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">while</span>.(<span.class="to |
| 49720 | 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 7d 0a 0a 3c 73 70 61 6e | k-null">true</span>).{}.}..<span |
| 49740 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 6e 61 6b 65 | .class="tok-comment">//.The.nake |
| 49760 | 64 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 6d 61 6b 65 73 20 61 20 66 75 6e | d.calling.convention.makes.a.fun |
| 49780 | 63 74 69 6f 6e 20 6e 6f 74 20 68 61 76 65 20 61 6e 79 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 6c | ction.not.have.any.function.prol |
| 497a0 | 6f 67 75 65 20 6f 72 20 65 70 69 6c 6f 67 75 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | ogue.or.epilogue.</span>.<span.c |
| 497c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 63 61 6e 20 62 | lass="tok-comment">//.This.can.b |
| 497e0 | 65 20 75 73 65 66 75 6c 20 77 68 65 6e 20 69 6e 74 65 67 72 61 74 69 6e 67 20 77 69 74 68 20 61 | e.useful.when.integrating.with.a |
| 49800 | 73 73 65 6d 62 6c 79 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ssembly.</span>.<span.class="tok |
| 49820 | 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | -kw">fn</span>.<span.class="tok- |
| 49840 | 66 6e 22 3e 5f 73 74 61 72 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | fn">_start</span>().<span.class= |
| 49860 | 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 4e 61 6b 65 64 29 | "tok-kw">callconv</span>(.Naked) |
| 49880 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e | .<span.class="tok-type">noreturn |
| 498a0 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 62 6f 72 74 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | </span>.{.....abort();.}..<span. |
| 498c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 69 6e 6c 69 6e | class="tok-comment">//.The.inlin |
| 498e0 | 65 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 66 6f 72 63 65 73 20 61 20 66 75 | e.calling.convention.forces.a.fu |
| 49900 | 6e 63 74 69 6f 6e 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 64 20 61 74 20 61 6c 6c 20 63 61 6c 6c | nction.to.be.inlined.at.all.call |
| 49920 | 20 73 69 74 65 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .sites.</span>.<span.class="tok- |
| 49940 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 6e | comment">//.If.the.function.cann |
| 49960 | 6f 74 20 62 65 20 69 6e 6c 69 6e 65 64 2c 20 69 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 2d 74 | ot.be.inlined,.it.is.a.compile-t |
| 49980 | 69 6d 65 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ime.error.</span>.<span.class="t |
| 499a0 | 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ok-kw">fn</span>.<span.class="to |
| 499c0 | 6b 2d 66 6e 22 3e 73 68 69 66 74 4c 65 66 74 4f 6e 65 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 | k-fn">shiftLeftOne</span>(a:.<sp |
| 499e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 | an.class="tok-type">u32</span>). |
| 49a00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 | <span.class="tok-kw">callconv</s |
| 49a20 | 70 61 6e 3e 28 2e 49 6e 6c 69 6e 65 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | pan>(.Inline).<span.class="tok-t |
| 49a40 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">u32</span>.{.....<span.clas |
| 49a60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 26 6c 74 3b 26 | s="tok-kw">return</span>.a.<& |
| 49a80 | 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | lt;.<span.class="tok-number">1</ |
| 49aa0 | 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | span>;.}..<span.class="tok-comme |
| 49ac0 | 6e 74 22 3e 2f 2f 20 54 68 65 20 70 75 62 20 73 70 65 63 69 66 69 65 72 20 61 6c 6c 6f 77 73 20 | nt">//.The.pub.specifier.allows. |
| 49ae0 | 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 20 76 69 73 69 62 6c 65 20 77 68 65 6e 20 | the.function.to.be.visible.when. |
| 49b00 | 69 6d 70 6f 72 74 69 6e 67 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | importing.</span>.<span.class="t |
| 49b20 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6e 6f 74 68 65 72 20 66 69 6c 65 20 63 61 6e 20 | ok-comment">//.Another.file.can. |
| 49b40 | 75 73 65 20 40 69 6d 70 6f 72 74 20 61 6e 64 20 63 61 6c 6c 20 73 75 62 32 3c 2f 73 70 61 6e 3e | use.@import.and.call.sub2</span> |
| 49b60 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">pub</span> |
| 49b80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">fn</span>. |
| 49ba0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 75 62 32 3c 2f 73 70 61 6e 3e | <span.class="tok-fn">sub2</span> |
| 49bc0 | 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 | (a:.<span.class="tok-type">i8</s |
| 49be0 | 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | pan>,.b:.<span.class="tok-type"> |
| 49c00 | 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | i8</span>).<span.class="tok-type |
| 49c20 | 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ">i8</span>.{.<span.class="tok-k |
| 49c40 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2d 20 62 3b 20 7d 0a 0a 3c 73 70 61 6e | w">return</span>.a.-.b;.}..<span |
| 49c60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e | .class="tok-comment">//.Function |
| 49c80 | 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 76 61 6c 75 65 73 20 61 6e 64 20 61 72 65 20 | s.can.be.used.as.values.and.are. |
| 49ca0 | 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 3c | equivalent.to.pointers.</span>.< |
| 49cc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 49ce0 | 20 63 61 6c 6c 32 5f 6f 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .call2_op.=.<span.class="tok-kw" |
| 49d00 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >fn</span>.(a:.<span.class="tok- |
| 49d20 | 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | type">i8</span>,.b:.<span.class= |
| 49d40 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-type">i8</span>).<span.clas |
| 49d60 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c | s="tok-type">i8</span>;.<span.cl |
| 49d80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| 49da0 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 5f 6f 70 3c 2f 73 70 61 6e 3e 28 66 6e 5f 63 61 6c 6c | ss="tok-fn">do_op</span>(fn_call |
| 49dc0 | 3a 20 63 61 6c 6c 32 5f 6f 70 2c 20 6f 70 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | :.call2_op,.op1:.<span.class="to |
| 49de0 | 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 6f 70 32 3a 20 3c 73 70 61 6e 20 63 6c | k-type">i8</span>,.op2:.<span.cl |
| 49e00 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ass="tok-type">i8</span>).<span. |
| 49e20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | class="tok-type">i8</span>.{.... |
| 49e40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 | .<span.class="tok-kw">return</sp |
| 49e60 | 61 6e 3e 20 66 6e 5f 63 61 6c 6c 28 6f 70 31 2c 20 6f 70 32 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | an>.fn_call(op1,.op2);.}..<span. |
| 49e80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">test</span>.<span |
| 49ea0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 26 | .class="tok-str">"function& |
| 49ec0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 49ee0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 6f 5f 6f 70 28 | tok-kw">try</span>.expect(do_op( |
| 49f00 | 61 64 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | add,.<span.class="tok-number">5< |
| 49f20 | 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | /span>,.<span.class="tok-number" |
| 49f40 | 3e 36 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >6</span>).==.<span.class="tok-n |
| 49f60 | 75 6d 62 65 72 22 3e 31 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | umber">11</span>);.....<span.cla |
| 49f80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 6f | ss="tok-kw">try</span>.expect(do |
| 49fa0 | 5f 6f 70 28 73 75 62 32 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | _op(sub2,.<span.class="tok-numbe |
| 49fc0 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">5</span>,.<span.class="tok-nu |
| 49fe0 | 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">6</span>).==.-<span.class= |
| 4a000 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | "tok-number">1</span>);.}</code> |
| 4a020 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 4a040 | 20 7a 69 67 20 74 65 73 74 20 66 75 6e 63 74 69 6f 6e 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f | .zig.test.functions.zig.Test.[1/ |
| 4a060 | 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 | 1].test."function".... |
| 4a080 | 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | ..All.1.tests.passed..</code></p |
| 4a0a0 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 46 75 6e 63 74 69 6f 6e 20 76 61 6c 75 65 73 20 61 72 | re>........<p>Function.values.ar |
| 4a0c0 | 65 20 6c 69 6b 65 20 70 6f 69 6e 74 65 72 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | e.like.pointers:</p>.......<p.cl |
| 4a0e0 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| 4a100 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 4a120 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 | w">const</span>.assert.=.<span.c |
| 4a140 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e | lass="tok-builtin">@import</span |
| 4a160 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 | >(<span.class="tok-str">"st |
| 4a180 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c | d"</span>).debug.assert;..< |
| 4a1a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 | span.class="tok-kw">comptime</sp |
| 4a1c0 | 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.{.....assert(<span.class="to |
| 4a1e0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 20 3d | k-builtin">@TypeOf</span>(foo).= |
| 4a200 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | =.<span.class="tok-kw">fn</span> |
| 4a220 | 28 29 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | ()<span.class="tok-type">void</s |
| 4a240 | 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>);.....assert(<span.class="t |
| 4a260 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-builtin">@sizeOf</span>(<span |
| 4a280 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 73 70 61 6e | .class="tok-kw">fn</span>()<span |
| 4a2a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 20 3d | .class="tok-type">void</span>).= |
| 4a2c0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a | =.<span.class="tok-builtin">@siz |
| 4a2e0 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | eOf</span>(?<span.class="tok-kw" |
| 4a300 | 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | >fn</span>()<span.class="tok-typ |
| 4a320 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | e">void</span>));.}..<span.class |
| 4a340 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="tok-kw">fn</span>.<span.class= |
| 4a360 | 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-fn">foo</span>().<span.clas |
| 4a380 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 20 7d 3c 2f 63 6f | s="tok-type">void</span>.{.}</co |
| 4a3a0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 4a3c0 | 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 | ">$.zig.build-obj.test.zig</code |
| 4a3e0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 50 61 73 73 2d 62 79 2d 76 | ></pre>........<h2.id="Pass-by-v |
| 4a400 | 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 | alue-Parameters"><a.href="#toc-P |
| 4a420 | 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 50 61 73 73 2d 62 79 | ass-by-value-Parameters">Pass-by |
| 4a440 | 2d 76 61 6c 75 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | -value.Parameters</a>.<a.class=" |
| 4a460 | 68 64 72 22 20 68 72 65 66 3d 22 23 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 | hdr".href="#Pass-by-value-Parame |
| 4a480 | 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ters">..</a></h2>........<p>.... |
| 4a4a0 | 20 20 20 50 72 69 6d 69 74 69 76 65 20 74 79 70 65 73 20 73 75 63 68 20 61 73 20 3c 61 20 68 72 | ...Primitive.types.such.as.<a.hr |
| 4a4c0 | 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 61 6e 64 20 | ef="#Integers">Integers</a>.and. |
| 4a4e0 | 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 70 61 73 | <a.href="#Floats">Floats</a>.pas |
| 4a500 | 73 65 64 20 61 73 20 70 61 72 61 6d 65 74 65 72 73 0a 20 20 20 20 20 20 61 72 65 20 63 6f 70 69 | sed.as.parameters.......are.copi |
| 4a520 | 65 64 2c 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 63 6f 70 79 20 69 73 20 61 76 61 69 6c 61 62 | ed,.and.then.the.copy.is.availab |
| 4a540 | 6c 65 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 62 6f 64 79 2e 20 54 68 69 73 20 69 73 | le.in.the.function.body..This.is |
| 4a560 | 20 63 61 6c 6c 65 64 20 22 70 61 73 73 69 6e 67 20 62 79 20 76 61 6c 75 65 22 2e 0a 20 20 20 20 | .called."passing.by.value"...... |
| 4a580 | 20 20 43 6f 70 79 69 6e 67 20 61 20 70 72 69 6d 69 74 69 76 65 20 74 79 70 65 20 69 73 20 65 73 | ..Copying.a.primitive.type.is.es |
| 4a5a0 | 73 65 6e 74 69 61 6c 6c 79 20 66 72 65 65 20 61 6e 64 20 74 79 70 69 63 61 6c 6c 79 20 69 6e 76 | sentially.free.and.typically.inv |
| 4a5c0 | 6f 6c 76 65 73 20 6e 6f 74 68 69 6e 67 20 6d 6f 72 65 20 74 68 61 6e 0a 20 20 20 20 20 20 73 65 | olves.nothing.more.than.......se |
| 4a5e0 | 74 74 69 6e 67 20 61 20 72 65 67 69 73 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | tting.a.register........</p>.... |
| 4a600 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 74 72 75 63 74 73 2c 20 75 6e 69 6f 6e 73 2c 20 61 6e | ...<p>.......Structs,.unions,.an |
| 4a620 | 64 20 61 72 72 61 79 73 20 63 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 62 65 20 6d 6f 72 65 20 65 | d.arrays.can.sometimes.be.more.e |
| 4a640 | 66 66 69 63 69 65 6e 74 6c 79 20 70 61 73 73 65 64 20 61 73 20 61 20 72 65 66 65 72 65 6e 63 65 | fficiently.passed.as.a.reference |
| 4a660 | 2c 20 73 69 6e 63 65 20 61 20 63 6f 70 79 0a 20 20 20 20 20 20 63 6f 75 6c 64 20 62 65 20 61 72 | ,.since.a.copy.......could.be.ar |
| 4a680 | 62 69 74 72 61 72 69 6c 79 20 65 78 70 65 6e 73 69 76 65 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e | bitrarily.expensive.depending.on |
| 4a6a0 | 20 74 68 65 20 73 69 7a 65 2e 20 57 68 65 6e 20 74 68 65 73 65 20 74 79 70 65 73 20 61 72 65 20 | .the.size..When.these.types.are. |
| 4a6c0 | 70 61 73 73 65 64 0a 20 20 20 20 20 20 61 73 20 70 61 72 61 6d 65 74 65 72 73 2c 20 5a 69 67 20 | passed.......as.parameters,.Zig. |
| 4a6e0 | 6d 61 79 20 63 68 6f 6f 73 65 20 74 6f 20 63 6f 70 79 20 61 6e 64 20 70 61 73 73 20 62 79 20 76 | may.choose.to.copy.and.pass.by.v |
| 4a700 | 61 6c 75 65 2c 20 6f 72 20 70 61 73 73 20 62 79 20 72 65 66 65 72 65 6e 63 65 2c 20 77 68 69 63 | alue,.or.pass.by.reference,.whic |
| 4a720 | 68 65 76 65 72 20 77 61 79 0a 20 20 20 20 20 20 5a 69 67 20 64 65 63 69 64 65 73 20 77 69 6c 6c | hever.way.......Zig.decides.will |
| 4a740 | 20 62 65 20 66 61 73 74 65 72 2e 20 54 68 69 73 20 69 73 20 6d 61 64 65 20 70 6f 73 73 69 62 6c | .be.faster..This.is.made.possibl |
| 4a760 | 65 2c 20 69 6e 20 70 61 72 74 2c 20 62 79 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 70 61 72 | e,.in.part,.by.the.fact.that.par |
| 4a780 | 61 6d 65 74 65 72 73 20 61 72 65 20 69 6d 6d 75 74 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | ameters.are.immutable........</p |
| 4a7a0 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 4a7c0 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 4a7e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 | .class="tok-kw">const</span>.Poi |
| 4a800 | 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 | nt.=.<span.class="tok-kw">struct |
| 4a820 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.{.....x:.<span.class="to |
| 4a840 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e | k-type">i32</span>,.....y:.<span |
| 4a860 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b | .class="tok-type">i32</span>,.}; |
| 4a880 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | ..<span.class="tok-kw">fn</span> |
| 4a8a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e | .<span.class="tok-fn">foo</span> |
| 4a8c0 | 28 70 6f 69 6e 74 3a 20 50 6f 69 6e 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | (point:.Point).<span.class="tok- |
| 4a8e0 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | type">i32</span>.{.....<span.cla |
| 4a900 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 2c 20 60 70 6f 69 6e 74 | ss="tok-comment">//.Here,.`point |
| 4a920 | 60 20 63 6f 75 6c 64 20 62 65 20 61 20 72 65 66 65 72 65 6e 63 65 2c 20 6f 72 20 61 20 63 6f 70 | `.could.be.a.reference,.or.a.cop |
| 4a940 | 79 2e 20 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 62 6f 64 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | y..The.function.body</span>..... |
| 4a960 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6e | <span.class="tok-comment">//.can |
| 4a980 | 20 69 67 6e 6f 72 65 20 74 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 61 6e 64 20 74 72 65 61 74 | .ignore.the.difference.and.treat |
| 4a9a0 | 20 69 74 20 61 73 20 61 20 76 61 6c 75 65 2e 20 42 65 20 76 65 72 79 20 63 61 72 65 66 75 6c 3c | .it.as.a.value..Be.very.careful< |
| 4a9c0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | /span>.....<span.class="tok-comm |
| 4a9e0 | 65 6e 74 22 3e 2f 2f 20 74 61 6b 69 6e 67 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 | ent">//.taking.the.address.of.th |
| 4aa00 | 65 20 70 61 72 61 6d 65 74 65 72 20 2d 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 74 72 65 61 74 | e.parameter.-.it.should.be.treat |
| 4aa20 | 65 64 20 61 73 20 69 66 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ed.as.if</span>.....<span.class= |
| 4aa40 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 61 64 64 72 65 73 73 20 77 69 6c | "tok-comment">//.the.address.wil |
| 4aa60 | 6c 20 62 65 63 6f 6d 65 20 69 6e 76 61 6c 69 64 20 77 68 65 6e 20 74 68 65 20 66 75 6e 63 74 69 | l.become.invalid.when.the.functi |
| 4aa80 | 6f 6e 20 72 65 74 75 72 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | on.returns.</span>.....<span.cla |
| 4aaa0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 70 6f 69 6e 74 2e | ss="tok-kw">return</span>.point. |
| 4aac0 | 78 20 2b 20 70 6f 69 6e 74 2e 79 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | x.+.point.y;.}..<span.class="tok |
| 4aae0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e | -kw">const</span>.expect.=.<span |
| 4ab00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 | .class="tok-builtin">@import</sp |
| 4ab20 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>(<span.class="tok-str">" |
| 4ab40 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 | std"</span>).testing.expect |
| 4ab60 | 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 | ;..<span.class="tok-kw">test</sp |
| 4ab80 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>.<span.class="tok-str">" |
| 4aba0 | 70 61 73 73 20 73 74 72 75 63 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 | pass.struct.to.function"</s |
| 4abc0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 4abe0 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 50 6f 69 6e 74 7b 20 2e 78 20 | try</span>.expect(foo(Point{..x. |
| 4ac00 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 | =.<span.class="tok-number">1</sp |
| 4ac20 | 61 6e 3e 2c 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | an>,..y.=.<span.class="tok-numbe |
| 4ac40 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r">2</span>.}).==.<span.class="t |
| 4ac60 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | ok-number">3</span>);.}</code></ |
| 4ac80 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 4aca0 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 | ig.test.test.zig.Test.[1/1].test |
| 4acc0 | 20 26 71 75 6f 74 3b 70 61 73 73 20 73 74 72 75 63 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 26 71 | ."pass.struct.to.function&q |
| 4ace0 | 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | uot;......All.1.tests.passed..</ |
| 4ad00 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 | code></pre>........<p>.......For |
| 4ad20 | 20 65 78 74 65 72 6e 20 66 75 6e 63 74 69 6f 6e 73 2c 20 5a 69 67 20 66 6f 6c 6c 6f 77 73 20 74 | .extern.functions,.Zig.follows.t |
| 4ad40 | 68 65 20 43 20 41 42 49 20 66 6f 72 20 70 61 73 73 69 6e 67 20 73 74 72 75 63 74 73 20 61 6e 64 | he.C.ABI.for.passing.structs.and |
| 4ad60 | 20 75 6e 69 6f 6e 73 20 62 79 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .unions.by.value........</p>.... |
| 4ad80 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d | ..........<h2.id="Function-Param |
| 4ada0 | 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | eter-Type-Inference"><a.href="#t |
| 4adc0 | 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 | oc-Function-Parameter-Type-Infer |
| 4ade0 | 65 6e 63 65 22 3e 46 75 6e 63 74 69 6f 6e 20 50 61 72 61 6d 65 74 65 72 20 54 79 70 65 20 49 6e | ence">Function.Parameter.Type.In |
| 4ae00 | 66 65 72 65 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | ference</a>.<a.class="hdr".href= |
| 4ae20 | 22 23 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 | "#Function-Parameter-Type-Infere |
| 4ae40 | 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | nce">..</a></h2>........<p>..... |
| 4ae60 | 20 20 46 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 63 61 6e 20 62 65 20 64 65 63 | ..Function.parameters.can.be.dec |
| 4ae80 | 6c 61 72 65 64 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | lared.with.<code.class="zig"><sp |
| 4aea0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e | an.class="tok-kw">anytype</span> |
| 4aec0 | 3c 2f 63 6f 64 65 3e 20 69 6e 20 70 6c 61 63 65 20 6f 66 20 74 68 65 20 74 79 70 65 2e 0a 20 20 | </code>.in.place.of.the.type.... |
| 4aee0 | 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 74 | ....In.this.case.the.parameter.t |
| 4af00 | 79 70 65 73 20 77 69 6c 6c 20 62 65 20 69 6e 66 65 72 72 65 64 20 77 68 65 6e 20 74 68 65 20 66 | ypes.will.be.inferred.when.the.f |
| 4af20 | 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 2e 0a 20 20 20 20 20 20 55 73 65 20 3c 61 20 | unction.is.called........Use.<a. |
| 4af40 | 68 72 65 66 3d 22 23 54 79 70 65 4f 66 22 3e 40 54 79 70 65 4f 66 3c 2f 61 3e 20 61 6e 64 20 3c | href="#TypeOf">@TypeOf</a>.and.< |
| 4af60 | 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e | a.href="#typeInfo">@typeInfo</a> |
| 4af80 | 20 74 6f 20 67 65 74 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 69 6e | .to.get.information.about.the.in |
| 4afa0 | 66 65 72 72 65 64 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ferred.type........</p>.......<p |
| 4afc0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | .class="file">test.zig</p><pre>< |
| 4afe0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 4b000 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 | k-kw">const</span>.expect.=.<spa |
| 4b020 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| 4b040 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| 4b060 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | ;std"</span>).testing.expec |
| 4b080 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | t;..<span.class="tok-kw">fn</spa |
| 4b0a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 46 6f 72 74 79 | n>.<span.class="tok-fn">addForty |
| 4b0c0 | 54 77 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | Two</span>(x:.<span.class="tok-k |
| 4b0e0 | 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | w">anytype</span>).<span.class=" |
| 4b100 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 78 29 20 7b | tok-builtin">@TypeOf</span>(x).{ |
| 4b120 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e | .....<span.class="tok-kw">return |
| 4b140 | 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | </span>.x.+.<span.class="tok-num |
| 4b160 | 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ber">42</span>;.}..<span.class=" |
| 4b180 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">test</span>.<span.class= |
| 4b1a0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6e 20 74 79 70 65 20 69 6e 66 65 72 65 6e 63 | "tok-str">"fn.type.inferenc |
| 4b1c0 | 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e"</span>.{.....<span.class |
| 4b1e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 64 64 46 | ="tok-kw">try</span>.expect(addF |
| 4b200 | 6f 72 74 79 54 77 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ortyTwo(<span.class="tok-number" |
| 4b220 | 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >1</span>).==.<span.class="tok-n |
| 4b240 | 75 6d 62 65 72 22 3e 34 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | umber">43</span>);.....<span.cla |
| 4b260 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 | ss="tok-kw">try</span>.expect(<s |
| 4b280 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c | pan.class="tok-builtin">@TypeOf< |
| 4b2a0 | 2f 73 70 61 6e 3e 28 61 64 64 46 6f 72 74 79 54 77 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>(addFortyTwo(<span.class=" |
| 4b2c0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 20 3d 3d 20 3c 73 70 61 6e 20 | tok-number">1</span>)).==.<span. |
| 4b2e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 | class="tok-type">comptime_int</s |
| 4b300 | 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>);.....<span.class="tok-kw"> |
| 4b320 | 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.y:.<span.class="tok-t |
| 4b340 | 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">i64</span>.=.<span.class="t |
| 4b360 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ok-number">2</span>;.....<span.c |
| 4b380 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 4b3a0 | 61 64 64 46 6f 72 74 79 54 77 6f 28 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | addFortyTwo(y).==.<span.class="t |
| 4b3c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | ok-number">44</span>);.....<span |
| 4b3e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 4b400 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | t(<span.class="tok-builtin">@Typ |
| 4b420 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 46 6f 72 74 79 54 77 6f 28 79 29 29 20 3d 3d 20 3c 73 | eOf</span>(addFortyTwo(y)).==.<s |
| 4b440 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-type">i64</span>) |
| 4b460 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 4b480 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 | ="shell">$.zig.test.test.zig.Tes |
| 4b4a0 | 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 6e 20 74 79 70 65 20 69 6e 66 65 72 | t.[1/1].test."fn.type.infer |
| 4b4c0 | 65 6e 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | ence"......All.1.tests.pass |
| 4b4e0 | 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ed..</code></pre>............... |
| 4b500 | 20 3c 68 32 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e 3c 61 | .<h2.id="Function-Reflection"><a |
| 4b520 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 | .href="#toc-Function-Reflection" |
| 4b540 | 3e 46 75 6e 63 74 69 6f 6e 20 52 65 66 6c 65 63 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | >Function.Reflection</a>.<a.clas |
| 4b560 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 | s="hdr".href="#Function-Reflecti |
| 4b580 | 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | on">..</a></h2>........<p.class= |
| 4b5a0 | 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | "file">test.zig</p><pre><code.cl |
| 4b5c0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ass="zig"><span.class="tok-kw">c |
| 4b5e0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onst</span>.expect.=.<span.class |
| 4b600 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@import</span>(<s |
| 4b620 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 | pan.class="tok-str">"std&qu |
| 4b640 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 | ot;</span>).testing.expect;..<sp |
| 4b660 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 4b680 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6e 20 72 65 66 | pan.class="tok-str">"fn.ref |
| 4b6a0 | 6c 65 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | lection"</span>.{.....<span |
| 4b6c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 4b6e0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 | t(<span.class="tok-builtin">@typ |
| 4b700 | 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | eInfo</span>(<span.class="tok-bu |
| 4b720 | 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 65 78 70 65 63 74 29 29 2e 46 | iltin">@TypeOf</span>(expect)).F |
| 4b740 | 6e 2e 61 72 67 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n.args[<span.class="tok-number"> |
| 4b760 | 30 3c 2f 73 70 61 6e 3e 5d 2e 61 72 67 5f 74 79 70 65 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | 0</span>].arg_type.?.==.<span.cl |
| 4b780 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | ass="tok-type">bool</span>);.... |
| 4b7a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 4b7c0 | 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | .expect(<span.class="tok-builtin |
| 4b7e0 | 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">@typeInfo</span>(<span.class=" |
| 4b800 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 65 78 70 65 | tok-builtin">@TypeOf</span>(expe |
| 4b820 | 63 74 29 29 2e 46 6e 2e 69 73 5f 76 61 72 5f 61 72 67 73 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | ct)).Fn.is_var_args.==.<span.cla |
| 4b840 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f | ss="tok-null">false</span>);.}</ |
| 4b860 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 4b880 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f | ll">$.zig.test.test.zig.Test.[1/ |
| 4b8a0 | 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e 26 71 75 6f 74 | 1].test."fn.reflection" |
| 4b8c0 | 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | ;......All.1.tests.passed..</cod |
| 4b8e0 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | e></pre>......................<h |
| 4b900 | 31 20 69 64 3d 22 45 72 72 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f | 1.id="Errors"><a.href="#toc-Erro |
| 4b920 | 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | rs">Errors</a>.<a.class="hdr".hr |
| 4b940 | 65 66 3d 22 23 45 72 72 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 | ef="#Errors">..</a></h1>........ |
| 4b960 | 3c 68 32 20 69 64 3d 22 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d | <h2.id="Error-Set-Type"><a.href= |
| 4b980 | 22 23 74 6f 63 2d 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 | "#toc-Error-Set-Type">Error.Set. |
| 4b9a0 | 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 | Type</a>.<a.class="hdr".href="#E |
| 4b9c0 | 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | rror-Set-Type">..</a></h2>...... |
| 4b9e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 65 72 72 6f 72 20 73 65 74 20 69 73 20 6c 69 6b 65 | ..<p>.......An.error.set.is.like |
| 4ba00 | 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 2e 0a 20 20 | .an.<a.href="#enum">enum</a>.... |
| 4ba20 | 20 20 20 20 48 6f 77 65 76 65 72 2c 20 65 61 63 68 20 65 72 72 6f 72 20 6e 61 6d 65 20 61 63 72 | ....However,.each.error.name.acr |
| 4ba40 | 6f 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 67 65 74 73 20 | oss.the.entire.compilation.gets. |
| 4ba60 | 61 73 73 69 67 6e 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 0a 20 20 20 | assigned.an.unsigned.integer.... |
| 4ba80 | 20 20 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 30 2e 20 59 6f 75 20 61 72 65 20 61 6c 6c 6f 77 | ...greater.than.0..You.are.allow |
| 4baa0 | 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 20 6e 61 6d | ed.to.declare.the.same.error.nam |
| 4bac0 | 65 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 63 65 2c 20 61 6e 64 20 69 66 20 79 6f 75 20 64 6f 2c | e.more.than.once,.and.if.you.do, |
| 4bae0 | 20 69 74 0a 20 20 20 20 20 20 67 65 74 73 20 61 73 73 69 67 6e 65 64 20 74 68 65 20 73 61 6d 65 | .it.......gets.assigned.the.same |
| 4bb00 | 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .integer.value........</p>...... |
| 4bb20 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 75 6e 69 71 75 65 20 | .<p>.......The.number.of.unique. |
| 4bb40 | 65 72 72 6f 72 20 76 61 6c 75 65 73 20 61 63 72 6f 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 63 | error.values.across.the.entire.c |
| 4bb60 | 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 68 6f 75 6c 64 20 64 65 74 65 72 6d 69 6e 65 20 74 68 65 20 | ompilation.should.determine.the. |
| 4bb80 | 73 69 7a 65 20 6f 66 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 2e 0a 20 20 20 20 | size.of.the.error.set.type...... |
| 4bba0 | 20 20 48 6f 77 65 76 65 72 20 72 69 67 68 74 20 6e 6f 77 20 69 74 20 69 73 20 68 61 72 64 20 63 | ..However.right.now.it.is.hard.c |
| 4bbc0 | 6f 64 65 64 20 74 6f 20 62 65 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | oded.to.be.a.<code.class="zig">< |
| 4bbe0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e | span.class="tok-type">u16</span> |
| 4bc00 | 3c 2f 63 6f 64 65 3e 2e 20 53 65 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 | </code>..See.<a.href="https://gi |
| 4bc20 | 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 37 38 36 22 | thub.com/ziglang/zig/issues/786" |
| 4bc40 | 3e 23 37 36 38 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | >#768</a>........</p>.......<p>. |
| 4bc60 | 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 | ......You.can.<a.href="#Type-Coe |
| 4bc80 | 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 | rcion">coerce</a>.an.error.from. |
| 4bca0 | 61 20 73 75 62 73 65 74 20 74 6f 20 61 20 73 75 70 65 72 73 65 74 3a 0a 20 20 20 20 20 20 3c 2f | a.subset.to.a.superset:.......</ |
| 4bcc0 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 4bce0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 4bd00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 | n.class="tok-kw">const</span>.st |
| 4bd20 | 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | d.=.<span.class="tok-builtin">@i |
| 4bd40 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | mport</span>(<span.class="tok-st |
| 4bd60 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 | r">"std"</span>);..<sp |
| 4bd80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 | an.class="tok-kw">const</span>.F |
| 4bda0 | 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ileOpenError.=.<span.class="tok- |
| 4bdc0 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e | kw">error</span>.{.....AccessDen |
| 4bde0 | 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 4e 6f | ied,.....OutOfMemory,.....FileNo |
| 4be00 | 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | tFound,.};..<span.class="tok-kw" |
| 4be20 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 | >const</span>.AllocationError.=. |
| 4be40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e | <span.class="tok-kw">error</span |
| 4be60 | 3e 20 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | >.{.....OutOfMemory,.};..<span.c |
| 4be80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">test</span>.<span. |
| 4bea0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 75 62 | class="tok-str">"coerce.sub |
| 4bec0 | 73 65 74 20 74 6f 20 73 75 70 65 72 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | set.to.superset"</span>.{.. |
| 4bee0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| 4bf00 | 70 61 6e 3e 20 65 72 72 20 3d 20 66 6f 6f 28 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 2e 4f | pan>.err.=.foo(AllocationError.O |
| 4bf20 | 75 74 4f 66 4d 65 6d 6f 72 79 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | utOfMemory);.....<span.class="to |
| 4bf40 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 | k-kw">try</span>.std.testing.exp |
| 4bf60 | 65 63 74 28 65 72 72 20 3d 3d 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 | ect(err.==.FileOpenError.OutOfMe |
| 4bf80 | 6d 6f 72 79 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | mory);.}..<span.class="tok-kw">f |
| 4bfa0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f | n</span>.<span.class="tok-fn">fo |
| 4bfc0 | 6f 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 29 20 46 | o</span>(err:.AllocationError).F |
| 4bfe0 | 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ileOpenError.{.....<span.class=" |
| 4c000 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 7d 3c 2f 63 6f | tok-kw">return</span>.err;.}</co |
| 4c020 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 4c040 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d | ">$.zig.test.test.zig.Test.[1/1] |
| 4c060 | 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 75 62 73 65 74 20 74 6f 20 73 75 70 | .test."coerce.subset.to.sup |
| 4c080 | 65 72 73 65 74 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | erset"......All.1.tests.pas |
| 4c0a0 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | sed..</code></pre>........<p>... |
| 4c0c0 | 20 20 20 20 42 75 74 20 79 6f 75 20 63 61 6e 6e 6f 74 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 | ....But.you.cannot.<a.href="#Typ |
| 4c0e0 | 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 61 6e 20 65 72 72 6f 72 20 | e-Coercion">coerce</a>.an.error. |
| 4c100 | 66 72 6f 6d 20 61 20 73 75 70 65 72 73 65 74 20 74 6f 20 61 20 73 75 62 73 65 74 3a 0a 20 20 20 | from.a.superset.to.a.subset:.... |
| 4c120 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ...</p>.......<p.class="file">te |
| 4c140 | 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | st.zig</p><pre><code.class="zig" |
| 4c160 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | ><span.class="tok-kw">const</spa |
| 4c180 | 6e 3e 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.FileOpenError.=.<span.class=" |
| 4c1a0 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 41 63 63 65 73 | tok-kw">error</span>.{.....Acces |
| 4c1c0 | 73 44 65 6e 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 | sDenied,.....OutOfMemory,.....Fi |
| 4c1e0 | 6c 65 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | leNotFound,.};..<span.class="tok |
| 4c200 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f | -kw">const</span>.AllocationErro |
| 4c220 | 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f | r.=.<span.class="tok-kw">error</ |
| 4c240 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 | span>.{.....OutOfMemory,.};..<sp |
| 4c260 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 4c280 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 | pan.class="tok-str">"coerce |
| 4c2a0 | 20 73 75 70 65 72 73 65 74 20 74 6f 20 73 75 62 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | .superset.to.subset"</span> |
| 4c2c0 | 20 7b 0a 20 20 20 20 66 6f 6f 28 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 | .{.....foo(FileOpenError.OutOfMe |
| 4c2e0 | 6d 6f 72 79 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 | mory).<span.class="tok-kw">catch |
| 4c300 | 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.{};.}..<span.class="tok- |
| 4c320 | 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 | kw">fn</span>.<span.class="tok-f |
| 4c340 | 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 | n">foo</span>(err:.FileOpenError |
| 4c360 | 29 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ).AllocationError.{.....<span.cl |
| 4c380 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a | ass="tok-kw">return</span>.err;. |
| 4c3a0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 4c3c0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e | shell">$.zig.test.test.zig.<span |
| 4c3e0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 4c400 | 7a 69 67 3a 31 36 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig:16:12:.</span><span.class="t |
| 4c420 | 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 31_1">error:.</span><span.class= |
| 4c440 | 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 41 6c 6c 6f 63 61 74 69 6f 6e | "t0_1">expected.type.'Allocation |
| 4c460 | 45 72 72 6f 72 27 2c 20 66 6f 75 6e 64 20 27 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 27 3c 2f 73 | Error',.found.'FileOpenError'</s |
| 4c480 | 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | pan>.....return.err;............ |
| 4c4a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 4c4c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | an.class="t0_1">./docgen_tmp/tes |
| 4c4e0 | 74 2e 7a 69 67 3a 32 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t.zig:2:5:.</span><span.class="t |
| 4c500 | 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 36_1">note:.</span><span.class=" |
| 4c520 | 74 30 5f 31 22 3e 27 65 72 72 6f 72 2e 41 63 63 65 73 73 44 65 6e 69 65 64 27 20 6e 6f 74 20 61 | t0_1">'error.AccessDenied'.not.a |
| 4c540 | 20 6d 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 | .member.of.destination.error.set |
| 4c560 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e 69 65 64 2c 0a 20 20 20 20 3c 73 | </span>.....AccessDenied,.....<s |
| 4c580 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| 4c5a0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 4c5c0 | 7a 69 67 3a 34 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 | zig:4:5:.</span><span.class="t36 |
| 4c5e0 | 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 | _1">note:.</span><span.class="t0 |
| 4c600 | 5f 31 22 3e 27 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 27 20 6e 6f 74 20 61 20 6d | _1">'error.FileNotFound'.not.a.m |
| 4c620 | 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 3c 2f | ember.of.destination.error.set</ |
| 4c640 | 73 70 61 6e 3e 0a 20 20 20 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 2c 0a 20 20 20 20 3c 73 70 61 | span>.....FileNotFound,.....<spa |
| 4c660 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e | n.class="t32_1">^</span>.</code> |
| 4c680 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 | </pre>........<p>.......There.is |
| 4c6a0 | 20 61 20 73 68 6f 72 74 63 75 74 20 66 6f 72 20 64 65 63 6c 61 72 69 6e 67 20 61 6e 20 65 72 72 | .a.shortcut.for.declaring.an.err |
| 4c6c0 | 6f 72 20 73 65 74 20 77 69 74 68 20 6f 6e 6c 79 20 31 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 | or.set.with.only.1.value,.and.th |
| 4c6e0 | 65 6e 20 67 65 74 74 69 6e 67 20 74 68 61 74 20 76 61 6c 75 65 3a 0a 20 20 20 20 20 20 3c 2f 70 | en.getting.that.value:.......</p |
| 4c700 | 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | >.......<pre><code.class="zig">< |
| 4c720 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 4c740 | 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | .err.=.<span.class="tok-kw">erro |
| 4c760 | 72 3c 2f 73 70 61 6e 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 | r</span>.FileNotFound;</code></p |
| 4c780 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 | re>.......<p>This.is.equivalent. |
| 4c7a0 | 74 6f 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | to:</p>.......<pre><code.class=" |
| 4c7c0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 4c7e0 | 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | /span>.err.=.(<span.class="tok-k |
| 4c800 | 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 20 7b 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 7d 29 2e | w">error</span>.{FileNotFound}). |
| 4c820 | 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | FileNotFound;</code></pre>...... |
| 4c840 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 62 65 63 6f 6d 65 73 20 75 73 65 66 75 6c 20 77 | .<p>.......This.becomes.useful.w |
| 4c860 | 68 65 6e 20 75 73 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 72 72 | hen.using.<a.href="#Inferred-Err |
| 4c880 | 6f 72 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 65 64 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e | or-Sets">Inferred.Error.Sets</a> |
| 4c8a0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 68 65 2d 47 | ........</p>.......<h3.id="The-G |
| 4c8c0 | 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 | lobal-Error-Set"><a.href="#toc-T |
| 4c8e0 | 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 | he-Global-Error-Set">The.Global. |
| 4c900 | 45 72 72 6f 72 20 53 65 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | Error.Set</a>.<a.class="hdr".hre |
| 4c920 | 66 3d 22 23 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e c2 a7 3c 2f 61 3e | f="#The-Global-Error-Set">..</a> |
| 4c940 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | </h3>........<p><code.class="zig |
| 4c960 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f | "><span.class="tok-type">anyerro |
| 4c980 | 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 74 68 65 20 67 6c | r</span></code>.refers.to.the.gl |
| 4c9a0 | 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 68 | obal.error.set........This.is.th |
| 4c9c0 | 65 20 65 72 72 6f 72 20 73 65 74 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 61 6c 6c 20 65 72 | e.error.set.that.contains.all.er |
| 4c9e0 | 72 6f 72 73 20 69 6e 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 75 | rors.in.the.entire.compilation.u |
| 4ca00 | 6e 69 74 2e 0a 20 20 20 20 20 20 49 74 20 69 73 20 61 20 73 75 70 65 72 73 65 74 20 6f 66 20 61 | nit........It.is.a.superset.of.a |
| 4ca20 | 6c 6c 20 6f 74 68 65 72 20 65 72 72 6f 72 20 73 65 74 73 20 61 6e 64 20 61 20 73 75 62 73 65 74 | ll.other.error.sets.and.a.subset |
| 4ca40 | 20 6f 66 20 6e 6f 6e 65 20 6f 66 20 74 68 65 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .of.none.of.them........</p>.... |
| 4ca60 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 54 | ...<p>.......You.can.<a.href="#T |
| 4ca80 | 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 61 6e 79 20 65 72 72 | ype-Coercion">coerce</a>.any.err |
| 4caa0 | 6f 72 20 73 65 74 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 6f 6e 65 2c 20 61 6e 64 20 79 6f | or.set.to.the.global.one,.and.yo |
| 4cac0 | 75 20 63 61 6e 20 65 78 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 63 61 73 74 20 61 6e 20 65 | u.can.explicitly.......cast.an.e |
| 4cae0 | 72 72 6f 72 20 6f 66 20 74 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 20 74 6f 20 | rror.of.the.global.error.set.to. |
| 4cb00 | 61 20 6e 6f 6e 2d 67 6c 6f 62 61 6c 20 6f 6e 65 2e 20 54 68 69 73 20 69 6e 73 65 72 74 73 20 61 | a.non-global.one..This.inserts.a |
| 4cb20 | 20 6c 61 6e 67 75 61 67 65 2d 6c 65 76 65 6c 0a 20 20 20 20 20 20 61 73 73 65 72 74 20 74 6f 20 | .language-level.......assert.to. |
| 4cb40 | 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c 75 65 20 69 73 20 69 6e 20 | make.sure.the.error.value.is.in. |
| 4cb60 | 66 61 63 74 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 | fact.in.the.destination.error.se |
| 4cb80 | 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | t........</p>.......<p>.......Th |
| 4cba0 | 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 20 73 68 6f 75 6c 64 20 67 65 6e 65 72 61 | e.global.error.set.should.genera |
| 4cbc0 | 6c 6c 79 20 62 65 20 61 76 6f 69 64 65 64 20 62 65 63 61 75 73 65 20 69 74 20 70 72 65 76 65 6e | lly.be.avoided.because.it.preven |
| 4cbe0 | 74 73 20 74 68 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 72 20 66 72 6f 6d 20 6b 6e 6f 77 69 | ts.the.......compiler.from.knowi |
| 4cc00 | 6e 67 20 77 68 61 74 20 65 72 72 6f 72 73 20 61 72 65 20 70 6f 73 73 69 62 6c 65 20 61 74 20 63 | ng.what.errors.are.possible.at.c |
| 4cc20 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 4b 6e 6f 77 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 65 | ompile-time..Knowing.......the.e |
| 4cc40 | 72 72 6f 72 20 73 65 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 69 73 20 62 65 74 74 | rror.set.at.compile-time.is.bett |
| 4cc60 | 65 72 20 66 6f 72 20 67 65 6e 65 72 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 | er.for.generated.documentation.a |
| 4cc80 | 6e 64 0a 20 20 20 20 20 20 68 65 6c 70 66 75 6c 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73 2c | nd.......helpful.error.messages, |
| 4cca0 | 20 73 75 63 68 20 61 73 20 66 6f 72 67 65 74 74 69 6e 67 20 61 20 70 6f 73 73 69 62 6c 65 20 65 | .such.as.forgetting.a.possible.e |
| 4ccc0 | 72 72 6f 72 20 76 61 6c 75 65 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 | rror.value.in.a.<a.href="#switch |
| 4cce0 | 22 3e 73 77 69 74 63 68 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | ">switch</a>........</p>........ |
| 4cd00 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 72 72 6f 72 2d 55 6e 69 6f 6e | .............<h2.id="Error-Union |
| 4cd20 | 2d 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e | -Type"><a.href="#toc-Error-Union |
| 4cd40 | 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 | -Type">Error.Union.Type</a>.<a.c |
| 4cd60 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 | lass="hdr".href="#Error-Union-Ty |
| 4cd80 | 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | pe">..</a></h2>........<p>...... |
| 4cda0 | 20 41 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 61 6e 64 20 6e 6f 72 6d 61 6c 20 74 79 | .An.error.set.type.and.normal.ty |
| 4cdc0 | 70 65 20 63 61 6e 20 62 65 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 | pe.can.be.combined.with.the.<cod |
| 4cde0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 62 69 6e | e.class="zig">!</code>.......bin |
| 4ce00 | 61 72 79 20 6f 70 65 72 61 74 6f 72 20 74 6f 20 66 6f 72 6d 20 61 6e 20 65 72 72 6f 72 20 75 6e | ary.operator.to.form.an.error.un |
| 4ce20 | 69 6f 6e 20 74 79 70 65 2e 20 59 6f 75 20 61 72 65 20 6c 69 6b 65 6c 79 20 74 6f 20 75 73 65 20 | ion.type..You.are.likely.to.use. |
| 4ce40 | 61 6e 0a 20 20 20 20 20 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 20 6d 6f 72 65 20 6f | an.......error.union.type.more.o |
| 4ce60 | 66 74 65 6e 20 74 68 61 6e 20 61 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 62 79 20 69 | ften.than.an.error.set.type.by.i |
| 4ce80 | 74 73 65 6c 66 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | tself........</p>.......<p>..... |
| 4cea0 | 20 20 48 65 72 65 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 70 61 72 73 65 20 61 20 | ..Here.is.a.function.to.parse.a. |
| 4cec0 | 73 74 72 69 6e 67 20 69 6e 74 6f 20 61 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 72 3a 0a 20 20 | string.into.a.64-bit.integer:... |
| 4cee0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| 4cf00 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 4cf20 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 4cf40 | 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>.std.=.<span.class="tok-built |
| 4cf60 | 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in">@import</span>(<span.class=" |
| 4cf80 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | tok-str">"std"</span>) |
| 4cfa0 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ;.<span.class="tok-kw">const</sp |
| 4cfc0 | 61 6e 3e 20 6d 61 78 49 6e 74 20 3d 20 73 74 64 2e 6d 61 74 68 2e 6d 61 78 49 6e 74 3b 0a 0a 3c | an>.maxInt.=.std.math.maxInt;..< |
| 4cfe0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c | span.class="tok-kw">pub</span>.< |
| 4d000 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 4d020 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 61 72 73 65 55 36 34 3c 2f 73 70 61 | pan.class="tok-fn">parseU64</spa |
| 4d040 | 6e 3e 28 62 75 66 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | n>(buf:.[]<span.class="tok-kw">c |
| 4d060 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | onst</span>.<span.class="tok-typ |
| 4d080 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 72 61 64 69 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">u8</span>,.radix:.<span.class |
| 4d0a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c | ="tok-type">u8</span>).!<span.cl |
| 4d0c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ass="tok-type">u64</span>.{..... |
| 4d0e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">var</span>. |
| 4d100 | 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 | x:.<span.class="tok-type">u64</s |
| 4d120 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pan>.=.<span.class="tok-number"> |
| 4d140 | 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 0</span>;......<span.class="tok- |
| 4d160 | 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 62 75 66 29 20 7c 63 7c 20 7b 0a 20 20 20 20 20 | kw">for</span>.(buf).|c|.{...... |
| 4d180 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| 4d1a0 | 70 61 6e 3e 20 64 69 67 69 74 20 3d 20 63 68 61 72 54 6f 44 69 67 69 74 28 63 29 3b 0a 0a 20 20 | pan>.digit.=.charToDigit(c);.... |
| 4d1c0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 | ......<span.class="tok-kw">if</s |
| 4d1e0 | 70 61 6e 3e 20 28 64 69 67 69 74 20 26 67 74 3b 3d 20 72 61 64 69 78 29 20 7b 0a 20 20 20 20 20 | pan>.(digit.>=.radix).{...... |
| 4d200 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | .......<span.class="tok-kw">retu |
| 4d220 | 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | rn</span>.<span.class="tok-kw">e |
| 4d240 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 49 6e 76 61 6c 69 64 43 68 61 72 3b 0a 20 20 20 20 20 20 20 | rror</span>.InvalidChar;........ |
| 4d260 | 20 7d 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | .}..........<span.class="tok-com |
| 4d280 | 6d 65 6e 74 22 3e 2f 2f 20 78 20 2a 3d 20 72 61 64 69 78 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | ment">//.x.*=.radix</span>...... |
| 4d2a0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | ...<span.class="tok-kw">if</span |
| 4d2c0 | 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 75 | >.(<span.class="tok-builtin">@mu |
| 4d2e0 | 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | lWithOverflow</span>(<span.class |
| 4d300 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 20 78 2c 20 72 61 64 69 78 | ="tok-type">u64</span>,.x,.radix |
| 4d320 | 2c 20 26 61 6d 70 3b 78 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ,.&x)).{.............<span.c |
| 4d340 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | lass="tok-kw">return</span>.<spa |
| 4d360 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 | n.class="tok-kw">error</span>.Ov |
| 4d380 | 65 72 66 6c 6f 77 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | erflow;.........}..........<span |
| 4d3a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 64 69 67 | .class="tok-comment">//.x.+=.dig |
| 4d3c0 | 69 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | it</span>.........<span.class="t |
| 4d3e0 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ok-kw">if</span>.(<span.class="t |
| 4d400 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 | ok-builtin">@addWithOverflow</sp |
| 4d420 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f | an>(<span.class="tok-type">u64</ |
| 4d440 | 73 70 61 6e 3e 2c 20 78 2c 20 64 69 67 69 74 2c 20 26 61 6d 70 3b 78 29 29 20 7b 0a 20 20 20 20 | span>,.x,.digit,.&x)).{..... |
| 4d460 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | ........<span.class="tok-kw">ret |
| 4d480 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | urn</span>.<span.class="tok-kw"> |
| 4d4a0 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 3b 0a 20 20 20 20 20 20 20 20 7d | error</span>.Overflow;.........} |
| 4d4c0 | 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .....}......<span.class="tok-kw" |
| 4d4e0 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | >return</span>.x;.}..<span.class |
| 4d500 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="tok-kw">fn</span>.<span.class= |
| 4d520 | 22 74 6f 6b 2d 66 6e 22 3e 63 68 61 72 54 6f 44 69 67 69 74 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c | "tok-fn">charToDigit</span>(c:.< |
| 4d540 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 | span.class="tok-type">u8</span>) |
| 4d560 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | .<span.class="tok-type">u8</span |
| 4d580 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | >.{.....<span.class="tok-kw">ret |
| 4d5a0 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | urn</span>.<span.class="tok-kw"> |
| 4d5c0 | 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | switch</span>.(c).{.........<spa |
| 4d5e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 30 27 3c 2f 73 70 61 6e 3e 20 2e 2e 2e | n.class="tok-str">'0'</span>.... |
| 4d600 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 39 27 3c 2f 73 70 61 6e | .<span.class="tok-str">'9'</span |
| 4d620 | 3e 20 3d 26 67 74 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | >.=>.c.-.<span.class="tok-str |
| 4d640 | 22 3e 27 30 27 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ">'0'</span>,.........<span.clas |
| 4d660 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 41 27 3c 2f 73 70 61 6e 3e 20 2e 2e 2e 20 3c 73 70 61 6e | s="tok-str">'A'</span>.....<span |
| 4d680 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 | .class="tok-str">'Z'</span>.=> |
| 4d6a0 | 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 41 27 3c | ;.c.-.<span.class="tok-str">'A'< |
| 4d6c0 | 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | /span>.+.<span.class="tok-number |
| 4d6e0 | 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">10</span>,.........<span.class |
| 4d700 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 20 2e 2e 2e 20 3c 73 70 61 6e 20 | ="tok-str">'a'</span>.....<span. |
| 4d720 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b | class="tok-str">'z'</span>.=> |
| 4d740 | 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f | .c.-.<span.class="tok-str">'a'</ |
| 4d760 | 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | span>.+.<span.class="tok-number" |
| 4d780 | 3e 31 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >10</span>,.........<span.class= |
| 4d7a0 | 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 6d 61 78 49 6e | "tok-kw">else</span>.=>.maxIn |
| 4d7c0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | t(<span.class="tok-type">u8</spa |
| 4d7e0 | 6e 3e 29 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>),.....};.}..<span.class="tok- |
| 4d800 | 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">test</span>.<span.class="tok |
| 4d820 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 61 72 73 65 20 75 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 | -str">"parse.u64"</spa |
| 4d840 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | n>.{.....<span.class="tok-kw">co |
| 4d860 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nst</span>.result.=.<span.class= |
| 4d880 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 28 3c 73 70 | "tok-kw">try</span>.parseU64(<sp |
| 4d8a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 32 33 34 26 71 75 | an.class="tok-str">"1234&qu |
| 4d8c0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ot;</span>,.<span.class="tok-num |
| 4d8e0 | 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ber">10</span>);.....<span.class |
| 4d900 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 | ="tok-kw">try</span>.std.testing |
| 4d920 | 2e 65 78 70 65 63 74 28 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .expect(result.==.<span.class="t |
| 4d940 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 | ok-number">1234</span>);.}</code |
| 4d960 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 4d980 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 | $.zig.test.test.zig.Test.[1/1].t |
| 4d9a0 | 65 73 74 20 26 71 75 6f 74 3b 70 61 72 73 65 20 75 36 34 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 | est."parse.u64"......A |
| 4d9c0 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</code></pre> |
| 4d9e0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 69 63 65 20 74 68 65 20 72 65 74 | ........<p>.......Notice.the.ret |
| 4da00 | 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c | urn.type.is.<code.class="zig">!< |
| 4da20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e | span.class="tok-type">u64</span> |
| 4da40 | 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 66 75 6e | </code>..This.means.that.the.fun |
| 4da60 | 63 74 69 6f 6e 0a 20 20 20 20 20 20 65 69 74 68 65 72 20 72 65 74 75 72 6e 73 20 61 6e 20 75 6e | ction.......either.returns.an.un |
| 4da80 | 73 69 67 6e 65 64 20 36 34 20 62 69 74 20 69 6e 74 65 67 65 72 2c 20 6f 72 20 61 6e 20 65 72 72 | signed.64.bit.integer,.or.an.err |
| 4daa0 | 6f 72 2e 20 57 65 20 6c 65 66 74 20 6f 66 66 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 0a 20 20 | or..We.left.off.the.error.set... |
| 4dac0 | 20 20 20 20 74 6f 20 74 68 65 20 6c 65 66 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 | ....to.the.left.of.the.<code.cla |
| 4dae0 | 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 2c 20 73 6f 20 74 68 65 20 65 72 72 6f 72 20 | ss="zig">!</code>,.so.the.error. |
| 4db00 | 73 65 74 20 69 73 20 69 6e 66 65 72 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | set.is.inferred........</p>..... |
| 4db20 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 69 74 68 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 | ..<p>.......Within.the.function. |
| 4db40 | 64 65 66 69 6e 69 74 69 6f 6e 2c 20 79 6f 75 20 63 61 6e 20 73 65 65 20 73 6f 6d 65 20 72 65 74 | definition,.you.can.see.some.ret |
| 4db60 | 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 72 6e 0a 20 20 20 20 20 | urn.statements.that.return...... |
| 4db80 | 20 61 6e 20 65 72 72 6f 72 2c 20 61 6e 64 20 61 74 20 74 68 65 20 62 6f 74 74 6f 6d 20 61 20 72 | .an.error,.and.at.the.bottom.a.r |
| 4dba0 | 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 20 3c | eturn.statement.that.returns.a.< |
| 4dbc0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 4dbe0 | 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | k-type">u64</span></code>....... |
| 4dc00 | 20 20 20 20 20 42 6f 74 68 20 74 79 70 65 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 | .....Both.types.<a.href="#Type-C |
| 4dc20 | 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 | oercion">coerce</a>.to.<code.cla |
| 4dc40 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| 4dc60 | 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | anyerror</span>!<span.class="tok |
| 4dc80 | 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | -type">u64</span></code>........ |
| 4dca0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 61 74 20 69 74 20 6c 6f 6f | </p>.......<p>.......What.it.loo |
| 4dcc0 | 6b 73 20 6c 69 6b 65 20 74 6f 20 75 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 76 61 72 | ks.like.to.use.this.function.var |
| 4dce0 | 69 65 73 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 61 74 20 79 6f 75 27 72 65 0a 20 20 20 | ies.depending.on.what.you're.... |
| 4dd00 | 20 20 20 74 72 79 69 6e 67 20 74 6f 20 64 6f 2e 20 4f 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c | ...trying.to.do..One.of.the.foll |
| 4dd20 | 6f 77 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | owing:.......</p>.......<ul>.... |
| 4dd40 | 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 77 61 6e 74 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 64 | .....<li>You.want.to.provide.a.d |
| 4dd60 | 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 66 20 69 74 20 72 65 74 75 72 6e 65 64 20 61 6e 20 65 | efault.value.if.it.returned.an.e |
| 4dd80 | 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 69 74 20 72 65 74 | rror.</li>.........<li>If.it.ret |
| 4dda0 | 75 72 6e 65 64 20 61 6e 20 65 72 72 6f 72 20 74 68 65 6e 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 | urned.an.error.then.you.want.to. |
| 4ddc0 | 72 65 74 75 72 6e 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | return.the.same.error.</li>..... |
| 4dde0 | 20 20 20 20 3c 6c 69 3e 59 6f 75 20 6b 6e 6f 77 20 77 69 74 68 20 63 6f 6d 70 6c 65 74 65 20 63 | ....<li>You.know.with.complete.c |
| 4de00 | 65 72 74 61 69 6e 74 79 20 69 74 20 77 69 6c 6c 20 6e 6f 74 20 72 65 74 75 72 6e 20 61 6e 20 65 | ertainty.it.will.not.return.an.e |
| 4de20 | 72 72 6f 72 2c 20 73 6f 20 77 61 6e 74 20 74 6f 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 | rror,.so.want.to.unconditionally |
| 4de40 | 20 75 6e 77 72 61 70 20 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 | .unwrap.it.</li>.........<li>You |
| 4de60 | 20 77 61 6e 74 20 74 6f 20 74 61 6b 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 61 63 74 69 6f 6e | .want.to.take.a.different.action |
| 4de80 | 20 66 6f 72 20 65 61 63 68 20 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 | .for.each.possible.error.</li>.. |
| 4dea0 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 61 74 63 68 22 3e | .....</ul>.......<h3.id="catch"> |
| 4dec0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 61 74 63 68 22 3e 63 61 74 63 68 3c 2f 61 3e 20 3c | <a.href="#toc-catch">catch</a>.< |
| 4dee0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 61 74 63 68 22 3e c2 a7 3c 2f | a.class="hdr".href="#catch">..</ |
| 4df00 | 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f | a></h3>........<p>If.you.want.to |
| 4df20 | 20 70 72 6f 76 69 64 65 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 2c 20 79 6f 75 20 63 61 | .provide.a.default.value,.you.ca |
| 4df40 | 6e 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | n.use.the.<code.class="zig"><spa |
| 4df60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-kw">catch</span></c |
| 4df80 | 6f 64 65 3e 20 62 69 6e 61 72 79 20 6f 70 65 72 61 74 6f 72 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | ode>.binary.operator:</p>....... |
| 4dfa0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 4dfc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ss="tok-kw">fn</span>.<span.clas |
| 4dfe0 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 | s="tok-fn">doAThing</span>(str:. |
| 4e000 | 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | []<span.class="tok-type">u8</spa |
| 4e020 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | n>).<span.class="tok-type">void< |
| 4e040 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.{.....<span.class="tok-kw |
| 4e060 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 | ">const</span>.number.=.parseU64 |
| 4e080 | 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | (str,.<span.class="tok-number">1 |
| 4e0a0 | 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | 0</span>).<span.class="tok-kw">c |
| 4e0c0 | 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | atch</span>.<span.class="tok-num |
| 4e0e0 | 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">13</span>;.....<span.class= |
| 4e100 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 | "tok-comment">//....</span>.}</c |
| 4e120 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 | ode></pre>.......<p>.......In.th |
| 4e140 | 69 73 20 63 6f 64 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 62 65 | is.code,.<code.class="zig">numbe |
| 4e160 | 72 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 62 65 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 73 75 | r</code>.will.be.equal.to.the.su |
| 4e180 | 63 63 65 73 73 66 75 6c 6c 79 20 70 61 72 73 65 64 20 73 74 72 69 6e 67 2c 20 6f 72 0a 20 20 20 | ccessfully.parsed.string,.or.... |
| 4e1a0 | 20 20 20 20 20 20 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 31 33 2e 20 54 68 | .......a.default.value.of.13..Th |
| 4e1c0 | 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 72 69 67 68 74 20 68 61 6e 64 20 73 69 64 65 20 6f 66 | e.type.of.the.right.hand.side.of |
| 4e1e0 | 20 74 68 65 20 62 69 6e 61 72 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .the.binary.<code.class="zig"><s |
| 4e200 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-kw">catch</span>< |
| 4e220 | 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 6d 75 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 | /code>.operator.must............ |
| 4e240 | 20 20 20 6d 61 74 63 68 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 65 72 72 6f 72 20 75 6e 69 | ...match.the.unwrapped.error.uni |
| 4e260 | 6f 6e 20 74 79 70 65 2c 20 6f 72 20 62 65 20 6f 66 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 | on.type,.or.be.of.type.<code.cla |
| 4e280 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| 4e2a0 | 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f | noreturn</span></code>........</ |
| 4e2c0 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 74 72 79 22 3e 3c 61 20 | p>..............<h3.id="try"><a. |
| 4e2e0 | 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 79 22 3e 74 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | href="#toc-try">try</a>.<a.class |
| 4e300 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ="hdr".href="#try">..</a></h3>.. |
| 4e320 | 20 20 20 20 20 20 3c 70 3e 4c 65 74 27 73 20 73 61 79 20 79 6f 75 20 77 61 6e 74 65 64 20 74 6f | ......<p>Let's.say.you.wanted.to |
| 4e340 | 20 72 65 74 75 72 6e 20 74 68 65 20 65 72 72 6f 72 20 69 66 20 79 6f 75 20 67 6f 74 20 6f 6e 65 | .return.the.error.if.you.got.one |
| 4e360 | 2c 20 6f 74 68 65 72 77 69 73 65 20 63 6f 6e 74 69 6e 75 65 20 77 69 74 68 20 74 68 65 0a 20 20 | ,.otherwise.continue.with.the... |
| 4e380 | 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 67 69 63 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ....function.logic:</p>.......<p |
| 4e3a0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 4e3c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="tok-kw">fn</span>.<span.class= |
| 4e3e0 | 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d | "tok-fn">doAThing</span>(str:.[] |
| 4e400 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| 4e420 | 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | ).!<span.class="tok-type">void</ |
| 4e440 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.{.....<span.class="tok-kw" |
| 4e460 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 | >const</span>.number.=.parseU64( |
| 4e480 | 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | str,.<span.class="tok-number">10 |
| 4e4a0 | 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 | </span>).<span.class="tok-kw">ca |
| 4e4c0 | 74 63 68 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | tch</span>.|err|.<span.class="to |
| 4e4e0 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 20 20 20 20 3c 73 70 | k-kw">return</span>.err;.....<sp |
| 4e500 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 | an.class="tok-comment">//....</s |
| 4e520 | 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | pan>.}</code></pre>.......<p>... |
| 4e540 | 20 20 20 20 54 68 65 72 65 20 69 73 20 61 20 73 68 6f 72 74 63 75 74 20 66 6f 72 20 74 68 69 73 | ....There.is.a.shortcut.for.this |
| 4e560 | 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ..The.<code.class="zig"><span.cl |
| 4e580 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 | ass="tok-kw">try</span></code>.e |
| 4e5a0 | 78 70 72 65 73 73 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 | xpression:.......</p>.......<pre |
| 4e5c0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 4e5e0 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 4e600 | 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 | ok-fn">doAThing</span>(str:.[]<s |
| 4e620 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 | pan.class="tok-type">u8</span>). |
| 4e640 | 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 | !<span.class="tok-type">void</sp |
| 4e660 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | an>.{.....<span.class="tok-kw">c |
| 4e680 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onst</span>.number.=.<span.class |
| 4e6a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 28 73 74 | ="tok-kw">try</span>.parseU64(st |
| 4e6c0 | 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f | r,.<span.class="tok-number">10</ |
| 4e6e0 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | span>);.....<span.class="tok-com |
| 4e700 | 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ment">//....</span>.}</code></pr |
| 4e720 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | e>.......<p>.......<code.class=" |
| 4e740 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | zig"><span.class="tok-kw">try</s |
| 4e760 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 76 61 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 | pan></code>.evaluates.an.error.u |
| 4e780 | 6e 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 2e 20 49 66 20 69 74 20 69 73 20 61 6e 20 65 72 72 | nion.expression..If.it.is.an.err |
| 4e7a0 | 6f 72 2c 20 69 74 20 72 65 74 75 72 6e 73 0a 20 20 20 20 20 20 66 72 6f 6d 20 74 68 65 20 63 75 | or,.it.returns.......from.the.cu |
| 4e7c0 | 72 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 72 | rrent.function.with.the.same.err |
| 4e7e0 | 6f 72 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 72 65 | or..Otherwise,.the.expression.re |
| 4e800 | 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c | sults.in.......the.unwrapped.val |
| 4e820 | 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a | ue........</p>..............<p>. |
| 4e840 | 20 20 20 20 20 20 20 20 4d 61 79 62 65 20 79 6f 75 20 6b 6e 6f 77 20 77 69 74 68 20 63 6f 6d 70 | ........Maybe.you.know.with.comp |
| 4e860 | 6c 65 74 65 20 63 65 72 74 61 69 6e 74 79 20 74 68 61 74 20 61 6e 20 65 78 70 72 65 73 73 69 6f | lete.certainty.that.an.expressio |
| 4e880 | 6e 20 77 69 6c 6c 20 6e 65 76 65 72 20 62 65 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 | n.will.never.be.an.error........ |
| 4e8a0 | 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 69 73 3a 0a | ..In.this.case.you.can.do.this:. |
| 4e8c0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ......</p>.......<pre><code.clas |
| 4e8e0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 4e900 | 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 3c 73 70 61 | st</span>.number.=.parseU64(<spa |
| 4e920 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 32 33 34 26 71 75 6f | n.class="tok-str">"1234&quo |
| 4e940 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | t;</span>,.<span.class="tok-numb |
| 4e960 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | er">10</span>).<span.class="tok- |
| 4e980 | 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | kw">catch</span>.<span.class="to |
| 4e9a0 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e | k-kw">unreachable</span>;</code> |
| 4e9c0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 20 77 65 20 6b | </pre>.......<p>.......Here.we.k |
| 4e9e0 | 6e 6f 77 20 66 6f 72 20 73 75 72 65 20 74 68 61 74 20 22 31 32 33 34 22 20 77 69 6c 6c 20 70 61 | now.for.sure.that."1234".will.pa |
| 4ea00 | 72 73 65 20 73 75 63 63 65 73 73 66 75 6c 6c 79 2e 20 53 6f 20 77 65 20 70 75 74 20 74 68 65 0a | rse.successfully..So.we.put.the. |
| 4ea20 | 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ......<code.class="zig"><span.cl |
| 4ea40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c | ass="tok-kw">unreachable</span>< |
| 4ea60 | 2f 63 6f 64 65 3e 20 76 61 6c 75 65 20 6f 6e 20 74 68 65 20 72 69 67 68 74 20 68 61 6e 64 20 73 | /code>.value.on.the.right.hand.s |
| 4ea80 | 69 64 65 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | ide..<code.class="zig"><span.cla |
| 4eaa0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f | ss="tok-kw">unreachable</span></ |
| 4eac0 | 63 6f 64 65 3e 20 67 65 6e 65 72 61 74 65 73 0a 20 20 20 20 20 20 61 20 70 61 6e 69 63 20 69 6e | code>.generates.......a.panic.in |
| 4eae0 | 20 44 65 62 75 67 20 61 6e 64 20 52 65 6c 65 61 73 65 53 61 66 65 20 6d 6f 64 65 73 20 61 6e 64 | .Debug.and.ReleaseSafe.modes.and |
| 4eb00 | 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 69 6e 20 52 65 6c 65 61 73 65 46 61 | .undefined.behavior.in.ReleaseFa |
| 4eb20 | 73 74 20 6d 6f 64 65 2e 20 53 6f 2c 20 77 68 69 6c 65 20 77 65 27 72 65 20 64 65 62 75 67 67 69 | st.mode..So,.while.we're.debuggi |
| 4eb40 | 6e 67 20 74 68 65 0a 20 20 20 20 20 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 69 66 20 74 68 65 | ng.the.......application,.if.the |
| 4eb60 | 72 65 20 3c 65 6d 3e 77 61 73 3c 2f 65 6d 3e 20 61 20 73 75 72 70 72 69 73 65 20 65 72 72 6f 72 | re.<em>was</em>.a.surprise.error |
| 4eb80 | 20 68 65 72 65 2c 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 77 6f 75 6c 64 20 63 72 61 | .here,.the.application.would.cra |
| 4eba0 | 73 68 0a 20 20 20 20 20 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a 20 20 20 20 20 20 3c 2f | sh.......appropriately........</ |
| 4ebc0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 69 6e 61 6c 6c 79 2c 20 79 6f 75 20 | p>.......<p>.......Finally,.you. |
| 4ebe0 | 6d 61 79 20 77 61 6e 74 20 74 6f 20 74 61 6b 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 61 63 74 | may.want.to.take.a.different.act |
| 4ec00 | 69 6f 6e 20 66 6f 72 20 65 76 65 72 79 20 73 69 74 75 61 74 69 6f 6e 2e 20 46 6f 72 20 74 68 61 | ion.for.every.situation..For.tha |
| 4ec20 | 74 2c 20 77 65 20 63 6f 6d 62 69 6e 65 0a 20 20 20 20 20 20 74 68 65 20 3c 61 20 68 72 65 66 3d | t,.we.combine.......the.<a.href= |
| 4ec40 | 22 23 69 66 22 3e 69 66 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 | "#if">if</a>.and.<a.href="#switc |
| 4ec60 | 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 0a 20 20 20 20 20 20 | h">switch</a>.expression:....... |
| 4ec80 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | </p>.......<pre><code.class="zig |
| 4eca0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | "><span.class="tok-kw">fn</span> |
| 4ecc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f | .<span.class="tok-fn">doAThing</ |
| 4ece0 | 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | span>(str:.[]<span.class="tok-ty |
| 4ed00 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>).<span.class="tok- |
| 4ed20 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | type">void</span>.{.....<span.cl |
| 4ed40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 70 61 72 73 65 55 36 34 | ass="tok-kw">if</span>.(parseU64 |
| 4ed60 | 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | (str,.<span.class="tok-number">1 |
| 4ed80 | 30 3c 2f 73 70 61 6e 3e 29 29 20 7c 6e 75 6d 62 65 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 64 6f | 0</span>)).|number|.{.........do |
| 4eda0 | 53 6f 6d 65 74 68 69 6e 67 57 69 74 68 4e 75 6d 62 65 72 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 | SomethingWithNumber(number);.... |
| 4edc0 | 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 | .}.<span.class="tok-kw">else</sp |
| 4ede0 | 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | an>.|err|.<span.class="tok-kw">s |
| 4ee00 | 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | witch</span>.(err).{.........<sp |
| 4ee20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f | an.class="tok-kw">error</span>.O |
| 4ee40 | 76 65 72 66 6c 6f 77 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | verflow.=>.{.............<spa |
| 4ee60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 61 6e 64 6c 65 20 | n.class="tok-comment">//.handle. |
| 4ee80 | 6f 76 65 72 66 6c 6f 77 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 | overflow...</span>.........},... |
| 4eea0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ......<span.class="tok-comment"> |
| 4eec0 | 2f 2f 20 77 65 20 70 72 6f 6d 69 73 65 20 74 68 61 74 20 49 6e 76 61 6c 69 64 43 68 61 72 20 77 | //.we.promise.that.InvalidChar.w |
| 4eee0 | 6f 6e 27 74 20 68 61 70 70 65 6e 20 28 6f 72 20 63 72 61 73 68 20 69 6e 20 64 65 62 75 67 20 6d | on't.happen.(or.crash.in.debug.m |
| 4ef00 | 6f 64 65 20 69 66 20 69 74 20 64 6f 65 73 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c | ode.if.it.does)</span>.........< |
| 4ef20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e | span.class="tok-kw">error</span> |
| 4ef40 | 2e 49 6e 76 61 6c 69 64 43 68 61 72 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .InvalidChar.=>.<span.class=" |
| 4ef60 | 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | tok-kw">unreachable</span>,..... |
| 4ef80 | 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 | }.}</code></pre>.......<h3.id="e |
| 4efa0 | 72 72 64 65 66 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 64 65 66 65 72 22 | rrdefer"><a.href="#toc-errdefer" |
| 4efc0 | 3e 65 72 72 64 65 66 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | >errdefer</a>.<a.class="hdr".hre |
| 4efe0 | 66 3d 22 23 65 72 72 64 65 66 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | f="#errdefer">..</a></h3>....... |
| 4f000 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6f 74 68 65 72 20 63 6f 6d 70 6f 6e 65 6e 74 20 74 | .<p>.......The.other.component.t |
| 4f020 | 6f 20 65 72 72 6f 72 20 68 61 6e 64 6c 69 6e 67 20 69 73 20 64 65 66 65 72 20 73 74 61 74 65 6d | o.error.handling.is.defer.statem |
| 4f040 | 65 6e 74 73 2e 0a 20 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 61 6e 20 75 6e | ents........In.addition.to.an.un |
| 4f060 | 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 | conditional.<a.href="#defer">def |
| 4f080 | 65 72 3c 2f 61 3e 2c 20 5a 69 67 20 68 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | er</a>,.Zig.has.<code.class="zig |
| 4f0a0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c | "><span.class="tok-kw">errdefer< |
| 4f0c0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 65 76 61 6c 75 | /span></code>,.......which.evalu |
| 4f0e0 | 61 74 65 73 20 74 68 65 20 64 65 66 65 72 72 65 64 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 6e 20 | ates.the.deferred.expression.on. |
| 4f100 | 62 6c 6f 63 6b 20 65 78 69 74 20 70 61 74 68 20 69 66 20 61 6e 64 20 6f 6e 6c 79 20 69 66 0a 20 | block.exit.path.if.and.only.if.. |
| 4f120 | 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 65 64 20 77 69 74 68 20 | .....the.function.returned.with. |
| 4f140 | 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 74 68 65 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 3c | an.error.from.the.block........< |
| 4f160 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 | /p>.......<p>.......Example:.... |
| 4f180 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...</p>.......<pre><code.class=" |
| 4f1a0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | zig"><span.class="tok-kw">fn</sp |
| 4f1c0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 72 65 61 74 65 46 | an>.<span.class="tok-fn">createF |
| 4f1e0 | 6f 6f 3c 2f 73 70 61 6e 3e 28 70 61 72 61 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | oo</span>(param:.<span.class="to |
| 4f200 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 21 46 6f 6f 20 7b 0a 20 20 20 20 3c | k-type">i32</span>).!Foo.{.....< |
| 4f220 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 4f240 | 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | .foo.=.<span.class="tok-kw">try< |
| 4f260 | 2f 73 70 61 6e 3e 20 74 72 79 54 6f 41 6c 6c 6f 63 61 74 65 46 6f 6f 28 29 3b 0a 20 20 20 20 3c | /span>.tryToAllocateFoo();.....< |
| 4f280 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 77 20 | span.class="tok-comment">//.now. |
| 4f2a0 | 77 65 20 68 61 76 65 20 61 6c 6c 6f 63 61 74 65 64 20 66 6f 6f 2e 20 77 65 20 6e 65 65 64 20 74 | we.have.allocated.foo..we.need.t |
| 4f2c0 | 6f 20 66 72 65 65 20 69 74 20 69 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 66 61 69 6c 73 2e | o.free.it.if.the.function.fails. |
| 4f2e0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | </span>.....<span.class="tok-com |
| 4f300 | 6d 65 6e 74 22 3e 2f 2f 20 62 75 74 20 77 65 20 77 61 6e 74 20 74 6f 20 72 65 74 75 72 6e 20 69 | ment">//.but.we.want.to.return.i |
| 4f320 | 74 20 69 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 73 75 63 63 65 65 64 73 2e 3c 2f 73 70 61 | t.if.the.function.succeeds.</spa |
| 4f340 | 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 | n>.....<span.class="tok-kw">errd |
| 4f360 | 65 66 65 72 3c 2f 73 70 61 6e 3e 20 64 65 61 6c 6c 6f 63 61 74 65 46 6f 6f 28 66 6f 6f 29 3b 0a | efer</span>.deallocateFoo(foo);. |
| 4f380 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| 4f3a0 | 2f 73 70 61 6e 3e 20 74 6d 70 5f 62 75 66 20 3d 20 61 6c 6c 6f 63 61 74 65 54 6d 70 42 75 66 66 | /span>.tmp_buf.=.allocateTmpBuff |
| 4f3c0 | 65 72 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 | er().<span.class="tok-kw">orelse |
| 4f3e0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | </span>.<span.class="tok-kw">ret |
| 4f400 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | urn</span>.<span.class="tok-kw"> |
| 4f420 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 3b 0a 20 20 20 20 3c 73 | error</span>.OutOfMemory;.....<s |
| 4f440 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6d 70 5f 62 | pan.class="tok-comment">//.tmp_b |
| 4f460 | 75 66 20 69 73 20 74 72 75 6c 79 20 61 20 74 65 6d 70 6f 72 61 72 79 20 72 65 73 6f 75 72 63 65 | uf.is.truly.a.temporary.resource |
| 4f480 | 2c 20 61 6e 64 20 77 65 20 66 6f 72 20 73 75 72 65 20 77 61 6e 74 20 74 6f 20 63 6c 65 61 6e 20 | ,.and.we.for.sure.want.to.clean. |
| 4f4a0 | 69 74 20 75 70 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | it.up</span>.....<span.class="to |
| 4f4c0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 65 66 6f 72 65 20 74 68 69 73 20 62 6c 6f 63 6b 20 | k-comment">//.before.this.block. |
| 4f4e0 | 6c 65 61 76 65 73 20 73 63 6f 70 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | leaves.scope</span>.....<span.cl |
| 4f500 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 64 65 61 6c 6c 6f | ass="tok-kw">defer</span>.deallo |
| 4f520 | 63 61 74 65 54 6d 70 42 75 66 66 65 72 28 74 6d 70 5f 62 75 66 29 3b 0a 0a 20 20 20 20 3c 73 70 | cateTmpBuffer(tmp_buf);......<sp |
| 4f540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 70 61 72 | an.class="tok-kw">if</span>.(par |
| 4f560 | 61 6d 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | am.>.<span.class="tok-number" |
| 4f580 | 3e 31 33 33 37 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >1337</span>).<span.class="tok-k |
| 4f5a0 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">return</span>.<span.class="to |
| 4f5c0 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 49 6e 76 61 6c 69 64 50 61 72 61 6d 3b | k-kw">error</span>.InvalidParam; |
| 4f5e0 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ......<span.class="tok-comment"> |
| 4f600 | 2f 2f 20 68 65 72 65 20 74 68 65 20 65 72 72 64 65 66 65 72 20 77 69 6c 6c 20 6e 6f 74 20 72 75 | //.here.the.errdefer.will.not.ru |
| 4f620 | 6e 20 73 69 6e 63 65 20 77 65 27 72 65 20 72 65 74 75 72 6e 69 6e 67 20 73 75 63 63 65 73 73 20 | n.since.we're.returning.success. |
| 4f640 | 66 72 6f 6d 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | from.the.function.</span>.....<s |
| 4f660 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 75 74 20 74 | pan.class="tok-comment">//.but.t |
| 4f680 | 68 65 20 64 65 66 65 72 20 77 69 6c 6c 20 72 75 6e 21 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | he.defer.will.run!</span>.....<s |
| 4f6a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">return</span> |
| 4f6c0 | 20 66 6f 6f 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | .foo;.}</code></pre>.......<p>.. |
| 4f6e0 | 20 20 20 20 20 54 68 65 20 6e 65 61 74 20 74 68 69 6e 67 20 61 62 6f 75 74 20 74 68 69 73 20 69 | .....The.neat.thing.about.this.i |
| 4f700 | 73 20 74 68 61 74 20 79 6f 75 20 67 65 74 20 72 6f 62 75 73 74 20 65 72 72 6f 72 20 68 61 6e 64 | s.that.you.get.robust.error.hand |
| 4f720 | 6c 69 6e 67 20 77 69 74 68 6f 75 74 0a 20 20 20 20 20 20 74 68 65 20 76 65 72 62 6f 73 69 74 79 | ling.without.......the.verbosity |
| 4f740 | 20 61 6e 64 20 63 6f 67 6e 69 74 69 76 65 20 6f 76 65 72 68 65 61 64 20 6f 66 20 74 72 79 69 6e | .and.cognitive.overhead.of.tryin |
| 4f760 | 67 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 65 76 65 72 79 20 65 78 69 74 20 70 61 74 68 0a 20 | g.to.make.sure.every.exit.path.. |
| 4f780 | 20 20 20 20 20 69 73 20 63 6f 76 65 72 65 64 2e 20 54 68 65 20 64 65 61 6c 6c 6f 63 61 74 69 6f | .....is.covered..The.deallocatio |
| 4f7a0 | 6e 20 63 6f 64 65 20 69 73 20 61 6c 77 61 79 73 20 64 69 72 65 63 74 6c 79 20 66 6f 6c 6c 6f 77 | n.code.is.always.directly.follow |
| 4f7c0 | 69 6e 67 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c | ing.the.allocation.code........< |
| 4f7e0 | 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 63 6f 75 | /p>..............<p>.......A.cou |
| 4f800 | 70 6c 65 20 6f 66 20 6f 74 68 65 72 20 74 69 64 62 69 74 73 20 61 62 6f 75 74 20 65 72 72 6f 72 | ple.of.other.tidbits.about.error |
| 4f820 | 20 68 61 6e 64 6c 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | .handling:.......</p>.......<ul> |
| 4f840 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 73 65 20 70 72 69 6d 69 74 69 76 65 73 20 67 69 | .........<li>These.primitives.gi |
| 4f860 | 76 65 20 65 6e 6f 75 67 68 20 65 78 70 72 65 73 73 69 76 65 6e 65 73 73 20 74 68 61 74 20 69 74 | ve.enough.expressiveness.that.it |
| 4f880 | 27 73 20 63 6f 6d 70 6c 65 74 65 6c 79 20 70 72 61 63 74 69 63 61 6c 0a 20 20 20 20 20 20 20 20 | 's.completely.practical......... |
| 4f8a0 | 20 20 20 20 74 6f 20 68 61 76 65 20 66 61 69 6c 69 6e 67 20 74 6f 20 63 68 65 63 6b 20 66 6f 72 | ....to.have.failing.to.check.for |
| 4f8c0 | 20 61 6e 20 65 72 72 6f 72 20 62 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 20 49 66 | .an.error.be.a.compile.error..If |
| 4f8e0 | 20 79 6f 75 20 72 65 61 6c 6c 79 20 77 61 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 | .you.really.want.............to. |
| 4f900 | 69 67 6e 6f 72 65 20 74 68 65 20 65 72 72 6f 72 2c 20 79 6f 75 20 63 61 6e 20 61 64 64 20 3c 63 | ignore.the.error,.you.can.add.<c |
| 4f920 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 4f940 | 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">catch</span>.<span.class="t |
| 4f960 | 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ok-kw">unreachable</span></code> |
| 4f980 | 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 74 68 65 20 61 64 64 65 64 20 62 | .and.............get.the.added.b |
| 4f9a0 | 65 6e 65 66 69 74 20 6f 66 20 63 72 61 73 68 69 6e 67 20 69 6e 20 44 65 62 75 67 20 61 6e 64 20 | enefit.of.crashing.in.Debug.and. |
| 4f9c0 | 52 65 6c 65 61 73 65 53 61 66 65 20 6d 6f 64 65 73 20 69 66 20 79 6f 75 72 20 61 73 73 75 6d 70 | ReleaseSafe.modes.if.your.assump |
| 4f9e0 | 74 69 6f 6e 20 77 61 73 20 77 72 6f 6e 67 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 | tion.was.wrong..........</li>... |
| 4fa00 | 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 53 69 6e 63 65 20 5a 69 67 20 75 | ......<li>...........Since.Zig.u |
| 4fa20 | 6e 64 65 72 73 74 61 6e 64 73 20 65 72 72 6f 72 20 74 79 70 65 73 2c 20 69 74 20 63 61 6e 20 70 | nderstands.error.types,.it.can.p |
| 4fa40 | 72 65 2d 77 65 69 67 68 74 20 62 72 61 6e 63 68 65 73 20 69 6e 20 66 61 76 6f 72 20 6f 66 0a 20 | re-weight.branches.in.favor.of.. |
| 4fa60 | 20 20 20 20 20 20 20 20 20 65 72 72 6f 72 73 20 6e 6f 74 20 6f 63 63 75 72 72 69 6e 67 2e 20 4a | .........errors.not.occurring..J |
| 4fa80 | 75 73 74 20 61 20 73 6d 61 6c 6c 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 62 65 6e 65 66 69 74 | ust.a.small.optimization.benefit |
| 4faa0 | 20 74 68 61 74 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 | .that.is.not.available.......... |
| 4fac0 | 20 69 6e 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c | .in.other.languages..........</l |
| 4fae0 | 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | i>.......</ul>.......<p>See.also |
| 4fb00 | 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 | :</p><ul>.<li><a.href="#defer">d |
| 4fb20 | 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e | efer</a></li>.<li><a.href="#if"> |
| 4fb40 | 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 | if</a></li>.<li><a.href="#switch |
| 4fb60 | 22 3e 73 77 69 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 | ">switch</a></li>.</ul>......... |
| 4fb80 | 3c 70 3e 41 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 69 73 20 63 72 65 61 74 65 64 20 77 69 74 | <p>An.error.union.is.created.wit |
| 4fba0 | 68 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e | h.the.<code.class="zig">!</code> |
| 4fbc0 | 20 62 69 6e 61 72 79 20 6f 70 65 72 61 74 6f 72 2e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 | .binary.operator........You.can. |
| 4fbe0 | 75 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 | use.compile-time.reflection.to.a |
| 4fc00 | 63 63 65 73 73 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 | ccess.the.child.type.of.an.error |
| 4fc20 | 20 75 6e 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | .union:</p>.......<p.class="file |
| 4fc40 | 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ">test.zig</p><pre><code.class=" |
| 4fc60 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 4fc80 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.expect.=.<span.class="tok |
| 4fca0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 4fcc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 4fce0 | 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | span>).testing.expect;..<span.cl |
| 4fd00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">test</span>.<span.c |
| 4fd20 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 6f 72 20 75 6e 69 6f 6e | lass="tok-str">"error.union |
| 4fd40 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 4fd60 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">var</span>.foo:.<span.c |
| 4fd80 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 | lass="tok-type">anyerror</span>! |
| 4fda0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">i32</span |
| 4fdc0 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 | >.=.<span.class="tok-null">undef |
| 4fde0 | 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ined</span>;......<span.class="t |
| 4fe00 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 65 72 63 65 20 66 72 6f 6d 20 63 68 69 6c 64 | ok-comment">//.Coerce.from.child |
| 4fe20 | 20 74 79 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a | .type.of.an.error.union:</span>. |
| 4fe40 | 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ....foo.=.<span.class="tok-numbe |
| 4fe60 | 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | r">1234</span>;......<span.class |
| 4fe80 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 65 72 63 65 20 66 72 6f 6d 20 61 6e | ="tok-comment">//.Coerce.from.an |
| 4fea0 | 20 65 72 72 6f 72 20 73 65 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 | .error.set:</span>.....foo.=.<sp |
| 4fec0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 | an.class="tok-kw">error</span>.S |
| 4fee0 | 6f 6d 65 45 72 72 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | omeError;......<span.class="tok- |
| 4ff00 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 | comment">//.Use.compile-time.ref |
| 4ff20 | 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 70 61 79 6c 6f 61 64 20 74 79 | lection.to.access.the.payload.ty |
| 4ff40 | 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 | pe.of.an.error.union:</span>.... |
| 4ff60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | .<span.class="tok-kw">comptime</ |
| 4ff80 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | span>.<span.class="tok-kw">try</ |
| 4ffa0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | span>.expect(<span.class="tok-bu |
| 4ffc0 | 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | iltin">@typeInfo</span>(<span.cl |
| 4ffe0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@TypeOf</span> |
| 50000 | 28 66 6f 6f 29 29 2e 45 72 72 6f 72 55 6e 69 6f 6e 2e 70 61 79 6c 6f 61 64 20 3d 3d 20 3c 73 70 | (foo)).ErrorUnion.payload.==.<sp |
| 50020 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-type">i32</span>); |
| 50040 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ......<span.class="tok-comment"> |
| 50060 | 2f 2f 20 55 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 | //.Use.compile-time.reflection.t |
| 50080 | 6f 20 61 63 63 65 73 73 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 6f 66 20 61 | o.access.the.error.set.type.of.a |
| 500a0 | 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | n.error.union:</span>.....<span. |
| 500c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c | class="tok-kw">comptime</span>.< |
| 500e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 50100 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | xpect(<span.class="tok-builtin"> |
| 50120 | 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | @typeInfo</span>(<span.class="to |
| 50140 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 29 2e | k-builtin">@TypeOf</span>(foo)). |
| 50160 | 45 72 72 6f 72 55 6e 69 6f 6e 2e 65 72 72 6f 72 5f 73 65 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ErrorUnion.error_set.==.<span.cl |
| 50180 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 3b | ass="tok-type">anyerror</span>); |
| 501a0 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 501c0 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 | "shell">$.zig.test.test.zig.Test |
| 501e0 | 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 | .[1/1].test."error.union&qu |
| 50200 | 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 | ot;......All.1.tests.passed..</c |
| 50220 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4d 65 72 67 69 6e | ode></pre>........<h3.id="Mergin |
| 50240 | 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 65 72 67 | g-Error-Sets"><a.href="#toc-Merg |
| 50260 | 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 | ing-Error-Sets">Merging.Error.Se |
| 50280 | 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 65 72 | ts</a>.<a.class="hdr".href="#Mer |
| 502a0 | 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ging-Error-Sets">..</a></h3>.... |
| 502c0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 | ....<p>.......Use.the.<code.clas |
| 502e0 | 73 3d 22 7a 69 67 22 3e 7c 7c 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 74 6f 20 6d 65 | s="zig">||</code>.operator.to.me |
| 50300 | 72 67 65 20 74 77 6f 20 65 72 72 6f 72 20 73 65 74 73 20 74 6f 67 65 74 68 65 72 2e 20 54 68 65 | rge.two.error.sets.together..The |
| 50320 | 20 72 65 73 75 6c 74 69 6e 67 0a 20 20 20 20 20 20 65 72 72 6f 72 20 73 65 74 20 63 6f 6e 74 61 | .resulting.......error.set.conta |
| 50340 | 69 6e 73 20 74 68 65 20 65 72 72 6f 72 73 20 6f 66 20 62 6f 74 68 20 65 72 72 6f 72 20 73 65 74 | ins.the.errors.of.both.error.set |
| 50360 | 73 2e 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 66 72 6f 6d 20 74 68 65 20 6c 65 66 74 2d 68 61 | s..Doc.comments.from.the.left-ha |
| 50380 | 6e 64 0a 20 20 20 20 20 20 73 69 64 65 20 6f 76 65 72 72 69 64 65 20 64 6f 63 20 63 6f 6d 6d 65 | nd.......side.override.doc.comme |
| 503a0 | 6e 74 73 20 66 72 6f 6d 20 74 68 65 20 72 69 67 68 74 2d 68 61 6e 64 20 73 69 64 65 2e 20 49 6e | nts.from.the.right-hand.side..In |
| 503c0 | 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 64 6f 63 0a 20 20 20 20 20 20 63 6f 6d | .this.example,.the.doc.......com |
| 503e0 | 6d 65 6e 74 73 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 43 2e 50 61 | ments.for.<code.class="zig">C.Pa |
| 50400 | 74 68 4e 6f 74 46 6f 75 6e 64 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 41 20 64 6f 63 | thNotFound</code>.is.<code>A.doc |
| 50420 | 20 63 6f 6d 6d 65 6e 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .comment</code>........</p>..... |
| 50440 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 65 73 70 65 63 69 61 6c 6c 79 20 75 | ..<p>.......This.is.especially.u |
| 50460 | 73 65 66 75 6c 20 66 6f 72 20 66 75 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 72 65 74 75 72 6e | seful.for.functions.which.return |
| 50480 | 20 64 69 66 66 65 72 65 6e 74 20 65 72 72 6f 72 20 73 65 74 73 20 64 65 70 65 6e 64 69 6e 67 0a | .different.error.sets.depending. |
| 504a0 | 20 20 20 20 20 20 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d | ......on.<a.href="#comptime">com |
| 504c0 | 70 74 69 6d 65 3c 2f 61 3e 20 62 72 61 6e 63 68 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c | ptime</a>.branches..For.example, |
| 504e0 | 20 74 68 65 20 5a 69 67 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 75 73 65 73 0a 20 | .the.Zig.standard.library.uses.. |
| 50500 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4c 69 6e 75 78 46 69 6c 65 | .....<code.class="zig">LinuxFile |
| 50520 | 4f 70 65 6e 45 72 72 6f 72 20 7c 7c 20 57 69 6e 64 6f 77 73 46 69 6c 65 4f 70 65 6e 45 72 72 6f | OpenError.||.WindowsFileOpenErro |
| 50540 | 72 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 6f 66 20 6f 70 | r</code>.for.the.error.set.of.op |
| 50560 | 65 6e 69 6e 67 0a 20 20 20 20 20 20 66 69 6c 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ening.......files........</p>... |
| 50580 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 505a0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 505c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 20 3d 20 3c 73 70 | ss="tok-kw">const</span>.A.=.<sp |
| 505e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a | an.class="tok-kw">error</span>{. |
| 50600 | 20 20 20 20 4e 6f 74 44 69 72 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ....NotDir,......<span.class="to |
| 50620 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 41 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 | k-comment">///.A.doc.comment</sp |
| 50640 | 61 6e 3e 0a 20 20 20 20 50 61 74 68 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 | an>.....PathNotFound,.};.<span.c |
| 50660 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 20 3d 20 3c | lass="tok-kw">const</span>.B.=.< |
| 50680 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e | span.class="tok-kw">error</span> |
| 506a0 | 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | {.....OutOfMemory,......<span.cl |
| 506c0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 42 20 64 6f 63 20 63 6f 6d 6d | ass="tok-comment">///.B.doc.comm |
| 506e0 | 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 50 61 74 68 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a | ent</span>.....PathNotFound,.};. |
| 50700 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 50720 | 6e 3e 20 43 20 3d 20 41 20 7c 7c 20 42 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.C.=.A.||.B;..<span.class="tok |
| 50740 | 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | -kw">fn</span>.<span.class="tok- |
| 50760 | 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 43 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | fn">foo</span>().C!<span.class=" |
| 50780 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | tok-type">void</span>.{.....<spa |
| 507a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c | n.class="tok-kw">return</span>.< |
| 507c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e | span.class="tok-kw">error</span> |
| 507e0 | 2e 4e 6f 74 44 69 72 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .NotDir;.}..<span.class="tok-kw" |
| 50800 | 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >test</span>.<span.class="tok-st |
| 50820 | 72 22 3e 26 71 75 6f 74 3b 6d 65 72 67 65 20 65 72 72 6f 72 20 73 65 74 73 26 71 75 6f 74 3b 3c | r">"merge.error.sets"< |
| 50840 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.{.....<span.class="tok-kw |
| 50860 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 66 6f 6f 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 | ">if</span>.(foo()).{.........<s |
| 50880 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f | pan.class="tok-builtin">@panic</ |
| 508a0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>(<span.class="tok-str">&quo |
| 508c0 | 74 3b 75 6e 65 78 70 65 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | t;unexpected"</span>);..... |
| 508e0 | 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 | }.<span.class="tok-kw">else</spa |
| 50900 | 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 | n>.|err|.<span.class="tok-kw">sw |
| 50920 | 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | itch</span>.(err).{.........<spa |
| 50940 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 | n.class="tok-kw">error</span>.Ou |
| 50960 | 74 4f 66 4d 65 6d 6f 72 79 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tOfMemory.=>.<span.class="tok |
| 50980 | 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | -builtin">@panic</span>(<span.cl |
| 509a0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 65 78 70 65 63 74 65 64 26 71 | ass="tok-str">"unexpected&q |
| 509c0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | uot;</span>),.........<span.clas |
| 509e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 50 61 74 68 4e 6f 74 46 | s="tok-kw">error</span>.PathNotF |
| 50a00 | 6f 75 6e 64 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ound.=>.<span.class="tok-buil |
| 50a20 | 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tin">@panic</span>(<span.class=" |
| 50a40 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 65 78 70 65 63 74 65 64 26 71 75 6f 74 3b 3c | tok-str">"unexpected"< |
| 50a60 | 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>),.........<span.class="to |
| 50a80 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4e 6f 74 44 69 72 20 3d 26 67 74 3b 20 | k-kw">error</span>.NotDir.=>. |
| 50aa0 | 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | {},.....}.}</code></pre><pre><co |
| 50ac0 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 | de.class="shell">$.zig.test.test |
| 50ae0 | 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6d 65 72 67 65 | .zig.Test.[1/1].test."merge |
| 50b00 | 20 65 72 72 6f 72 20 73 65 74 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 | .error.sets"......All.1.tes |
| 50b20 | 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ts.passed..</code></pre>........ |
| 50b40 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 | .......<h3.id="Inferred-Error-Se |
| 50b60 | 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 | ts"><a.href="#toc-Inferred-Error |
| 50b80 | 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 65 64 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 20 3c | -Sets">Inferred.Error.Sets</a>.< |
| 50ba0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 72 | a.class="hdr".href="#Inferred-Er |
| 50bc0 | 72 6f 72 2d 53 65 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | ror-Sets">..</a></h3>........<p> |
| 50be0 | 0a 20 20 20 20 20 20 42 65 63 61 75 73 65 20 6d 61 6e 79 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e | .......Because.many.functions.in |
| 50c00 | 20 5a 69 67 20 72 65 74 75 72 6e 20 61 20 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 2c 20 5a 69 | .Zig.return.a.possible.error,.Zi |
| 50c20 | 67 20 73 75 70 70 6f 72 74 73 20 69 6e 66 65 72 72 69 6e 67 20 74 68 65 20 65 72 72 6f 72 20 73 | g.supports.inferring.the.error.s |
| 50c40 | 65 74 2e 0a 20 20 20 20 20 20 54 6f 20 69 6e 66 65 72 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 | et........To.infer.the.error.set |
| 50c60 | 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 75 73 65 20 74 68 69 73 20 73 79 6e 74 61 78 | .for.a.function,.use.this.syntax |
| 50c80 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | :.......</p>.<p.class="file">tes |
| 50ca0 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 50cc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 69 74 | <span.class="tok-comment">//.Wit |
| 50ce0 | 68 20 61 6e 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 3c | h.an.inferred.error.set</span>.< |
| 50d00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c | span.class="tok-kw">pub</span>.< |
| 50d20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 50d40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 5f 69 6e 66 65 72 72 65 64 3c | pan.class="tok-fn">add_inferred< |
| 50d60 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | /span>(<span.class="tok-kw">comp |
| 50d80 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | time</span>.T:.<span.class="tok- |
| 50da0 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 21 | type">type</span>,.a:.T,.b:.T).! |
| 50dc0 | 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | T.{.....<span.class="tok-kw">var |
| 50de0 | 3c 2f 73 70 61 6e 3e 20 61 6e 73 77 65 72 3a 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>.answer:.T.=.<span.class= |
| 50e00 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | "tok-null">undefined</span>;.... |
| 50e20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 | .<span.class="tok-kw">return</sp |
| 50e40 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 | an>.<span.class="tok-kw">if</spa |
| 50e60 | 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 | n>.(<span.class="tok-builtin">@a |
| 50e80 | 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 54 2c 20 61 2c 20 62 2c 20 26 | ddWithOverflow</span>(T,.a,.b,.& |
| 50ea0 | 61 6d 70 3b 61 6e 73 77 65 72 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | amp;answer)).<span.class="tok-kw |
| 50ec0 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 20 3c 73 70 61 6e 20 63 6c | ">error</span>.Overflow.<span.cl |
| 50ee0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 61 6e 73 77 65 72 3b | ass="tok-kw">else</span>.answer; |
| 50f00 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | .}..<span.class="tok-comment">// |
| 50f20 | 20 57 69 74 68 20 61 6e 20 65 78 70 6c 69 63 69 74 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 | .With.an.explicit.error.set</spa |
| 50f40 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | n>.<span.class="tok-kw">pub</spa |
| 50f60 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | n>.<span.class="tok-kw">fn</span |
| 50f80 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 5f 65 78 70 6c 69 | >.<span.class="tok-fn">add_expli |
| 50fa0 | 63 69 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | cit</span>(<span.class="tok-kw"> |
| 50fc0 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | comptime</span>.T:.<span.class=" |
| 50fe0 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 | tok-type">type</span>,.a:.T,.b:. |
| 51000 | 54 29 20 45 72 72 6f 72 21 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | T).Error!T.{.....<span.class="to |
| 51020 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 6e 73 77 65 72 3a 20 54 20 3d 20 3c 73 70 | k-kw">var</span>.answer:.T.=.<sp |
| 51040 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 | an.class="tok-null">undefined</s |
| 51060 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | pan>;.....<span.class="tok-kw">r |
| 51080 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | eturn</span>.<span.class="tok-kw |
| 510a0 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ">if</span>.(<span.class="tok-bu |
| 510c0 | 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 54 | iltin">@addWithOverflow</span>(T |
| 510e0 | 2c 20 61 2c 20 62 2c 20 26 61 6d 70 3b 61 6e 73 77 65 72 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 | ,.a,.b,.&answer)).<span.clas |
| 51100 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 | s="tok-kw">error</span>.Overflow |
| 51120 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e | .<span.class="tok-kw">else</span |
| 51140 | 3e 20 61 6e 73 77 65 72 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >.answer;.}..<span.class="tok-kw |
| 51160 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ">const</span>.Error.=.<span.cla |
| 51180 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 4f | ss="tok-kw">error</span>.{.....O |
| 511a0 | 76 65 72 66 6c 6f 77 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | verflow,.};..<span.class="tok-kw |
| 511c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.std.=.<span.class |
| 511e0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@import</span>(<s |
| 51200 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 | pan.class="tok-str">"std&qu |
| 51220 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ot;</span>);..<span.class="tok-k |
| 51240 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | w">test</span>.<span.class="tok- |
| 51260 | 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 26 71 75 | str">"inferred.error.set&qu |
| 51280 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ot;</span>.{.....<span.class="to |
| 512a0 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 64 64 5f 69 6e 66 65 72 72 65 64 28 3c 73 | k-kw">if</span>.(add_inferred(<s |
| 512c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 | pan.class="tok-type">u8</span>,. |
| 512e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 | <span.class="tok-number">255</sp |
| 51300 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | an>,.<span.class="tok-number">1< |
| 51320 | 2f 73 70 61 6e 3e 29 29 20 7c 5f 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>)).|_|.<span.class="tok-kw |
| 51340 | 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">unreachable</span>.<span.class |
| 51360 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 | ="tok-kw">else</span>.|err|.<spa |
| 51380 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 | n.class="tok-kw">switch</span>.( |
| 513a0 | 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | err).{.........<span.class="tok- |
| 513c0 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 20 3d 26 67 74 3b 20 | kw">error</span>.Overflow.=>. |
| 513e0 | 7b 7d 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | {},.<span.class="tok-comment">// |
| 51400 | 20 6f 6b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | .ok</span>.....}.}</code></pre>< |
| 51420 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| 51440 | 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f | st.test.zig.Test.[1/1].test.&quo |
| 51460 | 74 3b 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a | t;inferred.error.set"...... |
| 51480 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.1.tests.passed..</code></pre |
| 514a0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 66 75 6e 63 74 69 | >........<p>.......When.a.functi |
| 514c0 | 6f 6e 20 68 61 73 20 61 6e 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 2c 20 74 68 | on.has.an.inferred.error.set,.th |
| 514e0 | 61 74 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 6f 6d 65 73 20 67 65 6e 65 72 69 63 20 61 6e 64 20 | at.function.becomes.generic.and. |
| 51500 | 74 68 75 73 20 69 74 20 62 65 63 6f 6d 65 73 0a 20 20 20 20 20 20 74 72 69 63 6b 69 65 72 20 74 | thus.it.becomes.......trickier.t |
| 51520 | 6f 20 64 6f 20 63 65 72 74 61 69 6e 20 74 68 69 6e 67 73 20 77 69 74 68 20 69 74 2c 20 73 75 63 | o.do.certain.things.with.it,.suc |
| 51540 | 68 20 61 73 20 6f 62 74 61 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72 2c 20 | h.as.obtain.a.function.pointer,. |
| 51560 | 6f 72 20 68 61 76 65 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 73 65 74 20 74 68 61 74 20 | or.have.an.error.......set.that. |
| 51580 | 69 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 20 64 69 66 66 65 72 65 6e 74 20 62 | is.consistent.across.different.b |
| 515a0 | 75 69 6c 64 20 74 61 72 67 65 74 73 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 69 6e 66 65 | uild.targets..Additionally,.infe |
| 515c0 | 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 73 0a 20 20 20 20 20 20 61 72 65 20 69 6e 63 6f 6d 70 | rred.error.sets.......are.incomp |
| 515e0 | 61 74 69 62 6c 65 20 77 69 74 68 20 72 65 63 75 72 73 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 | atible.with.recursion........</p |
| 51600 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 73 65 20 73 69 74 75 61 | >.......<p>.......In.these.situa |
| 51620 | 74 69 6f 6e 73 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 | tions,.it.is.recommended.to.use. |
| 51640 | 61 6e 20 65 78 70 6c 69 63 69 74 20 65 72 72 6f 72 20 73 65 74 2e 20 59 6f 75 20 63 61 6e 20 67 | an.explicit.error.set..You.can.g |
| 51660 | 65 6e 65 72 61 6c 6c 79 20 73 74 61 72 74 0a 20 20 20 20 20 20 77 69 74 68 20 61 6e 20 65 6d 70 | enerally.start.......with.an.emp |
| 51680 | 74 79 20 65 72 72 6f 72 20 73 65 74 20 61 6e 64 20 6c 65 74 20 63 6f 6d 70 69 6c 65 20 65 72 72 | ty.error.set.and.let.compile.err |
| 516a0 | 6f 72 73 20 67 75 69 64 65 20 79 6f 75 20 74 6f 77 61 72 64 20 63 6f 6d 70 6c 65 74 69 6e 67 20 | ors.guide.you.toward.completing. |
| 516c0 | 74 68 65 20 73 65 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | the.set........</p>.......<p>... |
| 516e0 | 20 20 20 20 54 68 65 73 65 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 6d 61 79 20 62 65 20 6f 76 65 | ....These.limitations.may.be.ove |
| 51700 | 72 63 6f 6d 65 20 69 6e 20 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 5a 69 67 | rcome.in.a.future.version.of.Zig |
| 51720 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ........</p>.................... |
| 51740 | 20 3c 68 32 20 69 64 3d 22 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 3e 3c 61 | .<h2.id="Error-Return-Traces"><a |
| 51760 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 | .href="#toc-Error-Return-Traces" |
| 51780 | 3e 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | >Error.Return.Traces</a>.<a.clas |
| 517a0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 | s="hdr".href="#Error-Return-Trac |
| 517c0 | 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | es">..</a></h2>........<p>...... |
| 517e0 | 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 20 73 68 6f 77 20 61 6c 6c 20 74 68 | .Error.Return.Traces.show.all.th |
| 51800 | 65 20 70 6f 69 6e 74 73 20 69 6e 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 61 6e 20 65 72 72 | e.points.in.the.code.that.an.err |
| 51820 | 6f 72 20 77 61 73 20 72 65 74 75 72 6e 65 64 20 74 6f 20 74 68 65 20 63 61 6c 6c 69 6e 67 20 66 | or.was.returned.to.the.calling.f |
| 51840 | 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74 20 70 72 61 63 74 69 63 61 6c | unction..This.makes.it.practical |
| 51860 | 20 74 6f 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 79 3c 2f 61 3e 20 65 | .to.use.<a.href="#try">try</a>.e |
| 51880 | 76 65 72 79 77 68 65 72 65 20 61 6e 64 20 74 68 65 6e 20 73 74 69 6c 6c 20 62 65 20 61 62 6c 65 | verywhere.and.then.still.be.able |
| 518a0 | 20 74 6f 20 6b 6e 6f 77 20 77 68 61 74 20 68 61 70 70 65 6e 65 64 20 69 66 20 61 6e 20 65 72 72 | .to.know.what.happened.if.an.err |
| 518c0 | 6f 72 20 65 6e 64 73 20 75 70 20 62 75 62 62 6c 69 6e 67 20 61 6c 6c 20 74 68 65 20 77 61 79 20 | or.ends.up.bubbling.all.the.way. |
| 518e0 | 6f 75 74 20 6f 66 20 79 6f 75 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c | out.of.your.application........< |
| 51900 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 51920 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 51940 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 | an.class="tok-kw">pub</span>.<sp |
| 51960 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| 51980 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 | n.class="tok-fn">main</span>().! |
| 519a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 | <span.class="tok-type">void</spa |
| 519c0 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>.{.....<span.class="tok-kw">tr |
| 519e0 | 79 3c 2f 73 70 61 6e 3e 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | y</span>.foo(<span.class="tok-nu |
| 51a00 | 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | mber">12</span>);.}..<span.class |
| 51a20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="tok-kw">fn</span>.<span.class= |
| 51a40 | 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-fn">foo</span>(x:.<span.cla |
| 51a60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e | ss="tok-type">i32</span>).!<span |
| 51a80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-type">void</span>.{. |
| 51aa0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 | ....<span.class="tok-kw">if</spa |
| 51ac0 | 6e 3e 20 28 78 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | n>.(x.>=.<span.class="tok-num |
| 51ae0 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ber">5</span>).{.........<span.c |
| 51b00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 72 28 29 3b 0a | lass="tok-kw">try</span>.bar();. |
| 51b20 | 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | ....}.<span.class="tok-kw">else< |
| 51b40 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>.{.........<span.class="to |
| 51b60 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 32 28 29 3b 0a 20 20 20 20 7d 0a | k-kw">try</span>.bang2();.....}. |
| 51b80 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | }..<span.class="tok-kw">fn</span |
| 51ba0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e | >.<span.class="tok-fn">bar</span |
| 51bc0 | 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | >().!<span.class="tok-type">void |
| 51be0 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| 51c00 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 61 7a 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 3c | w">if</span>.(baz()).{.........< |
| 51c20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 71 | span.class="tok-kw">try</span>.q |
| 51c40 | 75 75 78 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | uux();.....}.<span.class="tok-kw |
| 51c60 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">else</span>.|err|.<span.class= |
| 51c80 | 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 | "tok-kw">switch</span>.(err).{.. |
| 51ca0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | .......<span.class="tok-kw">erro |
| 51cc0 | 72 3c 2f 73 70 61 6e 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 3b 20 3c 73 70 61 | r</span>.FileNotFound.=>.<spa |
| 51ce0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c | n.class="tok-kw">try</span>.hell |
| 51d00 | 6f 28 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | o(),.........<span.class="tok-kw |
| 51d20 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">else</span>.=>.<span.class= |
| 51d40 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 28 29 2c 0a 20 | "tok-kw">try</span>.another(),.. |
| 51d60 | 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | ...}.}..<span.class="tok-kw">fn< |
| 51d80 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 7a 3c | /span>.<span.class="tok-fn">baz< |
| 51da0 | 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>().!<span.class="tok-type" |
| 51dc0 | 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >void</span>.{.....<span.class=" |
| 51de0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 31 28 29 3b 0a 7d 0a 0a 3c | tok-kw">try</span>.bang1();.}..< |
| 51e00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 51e20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 71 75 75 78 3c 2f 73 70 61 6e 3e 28 29 | pan.class="tok-fn">quux</span>() |
| 51e40 | 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | .!<span.class="tok-type">void</s |
| 51e60 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 51e80 | 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | try</span>.bang2();.}..<span.cla |
| 51ea0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ss="tok-kw">fn</span>.<span.clas |
| 51ec0 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 68 65 6c 6c 6f 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e | s="tok-fn">hello</span>().!<span |
| 51ee0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-type">void</span>.{. |
| 51f00 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 51f20 | 61 6e 3e 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.bang2();.}..<span.class="tok |
| 51f40 | 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | -kw">fn</span>.<span.class="tok- |
| 51f60 | 66 6e 22 3e 61 6e 6f 74 68 65 72 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | fn">another</span>().!<span.clas |
| 51f80 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | s="tok-type">void</span>.{.....< |
| 51fa0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 | span.class="tok-kw">try</span>.b |
| 51fc0 | 61 6e 67 31 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ang1();.}..<span.class="tok-kw"> |
| 51fe0 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 | fn</span>.<span.class="tok-fn">b |
| 52000 | 61 6e 67 31 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ang1</span>().!<span.class="tok- |
| 52020 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | type">void</span>.{.....<span.cl |
| 52040 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | ass="tok-kw">return</span>.<span |
| 52060 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 69 6c | .class="tok-kw">error</span>.Fil |
| 52080 | 65 4e 6f 74 46 6f 75 6e 64 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | eNotFound;.}..<span.class="tok-k |
| 520a0 | 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e | w">fn</span>.<span.class="tok-fn |
| 520c0 | 22 3e 62 61 6e 67 32 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">bang2</span>().!<span.class="t |
| 520e0 | 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ok-type">void</span>.{.....<span |
| 52100 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | .class="tok-kw">return</span>.<s |
| 52120 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e | pan.class="tok-kw">error</span>. |
| 52140 | 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | PermissionDenied;.}</code></pre> |
| 52160 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 | <pre><code.class="shell">$.zig.b |
| 52180 | 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 65 72 72 6f 72 | uild-exe.test.zig.$../test.error |
| 521a0 | 3a 20 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | :.PermissionDenied.<span.class=" |
| 521c0 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 | t1_0">/home/andy/Downloads/zig/d |
| 521e0 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 39 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | ocgen_tmp/test.zig:39:5</span>:. |
| 52200 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 31 36 33 32 20 69 6e 20 62 | <span.class="t2_0">0x231632.in.b |
| 52220 | 61 6e 67 31 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 | ang1.(test)</span>.....return.er |
| 52240 | 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ror.FileNotFound;.....<span.clas |
| 52260 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 52280 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 | t1_0">/home/andy/Downloads/zig/d |
| 522a0 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 33 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | ocgen_tmp/test.zig:23:5</span>:. |
| 522c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 31 35 30 66 20 69 6e 20 62 | <span.class="t2_0">0x23150f.in.b |
| 522e0 | 61 7a 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 62 61 6e 67 31 28 29 | az.(test)</span>.....try.bang1() |
| 52300 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ;.....<span.class="t32_1">^</spa |
| 52320 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | n>.<span.class="t1_0">/home/andy |
| 52340 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | /Downloads/zig/docgen_tmp/test.z |
| 52360 | 69 67 3a 34 33 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | ig:43:5</span>:.<span.class="t2_ |
| 52380 | 30 22 3e 30 78 32 33 31 34 64 32 20 69 6e 20 62 61 6e 67 32 20 28 74 65 73 74 29 3c 2f 73 70 61 | 0">0x2314d2.in.bang2.(test)</spa |
| 523a0 | 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 50 65 72 6d 69 73 73 69 6f 6e 44 65 | n>.....return.error.PermissionDe |
| 523c0 | 6e 69 65 64 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | nied;.....<span.class="t32_1">^< |
| 523e0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f | /span>.<span.class="t1_0">/home/ |
| 52400 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | andy/Downloads/zig/docgen_tmp/te |
| 52420 | 73 74 2e 7a 69 67 3a 33 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:31:5</span>:.<span.class= |
| 52440 | 22 74 32 5f 30 22 3e 30 78 32 33 31 35 66 66 20 69 6e 20 68 65 6c 6c 6f 20 28 74 65 73 74 29 3c | "t2_0">0x2315ff.in.hello.(test)< |
| 52460 | 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 62 61 6e 67 32 28 29 3b 0a 20 20 20 20 3c 73 70 61 | /span>.....try.bang2();.....<spa |
| 52480 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 524a0 | 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 | lass="t1_0">/home/andy/Downloads |
| 524c0 | 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 37 3a 33 31 3c 2f | /zig/docgen_tmp/test.zig:17:31</ |
| 524e0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 31 34 | span>:.<span.class="t2_0">0x2314 |
| 52500 | 39 65 20 69 6e 20 62 61 72 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | 9e.in.bar.(test)</span>......... |
| 52520 | 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 3b 20 74 72 79 20 68 65 6c | error.FileNotFound.=>.try.hel |
| 52540 | 6c 6f 28 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | lo(),........................... |
| 52560 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 52580 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | .<span.class="t1_0">/home/andy/D |
| 525a0 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ownloads/zig/docgen_tmp/test.zig |
| 525c0 | 3a 37 3a 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e | :7:9</span>:.<span.class="t2_0"> |
| 525e0 | 30 78 32 33 31 33 38 63 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | 0x23138c.in.foo.(test)</span>... |
| 52600 | 20 20 20 20 20 20 74 72 79 20 62 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ......try.bar();.........<span.c |
| 52620 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| 52640 | 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 | s="t1_0">/home/andy/Downloads/zi |
| 52660 | 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 35 3c 2f 73 70 61 6e 3e | g/docgen_tmp/test.zig:2:5</span> |
| 52680 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 61 30 63 34 20 69 6e | :.<span.class="t2_0">0x22a0c4.in |
| 526a0 | 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 66 6f 6f 28 | .main.(test)</span>.....try.foo( |
| 526c0 | 31 32 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | 12);.....<span.class="t32_1">^</ |
| 526e0 | 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | span>.</code></pre>........<p>.. |
| 52700 | 20 20 20 20 20 4c 6f 6f 6b 20 63 6c 6f 73 65 6c 79 20 61 74 20 74 68 69 73 20 65 78 61 6d 70 6c | .....Look.closely.at.this.exampl |
| 52720 | 65 2e 20 54 68 69 73 20 69 73 20 6e 6f 20 73 74 61 63 6b 20 74 72 61 63 65 2e 0a 20 20 20 20 20 | e..This.is.no.stack.trace....... |
| 52740 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 73 65 | .</p>.......<p>.......You.can.se |
| 52760 | 65 20 74 68 61 74 20 74 68 65 20 66 69 6e 61 6c 20 65 72 72 6f 72 20 62 75 62 62 6c 65 64 20 75 | e.that.the.final.error.bubbled.u |
| 52780 | 70 20 77 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 50 65 72 6d 69 73 73 69 | p.was.<code.class="zig">Permissi |
| 527a0 | 6f 6e 44 65 6e 69 65 64 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 62 75 74 20 74 | onDenied</code>,...........but.t |
| 527c0 | 68 65 20 6f 72 69 67 69 6e 61 6c 20 65 72 72 6f 72 20 74 68 61 74 20 73 74 61 72 74 65 64 20 74 | he.original.error.that.started.t |
| 527e0 | 68 69 73 20 77 68 6f 6c 65 20 74 68 69 6e 67 20 77 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | his.whole.thing.was.<code.class= |
| 52800 | 22 7a 69 67 22 3e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 74 68 | "zig">FileNotFound</code>..In.th |
| 52820 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 66 | e.<code.class="zig">bar</code>.f |
| 52840 | 75 6e 63 74 69 6f 6e 2c 20 74 68 65 20 63 6f 64 65 20 68 61 6e 64 6c 65 73 20 74 68 65 20 6f 72 | unction,.the.code.handles.the.or |
| 52860 | 69 67 69 6e 61 6c 20 65 72 72 6f 72 20 63 6f 64 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 65 | iginal.error.code,.......and.the |
| 52880 | 6e 20 72 65 74 75 72 6e 73 20 61 6e 6f 74 68 65 72 20 6f 6e 65 2c 20 66 72 6f 6d 20 74 68 65 20 | n.returns.another.one,.from.the. |
| 528a0 | 73 77 69 74 63 68 20 73 74 61 74 65 6d 65 6e 74 2e 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 | switch.statement..Error.Return.T |
| 528c0 | 72 61 63 65 73 20 6d 61 6b 65 20 74 68 69 73 20 63 6c 65 61 72 2c 20 77 68 65 72 65 61 73 20 61 | races.make.this.clear,.whereas.a |
| 528e0 | 20 73 74 61 63 6b 20 74 72 61 63 65 20 77 6f 75 6c 64 20 6c 6f 6f 6b 20 6c 69 6b 65 20 74 68 69 | .stack.trace.would.look.like.thi |
| 52900 | 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | s:.......</p>.......<p.class="fi |
| 52920 | 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | le">test.zig</p><pre><code.class |
| 52940 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | ="zig"><span.class="tok-kw">pub< |
| 52960 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | /span>.<span.class="tok-kw">fn</ |
| 52980 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c | span>.<span.class="tok-fn">main< |
| 529a0 | 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | /span>().<span.class="tok-type"> |
| 529c0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 | void</span>.{.....foo(<span.clas |
| 529e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 | s="tok-number">12</span>);.}..<s |
| 52a00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 | pan.class="tok-kw">fn</span>.<sp |
| 52a20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 | an.class="tok-fn">foo</span>(x:. |
| 52a40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">i32</span |
| 52a60 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | >).<span.class="tok-type">void</ |
| 52a80 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.{.....<span.class="tok-kw" |
| 52aa0 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 78 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >if</span>.(x.>=.<span.class= |
| 52ac0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 | "tok-number">5</span>).{........ |
| 52ae0 | 20 62 61 72 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .bar();.....}.<span.class="tok-k |
| 52b00 | 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 62 61 6e 67 32 28 29 | w">else</span>.{.........bang2() |
| 52b20 | 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ;.....}.}..<span.class="tok-kw"> |
| 52b40 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 | fn</span>.<span.class="tok-fn">b |
| 52b60 | 61 72 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ar</span>().<span.class="tok-typ |
| 52b80 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">void</span>.{.....<span.class |
| 52ba0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 61 7a 28 29 29 20 7b 0a 20 20 | ="tok-kw">if</span>.(baz()).{... |
| 52bc0 | 20 20 20 20 20 20 71 75 75 78 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ......quux();.....}.<span.class= |
| 52be0 | 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 68 | "tok-kw">else</span>.{.........h |
| 52c00 | 65 6c 6c 6f 28 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ello();.....}.}..<span.class="to |
| 52c20 | 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | k-kw">fn</span>.<span.class="tok |
| 52c40 | 2d 66 6e 22 3e 62 61 7a 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -fn">baz</span>().<span.class="t |
| 52c60 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ok-type">bool</span>.{.....<span |
| 52c80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 61 | .class="tok-kw">return</span>.ba |
| 52ca0 | 6e 67 31 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ng1();.}..<span.class="tok-kw">f |
| 52cc0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 71 75 | n</span>.<span.class="tok-fn">qu |
| 52ce0 | 75 78 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ux</span>().<span.class="tok-typ |
| 52d00 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 7d 0a | e">void</span>.{.....bang2();.}. |
| 52d20 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">fn</span>. |
| 52d40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 68 65 6c 6c 6f 3c 2f 73 70 61 6e | <span.class="tok-fn">hello</span |
| 52d60 | 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | >().<span.class="tok-type">void< |
| 52d80 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | /span>.{.....bang2();.}..<span.c |
| 52da0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | lass="tok-kw">fn</span>.<span.cl |
| 52dc0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 6e 67 31 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | ass="tok-fn">bang1</span>().<spa |
| 52de0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">bool</span>.{ |
| 52e00 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e | .....<span.class="tok-kw">return |
| 52e20 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | </span>.<span.class="tok-null">f |
| 52e40 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | alse</span>;.}..<span.class="tok |
| 52e60 | 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | -kw">fn</span>.<span.class="tok- |
| 52e80 | 66 6e 22 3e 62 61 6e 67 32 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | fn">bang2</span>().<span.class=" |
| 52ea0 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | tok-type">void</span>.{.....<spa |
| 52ec0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 | n.class="tok-builtin">@panic</sp |
| 52ee0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>(<span.class="tok-str">" |
| 52f00 | 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a | PermissionDenied"</span>);. |
| 52f20 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 52f40 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a | shell">$.zig.build-exe.test.zig. |
| 52f60 | 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 33 34 32 31 20 70 61 6e 69 63 3a 20 50 65 72 | $../test.thread.13421.panic:.Per |
| 52f80 | 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 | missionDenied.<span.class="t1_0" |
| 52fa0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e | >/home/andy/Downloads/zig/docgen |
| 52fc0 | 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 38 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | _tmp/test.zig:38:5</span>:.<span |
| 52fe0 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 32 61 36 36 20 69 6e 20 62 61 6e 67 32 20 | .class="t2_0">0x232a66.in.bang2. |
| 53000 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 70 61 6e 69 63 28 26 71 75 6f 74 3b 50 | (test)</span>.....@panic("P |
| 53020 | 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 3c 73 70 61 | ermissionDenied");.....<spa |
| 53040 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 53060 | 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 | lass="t1_0">/home/andy/Downloads |
| 53080 | 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 30 3a 31 30 3c 2f | /zig/docgen_tmp/test.zig:30:10</ |
| 530a0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 33 31 | span>:.<span.class="t2_0">0x2331 |
| 530c0 | 61 38 20 69 6e 20 68 65 6c 6c 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 61 | a8.in.hello.(test)</span>.....ba |
| 530e0 | 6e 67 32 28 29 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | ng2();..........<span.class="t32 |
| 53100 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e | _1">^</span>.<span.class="t1_0"> |
| 53120 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f | /home/andy/Downloads/zig/docgen_ |
| 53140 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 37 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | tmp/test.zig:17:14</span>:.<span |
| 53160 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 32 61 34 61 20 69 6e 20 62 61 72 20 28 74 | .class="t2_0">0x232a4a.in.bar.(t |
| 53180 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 68 65 6c 6c 6f 28 29 3b 0a 20 20 20 | est)</span>.........hello();.... |
| 531a0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 531c0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f | /span>.<span.class="t1_0">/home/ |
| 531e0 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | andy/Downloads/zig/docgen_tmp/te |
| 53200 | 73 74 2e 7a 69 67 3a 37 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:7:12</span>:.<span.class= |
| 53220 | 22 74 32 5f 30 22 3e 30 78 32 33 31 31 35 35 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 | "t2_0">0x231155.in.foo.(test)</s |
| 53240 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 62 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c | pan>.........bar();............< |
| 53260 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 53280 | 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f | n.class="t1_0">/home/andy/Downlo |
| 532a0 | 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 38 3c | ads/zig/docgen_tmp/test.zig:2:8< |
| 532c0 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 39 | /span>:.<span.class="t2_0">0x229 |
| 532e0 | 65 66 64 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f | efd.in.main.(test)</span>.....fo |
| 53300 | 6f 28 31 32 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | o(12);........<span.class="t32_1 |
| 53320 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 | ">^</span>.<span.class="t1_0">/h |
| 53340 | 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | ome/andy/Downloads/zig/lib/std/s |
| 53360 | 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | tart.zig:461:22</span>:.<span.cl |
| 53380 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 32 64 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 | ass="t2_0">0x2222dc.in.std.start |
| 533a0 | 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | .callMain.(test)</span>......... |
| 533c0 | 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ....root.main();................ |
| 533e0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 53400 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | n>.<span.class="t1_0">/home/andy |
| 53420 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | /Downloads/zig/lib/std/start.zig |
| 53440 | 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | :413:12</span>:.<span.class="t2_ |
| 53460 | 30 22 3e 30 78 32 30 36 31 36 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 | 0">0x20616e.in.std.start.callMai |
| 53480 | 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 | nWithArgs.(test)</span>.....retu |
| 534a0 | 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f | rn.@call(.{..modifier.=..always_ |
| 534c0 | 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 | inline.},.callMain,..{});....... |
| 534e0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e | .....<span.class="t32_1">^</span |
| 53500 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | >.<span.class="t1_0">/home/andy/ |
| 53520 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | Downloads/zig/lib/std/start.zig: |
| 53540 | 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | 332:17</span>:.<span.class="t2_0 |
| 53560 | 22 3e 30 78 32 30 35 31 39 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c | ">0x205196.in.std.start.posixCal |
| 53580 | 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 | lMainAndExit.(test)</span>.....s |
| 535a0 | 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 | td.os.exit(@call(.{..modifier.=. |
| 535c0 | 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 | .always_inline.},.callMainWithAr |
| 535e0 | 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 | gs,..{.argc,.argv,.envp.}));.... |
| 53600 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| 53620 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f | >^</span>.<span.class="t1_0">/ho |
| 53640 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | me/andy/Downloads/zig/lib/std/st |
| 53660 | 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | art.zig:245:5</span>:.<span.clas |
| 53680 | 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 66 61 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f | s="t2_0">0x204fa2.in.std.start._ |
| 536a0 | 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b | start.(test)</span>.....@call(.{ |
| 536c0 | 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f | ..modifier.=..never_inline.},.po |
| 536e0 | 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 | sixCallMainAndExit,..{});.....<s |
| 53700 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 | pan.class="t32_1">^</span>.(proc |
| 53720 | 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e | ess.terminated.by.signal)</code> |
| 53740 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 2c 20 74 68 | </pre>........<p>.......Here,.th |
| 53760 | 65 20 73 74 61 63 6b 20 74 72 61 63 65 20 64 6f 65 73 20 6e 6f 74 20 65 78 70 6c 61 69 6e 20 68 | e.stack.trace.does.not.explain.h |
| 53780 | 6f 77 20 74 68 65 20 63 6f 6e 74 72 6f 6c 0a 20 20 20 20 20 20 66 6c 6f 77 20 69 6e 20 3c 63 6f | ow.the.control.......flow.in.<co |
| 537a0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 67 6f 74 20 74 6f | de.class="zig">bar</code>.got.to |
| 537c0 | 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 68 65 6c 6c 6f 28 29 3c 2f | .the.<code.class="zig">hello()</ |
| 537e0 | 63 6f 64 65 3e 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 4f 6e 65 20 77 6f 75 6c 64 20 68 61 76 65 | code>.call........One.would.have |
| 53800 | 20 74 6f 20 6f 70 65 6e 20 61 20 64 65 62 75 67 67 65 72 20 6f 72 20 66 75 72 74 68 65 72 20 69 | .to.open.a.debugger.or.further.i |
| 53820 | 6e 73 74 72 75 6d 65 6e 74 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 | nstrument.the.application....... |
| 53840 | 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 69 6e 64 20 6f 75 74 2e 20 54 68 65 20 65 72 72 6f 72 20 | in.order.to.find.out..The.error. |
| 53860 | 72 65 74 75 72 6e 20 74 72 61 63 65 2c 20 6f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c | return.trace,.on.the.other.hand, |
| 53880 | 0a 20 20 20 20 20 20 73 68 6f 77 73 20 65 78 61 63 74 6c 79 20 68 6f 77 20 74 68 65 20 65 72 72 | .......shows.exactly.how.the.err |
| 538a0 | 6f 72 20 62 75 62 62 6c 65 64 20 75 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | or.bubbled.up........</p>....... |
| 538c0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 64 65 62 75 67 67 69 6e 67 20 66 65 61 74 75 72 65 | <p>.......This.debugging.feature |
| 538e0 | 20 6d 61 6b 65 73 20 69 74 20 65 61 73 69 65 72 20 74 6f 20 69 74 65 72 61 74 65 20 71 75 69 63 | .makes.it.easier.to.iterate.quic |
| 53900 | 6b 6c 79 20 6f 6e 20 63 6f 64 65 20 74 68 61 74 0a 20 20 20 20 20 20 72 6f 62 75 73 74 6c 79 20 | kly.on.code.that.......robustly. |
| 53920 | 68 61 6e 64 6c 65 73 20 61 6c 6c 20 65 72 72 6f 72 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 20 54 68 | handles.all.error.conditions..Th |
| 53940 | 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 5a 69 67 20 64 65 76 65 6c 6f 70 65 72 73 0a 20 20 20 | is.means.that.Zig.developers.... |
| 53960 | 20 20 20 77 69 6c 6c 20 6e 61 74 75 72 61 6c 6c 79 20 66 69 6e 64 20 74 68 65 6d 73 65 6c 76 65 | ...will.naturally.find.themselve |
| 53980 | 73 20 77 72 69 74 69 6e 67 20 63 6f 72 72 65 63 74 2c 20 72 6f 62 75 73 74 20 63 6f 64 65 20 69 | s.writing.correct,.robust.code.i |
| 539a0 | 6e 20 6f 72 64 65 72 0a 20 20 20 20 20 20 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 69 72 20 | n.order.......to.increase.their. |
| 539c0 | 64 65 76 65 6c 6f 70 6d 65 6e 74 20 70 61 63 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | development.pace........</p>.... |
| 539e0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 | ...<p>.......Error.Return.Traces |
| 53a00 | 20 61 72 65 20 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 20 69 6e 20 3c 61 20 68 72 | .are.enabled.by.default.in.<a.hr |
| 53a20 | 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 | ef="#Debug">Debug</a>.and.<a.hre |
| 53a40 | 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e | f="#ReleaseSafe">ReleaseSafe</a> |
| 53a60 | 20 62 75 69 6c 64 73 20 61 6e 64 20 64 69 73 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 20 | .builds.and.disabled.by.default. |
| 53a80 | 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 | in.<a.href="#ReleaseFast">Releas |
| 53aa0 | 65 46 61 73 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 | eFast</a>.and.<a.href="#ReleaseS |
| 53ac0 | 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 62 75 69 6c 64 73 2e 0a 20 | mall">ReleaseSmall</a>.builds... |
| 53ae0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 | .....</p>.......<p>.......There. |
| 53b00 | 61 72 65 20 61 20 66 65 77 20 77 61 79 73 20 74 6f 20 61 63 74 69 76 61 74 65 20 74 68 69 73 20 | are.a.few.ways.to.activate.this. |
| 53b20 | 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 66 65 61 74 75 72 65 3a 0a 20 20 | error.return.tracing.feature:... |
| 53b40 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | ....</p>.......<ul>.........<li> |
| 53b60 | 52 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 6d 61 69 6e 3c 2f 6c 69 3e 0a 20 | Return.an.error.from.main</li>.. |
| 53b80 | 20 20 20 20 20 20 20 3c 6c 69 3e 41 6e 20 65 72 72 6f 72 20 6d 61 6b 65 73 20 69 74 73 20 77 61 | .......<li>An.error.makes.its.wa |
| 53ba0 | 79 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | y.to.<code.class="zig"><span.cla |
| 53bc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ss="tok-kw">catch</span>.<span.c |
| 53be0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e | lass="tok-kw">unreachable</span> |
| 53c00 | 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 79 6f 75 20 68 61 76 65 20 6e 6f 74 20 6f 76 65 72 72 69 64 | </code>.and.you.have.not.overrid |
| 53c20 | 64 65 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 3c 2f 6c | den.the.default.panic.handler</l |
| 53c40 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 3c 61 20 68 72 65 66 3d 22 23 65 72 72 | i>.........<li>Use.<a.href="#err |
| 53c60 | 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c | orReturnTrace">errorReturnTrace< |
| 53c80 | 2f 61 3e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 72 65 74 75 72 6e | /a>.to.access.the.current.return |
| 53ca0 | 20 74 72 61 63 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .trace..You.can.use.<code.class= |
| 53cc0 | 22 7a 69 67 22 3e 73 74 64 2e 64 65 62 75 67 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 63 65 3c 2f | "zig">std.debug.dumpStackTrace</ |
| 53ce0 | 63 6f 64 65 3e 20 74 6f 20 70 72 69 6e 74 20 69 74 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e | code>.to.print.it..This.function |
| 53d00 | 20 72 65 74 75 72 6e 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 3c 61 20 68 72 65 66 3d | .returns.comptime-known.<a.href= |
| 53d20 | 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 77 68 65 6e 20 62 75 69 6c 64 69 6e 67 20 77 | "#null">null</a>.when.building.w |
| 53d40 | 69 74 68 6f 75 74 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 73 75 70 70 | ithout.error.return.tracing.supp |
| 53d60 | 6f 72 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 33 20 | ort.</li>.......</ul>.......<h3. |
| 53d80 | 69 64 3d 22 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 3c 61 20 68 | id="Implementation-Details"><a.h |
| 53da0 | 72 65 66 3d 22 23 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 | ref="#toc-Implementation-Details |
| 53dc0 | 22 3e 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e 20 3c 61 20 | ">Implementation.Details</a>.<a. |
| 53de0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f | class="hdr".href="#Implementatio |
| 53e00 | 6e 2d 44 65 74 61 69 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | n-Details">..</a></h3>........<p |
| 53e20 | 3e 0a 20 20 20 20 20 20 54 6f 20 61 6e 61 6c 79 7a 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 63 | >.......To.analyze.performance.c |
| 53e40 | 6f 73 74 2c 20 74 68 65 72 65 20 61 72 65 20 74 77 6f 20 63 61 73 65 73 3a 0a 20 20 20 20 20 20 | ost,.there.are.two.cases:....... |
| 53e60 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e | </p>.......<ul>.........<li>when |
| 53e80 | 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 3c 2f 6c 69 3e 0a 20 20 20 | .no.errors.are.returned</li>.... |
| 53ea0 | 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e 20 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 73 3c 2f | .....<li>when.returning.errors</ |
| 53ec0 | 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | li>.......</ul>.......<p>....... |
| 53ee0 | 46 6f 72 20 74 68 65 20 63 61 73 65 20 77 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 | For.the.case.when.no.errors.are. |
| 53f00 | 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 63 6f 73 74 20 69 73 20 61 20 73 69 6e 67 6c 65 20 6d | returned,.the.cost.is.a.single.m |
| 53f20 | 65 6d 6f 72 79 20 77 72 69 74 65 20 6f 70 65 72 61 74 69 6f 6e 2c 20 6f 6e 6c 79 20 69 6e 20 74 | emory.write.operation,.only.in.t |
| 53f40 | 68 65 20 66 69 72 73 74 20 6e 6f 6e 2d 66 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 20 69 | he.first.non-failable.function.i |
| 53f60 | 6e 20 74 68 65 20 63 61 6c 6c 20 67 72 61 70 68 20 74 68 61 74 20 63 61 6c 6c 73 20 61 20 66 61 | n.the.call.graph.that.calls.a.fa |
| 53f80 | 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 2c 20 69 2e 65 2e 20 77 68 65 6e 20 61 20 66 75 6e | ilable.function,.i.e..when.a.fun |
| 53fa0 | 63 74 69 6f 6e 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ction.returning.<code.class="zig |
| 53fc0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | "><span.class="tok-type">void</s |
| 53fe0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 | pan></code>.calls.a.function.ret |
| 54000 | 75 72 6e 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | urning.<code.class="zig"><span.c |
| 54020 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-kw">error</span></code |
| 54040 | 3e 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 74 | >........This.is.to.initialize.t |
| 54060 | 68 69 73 20 73 74 72 75 63 74 20 69 6e 20 74 68 65 20 73 74 61 63 6b 20 6d 65 6d 6f 72 79 3a 0a | his.struct.in.the.stack.memory:. |
| 54080 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ......</p>.......<pre><code.clas |
| 540a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | s="zig"><span.class="tok-kw">pub |
| 540c0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | </span>.<span.class="tok-kw">con |
| 540e0 | 73 74 3c 2f 73 70 61 6e 3e 20 53 74 61 63 6b 54 72 61 63 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | st</span>.StackTrace.=.<span.cla |
| 54100 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ss="tok-kw">struct</span>.{..... |
| 54120 | 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | index:.<span.class="tok-type">us |
| 54140 | 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 | ize</span>,.....instruction_addr |
| 54160 | 65 73 73 65 73 3a 20 5b 4e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | esses:.[N]<span.class="tok-type" |
| 54180 | 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | >usize</span>,.};</code></pre>.. |
| 541a0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 2c 20 4e 20 69 73 20 74 68 65 20 6d 61 | .....<p>.......Here,.N.is.the.ma |
| 541c0 | 78 69 6d 75 6d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 64 65 70 74 68 20 61 73 20 64 65 74 | ximum.function.call.depth.as.det |
| 541e0 | 65 72 6d 69 6e 65 64 20 62 79 20 63 61 6c 6c 20 67 72 61 70 68 20 61 6e 61 6c 79 73 69 73 2e 20 | ermined.by.call.graph.analysis.. |
| 54200 | 52 65 63 75 72 73 69 6f 6e 20 69 73 20 69 67 6e 6f 72 65 64 20 61 6e 64 20 63 6f 75 6e 74 73 20 | Recursion.is.ignored.and.counts. |
| 54220 | 66 6f 72 20 32 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | for.2........</p>.......<p>..... |
| 54240 | 20 20 41 20 70 6f 69 6e 74 65 72 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..A.pointer.to.<code.class="zig" |
| 54260 | 3e 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 69 73 20 70 61 73 73 65 64 20 61 73 20 | >StackTrace</code>.is.passed.as. |
| 54280 | 61 20 73 65 63 72 65 74 20 70 61 72 61 6d 65 74 65 72 20 74 6f 20 65 76 65 72 79 20 66 75 6e 63 | a.secret.parameter.to.every.func |
| 542a0 | 74 69 6f 6e 20 74 68 61 74 20 63 61 6e 20 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 2c 20 62 | tion.that.can.return.an.error,.b |
| 542c0 | 75 74 20 69 74 27 73 20 61 6c 77 61 79 73 20 74 68 65 20 66 69 72 73 74 20 70 61 72 61 6d 65 74 | ut.it's.always.the.first.paramet |
| 542e0 | 65 72 2c 20 73 6f 20 69 74 20 63 61 6e 20 6c 69 6b 65 6c 79 20 73 69 74 20 69 6e 20 61 20 72 65 | er,.so.it.can.likely.sit.in.a.re |
| 54300 | 67 69 73 74 65 72 20 61 6e 64 20 73 74 61 79 20 74 68 65 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | gister.and.stay.there........</p |
| 54320 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 61 74 27 73 20 69 74 20 66 6f 72 20 | >.......<p>.......That's.it.for. |
| 54340 | 74 68 65 20 70 61 74 68 20 77 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 6f 63 63 75 72 2e 20 49 | the.path.when.no.errors.occur..I |
| 54360 | 74 27 73 20 70 72 61 63 74 69 63 61 6c 6c 79 20 66 72 65 65 20 69 6e 20 74 65 72 6d 73 20 6f 66 | t's.practically.free.in.terms.of |
| 54380 | 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .performance........</p>.......< |
| 543a0 | 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 67 65 6e 65 72 61 74 69 6e 67 20 74 68 65 20 63 6f 64 | p>.......When.generating.the.cod |
| 543c0 | 65 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 6e | e.for.a.function.that.returns.an |
| 543e0 | 20 65 72 72 6f 72 2c 20 6a 75 73 74 20 62 65 66 6f 72 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c | .error,.just.before.the.<code.cl |
| 54400 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | ass="zig"><span.class="tok-kw">r |
| 54420 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 61 74 65 6d 65 6e 74 20 28 6f | eturn</span></code>.statement.(o |
| 54440 | 6e 6c 79 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | nly.for.the.<code.class="zig"><s |
| 54460 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">return</span> |
| 54480 | 3c 2f 63 6f 64 65 3e 20 73 74 61 74 65 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 72 6e 20 65 | </code>.statements.that.return.e |
| 544a0 | 72 72 6f 72 73 29 2c 20 5a 69 67 20 67 65 6e 65 72 61 74 65 73 20 61 20 63 61 6c 6c 20 74 6f 20 | rrors),.Zig.generates.a.call.to. |
| 544c0 | 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | this.function:.......</p>....... |
| 544e0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 54500 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 61 72 6b 65 64 20 61 73 20 26 71 | ss="tok-comment">//.marked.as.&q |
| 54520 | 75 6f 74 3b 6e 6f 2d 69 6e 6c 69 6e 65 26 71 75 6f 74 3b 20 69 6e 20 4c 4c 56 4d 20 49 52 3c 2f | uot;no-inline".in.LLVM.IR</ |
| 54540 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | span>.<span.class="tok-kw">fn</s |
| 54560 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 5f 5f 7a 69 67 5f | pan>.<span.class="tok-fn">__zig_ |
| 54580 | 72 65 74 75 72 6e 5f 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 73 74 61 63 6b 5f 74 72 61 63 65 3a | return_error</span>(stack_trace: |
| 545a0 | 20 2a 53 74 61 63 6b 54 72 61 63 65 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | .*StackTrace).<span.class="tok-t |
| 545c0 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 61 63 6b 5f 74 72 61 | ype">void</span>.{.....stack_tra |
| 545e0 | 63 65 2e 69 6e 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 73 65 73 5b 73 74 61 63 6b 5f 74 | ce.instruction_addresses[stack_t |
| 54600 | 72 61 63 65 2e 69 6e 64 65 78 5d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | race.index].=.<span.class="tok-b |
| 54620 | 75 69 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e 28 29 3b | uiltin">@returnAddress</span>(); |
| 54640 | 0a 20 20 20 20 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 20 3d 20 28 73 74 61 63 6b 5f | .....stack_trace.index.=.(stack_ |
| 54660 | 74 72 61 63 65 2e 69 6e 64 65 78 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | trace.index.+.<span.class="tok-n |
| 54680 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 25 20 4e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | umber">1</span>).%.N;.}</code></ |
| 546a0 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f 73 74 20 69 73 | pre>.......<p>.......The.cost.is |
| 546c0 | 20 32 20 6d 61 74 68 20 6f 70 65 72 61 74 69 6f 6e 73 20 70 6c 75 73 20 73 6f 6d 65 20 6d 65 6d | .2.math.operations.plus.some.mem |
| 546e0 | 6f 72 79 20 72 65 61 64 73 20 61 6e 64 20 77 72 69 74 65 73 2e 20 54 68 65 20 6d 65 6d 6f 72 79 | ory.reads.and.writes..The.memory |
| 54700 | 20 61 63 63 65 73 73 65 64 20 69 73 20 63 6f 6e 73 74 72 61 69 6e 65 64 20 61 6e 64 20 73 68 6f | .accessed.is.constrained.and.sho |
| 54720 | 75 6c 64 20 72 65 6d 61 69 6e 20 63 61 63 68 65 64 20 66 6f 72 20 74 68 65 20 64 75 72 61 74 69 | uld.remain.cached.for.the.durati |
| 54740 | 6f 6e 20 6f 66 20 74 68 65 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 62 75 62 62 6c 69 6e 67 2e | on.of.the.error.return.bubbling. |
| 54760 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 20 66 | .......</p>.......<p>.......As.f |
| 54780 | 6f 72 20 63 6f 64 65 20 73 69 7a 65 20 63 6f 73 74 2c 20 31 20 66 75 6e 63 74 69 6f 6e 20 63 61 | or.code.size.cost,.1.function.ca |
| 547a0 | 6c 6c 20 62 65 66 6f 72 65 20 61 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 | ll.before.a.return.statement.is. |
| 547c0 | 6e 6f 20 62 69 67 20 64 65 61 6c 2e 20 45 76 65 6e 20 73 6f 2c 0a 20 20 20 20 20 20 49 20 68 61 | no.big.deal..Even.so,.......I.ha |
| 547e0 | 76 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a | ve.<a.href="https://github.com/z |
| 54800 | 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 36 39 30 22 3e 61 20 70 6c 61 6e 3c 2f 61 | iglang/zig/issues/690">a.plan</a |
| 54820 | 3e 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 63 61 6c 6c 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 | >.to.make.the.call.to.......<cod |
| 54840 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5f 5f 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 72 6f 72 | e.class="zig">__zig_return_error |
| 54860 | 3c 2f 63 6f 64 65 3e 20 61 20 74 61 69 6c 20 63 61 6c 6c 2c 20 77 68 69 63 68 20 62 72 69 6e 67 | </code>.a.tail.call,.which.bring |
| 54880 | 73 20 74 68 65 20 63 6f 64 65 20 73 69 7a 65 20 63 6f 73 74 20 64 6f 77 6e 20 74 6f 20 61 63 74 | s.the.code.size.cost.down.to.act |
| 548a0 | 75 61 6c 6c 79 20 7a 65 72 6f 2e 20 57 68 61 74 20 69 73 20 61 20 72 65 74 75 72 6e 20 73 74 61 | ually.zero..What.is.a.return.sta |
| 548c0 | 74 65 6d 65 6e 74 20 69 6e 20 63 6f 64 65 20 77 69 74 68 6f 75 74 20 65 72 72 6f 72 20 72 65 74 | tement.in.code.without.error.ret |
| 548e0 | 75 72 6e 20 74 72 61 63 69 6e 67 20 63 61 6e 20 62 65 63 6f 6d 65 20 61 20 6a 75 6d 70 20 69 6e | urn.tracing.can.become.a.jump.in |
| 54900 | 73 74 72 75 63 74 69 6f 6e 20 69 6e 20 63 6f 64 65 20 77 69 74 68 20 65 72 72 6f 72 20 72 65 74 | struction.in.code.with.error.ret |
| 54920 | 75 72 6e 20 74 72 61 63 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 | urn.tracing........</p>......... |
| 54940 | 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 4f 70 74 69 6f | ...................<h1.id="Optio |
| 54960 | 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f | nals"><a.href="#toc-Optionals">O |
| 54980 | 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | ptionals</a>.<a.class="hdr".href |
| 549a0 | 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 | ="#Optionals">..</a></h1>....... |
| 549c0 | 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 65 20 61 72 65 61 20 74 68 61 74 20 5a 69 67 20 70 72 6f | .<p>.......One.area.that.Zig.pro |
| 549e0 | 76 69 64 65 73 20 73 61 66 65 74 79 20 77 69 74 68 6f 75 74 20 63 6f 6d 70 72 6f 6d 69 73 69 6e | vides.safety.without.compromisin |
| 54a00 | 67 20 65 66 66 69 63 69 65 6e 63 79 20 6f 72 0a 20 20 20 20 20 20 72 65 61 64 61 62 69 6c 69 74 | g.efficiency.or.......readabilit |
| 54a20 | 79 20 69 73 20 77 69 74 68 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 0a 20 20 20 | y.is.with.the.optional.type..... |
| 54a40 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 71 75 65 73 | ...</p>.......<p>.......The.ques |
| 54a60 | 74 69 6f 6e 20 6d 61 72 6b 20 73 79 6d 62 6f 6c 69 7a 65 73 20 74 68 65 20 6f 70 74 69 6f 6e 61 | tion.mark.symbolizes.the.optiona |
| 54a80 | 6c 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 63 6f 6e 76 65 72 74 20 61 20 74 79 70 65 20 74 | l.type..You.can.convert.a.type.t |
| 54aa0 | 6f 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 0a 20 20 20 20 20 20 74 79 70 65 20 62 79 20 70 75 74 74 | o.an.optional.......type.by.putt |
| 54ac0 | 69 6e 67 20 61 20 71 75 65 73 74 69 6f 6e 20 6d 61 72 6b 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 | ing.a.question.mark.in.front.of. |
| 54ae0 | 69 74 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | it,.like.this:.......</p>....... |
| 54b00 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 54b20 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 72 6d 61 6c 20 69 6e 74 65 67 | ss="tok-comment">//.normal.integ |
| 54b40 | 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | er</span>.<span.class="tok-kw">c |
| 54b60 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 6f 72 6d 61 6c 5f 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c | onst</span>.normal_int:.<span.cl |
| 54b80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | ass="tok-type">i32</span>.=.<spa |
| 54ba0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e | n.class="tok-number">1234</span> |
| 54bc0 | 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ;..<span.class="tok-comment">//. |
| 54be0 | 6f 70 74 69 6f 6e 61 6c 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | optional.integer</span>.<span.cl |
| 54c00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e | ass="tok-kw">const</span>.option |
| 54c20 | 61 6c 5f 69 6e 74 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | al_int:.?<span.class="tok-type"> |
| 54c40 | 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | i32</span>.=.<span.class="tok-nu |
| 54c60 | 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | mber">5678</span>;</code></pre>. |
| 54c80 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 77 20 74 68 65 20 76 61 72 69 61 62 6c 65 | ......<p>.......Now.the.variable |
| 54ca0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6f 70 74 69 6f 6e 61 6c 5f 69 6e 74 3c | .<code.class="zig">optional_int< |
| 54cc0 | 2f 63 6f 64 65 3e 20 63 6f 75 6c 64 20 62 65 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /code>.could.be.an.<code.class=" |
| 54ce0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | zig"><span.class="tok-type">i32< |
| 54d00 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | /span></code>,.or.<code.class="z |
| 54d20 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c | ig"><span.class="tok-null">null< |
| 54d40 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | /span></code>........</p>....... |
| 54d60 | 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 20 6f 66 20 69 6e 74 65 67 65 72 73 2c 20 6c | <p>.......Instead.of.integers,.l |
| 54d80 | 65 74 27 73 20 74 61 6c 6b 20 61 62 6f 75 74 20 70 6f 69 6e 74 65 72 73 2e 20 4e 75 6c 6c 20 72 | et's.talk.about.pointers..Null.r |
| 54da0 | 65 66 65 72 65 6e 63 65 73 20 61 72 65 20 74 68 65 20 73 6f 75 72 63 65 20 6f 66 20 6d 61 6e 79 | eferences.are.the.source.of.many |
| 54dc0 | 20 72 75 6e 74 69 6d 65 0a 20 20 20 20 20 20 65 78 63 65 70 74 69 6f 6e 73 2c 20 61 6e 64 20 65 | .runtime.......exceptions,.and.e |
| 54de0 | 76 65 6e 20 73 74 61 6e 64 20 61 63 63 75 73 65 64 20 6f 66 20 62 65 69 6e 67 0a 20 20 20 20 20 | ven.stand.accused.of.being...... |
| 54e00 | 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 6c 75 63 69 64 63 68 61 72 74 | .<a.href="https://www.lucidchart |
| 54e20 | 2e 63 6f 6d 2f 74 65 63 68 62 6c 6f 67 2f 32 30 31 35 2f 30 38 2f 33 31 2f 74 68 65 2d 77 6f 72 | .com/techblog/2015/08/31/the-wor |
| 54e40 | 73 74 2d 6d 69 73 74 61 6b 65 2d 6f 66 2d 63 6f 6d 70 75 74 65 72 2d 73 63 69 65 6e 63 65 2f 22 | st-mistake-of-computer-science/" |
| 54e60 | 3e 74 68 65 20 77 6f 72 73 74 20 6d 69 73 74 61 6b 65 20 6f 66 20 63 6f 6d 70 75 74 65 72 20 73 | >the.worst.mistake.of.computer.s |
| 54e80 | 63 69 65 6e 63 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | cience</a>........</p>.......<p> |
| 54ea0 | 5a 69 67 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 74 68 65 6d 2e 3c 2f 70 3e 0a 20 20 20 20 | Zig.does.not.have.them.</p>..... |
| 54ec0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 | ..<p>.......Instead,.you.can.use |
| 54ee0 | 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 73 65 63 72 65 | .an.optional.pointer..This.secre |
| 54f00 | 74 6c 79 20 63 6f 6d 70 69 6c 65 73 20 64 6f 77 6e 20 74 6f 20 61 20 6e 6f 72 6d 61 6c 20 70 6f | tly.compiles.down.to.a.normal.po |
| 54f20 | 69 6e 74 65 72 2c 0a 20 20 20 20 20 20 73 69 6e 63 65 20 77 65 20 6b 6e 6f 77 20 77 65 20 63 61 | inter,.......since.we.know.we.ca |
| 54f40 | 6e 20 75 73 65 20 30 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 65 20 66 6f 72 20 74 68 | n.use.0.as.the.null.value.for.th |
| 54f60 | 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 20 42 75 74 20 74 68 65 20 63 6f 6d 70 69 6c 65 | e.optional.type..But.the.compile |
| 54f80 | 72 0a 20 20 20 20 20 20 63 61 6e 20 63 68 65 63 6b 20 79 6f 75 72 20 77 6f 72 6b 20 61 6e 64 20 | r.......can.check.your.work.and. |
| 54fa0 | 6d 61 6b 65 20 73 75 72 65 20 79 6f 75 20 64 6f 6e 27 74 20 61 73 73 69 67 6e 20 6e 75 6c 6c 20 | make.sure.you.don't.assign.null. |
| 54fc0 | 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 63 61 6e 27 74 20 62 65 20 6e 75 6c 6c 2e | to.something.that.can't.be.null. |
| 54fe0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 70 69 | .......</p>.......<p>.......Typi |
| 55000 | 63 61 6c 6c 79 20 74 68 65 20 64 6f 77 6e 73 69 64 65 20 6f 66 20 6e 6f 74 20 68 61 76 69 6e 67 | cally.the.downside.of.not.having |
| 55020 | 20 6e 75 6c 6c 20 69 73 20 74 68 61 74 20 69 74 20 6d 61 6b 65 73 20 74 68 65 20 63 6f 64 65 20 | .null.is.that.it.makes.the.code. |
| 55040 | 6d 6f 72 65 20 76 65 72 62 6f 73 65 20 74 6f 0a 20 20 20 20 20 20 77 72 69 74 65 2e 20 42 75 74 | more.verbose.to.......write..But |
| 55060 | 2c 20 6c 65 74 27 73 20 63 6f 6d 70 61 72 65 20 73 6f 6d 65 20 65 71 75 69 76 61 6c 65 6e 74 20 | ,.let's.compare.some.equivalent. |
| 55080 | 43 20 63 6f 64 65 20 61 6e 64 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | C.code.and.Zig.code........</p>. |
| 550a0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 73 6b 3a 20 63 61 6c 6c 20 6d 61 6c 6c 6f | ......<p>.......Task:.call.mallo |
| 550c0 | 63 2c 20 69 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 6e 75 6c 6c 2c 20 72 65 74 75 72 6e | c,.if.the.result.is.null,.return |
| 550e0 | 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 43 20 63 6f 64 | .null........</p>.......<p>C.cod |
| 55100 | 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 70 | e</p>.......<pre><code.class="cp |
| 55120 | 70 22 3e 2f 2f 20 6d 61 6c 6c 6f 63 20 70 72 6f 74 6f 74 79 70 65 20 69 6e 63 6c 75 64 65 64 20 | p">//.malloc.prototype.included. |
| 55140 | 66 6f 72 20 72 65 66 65 72 65 6e 63 65 0a 76 6f 69 64 20 2a 6d 61 6c 6c 6f 63 28 73 69 7a 65 5f | for.reference.void.*malloc(size_ |
| 55160 | 74 20 73 69 7a 65 29 3b 0a 0a 73 74 72 75 63 74 20 46 6f 6f 20 2a 64 6f 5f 61 5f 74 68 69 6e 67 | t.size);..struct.Foo.*do_a_thing |
| 55180 | 28 76 6f 69 64 29 20 7b 0a 20 20 20 20 63 68 61 72 20 2a 70 74 72 20 3d 20 6d 61 6c 6c 6f 63 28 | (void).{.....char.*ptr.=.malloc( |
| 551a0 | 31 32 33 34 29 3b 0a 20 20 20 20 69 66 20 28 21 70 74 72 29 20 72 65 74 75 72 6e 20 4e 55 4c 4c | 1234);.....if.(!ptr).return.NULL |
| 551c0 | 3b 0a 20 20 20 20 2f 2f 20 2e 2e 2e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | ;.....//.....}</code></pre>..... |
| 551e0 | 20 20 3c 70 3e 5a 69 67 20 63 6f 64 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ..<p>Zig.code</p>.......<pre><co |
| 55200 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 55220 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 61 6c 6c 6f 63 20 70 72 6f 74 6f 74 79 70 65 20 69 6e 63 | comment">//.malloc.prototype.inc |
| 55240 | 6c 75 64 65 64 20 66 6f 72 20 72 65 66 65 72 65 6e 63 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | luded.for.reference</span>.<span |
| 55260 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | .class="tok-kw">extern</span>.<s |
| 55280 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 | pan.class="tok-kw">fn</span>.<sp |
| 552a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 6c 6c 6f 63 3c 2f 73 70 61 6e 3e 28 | an.class="tok-fn">malloc</span>( |
| 552c0 | 73 69 7a 65 3a 20 73 69 7a 65 5f 74 29 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | size:.size_t).?*<span.class="tok |
| 552e0 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u8</span>;..<span.class=" |
| 55300 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 55320 | 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 29 20 3f 2a 46 6f 6f 20 7b | ok-fn">doAThing</span>().?*Foo.{ |
| 55340 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| 55360 | 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 6d 61 6c 6c 6f 63 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>.ptr.=.malloc(<span.class= |
| 55380 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | "tok-number">1234</span>).<span. |
| 553a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 | class="tok-kw">orelse</span>.<sp |
| 553c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">return</span>. |
| 553e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 | <span.class="tok-null">null</spa |
| 55400 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | n>;.....<span.class="tok-comment |
| 55420 | 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | ">//....</span>.}</code></pre>.. |
| 55440 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 48 65 72 65 2c 20 5a 69 67 20 69 73 20 61 74 | .....<p>.........Here,.Zig.is.at |
| 55460 | 20 6c 65 61 73 74 20 61 73 20 63 6f 6e 76 65 6e 69 65 6e 74 2c 20 69 66 20 6e 6f 74 20 6d 6f 72 | .least.as.convenient,.if.not.mor |
| 55480 | 65 2c 20 74 68 61 6e 20 43 2e 20 41 6e 64 2c 20 74 68 65 20 74 79 70 65 20 6f 66 20 22 70 74 72 | e,.than.C..And,.the.type.of."ptr |
| 554a0 | 22 0a 20 20 20 20 20 20 20 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a | ".........is.<code.class="zig">* |
| 554c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| 554e0 | 3c 2f 63 6f 64 65 3e 20 3c 65 6d 3e 6e 6f 74 3c 2f 65 6d 3e 20 3c 63 6f 64 65 20 63 6c 61 73 73 | </code>.<em>not</em>.<code.class |
| 55500 | 3d 22 7a 69 67 22 3e 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ="zig">?*<span.class="tok-type"> |
| 55520 | 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 | u8</span></code>..The.<code.clas |
| 55540 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 | s="zig"><span.class="tok-kw">ore |
| 55560 | 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 0a 20 20 20 20 20 20 | lse</span></code>.keyword....... |
| 55580 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 77 72 61 70 70 65 64 20 74 68 65 20 6f 70 74 69 | ..............unwrapped.the.opti |
| 555a0 | 6f 6e 61 6c 20 74 79 70 65 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 3c 63 6f 64 65 20 63 6c | onal.type.and.therefore.<code.cl |
| 555c0 | 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 69 73 20 67 75 61 72 61 6e 74 65 | ass="zig">ptr</code>.is.guarante |
| 555e0 | 65 64 20 74 6f 20 62 65 20 6e 6f 6e 2d 6e 75 6c 6c 20 65 76 65 72 79 77 68 65 72 65 0a 20 20 20 | ed.to.be.non-null.everywhere.... |
| 55600 | 20 20 20 20 20 69 74 20 69 73 20 75 73 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e | .....it.is.used.in.the.function. |
| 55620 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 | .......</p>.......<p>.........Th |
| 55640 | 65 20 6f 74 68 65 72 20 66 6f 72 6d 20 6f 66 20 63 68 65 63 6b 69 6e 67 20 61 67 61 69 6e 73 74 | e.other.form.of.checking.against |
| 55660 | 20 4e 55 4c 4c 20 79 6f 75 20 6d 69 67 68 74 20 73 65 65 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 | .NULL.you.might.see.looks.like.t |
| 55680 | 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | his:.......</p>.......<pre><code |
| 556a0 | 20 63 6c 61 73 73 3d 22 63 70 70 22 3e 76 6f 69 64 20 64 6f 5f 61 5f 74 68 69 6e 67 28 73 74 72 | .class="cpp">void.do_a_thing(str |
| 556c0 | 75 63 74 20 46 6f 6f 20 2a 66 6f 6f 29 20 7b 0a 20 20 20 20 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 | uct.Foo.*foo).{.....//.do.some.s |
| 556e0 | 74 75 66 66 0a 0a 20 20 20 20 69 66 20 28 66 6f 6f 29 20 7b 0a 20 20 20 20 20 20 20 20 64 6f 5f | tuff......if.(foo).{.........do_ |
| 55700 | 73 6f 6d 65 74 68 69 6e 67 5f 77 69 74 68 5f 66 6f 6f 28 66 6f 6f 29 3b 0a 20 20 20 20 7d 0a 0a | something_with_foo(foo);.....}.. |
| 55720 | 20 20 20 20 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | ....//.do.some.stuff.}</code></p |
| 55740 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a 69 67 20 79 6f 75 | re>.......<p>.........In.Zig.you |
| 55760 | 20 63 61 6e 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 3a 0a | .can.accomplish.the.same.thing:. |
| 55780 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ......</p>.......<pre><code.clas |
| 557a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | s="zig"><span.class="tok-kw">fn< |
| 557c0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 | /span>.<span.class="tok-fn">doAT |
| 557e0 | 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 3a 20 3f 2a 46 6f 6f 29 | hing</span>(optional_foo:.?*Foo) |
| 55800 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 | .<span.class="tok-type">void</sp |
| 55820 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | an>.{.....<span.class="tok-comme |
| 55840 | 6e 74 22 3e 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 | nt">//.do.some.stuff</span>..... |
| 55860 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">if</span>. |
| 55880 | 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 29 20 7c 66 6f 6f 7c 20 7b 0a 20 20 20 20 20 20 64 6f 53 | (optional_foo).|foo|.{.......doS |
| 558a0 | 6f 6d 65 74 68 69 6e 67 57 69 74 68 46 6f 6f 28 66 6f 6f 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 | omethingWithFoo(foo);.....}..... |
| 558c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f | .<span.class="tok-comment">//.do |
| 558e0 | 20 73 6f 6d 65 20 73 74 75 66 66 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | .some.stuff</span>.}</code></pre |
| 55900 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 63 65 20 61 67 61 69 6e 2c 20 74 68 | >.......<p>.......Once.again,.th |
| 55920 | 65 20 6e 6f 74 61 62 6c 65 20 74 68 69 6e 67 20 68 65 72 65 20 69 73 20 74 68 61 74 20 69 6e 73 | e.notable.thing.here.is.that.ins |
| 55940 | 69 64 65 20 74 68 65 20 69 66 20 62 6c 6f 63 6b 2c 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c | ide.the.if.block,.......<code.cl |
| 55960 | 61 73 73 3d 22 7a 69 67 22 3e 66 6f 6f 3c 2f 63 6f 64 65 3e 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 | ass="zig">foo</code>.is.no.longe |
| 55980 | 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2c 20 69 74 20 69 73 20 61 20 70 | r.an.optional.pointer,.it.is.a.p |
| 559a0 | 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 | ointer,.which.......cannot.be.nu |
| 559c0 | 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f | ll........</p>.......<p>.......O |
| 559e0 | 6e 65 20 62 65 6e 65 66 69 74 20 74 6f 20 74 68 69 73 20 69 73 20 74 68 61 74 20 66 75 6e 63 74 | ne.benefit.to.this.is.that.funct |
| 55a00 | 69 6f 6e 73 20 77 68 69 63 68 20 74 61 6b 65 20 70 6f 69 6e 74 65 72 73 20 61 73 20 61 72 67 75 | ions.which.take.pointers.as.argu |
| 55a20 | 6d 65 6e 74 73 20 63 61 6e 0a 20 20 20 20 20 20 62 65 20 61 6e 6e 6f 74 61 74 65 64 20 77 69 74 | ments.can.......be.annotated.wit |
| 55a40 | 68 20 74 68 65 20 22 6e 6f 6e 6e 75 6c 6c 22 20 61 74 74 72 69 62 75 74 65 20 2d 20 3c 63 6f 64 | h.the."nonnull".attribute.-.<cod |
| 55a60 | 65 3e 5f 5f 61 74 74 72 69 62 75 74 65 5f 5f 28 28 6e 6f 6e 6e 75 6c 6c 29 29 3c 2f 63 6f 64 65 | e>__attribute__((nonnull))</code |
| 55a80 | 3e 20 69 6e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 63 63 2e | >.in.......<a.href="https://gcc. |
| 55aa0 | 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2d 34 2e 30 2e 30 2f 67 63 63 | gnu.org/onlinedocs/gcc-4.0.0/gcc |
| 55ac0 | 2f 46 75 6e 63 74 69 6f 6e 2d 41 74 74 72 69 62 75 74 65 73 2e 68 74 6d 6c 22 3e 47 43 43 3c 2f | /Function-Attributes.html">GCC</ |
| 55ae0 | 61 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 63 61 6e 20 73 6f 6d 65 | a>........The.optimizer.can.some |
| 55b00 | 74 69 6d 65 73 20 6d 61 6b 65 20 62 65 74 74 65 72 20 64 65 63 69 73 69 6f 6e 73 20 6b 6e 6f 77 | times.make.better.decisions.know |
| 55b20 | 69 6e 67 20 74 68 61 74 20 70 6f 69 6e 74 65 72 20 61 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 | ing.that.pointer.arguments...... |
| 55b40 | 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .cannot.be.null........</p>..... |
| 55b60 | 20 20 3c 68 32 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 3c 61 20 68 72 65 66 | ..<h2.id="Optional-Type"><a.href |
| 55b80 | 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 | ="#toc-Optional-Type">Optional.T |
| 55ba0 | 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 70 | ype</a>.<a.class="hdr".href="#Op |
| 55bc0 | 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | tional-Type">..</a></h2>........ |
| 55be0 | 3c 70 3e 41 6e 20 6f 70 74 69 6f 6e 61 6c 20 69 73 20 63 72 65 61 74 65 64 20 62 79 20 70 75 74 | <p>An.optional.is.created.by.put |
| 55c00 | 74 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 3c 2f 63 6f 64 65 3e 20 | ting.<code.class="zig">?</code>. |
| 55c20 | 69 6e 20 66 72 6f 6e 74 20 6f 66 20 61 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 | in.front.of.a.type..You.can.use. |
| 55c40 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 0a 20 20 20 20 20 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f | compile-time.......reflection.to |
| 55c60 | 20 61 63 63 65 73 73 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 6f 70 74 | .access.the.child.type.of.an.opt |
| 55c80 | 69 6f 6e 61 6c 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ional:</p>.......<p.class="file" |
| 55ca0 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 55cc0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 55ce0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 55d00 | 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | builtin">@import</span>(<span.cl |
| 55d20 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 | ass="tok-str">"std"</s |
| 55d40 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>).testing.expect;..<span.cla |
| 55d60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ss="tok-kw">test</span>.<span.cl |
| 55d80 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 74 79 70 | ass="tok-str">"optional.typ |
| 55da0 | 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e"</span>.{.....<span.class |
| 55dc0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 6e 20 6f 70 74 | ="tok-comment">//.Declare.an.opt |
| 55de0 | 69 6f 6e 61 6c 20 61 6e 64 20 63 6f 65 72 63 65 20 66 72 6f 6d 20 6e 75 6c 6c 3a 3c 2f 73 70 61 | ional.and.coerce.from.null:</spa |
| 55e00 | 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | n>.....<span.class="tok-kw">var< |
| 55e20 | 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | /span>.foo:.?<span.class="tok-ty |
| 55e40 | 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pe">i32</span>.=.<span.class="to |
| 55e60 | 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | k-null">null</span>;......<span. |
| 55e80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 65 72 63 65 20 66 72 | class="tok-comment">//.Coerce.fr |
| 55ea0 | 6f 6d 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 | om.child.type.of.an.optional</sp |
| 55ec0 | 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | an>.....foo.=.<span.class="tok-n |
| 55ee0 | 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | umber">1234</span>;......<span.c |
| 55f00 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 65 20 63 6f 6d 70 69 6c | lass="tok-comment">//.Use.compil |
| 55f20 | 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 | e-time.reflection.to.access.the. |
| 55f40 | 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 3a 3c 2f 73 70 61 | child.type.of.the.optional:</spa |
| 55f60 | 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | n>.....<span.class="tok-kw">comp |
| 55f80 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | time</span>.<span.class="tok-kw" |
| 55fa0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >try</span>.expect(<span.class=" |
| 55fc0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 | tok-builtin">@typeInfo</span>(<s |
| 55fe0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c | pan.class="tok-builtin">@TypeOf< |
| 56000 | 2f 73 70 61 6e 3e 28 66 6f 6f 29 29 2e 4f 70 74 69 6f 6e 61 6c 2e 63 68 69 6c 64 20 3d 3d 20 3c | /span>(foo)).Optional.child.==.< |
| 56020 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">i32</span> |
| 56040 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 56060 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 | s="shell">$.zig.test.test.zig.Te |
| 56080 | 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 74 79 70 | st.[1/1].test."optional.typ |
| 560a0 | 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | e"......All.1.tests.passed. |
| 560c0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 | .</code></pre>...............<h2 |
| 560e0 | 20 69 64 3d 22 6e 75 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6e 75 6c 6c 22 3e 6e | .id="null"><a.href="#toc-null">n |
| 56100 | 75 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6e 75 | ull</a>.<a.class="hdr".href="#nu |
| 56120 | 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ll">..</a></h2>........<p>...... |
| 56140 | 20 4a 75 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e | .Just.like.<a.href="#undefined"> |
| 56160 | 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | undefined</a>,.<code.class="zig" |
| 56180 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 | ><span.class="tok-null">null</sp |
| 561a0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 69 74 73 20 6f 77 6e 20 74 79 70 65 2c 20 61 6e 64 | an></code>.has.its.own.type,.and |
| 561c0 | 20 74 68 65 20 6f 6e 6c 79 20 77 61 79 20 74 6f 20 75 73 65 20 69 74 20 69 73 20 74 6f 0a 20 20 | .the.only.way.to.use.it.is.to... |
| 561e0 | 20 20 20 20 63 61 73 74 20 69 74 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 3a | ....cast.it.to.a.different.type: |
| 56200 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .......</p>.......<pre><code.cla |
| 56220 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| 56240 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 3a 20 3f 3c 73 70 61 | nst</span>.optional_value:.?<spa |
| 56260 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 | n.class="tok-type">i32</span>.=. |
| 56280 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 | <span.class="tok-null">null</spa |
| 562a0 | 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | n>;</code></pre>..............<h |
| 562c0 | 32 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 | 2.id="Optional-Pointers"><a.href |
| 562e0 | 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e | ="#toc-Optional-Pointers">Option |
| 56300 | 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | al.Pointers</a>.<a.class="hdr".h |
| 56320 | 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c | ref="#Optional-Pointers">..</a>< |
| 56340 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 | /h2>........<p>An.optional.point |
| 56360 | 65 72 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 74 68 65 20 73 61 6d 65 20 | er.is.guaranteed.to.be.the.same. |
| 56380 | 73 69 7a 65 20 61 73 20 61 20 70 6f 69 6e 74 65 72 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 | size.as.a.pointer..The.<code.cla |
| 563a0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ss="zig"><span.class="tok-null"> |
| 563c0 | 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 | null</span></code>.of.......the. |
| 563e0 | 6f 70 74 69 6f 6e 61 6c 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 61 64 64 | optional.is.guaranteed.to.be.add |
| 56400 | 72 65 73 73 20 30 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | ress.0.</p>.......<p.class="file |
| 56420 | 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ">test.zig</p><pre><code.class=" |
| 56440 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 56460 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.expect.=.<span.class="tok |
| 56480 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 564a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 564c0 | 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | span>).testing.expect;..<span.cl |
| 564e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">test</span>.<span.c |
| 56500 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 70 6f | lass="tok-str">"optional.po |
| 56520 | 69 6e 74 65 72 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | inters"</span>.{.....<span. |
| 56540 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 50 6f 69 6e 74 65 72 73 20 | class="tok-comment">//.Pointers. |
| 56560 | 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 20 61 20 6e 75 | cannot.be.null..If.you.want.a.nu |
| 56580 | 6c 6c 20 70 6f 69 6e 74 65 72 2c 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 | ll.pointer,.use.the.optional</sp |
| 565a0 | 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | an>.....<span.class="tok-comment |
| 565c0 | 22 3e 2f 2f 20 70 72 65 66 69 78 20 60 3f 60 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 70 6f 69 6e | ">//.prefix.`?`.to.make.the.poin |
| 565e0 | 74 65 72 20 74 79 70 65 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | ter.type.optional.</span>.....<s |
| 56600 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 | pan.class="tok-kw">var</span>.pt |
| 56620 | 72 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | r:.?*<span.class="tok-type">i32< |
| 56640 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | /span>.=.<span.class="tok-null"> |
| 56660 | 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | null</span>;......<span.class="t |
| 56680 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">var</span>.x:.<span.class |
| 566a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">i32</span>.=.<span.c |
| 566c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">1</span>;..... |
| 566e0 | 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ptr.=.&x;......<span.class=" |
| 56700 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 72 2e 3f 2e | tok-kw">try</span>.expect(ptr.?. |
| 56720 | 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | *.==.<span.class="tok-number">1< |
| 56740 | 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | /span>);......<span.class="tok-c |
| 56760 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 20 61 72 65 | omment">//.Optional.pointers.are |
| 56780 | 20 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 6e 6f 72 6d 61 6c 20 70 6f 69 6e 74 65 72 | .the.same.size.as.normal.pointer |
| 567a0 | 73 2c 20 62 65 63 61 75 73 65 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | s,.because.pointer</span>.....<s |
| 567c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 | pan.class="tok-comment">//.value |
| 567e0 | 20 30 20 69 73 20 75 73 65 64 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 65 2e 3c 2f 73 | .0.is.used.as.the.null.value.</s |
| 56800 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | pan>.....<span.class="tok-kw">tr |
| 56820 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | y</span>.expect(<span.class="tok |
| 56840 | 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3f 2a 3c 73 70 61 6e | -builtin">@sizeOf</span>(?*<span |
| 56860 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d | .class="tok-type">i32</span>).== |
| 56880 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 | .<span.class="tok-builtin">@size |
| 568a0 | 4f 66 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | Of</span>(*<span.class="tok-type |
| 568c0 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | ">i32</span>));.}</code></pre><p |
| 568e0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 56900 | 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 | t.test.zig.Test.[1/1].test." |
| 56920 | 3b 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c | ;optional.pointers"......Al |
| 56940 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 56960 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 61 73 | .....................<h1.id="Cas |
| 56980 | 74 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 61 73 74 69 6e 67 22 3e 43 61 73 | ting"><a.href="#toc-Casting">Cas |
| 569a0 | 74 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 | ting</a>.<a.class="hdr".href="#C |
| 569c0 | 61 73 74 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | asting">..</a></h1>........<p>.. |
| 569e0 | 20 20 20 20 20 41 20 3c 73 74 72 6f 6e 67 3e 74 79 70 65 20 63 61 73 74 3c 2f 73 74 72 6f 6e 67 | .....A.<strong>type.cast</strong |
| 56a00 | 3e 20 63 6f 6e 76 65 72 74 73 20 61 20 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 | >.converts.a.value.of.one.type.t |
| 56a20 | 6f 20 61 6e 6f 74 68 65 72 2e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 3c 61 20 68 72 65 66 | o.another........Zig.has.<a.href |
| 56a40 | 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c | ="#Type-Coercion">Type.Coercion< |
| 56a60 | 2f 61 3e 20 66 6f 72 20 63 6f 6e 76 65 72 73 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 6b 6e 6f | /a>.for.conversions.that.are.kno |
| 56a80 | 77 6e 20 74 6f 20 62 65 20 63 6f 6d 70 6c 65 74 65 6c 79 20 73 61 66 65 20 61 6e 64 20 75 6e 61 | wn.to.be.completely.safe.and.una |
| 56aa0 | 6d 62 69 67 75 6f 75 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 45 78 | mbiguous,.......and.<a.href="#Ex |
| 56ac0 | 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e | plicit-Casts">Explicit.Casts</a> |
| 56ae0 | 20 66 6f 72 20 63 6f 6e 76 65 72 73 69 6f 6e 73 20 74 68 61 74 20 6f 6e 65 20 77 6f 75 6c 64 20 | .for.conversions.that.one.would. |
| 56b00 | 6e 6f 74 20 77 61 6e 74 20 74 6f 20 68 61 70 70 65 6e 20 6f 6e 20 61 63 63 69 64 65 6e 74 2e 0a | not.want.to.happen.on.accident.. |
| 56b20 | 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 61 20 74 68 69 72 64 20 6b 69 6e 64 | ......There.is.also.a.third.kind |
| 56b40 | 20 6f 66 20 74 79 70 65 20 63 6f 6e 76 65 72 73 69 6f 6e 20 63 61 6c 6c 65 64 20 3c 61 20 68 72 | .of.type.conversion.called.<a.hr |
| 56b60 | 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 | ef="#Peer-Type-Resolution">Peer. |
| 56b80 | 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 0a 20 20 20 20 20 20 74 68 | Type.Resolution</a>.for.......th |
| 56ba0 | 65 20 63 61 73 65 20 77 68 65 6e 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 75 73 74 20 62 | e.case.when.a.result.type.must.b |
| 56bc0 | 65 20 64 65 63 69 64 65 64 20 67 69 76 65 6e 20 6d 75 6c 74 69 70 6c 65 20 6f 70 65 72 61 6e 64 | e.decided.given.multiple.operand |
| 56be0 | 20 74 79 70 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | .types........</p>.......<h2.id= |
| 56c00 | 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 | "Type-Coercion"><a.href="#toc-Ty |
| 56c20 | 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 20 3c | pe-Coercion">Type.Coercion</a>.< |
| 56c40 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 | a.class="hdr".href="#Type-Coerci |
| 56c60 | 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | on">..</a></h2>........<p>...... |
| 56c80 | 20 54 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 6f 63 63 75 72 73 20 77 68 65 6e 20 6f 6e 65 20 74 | .Type.coercion.occurs.when.one.t |
| 56ca0 | 79 70 65 20 69 73 20 65 78 70 65 63 74 65 64 2c 20 62 75 74 20 64 69 66 66 65 72 65 6e 74 20 74 | ype.is.expected,.but.different.t |
| 56cc0 | 79 70 65 20 69 73 20 70 72 6f 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ype.is.provided:.......</p>..... |
| 56ce0 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 56d00 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 56d20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ="tok-kw">test</span>.<span.clas |
| 56d40 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 | s="tok-str">"type.coercion. |
| 56d60 | 2d 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 | -.variable.declaration"</sp |
| 56d80 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>.{.....<span.class="tok-kw">v |
| 56da0 | 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ar</span>.a:.<span.class="tok-ty |
| 56dc0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe">u8</span>.=.<span.class="tok |
| 56de0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | -number">1</span>;.....<span.cla |
| 56e00 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 | ss="tok-kw">var</span>.b:.<span. |
| 56e20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b | class="tok-type">u16</span>.=.a; |
| 56e40 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | .}..<span.class="tok-kw">test</s |
| 56e60 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 56e80 | 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 | ;type.coercion.-.function.call&q |
| 56ea0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>.{.....<span.class="t |
| 56ec0 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">var</span>.a:.<span.class |
| 56ee0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | ="tok-type">u8</span>.=.<span.cl |
| 56f00 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 66 | ass="tok-number">1</span>;.....f |
| 56f20 | 6f 6f 28 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | oo(a);.}..<span.class="tok-kw">f |
| 56f40 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f | n</span>.<span.class="tok-fn">fo |
| 56f60 | 6f 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | o</span>(b:.<span.class="tok-typ |
| 56f80 | 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">u16</span>).<span.class="tok- |
| 56fa0 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | type">void</span>.{}..<span.clas |
| 56fc0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">test</span>.<span.cla |
| 56fe0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e | ss="tok-str">"type.coercion |
| 57000 | 20 2d 20 40 61 73 20 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | .-.@as.builtin"</span>.{... |
| 57020 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| 57040 | 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | >.a:.<span.class="tok-type">u8</ |
| 57060 | 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | span>.=.<span.class="tok-number" |
| 57080 | 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >1</span>;.....<span.class="tok- |
| 570a0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | kw">var</span>.b.=.<span.class=" |
| 570c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | tok-builtin">@as</span>(<span.cl |
| 570e0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 2c 20 61 29 3b 0a 7d | ass="tok-type">u16</span>,.a);.} |
| 57100 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </code></pre><pre><code.class="s |
| 57120 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b | hell">$.zig.test.test.zig.Test.[ |
| 57140 | 31 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 | 1/3].test."type.coercion.-. |
| 57160 | 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 | variable.declaration".....T |
| 57180 | 65 73 74 20 5b 32 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 | est.[2/3].test."type.coerci |
| 571a0 | 6f 6e 20 2d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 | on.-.function.call".....Tes |
| 571c0 | 74 20 5b 33 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e | t.[3/3].test."type.coercion |
| 571e0 | 20 2d 20 40 61 73 20 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 33 20 | .-.@as.builtin"......All.3. |
| 57200 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | tests.passed..</code></pre>..... |
| 57220 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 70 65 20 63 6f 65 72 63 69 6f 6e 73 20 61 72 65 20 | ...<p>.......Type.coercions.are. |
| 57240 | 6f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 77 68 65 6e 20 69 74 20 69 73 20 63 6f 6d 70 6c 65 74 65 | only.allowed.when.it.is.complete |
| 57260 | 6c 79 20 75 6e 61 6d 62 69 67 75 6f 75 73 20 68 6f 77 20 74 6f 20 67 65 74 20 66 72 6f 6d 20 6f | ly.unambiguous.how.to.get.from.o |
| 57280 | 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 | ne.type.to.another,.......and.th |
| 572a0 | 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 | e.transformation.is.guaranteed.t |
| 572c0 | 6f 20 62 65 20 73 61 66 65 2e 20 54 68 65 72 65 20 69 73 20 6f 6e 65 20 65 78 63 65 70 74 69 6f | o.be.safe..There.is.one.exceptio |
| 572e0 | 6e 2c 20 77 68 69 63 68 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 | n,.which.is.<a.href="#C-Pointers |
| 57300 | 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ">C.Pointers</a>........</p>.... |
| 57320 | 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 | ...<h3.id="Type-Coercion-Stricte |
| 57340 | 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 | r-Qualification"><a.href="#toc-T |
| 57360 | 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 | ype-Coercion-Stricter-Qualificat |
| 57380 | 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 74 72 69 63 74 65 72 20 51 75 61 | ion">Type.Coercion:.Stricter.Qua |
| 573a0 | 6c 69 66 69 63 61 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | lification</a>.<a.class="hdr".hr |
| 573c0 | 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c | ef="#Type-Coercion-Stricter-Qual |
| 573e0 | 69 66 69 63 61 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | ification">..</a></h3>........<p |
| 57400 | 3e 0a 20 20 20 20 20 20 56 61 6c 75 65 73 20 77 68 69 63 68 20 68 61 76 65 20 74 68 65 20 73 61 | >.......Values.which.have.the.sa |
| 57420 | 6d 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 61 74 20 72 75 6e 74 69 6d 65 20 63 61 6e | me.representation.at.runtime.can |
| 57440 | 20 62 65 20 63 61 73 74 20 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 20 73 74 72 69 63 74 6e | .be.cast.to.increase.the.strictn |
| 57460 | 65 73 73 0a 20 20 20 20 20 20 6f 66 20 74 68 65 20 71 75 61 6c 69 66 69 65 72 73 2c 20 6e 6f 20 | ess.......of.the.qualifiers,.no. |
| 57480 | 6d 61 74 74 65 72 20 68 6f 77 20 6e 65 73 74 65 64 20 74 68 65 20 71 75 61 6c 69 66 69 65 72 73 | matter.how.nested.the.qualifiers |
| 574a0 | 20 61 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | .are:.......</p>.......<ul>..... |
| 574c0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<li><code.class="zig"><spa |
| 574e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-kw">const</span></c |
| 57500 | 6f 64 65 3e 20 2d 20 6e 6f 6e 2d 63 6f 6e 73 74 20 74 6f 20 63 6f 6e 73 74 20 69 73 20 61 6c 6c | ode>.-.non-const.to.const.is.all |
| 57520 | 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c | owed</li>...........<li><code.cl |
| 57540 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | ass="zig"><span.class="tok-kw">v |
| 57560 | 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6e 6f 6e 2d 76 6f 6c 61 | olatile</span></code>.-.non-vola |
| 57580 | 74 69 6c 65 20 74 6f 20 76 6f 6c 61 74 69 6c 65 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e | tile.to.volatile.is.allowed</li> |
| 575a0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ...........<li><code.class="zig" |
| 575c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 | ><span.class="tok-kw">align</spa |
| 575e0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 67 67 65 72 20 74 6f 20 73 6d 61 6c 6c 65 72 20 61 6c | n></code>.-.bigger.to.smaller.al |
| 57600 | 69 67 6e 6d 65 6e 74 20 69 73 20 61 6c 6c 6f 77 65 64 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ignment.is.allowed.</li>........ |
| 57620 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 | ...<li><a.href="#Error-Set-Type" |
| 57640 | 3e 65 72 72 6f 72 20 73 65 74 73 3c 2f 61 3e 20 74 6f 20 73 75 70 65 72 73 65 74 73 20 69 73 20 | >error.sets</a>.to.supersets.is. |
| 57660 | 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c | allowed</li>.......</ul>.......< |
| 57680 | 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 63 61 73 74 73 20 61 72 65 20 6e 6f 2d 6f 70 73 20 | p>.......These.casts.are.no-ops. |
| 576a0 | 61 74 20 72 75 6e 74 69 6d 65 20 73 69 6e 63 65 20 74 68 65 20 76 61 6c 75 65 20 72 65 70 72 65 | at.runtime.since.the.value.repre |
| 576c0 | 73 65 6e 74 61 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 63 68 61 6e 67 65 2e 0a 20 20 20 20 20 | sentation.does.not.change....... |
| 576e0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | .</p>.......<p.class="file">test |
| 57700 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 57720 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">test</span>. |
| 57740 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 79 70 65 | <span.class="tok-str">"type |
| 57760 | 20 63 6f 65 72 63 69 6f 6e 20 2d 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 63 61 74 69 6f 6e 26 | .coercion.-.const.qualification& |
| 57780 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 577a0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.a:.<span.clas |
| 577c0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 | s="tok-type">i32</span>.=.<span. |
| 577e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">1</span>;.... |
| 57800 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 57820 | 20 62 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | .b:.*<span.class="tok-type">i32< |
| 57840 | 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 61 3b 0a 20 20 20 20 66 6f 6f 28 62 29 3b 0a 7d 0a 0a | /span>.=.&a;.....foo(b);.}.. |
| 57860 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c | <span.class="tok-kw">fn</span>.< |
| 57880 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 61 | span.class="tok-fn">foo</span>(a |
| 578a0 | 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | :.*<span.class="tok-kw">const</s |
| 578c0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | pan>.<span.class="tok-type">i32< |
| 578e0 | 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | /span>).<span.class="tok-type">v |
| 57900 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | oid</span>.{}</code></pre><pre>< |
| 57920 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 | code.class="shell">$.zig.test.te |
| 57940 | 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 79 70 | st.zig.Test.[1/1].test."typ |
| 57960 | 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 63 61 74 69 6f 6e | e.coercion.-.const.qualification |
| 57980 | 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | "......All.1.tests.passed.. |
| 579a0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | </code></pre>........<p>.......I |
| 579c0 | 6e 20 61 64 64 69 74 69 6f 6e 2c 20 70 6f 69 6e 74 65 72 73 20 63 6f 65 72 63 65 20 74 6f 20 63 | n.addition,.pointers.coerce.to.c |
| 579e0 | 6f 6e 73 74 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 3a 0a 20 20 20 20 20 20 3c 2f | onst.optional.pointers:.......</ |
| 57a00 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 57a20 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 57a40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 | n.class="tok-kw">const</span>.st |
| 57a60 | 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | d.=.<span.class="tok-builtin">@i |
| 57a80 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | mport</span>(<span.class="tok-st |
| 57aa0 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 | r">"std"</span>);.<spa |
| 57ac0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 | n.class="tok-kw">const</span>.ex |
| 57ae0 | 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e | pect.=.std.testing.expect;.<span |
| 57b00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d | .class="tok-kw">const</span>.mem |
| 57b20 | 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .=.std.mem;..<span.class="tok-kw |
| 57b40 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 57b60 | 74 72 22 3e 26 71 75 6f 74 3b 63 61 73 74 20 2a 5b 31 5d 5b 2a 5d 63 6f 6e 73 74 20 75 38 20 74 | tr">"cast.*[1][*]const.u8.t |
| 57b80 | 6f 20 5b 2a 5d 63 6f 6e 73 74 20 3f 5b 2a 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 3c 2f 73 | o.[*]const.?[*]const.u8"</s |
| 57ba0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 57bc0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 69 6e 64 6f 77 5f 6e 61 6d 65 20 3d 20 5b 3c 73 70 61 | const</span>.window_name.=.[<spa |
| 57be0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 5b 2a | n.class="tok-number">1</span>][* |
| 57c00 | 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | ]<span.class="tok-kw">const</spa |
| 57c20 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | n>.<span.class="tok-type">u8</sp |
| 57c40 | 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>{<span.class="tok-str">" |
| 57c60 | 77 69 6e 64 6f 77 20 6e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 3b 0a 20 20 20 20 3c | window.name"</span>};.....< |
| 57c80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 57ca0 | 20 78 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | .x:.[*]<span.class="tok-kw">cons |
| 57cc0 | 74 3c 2f 73 70 61 6e 3e 20 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | t</span>.?[*]<span.class="tok-kw |
| 57ce0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">const</span>.<span.class="tok- |
| 57d00 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 77 69 6e 64 6f 77 5f 6e 61 | type">u8</span>.=.&window_na |
| 57d20 | 6d 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | me;.....<span.class="tok-kw">try |
| 57d40 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 | </span>.expect(mem.eql(<span.cla |
| 57d60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 74 64 2e 6d 65 6d | ss="tok-type">u8</span>,.std.mem |
| 57d80 | 2e 73 70 61 6e 5a 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | .spanZ(<span.class="tok-builtin" |
| 57da0 | 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >@ptrCast</span>([*:<span.class= |
| 57dc0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 | "tok-number">0</span>]<span.clas |
| 57de0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | s="tok-kw">const</span>.<span.cl |
| 57e00 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 5b 3c 73 70 61 | ass="tok-type">u8</span>,.x[<spa |
| 57e20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 2e 3f | n.class="tok-number">0</span>].? |
| 57e40 | 29 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | )),.<span.class="tok-str">" |
| 57e60 | 77 69 6e 64 6f 77 20 6e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 | window.name"</span>));.}</c |
| 57e80 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 57ea0 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 | l">$.zig.test.test.zig.Test.[1/1 |
| 57ec0 | 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 61 73 74 20 2a 5b 31 5d 5b 2a 5d 63 6f 6e 73 74 20 75 | ].test."cast.*[1][*]const.u |
| 57ee0 | 38 20 74 6f 20 5b 2a 5d 63 6f 6e 73 74 20 3f 5b 2a 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b | 8.to.[*]const.?[*]const.u8" |
| 57f00 | 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 | ......All.1.tests.passed..</code |
| 57f20 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 | ></pre>...............<h3.id="Ty |
| 57f40 | 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 | pe-Coercion-Integer-and-Float-Wi |
| 57f60 | 64 65 6e 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 | dening"><a.href="#toc-Type-Coerc |
| 57f80 | 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e | ion-Integer-and-Float-Widening"> |
| 57fa0 | 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 49 6e 74 65 67 65 72 20 61 6e 64 20 46 6c 6f 61 74 | Type.Coercion:.Integer.and.Float |
| 57fc0 | 20 57 69 64 65 6e 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | .Widening</a>.<a.class="hdr".hre |
| 57fe0 | 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c | f="#Type-Coercion-Integer-and-Fl |
| 58000 | 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | oat-Widening">..</a></h3>....... |
| 58020 | 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 | .<p>.......<a.href="#Integers">I |
| 58040 | 6e 74 65 67 65 72 73 3c 2f 61 3e 20 63 6f 65 72 63 65 20 74 6f 20 69 6e 74 65 67 65 72 20 74 79 | ntegers</a>.coerce.to.integer.ty |
| 58060 | 70 65 73 20 77 68 69 63 68 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 65 76 65 72 79 20 76 61 | pes.which.can.represent.every.va |
| 58080 | 6c 75 65 20 6f 66 20 74 68 65 20 6f 6c 64 20 74 79 70 65 2c 20 61 6e 64 20 6c 69 6b 65 77 69 73 | lue.of.the.old.type,.and.likewis |
| 580a0 | 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 | e.......<a.href="#Floats">Floats |
| 580c0 | 3c 2f 61 3e 20 63 6f 65 72 63 65 20 74 6f 20 66 6c 6f 61 74 20 74 79 70 65 73 20 77 68 69 63 68 | </a>.coerce.to.float.types.which |
| 580e0 | 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 65 76 65 72 79 20 76 61 6c 75 65 20 6f 66 20 74 68 | .can.represent.every.value.of.th |
| 58100 | 65 20 6f 6c 64 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | e.old.type........</p>.......<p. |
| 58120 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 58140 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 58160 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.std.=.<span.cl |
| 58180 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 581a0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 581c0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | "</span>);.<span.class="tok |
| 581e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 | -kw">const</span>.expect.=.std.t |
| 58200 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | esting.expect;.<span.class="tok- |
| 58220 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a | kw">const</span>.mem.=.std.mem;. |
| 58240 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e | .<span.class="tok-kw">test</span |
| 58260 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e | >.<span.class="tok-str">"in |
| 58280 | 74 65 67 65 72 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | teger.widening"</span>.{... |
| 582a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| 582c0 | 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | >.a:.<span.class="tok-type">u8</ |
| 582e0 | 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | span>.=.<span.class="tok-number" |
| 58300 | 3e 32 35 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >250</span>;.....<span.class="to |
| 58320 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">var</span>.b:.<span.class= |
| 58340 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 3c | "tok-type">u16</span>.=.a;.....< |
| 58360 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 | span.class="tok-kw">var</span>.c |
| 58380 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 | :.<span.class="tok-type">u32</sp |
| 583a0 | 61 6e 3e 20 3d 20 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | an>.=.b;.....<span.class="tok-kw |
| 583c0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">var</span>.d:.<span.class="tok |
| 583e0 | 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 63 3b 0a 20 20 20 20 3c 73 70 61 6e | -type">u64</span>.=.c;.....<span |
| 58400 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 65 3a 20 3c 73 | .class="tok-kw">var</span>.e:.<s |
| 58420 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">u64</span>. |
| 58440 | 3d 20 64 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | =.d;.....<span.class="tok-kw">va |
| 58460 | 72 3c 2f 73 70 61 6e 3e 20 66 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r</span>.f:.<span.class="tok-typ |
| 58480 | 65 22 3e 75 31 32 38 3c 2f 73 70 61 6e 3e 20 3d 20 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | e">u128</span>.=.e;.....<span.cl |
| 584a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 | ass="tok-kw">try</span>.expect(f |
| 584c0 | 20 3d 3d 20 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .==.a);.}..<span.class="tok-kw"> |
| 584e0 | 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | test</span>.<span.class="tok-str |
| 58500 | 22 3e 26 71 75 6f 74 3b 69 6d 70 6c 69 63 69 74 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 | ">"implicit.unsigned.intege |
| 58520 | 72 20 74 6f 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | r.to.signed.integer"</span> |
| 58540 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | .{.....<span.class="tok-kw">var< |
| 58560 | 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.a:.<span.class="tok-type" |
| 58580 | 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | >u8</span>.=.<span.class="tok-nu |
| 585a0 | 6d 62 65 72 22 3e 32 35 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | mber">250</span>;.....<span.clas |
| 585c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 | s="tok-kw">var</span>.b:.<span.c |
| 585e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a | lass="tok-type">i16</span>.=.a;. |
| 58600 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 58620 | 61 6e 3e 20 65 78 70 65 63 74 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.expect(b.==.<span.class="tok |
| 58640 | 2d 6e 75 6d 62 65 72 22 3e 32 35 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | -number">250</span>);.}..<span.c |
| 58660 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">test</span>.<span. |
| 58680 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6c 6f 61 74 20 77 69 64 65 | class="tok-str">"float.wide |
| 586a0 | 6e 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ning"</span>.{.....<span.cl |
| 586c0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 3a 20 74 68 65 72 65 | ass="tok-comment">//.Note:.there |
| 586e0 | 20 69 73 20 61 6e 20 6f 70 65 6e 20 69 73 73 75 65 20 70 72 65 76 65 6e 74 69 6e 67 20 74 68 69 | .is.an.open.issue.preventing.thi |
| 58700 | 73 20 66 72 6f 6d 20 77 6f 72 6b 69 6e 67 20 6f 6e 20 61 61 72 63 68 36 34 3a 3c 2f 73 70 61 6e | s.from.working.on.aarch64:</span |
| 58720 | 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | >.....<span.class="tok-comment"> |
| 58740 | 2f 2f 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 | //.https://github.com/ziglang/zi |
| 58760 | 67 2f 69 73 73 75 65 73 2f 33 32 38 32 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | g/issues/3282</span>.....<span.c |
| 58780 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 64 2e 54 61 72 | lass="tok-kw">if</span>.(std.Tar |
| 587a0 | 67 65 74 2e 63 75 72 72 65 6e 74 2e 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 61 61 72 63 68 36 34 | get.current.cpu.arch.==..aarch64 |
| 587c0 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | ).<span.class="tok-kw">return</s |
| 587e0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c | pan>.<span.class="tok-kw">error< |
| 58800 | 2f 73 70 61 6e 3e 2e 53 6b 69 70 5a 69 67 54 65 73 74 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | /span>.SkipZigTest;......<span.c |
| 58820 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.a:.<spa |
| 58840 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 | n.class="tok-type">f16</span>.=. |
| 58860 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f | <span.class="tok-number">12.34</ |
| 58880 | 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>;.....<span.class="tok-kw"> |
| 588a0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.b:.<span.class="tok-t |
| 588c0 | 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ype">f32</span>.=.a;.....<span.c |
| 588e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.c:.<spa |
| 58900 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 | n.class="tok-type">f64</span>.=. |
| 58920 | 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | b;.....<span.class="tok-kw">var< |
| 58940 | 2f 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.d:.<span.class="tok-type" |
| 58960 | 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 20 3d 20 63 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | >f128</span>.=.c;.....<span.clas |
| 58980 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 20 3d | s="tok-kw">try</span>.expect(d.= |
| 589a0 | 3d 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | =.a);.}</code></pre><pre><code.c |
| 589c0 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 | lass="shell">$.zig.test.test.zig |
| 589e0 | 0a 54 65 73 74 20 5b 31 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 77 | .Test.[1/3].test."integer.w |
| 58a00 | 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 33 5d 20 74 65 73 | idening".....Test.[2/3].tes |
| 58a20 | 74 20 26 71 75 6f 74 3b 69 6d 70 6c 69 63 69 74 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 | t."implicit.unsigned.intege |
| 58a40 | 72 20 74 6f 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 | r.to.signed.integer".....Te |
| 58a60 | 73 74 20 5b 33 2f 33 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 6c 6f 61 74 20 77 69 64 65 6e 69 | st.[3/3].test."float.wideni |
| 58a80 | 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 | ng"......All.3.tests.passed |
| 58aa0 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | ..</code></pre>...............<h |
| 58ac0 | 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f | 3.id="Type-Coercion-Coercion-Flo |
| 58ae0 | 61 74 2d 74 6f 2d 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f | at-to-Int"><a.href="#toc-Type-Co |
| 58b00 | 65 72 63 69 6f 6e 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e 54 79 | ercion-Coercion-Float-to-Int">Ty |
| 58b20 | 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 43 6f 65 72 63 69 6f 6e 20 46 6c 6f 61 74 20 74 6f 20 49 | pe.Coercion:.Coercion.Float.to.I |
| 58b40 | 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 | nt</a>.<a.class="hdr".href="#Typ |
| 58b60 | 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 | e-Coercion-Coercion-Float-to-Int |
| 58b80 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 | ">..</a></h3>........<p>.......A |
| 58ba0 | 20 63 6f 6d 70 69 6c 65 72 20 65 72 72 6f 72 20 69 73 20 61 70 70 72 6f 70 72 69 61 74 65 20 62 | .compiler.error.is.appropriate.b |
| 58bc0 | 65 63 61 75 73 65 20 74 68 69 73 20 61 6d 62 69 67 75 6f 75 73 20 65 78 70 72 65 73 73 69 6f 6e | ecause.this.ambiguous.expression |
| 58be0 | 20 6c 65 61 76 65 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 74 77 6f 20 63 | .leaves.the.compiler.......two.c |
| 58c00 | 68 6f 69 63 65 73 20 61 62 6f 75 74 20 74 68 65 20 63 6f 65 72 63 69 6f 6e 2e 0a 20 20 20 20 20 | hoices.about.the.coercion....... |
| 58c20 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 20 43 61 | .</p>.......<ul>.........<li>.Ca |
| 58c40 | 73 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | st.<code.class="zig"><span.class |
| 58c60 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 34 2e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-number">54.0</span></code> |
| 58c80 | 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | .to.<code.class="zig"><span.clas |
| 58ca0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e | s="tok-type">comptime_int</span> |
| 58cc0 | 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 | </code>.resulting.in.<code.class |
| 58ce0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 58d00 | 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | >@as</span>(<span.class="tok-typ |
| 58d20 | 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | e">comptime_int</span>,.<span.cl |
| 58d40 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 | ass="tok-number">10</span>)</cod |
| 58d60 | 65 3e 2c 20 77 68 69 63 68 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 | e>,.which.is.casted.to.<code.cla |
| 58d80 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ss="zig"><span.class="tok-builti |
| 58da0 | 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | n">@as</span>(<span.class="tok-t |
| 58dc0 | 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">f32</span>,.<span.class="to |
| 58de0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e | k-number">10</span>)</code></li> |
| 58e00 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 20 43 61 73 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | .........<li>.Cast.<code.class=" |
| 58e20 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | zig"><span.class="tok-number">5< |
| 58e40 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /span></code>.to.<code.class="zi |
| 58e60 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 | g"><span.class="tok-type">compti |
| 58e80 | 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c 74 69 6e 67 | me_float</span></code>.resulting |
| 58ea0 | 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | .in.<code.class="zig"><span.clas |
| 58ec0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | s="tok-builtin">@as</span>(<span |
| 58ee0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 | .class="tok-type">comptime_float |
| 58f00 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>,.<span.class="tok-number |
| 58f20 | 22 3e 31 30 2e 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 69 73 20 | ">10.8</span>)</code>,.which.is. |
| 58f40 | 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | casted.to.<code.class="zig"><spa |
| 58f60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e | n.class="tok-builtin">@as</span> |
| 58f80 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 | (<span.class="tok-type">f32</spa |
| 58fa0 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 2e | n>,.<span.class="tok-number">10. |
| 58fc0 | 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | 8</span>)</code></li>.......</ul |
| 58fe0 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 59000 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 59020 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 70 69 6c 65 20 | .class="tok-comment">//.Compile. |
| 59040 | 74 69 6d 65 20 63 6f 65 72 63 69 6f 6e 20 6f 66 20 66 6c 6f 61 74 20 74 6f 20 69 6e 74 3c 2f 73 | time.coercion.of.float.to.int</s |
| 59060 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | pan>.<span.class="tok-kw">test</ |
| 59080 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| 590a0 | 74 3b 69 6d 70 6c 69 63 69 74 20 63 61 73 74 20 74 6f 20 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 26 | t;implicit.cast.to.comptime_int& |
| 590c0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 590e0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.f:.<span.clas |
| 59100 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 | s="tok-type">f32</span>.=.<span. |
| 59120 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 34 2e 30 3c 2f 73 70 61 6e 3e 20 2f | class="tok-number">54.0</span>./ |
| 59140 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 | .<span.class="tok-number">5</spa |
| 59160 | 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | n>;.}</code></pre><pre><code.cla |
| 59180 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c | ss="shell">$.zig.test.test.zig.< |
| 591a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 591c0 | 65 73 74 2e 7a 69 67 3a 33 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:3:18:.</span><span.class |
| 591e0 | 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ="t31_1">error:.</span><span.cla |
| 59200 | 73 73 3d 22 74 30 5f 31 22 3e 66 6c 6f 61 74 20 76 61 6c 75 65 20 35 34 2e 30 30 30 30 30 30 20 | ss="t0_1">float.value.54.000000. |
| 59220 | 63 61 6e 6e 6f 74 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 74 79 70 65 20 27 63 6f 6d 70 74 | cannot.be.coerced.to.type.'compt |
| 59240 | 69 6d 65 5f 69 6e 74 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 66 3a 20 66 33 32 20 3d | ime_int'</span>.....var.f:.f32.= |
| 59260 | 20 35 34 2e 30 20 2f 20 35 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | .54.0./.5;..................<spa |
| 59280 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 592a0 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 592c0 | 67 3a 33 3a 32 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f | g:3:23:.</span><span.class="t36_ |
| 592e0 | 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | 1">note:.</span><span.class="t0_ |
| 59300 | 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 | 1">referenced.here</span>.....va |
| 59320 | 72 20 66 3a 20 66 33 32 20 3d 20 35 34 2e 30 20 2f 20 35 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | r.f:.f32.=.54.0./.5;............ |
| 59340 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 59360 | 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 | </span>.</code></pre>........... |
| 59380 | 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 6c 69 63 65 73 | ....<h3.id="Type-Coercion-Slices |
| 593a0 | 2d 41 72 72 61 79 73 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | -Arrays-and-Pointers"><a.href="# |
| 593c0 | 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 6c 69 63 65 73 2d 41 72 72 61 79 73 2d | toc-Type-Coercion-Slices-Arrays- |
| 593e0 | 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 6c 69 | and-Pointers">Type.Coercion:.Sli |
| 59400 | 63 65 73 2c 20 41 72 72 61 79 73 20 61 6e 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 | ces,.Arrays.and.Pointers</a>.<a. |
| 59420 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e | class="hdr".href="#Type-Coercion |
| 59440 | 2d 53 6c 69 63 65 73 2d 41 72 72 61 79 73 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c | -Slices-Arrays-and-Pointers">..< |
| 59460 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | /a></h3>........<p.class="file"> |
| 59480 | 63 6f 65 72 63 65 5f 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f 61 6e 64 5f 70 74 72 73 2e 7a | coerce__slices_arrays_and_ptrs.z |
| 594a0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 594c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 | an.class="tok-kw">const</span>.s |
| 594e0 | 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | td.=.<span.class="tok-builtin">@ |
| 59500 | 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | import</span>(<span.class="tok-s |
| 59520 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 | tr">"std"</span>);.<sp |
| 59540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 | an.class="tok-kw">const</span>.e |
| 59560 | 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 | xpect.=.std.testing.expect;..<sp |
| 59580 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 | an.class="tok-comment">//.You.ca |
| 595a0 | 6e 20 61 73 73 69 67 6e 20 63 6f 6e 73 74 61 6e 74 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 61 72 | n.assign.constant.pointers.to.ar |
| 595c0 | 72 61 79 73 20 74 6f 20 61 20 73 6c 69 63 65 20 77 69 74 68 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | rays.to.a.slice.with</span>.<spa |
| 595e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6e 73 74 20 6d | n.class="tok-comment">//.const.m |
| 59600 | 6f 64 69 66 69 65 72 20 6f 6e 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e 20 55 73 65 | odifier.on.the.element.type..Use |
| 59620 | 66 75 6c 20 69 6e 20 70 61 72 74 69 63 75 6c 61 72 20 66 6f 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | ful.in.particular.for</span>.<sp |
| 59640 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 69 6e 67 | an.class="tok-comment">//.String |
| 59660 | 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .literals.</span>.<span.class="t |
| 59680 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| 596a0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 5b 5d | tok-str">"*const.[N]T.to.[] |
| 596c0 | 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | const.T"</span>.{.....<span |
| 596e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 31 3a 20 5b | .class="tok-kw">var</span>.x1:.[ |
| 59700 | 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | ]<span.class="tok-kw">const</spa |
| 59720 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | n>.<span.class="tok-type">u8</sp |
| 59740 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | an>.=.<span.class="tok-str">&quo |
| 59760 | 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | t;hello"</span>;.....<span. |
| 59780 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 5b 5d | class="tok-kw">var</span>.x2:.[] |
| 597a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 597c0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >.<span.class="tok-type">u8</spa |
| 597e0 | 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | n>.=.&[<span.class="tok-numb |
| 59800 | 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | er">5</span>]<span.class="tok-ty |
| 59820 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>{.<span.class="tok- |
| 59840 | 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | str">'h'</span>,.<span.class="to |
| 59860 | 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-str">'e'</span>,.<span.class=" |
| 59880 | 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-str">'l'</span>,.<span.class |
| 598a0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-str">'l'</span>,.<span.cla |
| 598c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 | ss="tok-number">111</span>.};... |
| 598e0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 59900 | 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 | >.expect(std.mem.eql(<span.class |
| 59920 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 31 2c 20 78 32 29 29 3b | ="tok-type">u8</span>,.x1,.x2)); |
| 59940 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | ......<span.class="tok-kw">var</ |
| 59960 | 73 70 61 6e 3e 20 79 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>.y:.[]<span.class="tok-kw"> |
| 59980 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | const</span>.<span.class="tok-ty |
| 599a0 | 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 | pe">f32</span>.=.&[<span.cla |
| 599c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 | ss="tok-number">2</span>]<span.c |
| 599e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 | lass="tok-type">f32</span>{.<spa |
| 59a00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 2c | n.class="tok-number">1.2</span>, |
| 59a20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 34 3c 2f 73 | .<span.class="tok-number">3.4</s |
| 59a40 | 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.};.....<span.class="tok-kw" |
| 59a60 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | >try</span>.expect(y[<span.class |
| 59a80 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e | ="tok-number">0</span>].==.<span |
| 59aa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 29 3b | .class="tok-number">1.2</span>); |
| 59ac0 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | .}..<span.class="tok-comment">// |
| 59ae0 | 20 4c 69 6b 65 77 69 73 65 2c 20 69 74 20 77 6f 72 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 73 | .Likewise,.it.works.when.the.des |
| 59b00 | 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 20 69 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e | tination.type.is.an.error.union. |
| 59b20 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | </span>.<span.class="tok-kw">tes |
| 59b40 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>.<span.class="tok-str">& |
| 59b60 | 71 75 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 45 21 5b 5d 63 6f 6e 73 74 20 54 26 | quot;*const.[N]T.to.E![]const.T& |
| 59b80 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 59ba0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 31 3a 20 3c 73 70 61 6e 20 63 6c 61 | tok-kw">var</span>.x1:.<span.cla |
| 59bc0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 5b 5d | ss="tok-type">anyerror</span>![] |
| 59be0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 59c00 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >.<span.class="tok-type">u8</spa |
| 59c20 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | n>.=.<span.class="tok-str">" |
| 59c40 | 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ;hello"</span>;.....<span.c |
| 59c60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 3c 73 70 | lass="tok-kw">var</span>.x2:.<sp |
| 59c80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 | an.class="tok-type">anyerror</sp |
| 59ca0 | 61 6e 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | an>![]<span.class="tok-kw">const |
| 59cc0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | </span>.<span.class="tok-type">u |
| 59ce0 | 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 8</span>.=.&[<span.class="to |
| 59d00 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-number">5</span>]<span.class=" |
| 59d20 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">u8</span>{.<span.class |
| 59d40 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-str">'h'</span>,.<span.cla |
| 59d60 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | ss="tok-str">'e'</span>,.<span.c |
| 59d80 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | lass="tok-str">'l'</span>,.<span |
| 59da0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | .class="tok-str">'l'</span>,.<sp |
| 59dc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 31 3c 2f 73 70 61 6e 3e | an.class="tok-number">111</span> |
| 59de0 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | .};.....<span.class="tok-kw">try |
| 59e00 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e | </span>.expect(std.mem.eql(<span |
| 59e20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | .class="tok-type">u8</span>,.<sp |
| 59e40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 78 31 2c | an.class="tok-kw">try</span>.x1, |
| 59e60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 59e80 | 20 78 32 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .x2));......<span.class="tok-kw" |
| 59ea0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >var</span>.y:.<span.class="tok- |
| 59ec0 | 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c | type">anyerror</span>![]<span.cl |
| 59ee0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-kw">const</span>.<span. |
| 59f00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 | class="tok-type">f32</span>.=.&a |
| 59f20 | 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | mp;[<span.class="tok-number">2</ |
| 59f40 | 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 | span>]<span.class="tok-type">f32 |
| 59f60 | 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>{.<span.class="tok-number |
| 59f80 | 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">1.2</span>,.<span.class="tok-n |
| 59fa0 | 75 6d 62 65 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | umber">3.4</span>.};.....<span.c |
| 59fc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 59fe0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | (<span.class="tok-kw">try</span> |
| 5a000 | 20 79 29 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | .y)[<span.class="tok-number">0</ |
| 5a020 | 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>].==.<span.class="tok-numbe |
| 5a040 | 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">1.2</span>);.}..<span.class=" |
| 5a060 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 69 6b 65 77 69 73 65 2c 20 69 74 20 77 6f 72 | tok-comment">//.Likewise,.it.wor |
| 5a080 | 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 20 69 73 20 | ks.when.the.destination.type.is. |
| 5a0a0 | 61 6e 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an.optional.</span>.<span.class= |
| 5a0c0 | 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-kw">test</span>.<span.class |
| 5a0e0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 | ="tok-str">"*const.[N]T.to. |
| 5a100 | 3f 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ?[]const.T"</span>.{.....<s |
| 5a120 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 31 | pan.class="tok-kw">var</span>.x1 |
| 5a140 | 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | :.?[]<span.class="tok-kw">const< |
| 5a160 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | /span>.<span.class="tok-type">u8 |
| 5a180 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | </span>.=.<span.class="tok-str"> |
| 5a1a0 | 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 | "hello"</span>;.....<s |
| 5a1c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 32 | pan.class="tok-kw">var</span>.x2 |
| 5a1e0 | 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | :.?[]<span.class="tok-kw">const< |
| 5a200 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | /span>.<span.class="tok-type">u8 |
| 5a220 | 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.=.&[<span.class="tok |
| 5a240 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -number">5</span>]<span.class="t |
| 5a260 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-type">u8</span>{.<span.class= |
| 5a280 | 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-str">'h'</span>,.<span.clas |
| 5a2a0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | s="tok-str">'e'</span>,.<span.cl |
| 5a2c0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ass="tok-str">'l'</span>,.<span. |
| 5a2e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | class="tok-str">'l'</span>,.<spa |
| 5a300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 31 3c 2f 73 70 61 6e 3e 20 | n.class="tok-number">111</span>. |
| 5a320 | 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | };.....<span.class="tok-kw">try< |
| 5a340 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 | /span>.expect(std.mem.eql(<span. |
| 5a360 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 31 2e 3f | class="tok-type">u8</span>,.x1.? |
| 5a380 | 2c 20 78 32 2e 3f 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ,.x2.?));......<span.class="tok- |
| 5a3a0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">var</span>.y:.?[]<span.class |
| 5a3c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">const</span>.<span.cla |
| 5a3e0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b | ss="tok-type">f32</span>.=.& |
| 5a400 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | [<span.class="tok-number">2</spa |
| 5a420 | 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 | n>]<span.class="tok-type">f32</s |
| 5a440 | 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | pan>{.<span.class="tok-number">1 |
| 5a460 | 2e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | .2</span>,.<span.class="tok-numb |
| 5a480 | 65 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | er">3.4</span>.};.....<span.clas |
| 5a4a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 2e 3f | s="tok-kw">try</span>.expect(y.? |
| 5a4c0 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 | [<span.class="tok-number">0</spa |
| 5a4e0 | 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n>].==.<span.class="tok-number"> |
| 5a500 | 31 2e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 1.2</span>);.}..<span.class="tok |
| 5a520 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 74 68 69 73 20 63 61 73 74 2c 20 74 68 65 20 61 | -comment">//.In.this.cast,.the.a |
| 5a540 | 72 72 61 79 20 6c 65 6e 67 74 68 20 62 65 63 6f 6d 65 73 20 74 68 65 20 73 6c 69 63 65 20 6c 65 | rray.length.becomes.the.slice.le |
| 5a560 | 6e 67 74 68 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ngth.</span>.<span.class="tok-kw |
| 5a580 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 5a5a0 | 74 72 22 3e 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 5b 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 | tr">"*[N]T.to.[]T"</sp |
| 5a5c0 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>.{.....<span.class="tok-kw">v |
| 5a5e0 | 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ar</span>.buf:.[<span.class="tok |
| 5a600 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -number">5</span>]<span.class="t |
| 5a620 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u8</span>.=.<span.class |
| 5a640 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 | ="tok-str">"hello"</sp |
| 5a660 | 61 6e 3e 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>.*;.....<span.class="tok-kw"> |
| 5a680 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | const</span>.x:.[]<span.class="t |
| 5a6a0 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 | ok-type">u8</span>.=.&buf;.. |
| 5a6c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 5a6e0 | 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 | n>.expect(std.mem.eql(<span.clas |
| 5a700 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 2c 20 3c 73 70 61 6e | s="tok-type">u8</span>,.x,.<span |
| 5a720 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f | .class="tok-str">"hello&quo |
| 5a740 | 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t;</span>));......<span.class="t |
| 5a760 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 66 32 20 3d 20 5b 3c 73 70 61 | ok-kw">const</span>.buf2.=.[<spa |
| 5a780 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 | n.class="tok-number">2</span>]<s |
| 5a7a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b | pan.class="tok-type">f32</span>{ |
| 5a7c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 | .<span.class="tok-number">1.2</s |
| 5a7e0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | pan>,.<span.class="tok-number">3 |
| 5a800 | 2e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .4</span>.};.....<span.class="to |
| 5a820 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 5b 5d 3c 73 70 61 6e 20 63 | k-kw">const</span>.x2:.[]<span.c |
| 5a840 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | lass="tok-kw">const</span>.<span |
| 5a860 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 | .class="tok-type">f32</span>.=.& |
| 5a880 | 61 6d 70 3b 62 75 66 32 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | amp;buf2;.....<span.class="tok-k |
| 5a8a0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c | w">try</span>.expect(std.mem.eql |
| 5a8c0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 | (<span.class="tok-type">f32</spa |
| 5a8e0 | 6e 3e 2c 20 78 32 2c 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | n>,.x2,.&[<span.class="tok-n |
| 5a900 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | umber">2</span>]<span.class="tok |
| 5a920 | 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">f32</span>{.<span.class=" |
| 5a940 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | tok-number">1.2</span>,.<span.cl |
| 5a960 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b | ass="tok-number">3.4</span>.})); |
| 5a980 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | .}..<span.class="tok-comment">// |
| 5a9a0 | 20 53 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 61 72 72 61 79 73 20 | .Single-item.pointers.to.arrays. |
| 5a9c0 | 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e | can.be.coerced.to.many-item.poin |
| 5a9e0 | 74 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ters.</span>.<span.class="tok-kw |
| 5aa00 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 5aa20 | 74 72 22 3e 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 5b 2a 5d 54 26 71 75 6f 74 3b 3c 2f 73 | tr">"*[N]T.to.[*]T"</s |
| 5aa40 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 5aa60 | 76 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | var</span>.buf:.[<span.class="to |
| 5aa80 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-number">5</span>]<span.class=" |
| 5aaa0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">u8</span>.=.<span.clas |
| 5aac0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 | s="tok-str">"hello"</s |
| 5aae0 | 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.*;.....<span.class="tok-kw" |
| 5ab00 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >const</span>.x:.[*]<span.class= |
| 5ab20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b | "tok-type">u8</span>.=.&buf; |
| 5ab40 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 5ab60 | 70 61 6e 3e 20 65 78 70 65 63 74 28 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | pan>.expect(x[<span.class="tok-n |
| 5ab80 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">4</span>].==.<span.class= |
| 5aba0 | 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-str">'o'</span>);.....<span |
| 5abc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 5b 35 5d 20 77 6f 75 | .class="tok-comment">//.x[5].wou |
| 5abe0 | 6c 64 20 62 65 20 61 6e 20 75 6e 63 61 75 67 68 74 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 20 | ld.be.an.uncaught.out.of.bounds. |
| 5ac00 | 70 6f 69 6e 74 65 72 20 64 65 72 65 66 65 72 65 6e 63 65 21 3c 2f 73 70 61 6e 3e 0a 7d 0a 0a 3c | pointer.dereference!</span>.}..< |
| 5ac20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 69 6b 65 | span.class="tok-comment">//.Like |
| 5ac40 | 77 69 73 65 2c 20 69 74 20 77 6f 72 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 | wise,.it.works.when.the.destinat |
| 5ac60 | 69 6f 6e 20 74 79 70 65 20 69 73 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a | ion.type.is.an.optional.</span>. |
| 5ac80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e | <span.class="tok-kw">test</span> |
| 5aca0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 5b 4e | .<span.class="tok-str">"*[N |
| 5acc0 | 5d 54 20 74 6f 20 3f 5b 2a 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ]T.to.?[*]T"</span>.{.....< |
| 5ace0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 | span.class="tok-kw">var</span>.b |
| 5ad00 | 75 66 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | uf:.[<span.class="tok-number">5< |
| 5ad20 | 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | /span>]<span.class="tok-type">u8 |
| 5ad40 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | </span>.=.<span.class="tok-str"> |
| 5ad60 | 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 | "hello"</span>.*;..... |
| 5ad80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 5ada0 | 3e 20 78 3a 20 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | >.x:.?[*]<span.class="tok-type"> |
| 5adc0 | 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | u8</span>.=.&buf;.....<span. |
| 5ade0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 5ae00 | 28 78 2e 3f 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c | (x.?[<span.class="tok-number">4< |
| 5ae20 | 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | /span>].==.<span.class="tok-str" |
| 5ae40 | 3e 27 6f 27 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >'o'</span>);.}..<span.class="to |
| 5ae60 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 | k-comment">//.Single-item.pointe |
| 5ae80 | 72 73 20 63 61 6e 20 62 65 20 63 61 73 74 20 74 6f 20 6c 65 6e 2d 31 20 73 69 6e 67 6c 65 2d 69 | rs.can.be.cast.to.len-1.single-i |
| 5aea0 | 74 65 6d 20 61 72 72 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tem.arrays.</span>.<span.class=" |
| 5aec0 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">test</span>.<span.class= |
| 5aee0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 54 20 74 6f 20 2a 5b 31 5d 54 26 71 75 6f 74 | "tok-str">"*T.to.*[1]T" |
| 5af00 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;</span>.{.....<span.class="tok- |
| 5af20 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">var</span>.x:.<span.class="t |
| 5af40 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">i32</span>.=.<span.clas |
| 5af60 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | s="tok-number">1234</span>;..... |
| 5af80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 5afa0 | 3e 20 79 3a 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | >.y:.*[<span.class="tok-number"> |
| 5afc0 | 31 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | 1</span>]<span.class="tok-type"> |
| 5afe0 | 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | i32</span>.=.&x;.....<span.c |
| 5b000 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 3a 20 5b 2a | lass="tok-kw">const</span>.z:.[* |
| 5b020 | 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 | ]<span.class="tok-type">i32</spa |
| 5b040 | 6e 3e 20 3d 20 79 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | n>.=.y;.....<span.class="tok-kw" |
| 5b060 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 7a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | >try</span>.expect(z[<span.class |
| 5b080 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e | ="tok-number">0</span>].==.<span |
| 5b0a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 | .class="tok-number">1234</span>) |
| 5b0c0 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 5b0e0 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 6f 65 72 63 65 5f 5f 73 6c 69 63 | ="shell">$.zig.test.coerce__slic |
| 5b100 | 65 73 5f 61 72 72 61 79 73 5f 61 6e 64 5f 70 74 72 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 37 | es_arrays_and_ptrs.zig.Test.[1/7 |
| 5b120 | 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 5b 5d 63 6f | ].test."*const.[N]T.to.[]co |
| 5b140 | 6e 73 74 20 54 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 37 5d 20 74 65 73 74 20 | nst.T".....Test.[2/7].test. |
| 5b160 | 26 71 75 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 45 21 5b 5d 63 6f 6e 73 74 20 54 | "*const.[N]T.to.E![]const.T |
| 5b180 | 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 33 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 | ".....Test.[3/7].test." |
| 5b1a0 | 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 3f 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b | ;*const.[N]T.to.?[]const.T" |
| 5b1c0 | 2e 2e 2e 20 0a 54 65 73 74 20 5b 34 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 2a 5b 4e 5d 54 | .....Test.[4/7].test."*[N]T |
| 5b1e0 | 20 74 6f 20 5b 5d 54 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 35 2f 37 5d 20 74 65 73 | .to.[]T".....Test.[5/7].tes |
| 5b200 | 74 20 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 5b 2a 5d 54 26 71 75 6f 74 3b 2e 2e 2e 20 0a | t."*[N]T.to.[*]T"..... |
| 5b220 | 54 65 73 74 20 5b 36 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 3f | Test.[6/7].test."*[N]T.to.? |
| 5b240 | 5b 2a 5d 54 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 37 2f 37 5d 20 74 65 73 74 20 26 | [*]T".....Test.[7/7].test.& |
| 5b260 | 71 75 6f 74 3b 2a 54 20 74 6f 20 2a 5b 31 5d 54 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 | quot;*T.to.*[1]T"......All. |
| 5b280 | 37 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 7.tests.passed..</code></pre>... |
| 5b2a0 | 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 | .....<p>See.also:</p><ul>.<li><a |
| 5b2c0 | 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f | .href="#C-Pointers">C.Pointers</ |
| 5b2e0 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 | a></li>.</ul>...............<h3. |
| 5b300 | 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c 61 20 | id="Type-Coercion-Optionals"><a. |
| 5b320 | 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 | href="#toc-Type-Coercion-Optiona |
| 5b340 | 6c 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e | ls">Type.Coercion:.Optionals</a> |
| 5b360 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 | .<a.class="hdr".href="#Type-Coer |
| 5b380 | 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | cion-Optionals">..</a></h3>..... |
| 5b3a0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 20 6f 66 | ...<p>.......The.payload.type.of |
| 5b3c0 | 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c | .<a.href="#Optionals">Optionals< |
| 5b3e0 | 2f 61 3e 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e | /a>,.as.well.as.<a.href="#null"> |
| 5b400 | 6e 75 6c 6c 3c 2f 61 3e 2c 20 63 6f 65 72 63 65 20 74 6f 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c | null</a>,.coerce.to.the.optional |
| 5b420 | 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | .type........</p>.......<p.class |
| 5b440 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 5b460 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 5b480 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | const</span>.std.=.<span.class=" |
| 5b4a0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@import</span>(<spa |
| 5b4c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 | n.class="tok-str">"std" |
| 5b4e0 | 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ;</span>);.<span.class="tok-kw"> |
| 5b500 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e | const</span>.expect.=.std.testin |
| 5b520 | 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | g.expect;..<span.class="tok-kw"> |
| 5b540 | 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | test</span>.<span.class="tok-str |
| 5b560 | 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 26 71 75 6f 74 | ">"coerce.to.optionals" |
| 5b580 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;</span>.{.....<span.class="tok- |
| 5b5a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.x:.?<span.class |
| 5b5c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">i32</span>.=.<span.c |
| 5b5e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 | lass="tok-number">1234</span>;.. |
| 5b600 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| 5b620 | 70 61 6e 3e 20 79 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | pan>.y:.?<span.class="tok-type"> |
| 5b640 | 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | i32</span>.=.<span.class="tok-nu |
| 5b660 | 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ll">null</span>;......<span.clas |
| 5b680 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 2e 3f | s="tok-kw">try</span>.expect(x.? |
| 5b6a0 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 | .==.<span.class="tok-number">123 |
| 5b6c0 | 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 4</span>);.....<span.class="tok- |
| 5b6e0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e | kw">try</span>.expect(y.==.<span |
| 5b700 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a | .class="tok-null">null</span>);. |
| 5b720 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 5b740 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 | shell">$.zig.test.test.zig.Test. |
| 5b760 | 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 74 6f 20 6f 70 74 69 6f | [1/1].test."coerce.to.optio |
| 5b780 | 6e 61 6c 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | nals"......All.1.tests.pass |
| 5b7a0 | 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 74 20 77 | ed..</code></pre>........<p>It.w |
| 5b7c0 | 6f 72 6b 73 20 6e 65 73 74 65 64 20 69 6e 73 69 64 65 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 | orks.nested.inside.the.<a.href=" |
| 5b7e0 | 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 | #Error-Union-Type">Error.Union.T |
| 5b800 | 79 70 65 3c 2f 61 3e 2c 20 74 6f 6f 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | ype</a>,.too:</p>.......<p.class |
| 5b820 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 5b840 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 5b860 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | const</span>.std.=.<span.class=" |
| 5b880 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@import</span>(<spa |
| 5b8a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 | n.class="tok-str">"std" |
| 5b8c0 | 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ;</span>);.<span.class="tok-kw"> |
| 5b8e0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e | const</span>.expect.=.std.testin |
| 5b900 | 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | g.expect;..<span.class="tok-kw"> |
| 5b920 | 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | test</span>.<span.class="tok-str |
| 5b940 | 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 20 77 72 61 70 | ">"coerce.to.optionals.wrap |
| 5b960 | 70 65 64 20 69 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ped.in.error.union"</span>. |
| 5b980 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | {.....<span.class="tok-kw">const |
| 5b9a0 | 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.x:.<span.class="tok-type |
| 5b9c0 | 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">anyerror</span>!?<span.class=" |
| 5b9e0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">i32</span>.=.<span.cla |
| 5ba00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | ss="tok-number">1234</span>;.... |
| 5ba20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 5ba40 | 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 | n>.y:.<span.class="tok-type">any |
| 5ba60 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | error</span>!?<span.class="tok-t |
| 5ba80 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">i32</span>.=.<span.class="t |
| 5baa0 | 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | ok-null">null</span>;......<span |
| 5bac0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 5bae0 | 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | t((<span.class="tok-kw">try</spa |
| 5bb00 | 6e 3e 20 78 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | n>.x).?.==.<span.class="tok-numb |
| 5bb20 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | er">1234</span>);.....<span.clas |
| 5bb40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 | s="tok-kw">try</span>.expect((<s |
| 5bb60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 79 29 | pan.class="tok-kw">try</span>.y) |
| 5bb80 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c | .==.<span.class="tok-null">null< |
| 5bba0 | 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | /span>);.}</code></pre><pre><cod |
| 5bbc0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e | e.class="shell">$.zig.test.test. |
| 5bbe0 | 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 72 63 65 | zig.Test.[1/1].test."coerce |
| 5bc00 | 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 20 77 72 61 70 70 65 64 20 69 6e 20 65 72 72 6f 72 20 75 | .to.optionals.wrapped.in.error.u |
| 5bc20 | 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | nion"......All.1.tests.pass |
| 5bc40 | 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | ed..</code></pre>............... |
| 5bc60 | 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f | <h3.id="Type-Coercion-Error-Unio |
| 5bc80 | 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d | ns"><a.href="#toc-Type-Coercion- |
| 5bca0 | 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 45 72 72 | Error-Unions">Type.Coercion:.Err |
| 5bcc0 | 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | or.Unions</a>.<a.class="hdr".hre |
| 5bce0 | 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e | f="#Type-Coercion-Error-Unions"> |
| 5bd00 | c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 70 61 79 6c 6f 61 | ..</a></h3>........<p>The.payloa |
| 5bd20 | 64 20 74 79 70 65 20 6f 66 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 | d.type.of.an.<a.href="#Error-Uni |
| 5bd40 | 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 20 61 73 | on-Type">Error.Union.Type</a>.as |
| 5bd60 | 20 77 65 6c 6c 20 61 73 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 | .well.as.the.<a.href="#Error-Set |
| 5bd80 | 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 0a 20 20 20 20 20 20 | -Type">Error.Set.Type</a>....... |
| 5bda0 | 63 6f 65 72 63 65 20 74 6f 20 74 68 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 3a 0a | coerce.to.the.error.union.type:. |
| 5bdc0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ......</p>.......<p.class="file" |
| 5bde0 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 5be00 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 5be20 | 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>.std.=.<span.class="tok-bui |
| 5be40 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| 5be60 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ="tok-str">"std"</span |
| 5be80 | 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | >);.<span.class="tok-kw">const</ |
| 5bea0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | span>.expect.=.std.testing.expec |
| 5bec0 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | t;..<span.class="tok-kw">test</s |
| 5bee0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 5bf00 | 3b 63 6f 65 72 63 69 6f 6e 20 74 6f 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 26 71 75 6f 74 3b 3c | ;coercion.to.error.unions"< |
| 5bf20 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.{.....<span.class="tok-kw |
| 5bf40 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">const</span>.x:.<span.class="t |
| 5bf60 | 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 | ok-type">anyerror</span>!<span.c |
| 5bf80 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">i32</span>.=.<sp |
| 5bfa0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e | an.class="tok-number">1234</span |
| 5bfc0 | 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | >;.....<span.class="tok-kw">cons |
| 5bfe0 | 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | t</span>.y:.<span.class="tok-typ |
| 5c000 | 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">anyerror</span>!<span.class=" |
| 5c020 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">i32</span>.=.<span.cla |
| 5c040 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 61 69 6c 75 72 65 | ss="tok-kw">error</span>.Failure |
| 5c060 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | ;......<span.class="tok-kw">try< |
| 5c080 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.expect((<span.class="tok- |
| 5c0a0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 78 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">try</span>.x).==.<span.class |
| 5c0c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ="tok-number">1234</span>);..... |
| 5c0e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 5c100 | 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c | std.testing.expectError(<span.cl |
| 5c120 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 61 69 6c 75 72 | ass="tok-kw">error</span>.Failur |
| 5c140 | 65 2c 20 79 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | e,.y);.}</code></pre><pre><code. |
| 5c160 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 5c180 | 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e | g.Test.[1/1].test."coercion |
| 5c1a0 | 20 74 6f 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 | .to.error.unions"......All. |
| 5c1c0 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 1.tests.passed..</code></pre>... |
| 5c1e0 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f | ............<h3.id="Type-Coercio |
| 5c200 | 6e 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e 3c 61 | n-Compile-Time-Known-Numbers"><a |
| 5c220 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 6d 70 69 6c | .href="#toc-Type-Coercion-Compil |
| 5c240 | 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e 54 79 70 65 20 43 6f 65 72 63 | e-Time-Known-Numbers">Type.Coerc |
| 5c260 | 69 6f 6e 3a 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 4b 6e 6f 77 6e 20 4e 75 6d 62 65 72 73 3c | ion:.Compile-Time.Known.Numbers< |
| 5c280 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 | /a>.<a.class="hdr".href="#Type-C |
| 5c2a0 | 6f 65 72 63 69 6f 6e 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 | oercion-Compile-Time-Known-Numbe |
| 5c2c0 | 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 61 | rs">..</a></h3>........<p>When.a |
| 5c2e0 | 20 6e 75 6d 62 65 72 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 | .number.is.<a.href="#comptime">c |
| 5c300 | 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 74 6f 20 62 65 20 72 65 70 72 65 73 65 6e | omptime</a>-known.to.be.represen |
| 5c320 | 74 61 62 6c 65 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2c 0a 20 | table.in.the.destination.type,.. |
| 5c340 | 20 20 20 20 20 69 74 20 6d 61 79 20 62 65 20 63 6f 65 72 63 65 64 3a 0a 20 20 20 20 20 20 3c 2f | .....it.may.be.coerced:.......</ |
| 5c360 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 5c380 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 5c3a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 | n.class="tok-kw">const</span>.st |
| 5c3c0 | 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | d.=.<span.class="tok-builtin">@i |
| 5c3e0 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | mport</span>(<span.class="tok-st |
| 5c400 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 | r">"std"</span>);.<spa |
| 5c420 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 | n.class="tok-kw">const</span>.ex |
| 5c440 | 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 | pect.=.std.testing.expect;..<spa |
| 5c460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | n.class="tok-kw">test</span>.<sp |
| 5c480 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 69 6e | an.class="tok-str">"coercin |
| 5c4a0 | 67 20 6c 61 72 67 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 74 6f 20 73 6d 61 6c 6c 65 72 20 | g.large.integer.type.to.smaller. |
| 5c4c0 | 6f 6e 65 20 77 68 65 6e 20 76 61 6c 75 65 20 69 73 20 63 6f 6d 70 74 69 6d 65 20 6b 6e 6f 77 6e | one.when.value.is.comptime.known |
| 5c4e0 | 20 74 6f 20 66 69 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | .to.fit"</span>.{.....<span |
| 5c500 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 | .class="tok-kw">const</span>.x:. |
| 5c520 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e | <span.class="tok-type">u64</span |
| 5c540 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 | >.=.<span.class="tok-number">255 |
| 5c560 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>;.....<span.class="tok-kw |
| 5c580 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">const</span>.y:.<span.class="t |
| 5c5a0 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 78 3b 0a 20 20 20 20 3c 73 70 61 | ok-type">u8</span>.=.x;.....<spa |
| 5c5c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 5c5e0 | 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ct(y.==.<span.class="tok-number" |
| 5c600 | 3e 32 35 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | >255</span>);.}</code></pre><pre |
| 5c620 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| 5c640 | 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 | test.zig.Test.[1/1].test."c |
| 5c660 | 6f 65 72 63 69 6e 67 20 6c 61 72 67 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 74 6f 20 73 6d | oercing.large.integer.type.to.sm |
| 5c680 | 61 6c 6c 65 72 20 6f 6e 65 20 77 68 65 6e 20 76 61 6c 75 65 20 69 73 20 63 6f 6d 70 74 69 6d 65 | aller.one.when.value.is.comptime |
| 5c6a0 | 20 6b 6e 6f 77 6e 20 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | .known.......All.1.tests.passed. |
| 5c6c0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 | .</code></pre>...............<h3 |
| 5c6e0 | 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e | .id="Type-Coercion-unions-and-en |
| 5c700 | 75 6d 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e | ums"><a.href="#toc-Type-Coercion |
| 5c720 | 2d 75 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e | -unions-and-enums">Type.Coercion |
| 5c740 | 3a 20 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | :.unions.and.enums</a>.<a.class= |
| 5c760 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 69 6f 6e | "hdr".href="#Type-Coercion-union |
| 5c780 | 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | s-and-enums">..</a></h3>........ |
| 5c7a0 | 3c 70 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 | <p>Tagged.unions.can.be.coerced. |
| 5c7c0 | 74 6f 20 65 6e 75 6d 73 2c 20 61 6e 64 20 65 6e 75 6d 73 20 63 61 6e 20 62 65 20 63 6f 65 72 63 | to.enums,.and.enums.can.be.coerc |
| 5c7e0 | 65 64 20 74 6f 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 73 0a 20 20 20 20 20 20 77 68 65 6e 20 74 | ed.to.tagged.unions.......when.t |
| 5c800 | 68 65 79 20 61 72 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 | hey.are.<a.href="#comptime">comp |
| 5c820 | 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 74 6f 20 62 65 20 61 20 66 69 65 6c 64 20 6f 66 20 | time</a>-known.to.be.a.field.of. |
| 5c840 | 74 68 65 20 75 6e 69 6f 6e 20 74 68 61 74 20 68 61 73 20 6f 6e 6c 79 20 6f 6e 65 20 70 6f 73 73 | the.union.that.has.only.one.poss |
| 5c860 | 69 62 6c 65 20 76 61 6c 75 65 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 | ible.value,.such.as.......<a.hre |
| 5c880 | 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | f="#void">void</a>:.......</p>.. |
| 5c8a0 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 5c8c0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 5c8e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 | ass="tok-kw">const</span>.std.=. |
| 5c900 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 | <span.class="tok-builtin">@impor |
| 5c920 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>(<span.class="tok-str">& |
| 5c940 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c | quot;std"</span>);.<span.cl |
| 5c960 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | ass="tok-kw">const</span>.expect |
| 5c980 | 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | .=.std.testing.expect;..<span.cl |
| 5c9a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 20 3d 20 3c 73 | ass="tok-kw">const</span>.E.=.<s |
| 5c9c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b | pan.class="tok-kw">enum</span>.{ |
| 5c9e0 | 0a 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f 2c 0a 20 20 20 20 74 68 72 65 65 2c 0a 7d 3b | .....one,.....two,.....three,.}; |
| 5ca00 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| 5ca20 | 61 6e 3e 20 55 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 | an>.U.=.<span.class="tok-kw">uni |
| 5ca40 | 6f 6e 3c 2f 73 70 61 6e 3e 28 45 29 20 7b 0a 20 20 20 20 6f 6e 65 3a 20 3c 73 70 61 6e 20 63 6c | on</span>(E).{.....one:.<span.cl |
| 5ca60 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 74 | ass="tok-type">i32</span>,.....t |
| 5ca80 | 77 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f | wo:.<span.class="tok-type">f32</ |
| 5caa0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 74 68 72 65 65 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | span>,.....three,.};..<span.clas |
| 5cac0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">test</span>.<span.cla |
| 5cae0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 62 65 74 77 | ss="tok-str">"coercion.betw |
| 5cb00 | 65 65 6e 20 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | een.unions.and.enums"</span |
| 5cb20 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | >.{.....<span.class="tok-kw">var |
| 5cb40 | 3c 2f 73 70 61 6e 3e 20 75 20 3d 20 55 7b 20 2e 74 77 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | </span>.u.=.U{..two.=.<span.clas |
| 5cb60 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 | s="tok-number">12.34</span>.};.. |
| 5cb80 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 | ...<span.class="tok-kw">var</spa |
| 5cba0 | 6e 3e 20 65 3a 20 45 20 3d 20 75 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.e:.E.=.u;.....<span.class="to |
| 5cbc0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 20 3d 3d 20 45 2e 74 | k-kw">try</span>.expect(e.==.E.t |
| 5cbe0 | 77 6f 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | wo);......<span.class="tok-kw">c |
| 5cc00 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 68 72 65 65 20 3d 20 45 2e 74 68 72 65 65 3b 0a 20 20 20 | onst</span>.three.=.E.three;.... |
| 5cc20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 5cc40 | 20 61 6e 6f 74 68 65 72 5f 75 3a 20 55 20 3d 20 74 68 72 65 65 3b 0a 20 20 20 20 3c 73 70 61 6e | .another_u:.U.=.three;.....<span |
| 5cc60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 5cc80 | 74 28 61 6e 6f 74 68 65 72 5f 75 20 3d 3d 20 45 2e 74 68 72 65 65 29 3b 0a 7d 3c 2f 63 6f 64 65 | t(another_u.==.E.three);.}</code |
| 5cca0 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 5ccc0 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 | $.zig.test.test.zig.Test.[1/1].t |
| 5cce0 | 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 62 65 74 77 65 65 6e 20 75 6e 69 6f 6e | est."coercion.between.union |
| 5cd00 | 73 20 61 6e 64 20 65 6e 75 6d 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 | s.and.enums"......All.1.tes |
| 5cd20 | 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ts.passed..</code></pre>........ |
| 5cd40 | 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | <p>See.also:</p><ul>.<li><a.href |
| 5cd60 | 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | ="#union">union</a></li>.<li><a. |
| 5cd80 | 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | href="#enum">enum</a></li>.</ul> |
| 5cda0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 | ...............<h3.id="Type-Coer |
| 5cdc0 | 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | cion-Zero-Bit-Types"><a.href="#t |
| 5cde0 | 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 | oc-Type-Coercion-Zero-Bit-Types" |
| 5ce00 | 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f | >Type.Coercion:.Zero.Bit.Types</ |
| 5ce20 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f | a>.<a.class="hdr".href="#Type-Co |
| 5ce40 | 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ercion-Zero-Bit-Types">..</a></h |
| 5ce60 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 61 20 68 72 65 66 3d 22 23 5a 65 72 6f 2d 42 69 74 2d | 3>........<p><a.href="#Zero-Bit- |
| 5ce80 | 54 79 70 65 73 22 3e 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 20 6d 61 79 20 62 65 | Types">Zero.Bit.Types</a>.may.be |
| 5cea0 | 20 63 6f 65 72 63 65 64 20 74 6f 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 3c 61 20 68 72 65 66 3d | .coerced.to.single-item.<a.href= |
| 5cec0 | 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 | "#Pointers">Pointers</a>,....... |
| 5cee0 | 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 63 6f 6e 73 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | regardless.of.const.</p>.......< |
| 5cf00 | 70 3e 54 4f 44 4f 20 64 6f 63 75 6d 65 6e 74 20 74 68 65 20 72 65 61 73 6f 6e 69 6e 67 20 66 6f | p>TODO.document.the.reasoning.fo |
| 5cf20 | 72 20 74 68 69 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 20 64 6f 63 75 6d 65 6e | r.this</p>.......<p>TODO.documen |
| 5cf40 | 74 20 77 68 65 74 68 65 72 20 76 69 63 65 20 76 65 72 73 61 20 73 68 6f 75 6c 64 20 77 6f 72 6b | t.whether.vice.versa.should.work |
| 5cf60 | 20 61 6e 64 20 77 68 79 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | .and.why</p>.......<p.class="fil |
| 5cf80 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| 5cfa0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | "zig"><span.class="tok-kw">test< |
| 5cfc0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>.<span.class="tok-str">&qu |
| 5cfe0 | 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 6f 66 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 73 26 71 75 | ot;coercion.of.zero.bit.types&qu |
| 5d000 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ot;</span>.{.....<span.class="to |
| 5d020 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">var</span>.x:.<span.class= |
| 5d040 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 7b 7d 3b 0a 20 20 20 | "tok-type">void</span>.=.{};.... |
| 5d060 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 5d080 | 20 79 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | .y:.*<span.class="tok-type">void |
| 5d0a0 | 3c 2f 73 70 61 6e 3e 20 3d 20 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.=.x;.....<span.class="to |
| 5d0c0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 76 61 72 20 7a 3a 20 76 6f 69 64 20 3d 20 79 3b 20 2f 2f | k-comment">//var.z:.void.=.y;.// |
| 5d0e0 | 20 54 4f 44 4f 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | .TODO</span>.}</code></pre><pre> |
| 5d100 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 | <code.class="shell">$.zig.test.t |
| 5d120 | 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f | est.zig.Test.[1/1].test."co |
| 5d140 | 65 72 63 69 6f 6e 20 6f 66 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 73 26 71 75 6f 74 3b 2e 2e | ercion.of.zero.bit.types".. |
| 5d160 | 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | ....All.1.tests.passed..</code>< |
| 5d180 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 | /pre>...............<h3.id="Type |
| 5d1a0 | 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | -Coercion-undefined"><a.href="#t |
| 5d1c0 | 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e 54 79 70 65 | oc-Type-Coercion-undefined">Type |
| 5d1e0 | 20 43 6f 65 72 63 69 6f 6e 3a 20 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | .Coercion:.undefined</a>.<a.clas |
| 5d200 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 | s="hdr".href="#Type-Coercion-und |
| 5d220 | 65 66 69 6e 65 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 61 | efined">..</a></h3>........<p><a |
| 5d240 | 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e | .href="#undefined">undefined</a> |
| 5d260 | 20 63 61 6e 20 62 65 20 63 61 73 74 20 74 6f 20 61 6e 79 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 | .can.be.cast.to.any.type.</p>... |
| 5d280 | 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 70 6c 69 | ...................<h2.id="Expli |
| 5d2a0 | 63 69 74 2d 43 61 73 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 70 6c 69 63 69 | cit-Casts"><a.href="#toc-Explici |
| 5d2c0 | 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 3c 61 20 63 | t-Casts">Explicit.Casts</a>.<a.c |
| 5d2e0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 | lass="hdr".href="#Explicit-Casts |
| 5d300 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 | ">..</a></h2>........<p>.......E |
| 5d320 | 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 70 65 72 66 6f 72 6d 65 64 20 76 69 61 20 | xplicit.casts.are.performed.via. |
| 5d340 | 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 | <a.href="#Builtin-Functions">Bui |
| 5d360 | 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 | ltin.Functions</a>........Some.e |
| 5d380 | 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 73 61 66 65 3b 20 73 6f 6d 65 20 61 72 65 | xplicit.casts.are.safe;.some.are |
| 5d3a0 | 20 6e 6f 74 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 | .not........Some.explicit.casts. |
| 5d3c0 | 70 65 72 66 6f 72 6d 20 6c 61 6e 67 75 61 67 65 2d 6c 65 76 65 6c 20 61 73 73 65 72 74 69 6f 6e | perform.language-level.assertion |
| 5d3e0 | 73 3b 20 73 6f 6d 65 20 64 6f 20 6e 6f 74 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 78 70 6c 69 | s;.some.do.not........Some.expli |
| 5d400 | 63 69 74 20 63 61 73 74 73 20 61 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e 74 69 6d 65 3b | cit.casts.are.no-ops.at.runtime; |
| 5d420 | 20 73 6f 6d 65 20 61 72 65 20 6e 6f 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .some.are.not........</p>....... |
| 5d440 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 69 74 | <ul>...........<li><a.href="#bit |
| 5d460 | 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 20 2d 20 63 68 61 6e 67 65 20 74 79 70 65 | Cast">@bitCast</a>.-.change.type |
| 5d480 | 20 62 75 74 20 6d 61 69 6e 74 61 69 6e 20 62 69 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e | .but.maintain.bit.representation |
| 5d4a0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 6c | </li>...........<li><a.href="#al |
| 5d4c0 | 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 2d 20 6d 61 6b 65 20 61 | ignCast">@alignCast</a>.-.make.a |
| 5d4e0 | 20 70 6f 69 6e 74 65 72 20 68 61 76 65 20 6d 6f 72 65 20 61 6c 69 67 6e 6d 65 6e 74 3c 2f 6c 69 | .pointer.have.more.alignment</li |
| 5d500 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 6f 6f 6c 54 6f | >...........<li><a.href="#boolTo |
| 5d520 | 49 6e 74 22 3e 40 62 6f 6f 6c 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 74 72 | Int">@boolToInt</a>.-.convert.tr |
| 5d540 | 75 65 20 74 6f 20 31 20 61 6e 64 20 66 61 6c 73 65 20 74 6f 20 30 3c 2f 6c 69 3e 0a 20 20 20 20 | ue.to.1.and.false.to.0</li>..... |
| 5d560 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 54 6f 49 6e 74 22 3e 40 | ......<li><a.href="#enumToInt">@ |
| 5d580 | 65 6e 75 6d 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 | enumToInt</a>.-.obtain.the.integ |
| 5d5a0 | 65 72 20 74 61 67 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 65 6e 75 6d 20 6f 72 20 74 61 67 67 65 | er.tag.value.of.an.enum.or.tagge |
| 5d5c0 | 64 20 75 6e 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | d.union</li>...........<li><a.hr |
| 5d5e0 | 65 66 3d 22 23 65 72 72 53 65 74 43 61 73 74 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 61 3e | ef="#errSetCast">@errSetCast</a> |
| 5d600 | 20 2d 20 63 6f 6e 76 65 72 74 20 74 6f 20 61 20 73 6d 61 6c 6c 65 72 20 65 72 72 6f 72 20 73 65 | .-.convert.to.a.smaller.error.se |
| 5d620 | 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 | t</li>...........<li><a.href="#e |
| 5d640 | 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 | rrorToInt">@errorToInt</a>.-.obt |
| 5d660 | 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 65 72 72 6f | ain.the.integer.value.of.an.erro |
| 5d680 | 72 20 63 6f 64 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 | r.code</li>...........<li><a.hre |
| 5d6a0 | 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 61 3e 20 2d 20 | f="#floatCast">@floatCast</a>.-. |
| 5d6c0 | 63 6f 6e 76 65 72 74 20 61 20 6c 61 72 67 65 72 20 66 6c 6f 61 74 20 74 6f 20 61 20 73 6d 61 6c | convert.a.larger.float.to.a.smal |
| 5d6e0 | 6c 65 72 20 66 6c 6f 61 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ler.float</li>...........<li><a. |
| 5d700 | 68 72 65 66 3d 22 23 66 6c 6f 61 74 54 6f 49 6e 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f | href="#floatToInt">@floatToInt</ |
| 5d720 | 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 6f 66 20 | a>.-.obtain.the.integer.part.of. |
| 5d740 | 61 20 66 6c 6f 61 74 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | a.float.value</li>...........<li |
| 5d760 | 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 43 61 73 74 22 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e | ><a.href="#intCast">@intCast</a> |
| 5d780 | 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 | .-.convert.between.integer.types |
| 5d7a0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e | </li>...........<li><a.href="#in |
| 5d7c0 | 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e | tToEnum">@intToEnum</a>.-.obtain |
| 5d7e0 | 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 65 20 62 61 73 65 64 20 6f 6e 20 69 74 73 20 69 6e 74 65 | .an.enum.value.based.on.its.inte |
| 5d800 | 67 65 72 20 74 61 67 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | ger.tag.value</li>...........<li |
| 5d820 | 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 72 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 | ><a.href="#intToError">@intToErr |
| 5d840 | 6f 72 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 20 62 61 | or</a>.-.obtain.an.error.code.ba |
| 5d860 | 73 65 64 20 6f 6e 20 69 74 73 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 | sed.on.its.integer.value</li>... |
| 5d880 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 46 6c 6f 61 74 | ........<li><a.href="#intToFloat |
| 5d8a0 | 22 3e 40 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 | ">@intToFloat</a>.-.convert.an.i |
| 5d8c0 | 6e 74 65 67 65 72 20 74 6f 20 61 20 66 6c 6f 61 74 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 | nteger.to.a.float.value</li>.... |
| 5d8e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 72 22 3e 40 | .......<li><a.href="#intToPtr">@ |
| 5d900 | 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 6e 20 61 64 64 72 65 73 | intToPtr</a>.-.convert.an.addres |
| 5d920 | 73 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | s.to.a.pointer</li>...........<l |
| 5d940 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 | i><a.href="#ptrCast">@ptrCast</a |
| 5d960 | 3e 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 70 6f 69 6e 74 65 72 20 74 79 70 65 | >.-.convert.between.pointer.type |
| 5d980 | 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 | s</li>...........<li><a.href="#p |
| 5d9a0 | 74 72 54 6f 49 6e 74 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 | trToInt">@ptrToInt</a>.-.obtain. |
| 5d9c0 | 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 3c 2f 6c 69 3e 0a 20 20 | the.address.of.a.pointer</li>... |
| 5d9e0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 65 22 3e | ........<li><a.href="#truncate"> |
| 5da00 | 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 | @truncate</a>.-.convert.between. |
| 5da20 | 69 6e 74 65 67 65 72 20 74 79 70 65 73 2c 20 63 68 6f 70 70 69 6e 67 20 6f 66 66 20 62 69 74 73 | integer.types,.chopping.off.bits |
| 5da40 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | </li>.......</ul>............... |
| 5da60 | 3c 68 32 20 69 64 3d 22 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 3c 61 | <h2.id="Peer-Type-Resolution"><a |
| 5da80 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e | .href="#toc-Peer-Type-Resolution |
| 5daa0 | 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c | ">Peer.Type.Resolution</a>.<a.cl |
| 5dac0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c | ass="hdr".href="#Peer-Type-Resol |
| 5dae0 | 75 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 50 65 65 | ution">..</a></h2>........<p>Pee |
| 5db00 | 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 20 6f 63 63 75 72 73 20 69 6e 20 74 68 65 73 | r.Type.Resolution.occurs.in.thes |
| 5db20 | 65 20 70 6c 61 63 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | e.places:</p>.......<ul>........ |
| 5db40 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 | .<li><a.href="#switch">switch</a |
| 5db60 | 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | >.expressions</li>.........<li>< |
| 5db80 | 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c | a.href="#if">if</a>.expressions< |
| 5dba0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 | /li>.........<li><a.href="#while |
| 5dbc0 | 22 3e 77 68 69 6c 65 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 3e 0a 20 20 20 | ">while</a>.expressions</li>.... |
| 5dbe0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 20 | .....<li><a.href="#for">for</a>. |
| 5dc00 | 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 75 6c | expressions</li>.........<li>Mul |
| 5dc20 | 74 69 70 6c 65 20 62 72 65 61 6b 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6e 20 61 20 62 6c 6f 63 | tiple.break.statements.in.a.bloc |
| 5dc40 | 6b 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6f 6d 65 20 3c 61 20 68 72 65 66 3d | k</li>.........<li>Some.<a.href= |
| 5dc60 | 22 23 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 62 69 6e 61 72 79 20 6f 70 65 | "#Table-of-Operators">binary.ope |
| 5dc80 | 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | rations</a></li>.......</ul>.... |
| 5dca0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 74 79 70 65 20 72 | ...<p>.......This.kind.of.type.r |
| 5dcc0 | 65 73 6f 6c 75 74 69 6f 6e 20 63 68 6f 6f 73 65 73 20 61 20 74 79 70 65 20 74 68 61 74 20 61 6c | esolution.chooses.a.type.that.al |
| 5dce0 | 6c 20 70 65 65 72 20 74 79 70 65 73 20 63 61 6e 20 63 6f 65 72 63 65 20 69 6e 74 6f 2e 20 48 65 | l.peer.types.can.coerce.into..He |
| 5dd00 | 72 65 20 61 72 65 0a 20 20 20 20 20 20 73 6f 6d 65 20 65 78 61 6d 70 6c 65 73 3a 0a 20 20 20 20 | re.are.......some.examples:..... |
| 5dd20 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 65 65 | ..</p>.......<p.class="file">pee |
| 5dd40 | 72 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | r_type_resolution.zig</p><pre><c |
| 5dd60 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 5dd80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.std.=.<span.cl |
| 5dda0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 5ddc0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 5dde0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | "</span>);.<span.class="tok |
| 5de00 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 | -kw">const</span>.expect.=.std.t |
| 5de20 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | esting.expect;.<span.class="tok- |
| 5de40 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a | kw">const</span>.mem.=.std.mem;. |
| 5de60 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e | .<span.class="tok-kw">test</span |
| 5de80 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 | >.<span.class="tok-str">"pe |
| 5dea0 | 65 72 20 72 65 73 6f 6c 76 65 20 69 6e 74 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 | er.resolve.int.widening"</s |
| 5dec0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 5dee0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.a:.<span.class="tok-t |
| 5df00 | 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">i8</span>.=.<span.class="to |
| 5df20 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-number">12</span>;.....<span.c |
| 5df40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.b:.<spa |
| 5df60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 | n.class="tok-type">i16</span>.=. |
| 5df80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 34 3c 2f 73 70 61 | <span.class="tok-number">34</spa |
| 5dfa0 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | n>;.....<span.class="tok-kw">var |
| 5dfc0 | 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 2b 20 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | </span>.c.=.a.+.b;.....<span.cla |
| 5dfe0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 20 | ss="tok-kw">try</span>.expect(c. |
| 5e000 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 36 3c 2f | ==.<span.class="tok-number">46</ |
| 5e020 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>);.....<span.class="tok-kw" |
| 5e040 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >try</span>.expect(<span.class=" |
| 5e060 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 63 29 20 3d | tok-builtin">@TypeOf</span>(c).= |
| 5e080 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 | =.<span.class="tok-type">i16</sp |
| 5e0a0 | 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | an>);.}..<span.class="tok-kw">te |
| 5e0c0 | 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | st</span>.<span.class="tok-str"> |
| 5e0e0 | 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 73 20 6f 66 20 64 69 66 | "peer.resolve.arrays.of.dif |
| 5e100 | 66 65 72 65 6e 74 20 73 69 7a 65 20 74 6f 20 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 3b | ferent.size.to.const.slice" |
| 5e120 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| 5e140 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 | w">try</span>.expect(mem.eql(<sp |
| 5e160 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 | an.class="tok-type">u8</span>,.b |
| 5e180 | 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | oolToStr(<span.class="tok-null"> |
| 5e1a0 | 74 72 75 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | true</span>),.<span.class="tok-s |
| 5e1c0 | 74 72 22 3e 26 71 75 6f 74 3b 74 72 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 | tr">"true"</span>));.. |
| 5e1e0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 5e200 | 6e 3e 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n>.expect(mem.eql(<span.class="t |
| 5e220 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 | ok-type">u8</span>,.boolToStr(<s |
| 5e240 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e | pan.class="tok-null">false</span |
| 5e260 | 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | >),.<span.class="tok-str">" |
| 5e280 | 66 61 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | false"</span>));.....<span. |
| 5e2a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c | class="tok-kw">comptime</span>.< |
| 5e2c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 5e2e0 | 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | xpect(mem.eql(<span.class="tok-t |
| 5e300 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 | ype">u8</span>,.boolToStr(<span. |
| 5e320 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c | class="tok-null">true</span>),.< |
| 5e340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 75 65 26 | span.class="tok-str">"true& |
| 5e360 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | quot;</span>));.....<span.class= |
| 5e380 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | "tok-kw">comptime</span>.<span.c |
| 5e3a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 5e3c0 | 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | mem.eql(<span.class="tok-type">u |
| 5e3e0 | 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 8</span>,.boolToStr(<span.class= |
| 5e400 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 | "tok-null">false</span>),.<span. |
| 5e420 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 | class="tok-str">"false" |
| 5e440 | 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ;</span>));.}.<span.class="tok-k |
| 5e460 | 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e | w">fn</span>.<span.class="tok-fn |
| 5e480 | 22 3e 62 6f 6f 6c 54 6f 53 74 72 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ">boolToStr</span>(b:.<span.clas |
| 5e4a0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 | s="tok-type">bool</span>).[]<spa |
| 5e4c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | n.class="tok-kw">const</span>.<s |
| 5e4e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b | pan.class="tok-type">u8</span>.{ |
| 5e500 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e | .....<span.class="tok-kw">return |
| 5e520 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | </span>.<span.class="tok-kw">if< |
| 5e540 | 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | /span>.(b).<span.class="tok-str" |
| 5e560 | 3e 26 71 75 6f 74 3b 74 72 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | >"true"</span>.<span.c |
| 5e580 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">else</span>.<span. |
| 5e5a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 | class="tok-str">"false" |
| 5e5c0 | 3b 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ;</span>;.}..<span.class="tok-kw |
| 5e5e0 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 5e600 | 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 20 61 6e 64 | tr">"peer.resolve.array.and |
| 5e620 | 20 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | .const.slice"</span>.{..... |
| 5e640 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 5e660 | 74 65 73 74 50 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 53 6c 69 63 65 28 3c | testPeerResolveArrayConstSlice(< |
| 5e680 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e | span.class="tok-null">true</span |
| 5e6a0 | 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | >);.....<span.class="tok-kw">com |
| 5e6c0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ptime</span>.<span.class="tok-kw |
| 5e6e0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 74 65 73 74 50 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 | ">try</span>.testPeerResolveArra |
| 5e700 | 79 43 6f 6e 73 74 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | yConstSlice(<span.class="tok-nul |
| 5e720 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | l">true</span>);.}.<span.class=" |
| 5e740 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 5e760 | 6f 6b 2d 66 6e 22 3e 74 65 73 74 50 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 | ok-fn">testPeerResolveArrayConst |
| 5e780 | 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | Slice</span>(b:.<span.class="tok |
| 5e7a0 | 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 | -type">bool</span>).!<span.class |
| 5e7c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ="tok-type">void</span>.{.....<s |
| 5e7e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 5e800 | 76 61 6c 75 65 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 | value1.=.<span.class="tok-kw">if |
| 5e820 | 3c 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | </span>.(b).<span.class="tok-str |
| 5e840 | 22 3e 26 71 75 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ">"aoeu"</span>.<span. |
| 5e860 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">else</span>.<span |
| 5e880 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 | .class="tok-builtin">@as</span>( |
| 5e8a0 | 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | []<span.class="tok-kw">const</sp |
| 5e8c0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | an>.<span.class="tok-type">u8</s |
| 5e8e0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | pan>,.<span.class="tok-str">&quo |
| 5e900 | 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | t;zz"</span>);.....<span.cl |
| 5e920 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 32 | ass="tok-kw">const</span>.value2 |
| 5e940 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | .=.<span.class="tok-kw">if</span |
| 5e960 | 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | >.(b).<span.class="tok-builtin"> |
| 5e980 | 40 61 73 3c 2f 73 70 61 6e 3e 28 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | @as</span>([]<span.class="tok-kw |
| 5e9a0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">const</span>.<span.class="tok- |
| 5e9c0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | type">u8</span>,.<span.class="to |
| 5e9e0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3c 73 | k-str">"zz"</span>).<s |
| 5ea00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">else</span>.< |
| 5ea20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6f 65 75 26 | span.class="tok-str">"aoeu& |
| 5ea40 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | quot;</span>;.....<span.class="t |
| 5ea60 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c | ok-kw">try</span>.expect(mem.eql |
| 5ea80 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | (<span.class="tok-type">u8</span |
| 5eaa0 | 3e 2c 20 76 61 6c 75 65 31 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | >,.value1,.<span.class="tok-str" |
| 5eac0 | 3e 26 71 75 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 | >"aoeu"</span>));..... |
| 5eae0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 5eb00 | 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | expect(mem.eql(<span.class="tok- |
| 5eb20 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 32 2c 20 3c 73 70 61 6e 20 63 | type">u8</span>,.value2,.<span.c |
| 5eb40 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 | lass="tok-str">"zz"</s |
| 5eb60 | 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>));.}..<span.class="tok-kw"> |
| 5eb80 | 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | test</span>.<span.class="tok-str |
| 5eba0 | 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 3f 54 | ">"peer.type.resolution:.?T |
| 5ebc0 | 20 61 6e 64 20 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | .and.T"</span>.{.....<span. |
| 5ebe0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 5ec00 | 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 | (peerTypeTAndOptionalT(<span.cla |
| 5ec20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ss="tok-null">true</span>,.<span |
| 5ec40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e | .class="tok-null">false</span>). |
| 5ec60 | 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | ?.==.<span.class="tok-number">0< |
| 5ec80 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>);.....<span.class="tok-kw |
| 5eca0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 | ">try</span>.expect(peerTypeTAnd |
| 5ecc0 | 4f 70 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | OptionalT(<span.class="tok-null" |
| 5ece0 | 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >false</span>,.<span.class="tok- |
| 5ed00 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 | null">false</span>).?.==.<span.c |
| 5ed20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | lass="tok-number">3</span>);.... |
| 5ed40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | .<span.class="tok-kw">comptime</ |
| 5ed60 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.{.........<span.class="tok |
| 5ed80 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 54 | -kw">try</span>.expect(peerTypeT |
| 5eda0 | 41 6e 64 4f 70 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | AndOptionalT(<span.class="tok-nu |
| 5edc0 | 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ll">true</span>,.<span.class="to |
| 5ede0 | 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e | k-null">false</span>).?.==.<span |
| 5ee00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .class="tok-number">0</span>);.. |
| 5ee20 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | .......<span.class="tok-kw">try< |
| 5ee40 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e | /span>.expect(peerTypeTAndOption |
| 5ee60 | 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 | alT(<span.class="tok-null">false |
| 5ee80 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | </span>,.<span.class="tok-null"> |
| 5eea0 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | false</span>).?.==.<span.class=" |
| 5eec0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c | tok-number">3</span>);.....}.}.< |
| 5eee0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 5ef00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 54 41 6e 64 4f | pan.class="tok-fn">peerTypeTAndO |
| 5ef20 | 70 74 69 6f 6e 61 6c 54 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ptionalT</span>(c:.<span.class=" |
| 5ef40 | 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 | tok-type">bool</span>,.b:.<span. |
| 5ef60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3f 3c | class="tok-type">bool</span>).?< |
| 5ef80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 | span.class="tok-type">usize</spa |
| 5efa0 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 | n>.{.....<span.class="tok-kw">if |
| 5efc0 | 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | </span>.(c).{.........<span.clas |
| 5efe0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">return</span>.<span.c |
| 5f000 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 | lass="tok-kw">if</span>.(b).<spa |
| 5f020 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 20 3c | n.class="tok-null">null</span>.< |
| 5f040 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">else</span>. |
| 5f060 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 | <span.class="tok-builtin">@as</s |
| 5f080 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a | pan>(<span.class="tok-type">usiz |
| 5f0a0 | 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | e</span>,.<span.class="tok-numbe |
| 5f0c0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | r">0</span>);.....}......<span.c |
| 5f0e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | lass="tok-kw">return</span>.<spa |
| 5f100 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e | n.class="tok-builtin">@as</span> |
| 5f120 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 | (<span.class="tok-type">usize</s |
| 5f140 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | pan>,.<span.class="tok-number">3 |
| 5f160 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>);.}..<span.class="tok-kw |
| 5f180 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 5f1a0 | 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 | tr">"peer.type.resolution:. |
| 5f1c0 | 2a 5b 30 5d 75 38 20 61 6e 64 20 5b 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 | *[0]u8.and.[]const.u8"</spa |
| 5f1e0 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>.{.....<span.class="tok-kw">tr |
| 5f200 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 | y</span>.expect(peerTypeEmptyArr |
| 5f220 | 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | ayAndSlice(<span.class="tok-null |
| 5f240 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">true</span>,.<span.class="tok- |
| 5f260 | 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 | str">"hi"</span>).len. |
| 5f280 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 | ==.<span.class="tok-number">0</s |
| 5f2a0 | 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>);.....<span.class="tok-kw"> |
| 5f2c0 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 | try</span>.expect(peerTypeEmptyA |
| 5f2e0 | 72 72 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | rrayAndSlice(<span.class="tok-nu |
| 5f300 | 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ll">false</span>,.<span.class="t |
| 5f320 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c | ok-str">"hi"</span>).l |
| 5f340 | 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | en.==.<span.class="tok-number">1 |
| 5f360 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>);.....<span.class="tok-k |
| 5f380 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | w">comptime</span>.{.........<sp |
| 5f3a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 | an.class="tok-kw">try</span>.exp |
| 5f3c0 | 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 28 3c | ect(peerTypeEmptyArrayAndSlice(< |
| 5f3e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e | span.class="tok-null">true</span |
| 5f400 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 | >,.<span.class="tok-str">"h |
| 5f420 | 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | i"</span>).len.==.<span.cla |
| 5f440 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 | ss="tok-number">0</span>);...... |
| 5f460 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 5f480 | 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 | n>.expect(peerTypeEmptyArrayAndS |
| 5f4a0 | 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 | lice(<span.class="tok-null">fals |
| 5f4c0 | 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | e</span>,.<span.class="tok-str"> |
| 5f4e0 | 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 | "hi"</span>).len.==.<s |
| 5f500 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">1</span>) |
| 5f520 | 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ;.....}.}.<span.class="tok-kw">f |
| 5f540 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 | n</span>.<span.class="tok-fn">pe |
| 5f560 | 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 | erTypeEmptyArrayAndSlice</span>( |
| 5f580 | 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f | a:.<span.class="tok-type">bool</ |
| 5f5a0 | 73 70 61 6e 3e 2c 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>,.slice:.[]<span.class="tok |
| 5f5c0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">const</span>.<span.class="t |
| 5f5e0 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">u8</span>).[]<span.clas |
| 5f600 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | s="tok-kw">const</span>.<span.cl |
| 5f620 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ass="tok-type">u8</span>.{.....< |
| 5f640 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 | span.class="tok-kw">if</span>.(a |
| 5f660 | 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ).{.........<span.class="tok-kw" |
| 5f680 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 | >return</span>.&[_]<span.cla |
| 5f6a0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 7d | ss="tok-type">u8</span>{};.....} |
| 5f6c0 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 | ......<span.class="tok-kw">retur |
| 5f6e0 | 6e 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n</span>.slice[<span.class="tok- |
| 5f700 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">0</span>..<span.class="t |
| 5f720 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c | ok-number">1</span>];.}.<span.cl |
| 5f740 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">test</span>.<span.c |
| 5f760 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 | lass="tok-str">"peer.type.r |
| 5f780 | 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 5b 30 5d 75 38 2c 20 5b 5d 63 6f 6e 73 74 20 75 38 2c 20 61 | esolution:.*[0]u8,.[]const.u8,.a |
| 5f7a0 | 6e 64 20 61 6e 79 65 72 72 6f 72 21 5b 5d 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | nd.anyerror![]u8"</span>.{. |
| 5f7c0 | 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ....{.........<span.class="tok-k |
| 5f7e0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | w">var</span>.data.=.<span.class |
| 5f800 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ="tok-str">"hi"</span> |
| 5f820 | 2e 2a 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .*;.........<span.class="tok-kw" |
| 5f840 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 64 61 74 61 5b 3c 73 70 61 6e | >const</span>.slice.=.data[<span |
| 5f860 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 3b | .class="tok-number">0</span>..]; |
| 5f880 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | .........<span.class="tok-kw">tr |
| 5f8a0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | y</span>.expect((<span.class="to |
| 5f8c0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 | k-kw">try</span>.peerTypeEmptyAr |
| 5f8e0 | 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | rayAndSliceAndError(<span.class= |
| 5f900 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e | "tok-null">true</span>,.slice)). |
| 5f920 | 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | len.==.<span.class="tok-number"> |
| 5f940 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 0</span>);.........<span.class=" |
| 5f960 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e | tok-kw">try</span>.expect((<span |
| 5f980 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 | .class="tok-kw">try</span>.peerT |
| 5f9a0 | 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 | ypeEmptyArrayAndSliceAndError(<s |
| 5f9c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e | pan.class="tok-null">false</span |
| 5f9e0 | 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >,.slice)).len.==.<span.class="t |
| 5fa00 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | ok-number">1</span>);.....}..... |
| 5fa20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 | <span.class="tok-kw">comptime</s |
| 5fa40 | 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.{.........<span.class="tok- |
| 5fa60 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | kw">var</span>.data.=.<span.clas |
| 5fa80 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | s="tok-str">"hi"</span |
| 5faa0 | 3e 2e 2a 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >.*;.........<span.class="tok-kw |
| 5fac0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 64 61 74 61 5b 3c 73 70 61 | ">const</span>.slice.=.data[<spa |
| 5fae0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d | n.class="tok-number">0</span>..] |
| 5fb00 | 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ;.........<span.class="tok-kw">t |
| 5fb20 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ry</span>.expect((<span.class="t |
| 5fb40 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 | ok-kw">try</span>.peerTypeEmptyA |
| 5fb60 | 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 | rrayAndSliceAndError(<span.class |
| 5fb80 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 | ="tok-null">true</span>,.slice)) |
| 5fba0 | 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | .len.==.<span.class="tok-number" |
| 5fbc0 | 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >0</span>);.........<span.class= |
| 5fbe0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 | "tok-kw">try</span>.expect((<spa |
| 5fc00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 | n.class="tok-kw">try</span>.peer |
| 5fc20 | 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c | TypeEmptyArrayAndSliceAndError(< |
| 5fc40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 | span.class="tok-null">false</spa |
| 5fc60 | 6e 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>,.slice)).len.==.<span.class=" |
| 5fc80 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c | tok-number">1</span>);.....}.}.< |
| 5fca0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 5fcc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 45 6d 70 74 79 | pan.class="tok-fn">peerTypeEmpty |
| 5fce0 | 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 61 3a 20 | ArrayAndSliceAndError</span>(a:. |
| 5fd00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 | <span.class="tok-type">bool</spa |
| 5fd20 | 6e 3e 2c 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | n>,.slice:.[]<span.class="tok-ty |
| 5fd40 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>).<span.class="tok- |
| 5fd60 | 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c | type">anyerror</span>![]<span.cl |
| 5fd80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ass="tok-type">u8</span>.{.....< |
| 5fda0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 | span.class="tok-kw">if</span>.(a |
| 5fdc0 | 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ).{.........<span.class="tok-kw" |
| 5fde0 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 | >return</span>.&[_]<span.cla |
| 5fe00 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 7d | ss="tok-type">u8</span>{};.....} |
| 5fe20 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 | ......<span.class="tok-kw">retur |
| 5fe40 | 6e 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n</span>.slice[<span.class="tok- |
| 5fe60 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">0</span>..<span.class="t |
| 5fe80 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | ok-number">1</span>];.}..<span.c |
| 5fea0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">test</span>.<span. |
| 5fec0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 | class="tok-str">"peer.type. |
| 5fee0 | 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 63 6f 6e 73 74 20 54 20 61 6e 64 20 3f 2a 54 26 71 75 6f | resolution:.*const.T.and.?*T&quo |
| 5ff00 | 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t;</span>.{.....<span.class="tok |
| 5ff20 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">const</span>.a.=.<span.clas |
| 5ff40 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e | s="tok-builtin">@intToPtr</span> |
| 5ff60 | 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | (*<span.class="tok-kw">const</sp |
| 5ff80 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | an>.<span.class="tok-type">usize |
| 5ffa0 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>,.<span.class="tok-number |
| 5ffc0 | 22 3e 30 78 31 32 33 34 35 36 37 38 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | ">0x123456780</span>);.....<span |
| 5ffe0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d | .class="tok-kw">const</span>.b.= |
| 60000 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 | .<span.class="tok-builtin">@intT |
| 60020 | 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | oPtr</span>(?*<span.class="tok-t |
| 60040 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ype">usize</span>,.<span.class=" |
| 60060 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 33 34 35 36 37 38 30 3c 2f 73 70 61 6e 3e 29 3b | tok-number">0x123456780</span>); |
| 60080 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 600a0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 61 20 3d 3d 20 62 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | pan>.expect(a.==.b);.....<span.c |
| 600c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 600e0 | 62 20 3d 3d 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | b.==.a);.}</code></pre><pre><cod |
| 60100 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 70 65 65 72 5f | e.class="shell">$.zig.test.peer_ |
| 60120 | 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 37 5d 20 74 | type_resolution.zig.Test.[1/7].t |
| 60140 | 65 73 74 20 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 69 6e 74 20 77 69 64 65 6e | est."peer.resolve.int.widen |
| 60160 | 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 37 5d 20 74 65 73 74 20 26 71 | ing".....Test.[2/7].test.&q |
| 60180 | 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 73 20 6f 66 20 64 69 66 66 65 | uot;peer.resolve.arrays.of.diffe |
| 601a0 | 72 65 6e 74 20 73 69 7a 65 20 74 6f 20 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 2e 2e | rent.size.to.const.slice".. |
| 601c0 | 2e 20 0a 54 65 73 74 20 5b 33 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 65 65 72 20 72 65 | ...Test.[3/7].test."peer.re |
| 601e0 | 73 6f 6c 76 65 20 61 72 72 61 79 20 61 6e 64 20 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 | solve.array.and.const.slice" |
| 60200 | 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 34 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 65 65 72 | ;.....Test.[4/7].test."peer |
| 60220 | 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 3f 54 20 61 6e 64 20 54 26 71 75 6f 74 3b | .type.resolution:.?T.and.T" |
| 60240 | 2e 2e 2e 20 0a 54 65 73 74 20 5b 35 2f 37 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 65 65 72 20 | .....Test.[5/7].test."peer. |
| 60260 | 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 5b 30 5d 75 38 20 61 6e 64 20 5b 5d 63 6f | type.resolution:.*[0]u8.and.[]co |
| 60280 | 6e 73 74 20 75 38 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 36 2f 37 5d 20 74 65 73 74 | nst.u8".....Test.[6/7].test |
| 602a0 | 20 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 5b 30 | ."peer.type.resolution:.*[0 |
| 602c0 | 5d 75 38 2c 20 5b 5d 63 6f 6e 73 74 20 75 38 2c 20 61 6e 64 20 61 6e 79 65 72 72 6f 72 21 5b 5d | ]u8,.[]const.u8,.and.anyerror![] |
| 602e0 | 75 38 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 37 2f 37 5d 20 74 65 73 74 20 26 71 75 | u8".....Test.[7/7].test.&qu |
| 60300 | 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 63 6f 6e 73 74 20 | ot;peer.type.resolution:.*const. |
| 60320 | 54 20 61 6e 64 20 3f 2a 54 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 37 20 74 65 73 74 73 | T.and.?*T"......All.7.tests |
| 60340 | 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 | .passed..</code></pre>.......... |
| 60360 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 5a 65 72 6f 2d 42 69 74 2d 54 79 | .............<h1.id="Zero-Bit-Ty |
| 60380 | 70 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 | pes"><a.href="#toc-Zero-Bit-Type |
| 603a0 | 73 22 3e 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | s">Zero.Bit.Types</a>.<a.class=" |
| 603c0 | 68 64 72 22 20 68 72 65 66 3d 22 23 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f | hdr".href="#Zero-Bit-Types">..</ |
| 603e0 | 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 73 6f 6d 65 20 74 79 70 65 73 | a></h1>........<p>For.some.types |
| 60400 | 2c 20 3c 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 20 | ,.<a.href="#sizeOf">@sizeOf</a>. |
| 60420 | 69 73 20 30 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | is.0:</p>.......<ul>...........< |
| 60440 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3c 2f 6c 69 3e | li><a.href="#void">void</a></li> |
| 60460 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 | ...........<li>The.<a.href="#Int |
| 60480 | 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | egers">Integers</a>.<code.class= |
| 604a0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 30 3c | "zig"><span.class="tok-type">u0< |
| 604c0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | /span></code>.and.<code.class="z |
| 604e0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 30 3c 2f 73 | ig"><span.class="tok-type">i0</s |
| 60500 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | pan></code>.</li>...........<li> |
| 60520 | 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 20 61 6e 64 | <a.href="#Arrays">Arrays</a>.and |
| 60540 | 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 | .<a.href="#Vectors">Vectors</a>. |
| 60560 | 77 69 74 68 20 6c 65 6e 20 30 2c 20 6f 72 20 77 69 74 68 20 61 6e 20 65 6c 65 6d 65 6e 74 20 74 | with.len.0,.or.with.an.element.t |
| 60580 | 79 70 65 20 74 68 61 74 20 69 73 20 61 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 2e 3c 2f 6c 69 | ype.that.is.a.zero.bit.type.</li |
| 605a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 | >...........<li>An.<a.href="#enu |
| 605c0 | 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 20 77 69 74 68 20 6f 6e 6c 79 20 31 20 74 61 67 2e 3c 2f 6c 69 | m">enum</a>.with.only.1.tag.</li |
| 605e0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 | >...........<li>A.<a.href="#stru |
| 60600 | 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 77 69 74 68 20 61 6c 6c 20 66 69 65 6c 64 73 20 62 | ct">struct</a>.with.all.fields.b |
| 60620 | 65 69 6e 67 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | eing.zero.bit.types.</li>....... |
| 60640 | 20 20 20 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e | ....<li>A.<a.href="#union">union |
| 60660 | 3c 2f 61 3e 20 77 69 74 68 20 6f 6e 6c 79 20 31 20 66 69 65 6c 64 20 77 68 69 63 68 20 69 73 20 | </a>.with.only.1.field.which.is. |
| 60680 | 61 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | a.zero.bit.type.</li>........... |
| 606a0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 | <li><a.href="#Pointers-to-Zero-B |
| 606c0 | 69 74 2d 54 79 70 65 73 22 3e 50 6f 69 6e 74 65 72 73 20 74 6f 20 5a 65 72 6f 20 42 69 74 20 54 | it-Types">Pointers.to.Zero.Bit.T |
| 606e0 | 79 70 65 73 3c 2f 61 3e 20 61 72 65 20 74 68 65 6d 73 65 6c 76 65 73 20 7a 65 72 6f 20 62 69 74 | ypes</a>.are.themselves.zero.bit |
| 60700 | 20 74 79 70 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c | .types.</li>.......</ul>.......< |
| 60720 | 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 74 79 70 65 73 20 63 61 6e 20 6f 6e 6c 79 20 65 76 | p>.......These.types.can.only.ev |
| 60740 | 65 72 20 68 61 76 65 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 2c 20 61 6e 64 20 | er.have.one.possible.value,.and. |
| 60760 | 74 68 75 73 0a 20 20 20 20 20 20 72 65 71 75 69 72 65 20 30 20 62 69 74 73 20 74 6f 20 72 65 70 | thus.......require.0.bits.to.rep |
| 60780 | 72 65 73 65 6e 74 2e 20 43 6f 64 65 20 74 68 61 74 20 6d 61 6b 65 73 20 75 73 65 20 6f 66 20 74 | resent..Code.that.makes.use.of.t |
| 607a0 | 68 65 73 65 20 74 79 70 65 73 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 6e 63 6c 75 64 65 64 | hese.types.is.......not.included |
| 607c0 | 20 69 6e 20 74 68 65 20 66 69 6e 61 6c 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 3a 0a 20 20 | .in.the.final.generated.code:... |
| 607e0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ....</p>.......<pre><code.class= |
| 60800 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 | "zig"><span.class="tok-kw">expor |
| 60820 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | t</span>.<span.class="tok-kw">fn |
| 60840 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e 74 | </span>.<span.class="tok-fn">ent |
| 60860 | 72 79 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ry</span>().<span.class="tok-typ |
| 60880 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">void</span>.{.....<span.class |
| 608a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">var</span>.x:.<span.cl |
| 608c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 7b 7d 3b | ass="tok-type">void</span>.=.{}; |
| 608e0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | .....<span.class="tok-kw">var</s |
| 60900 | 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | pan>.y:.<span.class="tok-type">v |
| 60920 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 7b 7d 3b 0a 20 20 20 20 78 20 3d 20 79 3b 0a 7d 3c 2f 63 | oid</span>.=.{};.....x.=.y;.}</c |
| 60940 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 74 68 69 73 20 74 75 | ode></pre>.......<p>When.this.tu |
| 60960 | 72 6e 73 20 69 6e 74 6f 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 2c 20 74 68 65 72 65 20 69 73 20 | rns.into.machine.code,.there.is. |
| 60980 | 6e 6f 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 69 6e 20 74 68 65 0a 20 20 20 20 20 20 62 | no.code.generated.in.the.......b |
| 609a0 | 6f 64 79 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 6e 74 72 79 3c 2f | ody.of.<code.class="zig">entry</ |
| 609c0 | 63 6f 64 65 3e 2c 20 65 76 65 6e 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e | code>,.even.in.<a.href="#Debug"> |
| 609e0 | 44 65 62 75 67 3c 2f 61 3e 20 6d 6f 64 65 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 20 | Debug</a>.mode..For.example,.on. |
| 60a00 | 78 38 36 5f 36 34 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 30 30 30 | x86_64:</p>.......<pre><code>000 |
| 60a20 | 30 30 30 30 30 30 30 30 30 30 30 31 30 20 26 6c 74 3b 65 6e 74 72 79 26 67 74 3b 3a 0a 20 20 31 | 0000000000010.<entry>:...1 |
| 60a40 | 30 3a 09 35 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 09 70 75 73 68 20 20 20 | 0:.55....................push... |
| 60a60 | 25 72 62 70 0a 20 20 31 31 3a 09 34 38 20 38 39 20 65 35 20 20 20 20 20 20 20 20 20 20 20 20 20 | %rbp...11:.48.89.e5............. |
| 60a80 | 09 6d 6f 76 20 20 20 20 25 72 73 70 2c 25 72 62 70 0a 20 20 31 34 3a 09 35 64 20 20 20 20 20 20 | .mov....%rsp,%rbp...14:.5d...... |
| 60aa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 09 70 6f 70 20 20 20 20 25 72 62 70 0a 20 20 31 35 3a 09 | ..............pop....%rbp...15:. |
| 60ac0 | 63 33 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 09 72 65 74 71 20 20 20 3c 2f 63 | c3....................retq...</c |
| 60ae0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 73 65 20 61 73 73 65 6d 62 | ode></pre>.......<p>These.assemb |
| 60b00 | 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 61 6e 79 20 | ly.instructions.do.not.have.any. |
| 60b20 | 63 6f 64 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 65 20 76 6f 69 64 20 76 61 | code.associated.with.the.void.va |
| 60b40 | 6c 75 65 73 20 2d 0a 20 20 20 20 20 20 74 68 65 79 20 6f 6e 6c 79 20 70 65 72 66 6f 72 6d 20 74 | lues.-.......they.only.perform.t |
| 60b60 | 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 70 72 6f 6c 6f 67 75 65 20 61 6e 64 20 65 70 | he.function.call.prologue.and.ep |
| 60b80 | 69 6c 6f 67 2e 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 76 6f 69 64 22 3e 3c | ilog.</p>........<h2.id="void">< |
| 60ba0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 20 3c 61 20 63 | a.href="#toc-void">void</a>.<a.c |
| 60bc0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e c2 a7 3c 2f 61 3e 3c 2f | lass="hdr".href="#void">..</a></ |
| 60be0 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | h2>........<p>.......<code.class |
| 60c00 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | ="zig"><span.class="tok-type">vo |
| 60c20 | 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 | id</span></code>.can.be.useful.f |
| 60c40 | 6f 72 20 69 6e 73 74 61 6e 74 69 61 74 69 6e 67 20 67 65 6e 65 72 69 63 20 74 79 70 65 73 2e 20 | or.instantiating.generic.types.. |
| 60c60 | 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 67 69 76 65 6e 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c | For.example,.given.a...........< |
| 60c80 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4d 61 70 28 4b 65 79 2c 20 56 61 6c 75 65 29 | code.class="zig">Map(Key,.Value) |
| 60ca0 | 3c 2f 63 6f 64 65 3e 2c 20 6f 6e 65 20 63 61 6e 20 70 61 73 73 20 3c 63 6f 64 65 20 63 6c 61 73 | </code>,.one.can.pass.<code.clas |
| 60cc0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | s="zig"><span.class="tok-type">v |
| 60ce0 | 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 20 | oid</span></code>.for.the.<code. |
| 60d00 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 56 61 6c 75 65 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 | class="zig">Value</code>........ |
| 60d20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 79 70 65 20 74 6f 20 6d 61 6b 65 20 69 74 20 69 | ...............type.to.make.it.i |
| 60d40 | 6e 74 6f 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 53 65 74 3c 2f 63 6f 64 | nto.a.<code.class="zig">Set</cod |
| 60d60 | 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | e>:.......</p>.......<p.class="f |
| 60d80 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| 60da0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 60dc0 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| 60de0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 60e00 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 60e20 | 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | span>);.<span.class="tok-kw">con |
| 60e40 | 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 | st</span>.expect.=.std.testing.e |
| 60e60 | 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | xpect;..<span.class="tok-kw">tes |
| 60e80 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>.<span.class="tok-str">& |
| 60ea0 | 71 75 6f 74 3b 74 75 72 6e 20 48 61 73 68 4d 61 70 20 69 6e 74 6f 20 61 20 73 65 74 20 77 69 74 | quot;turn.HashMap.into.a.set.wit |
| 60ec0 | 68 20 76 6f 69 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | h.void"</span>.{.....<span. |
| 60ee0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 61 70 20 3d 20 | class="tok-kw">var</span>.map.=. |
| 60f00 | 73 74 64 2e 41 75 74 6f 48 61 73 68 4d 61 70 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | std.AutoHashMap(<span.class="tok |
| 60f20 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">i32</span>,.<span.class=" |
| 60f40 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 2e 69 6e 69 74 28 73 74 64 2e | tok-type">void</span>).init(std. |
| 60f60 | 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | testing.allocator);.....<span.cl |
| 60f80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 6d 61 70 2e 64 65 | ass="tok-kw">defer</span>.map.de |
| 60fa0 | 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | init();......<span.class="tok-kw |
| 60fc0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 6d 61 70 2e 70 75 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ">try</span>.map.put(<span.class |
| 60fe0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 20 20 20 | ="tok-number">1</span>,.{});.... |
| 61000 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 61020 | 20 6d 61 70 2e 70 75 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | .map.put(<span.class="tok-number |
| 61040 | 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ">2</span>,.{});......<span.clas |
| 61060 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 61 70 | s="tok-kw">try</span>.expect(map |
| 61080 | 2e 63 6f 6e 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .contains(<span.class="tok-numbe |
| 610a0 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">2</span>));.....<span.class=" |
| 610c0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 6d 61 70 2e 63 | tok-kw">try</span>.expect(!map.c |
| 610e0 | 6f 6e 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ontains(<span.class="tok-number" |
| 61100 | 3e 33 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 5f 20 3d 20 6d 61 70 2e 72 65 6d 6f 76 65 | >3</span>));......_.=.map.remove |
| 61120 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | (<span.class="tok-number">2</spa |
| 61140 | 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>);.....<span.class="tok-kw">tr |
| 61160 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 6d 61 70 2e 63 6f 6e 74 61 69 6e 73 28 3c 73 | y</span>.expect(!map.contains(<s |
| 61180 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">2</span>) |
| 611a0 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 611c0 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 | s="shell">$.zig.test.test.zig.Te |
| 611e0 | 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 75 72 6e 20 48 61 73 68 4d 61 70 | st.[1/1].test."turn.HashMap |
| 61200 | 20 69 6e 74 6f 20 61 20 73 65 74 20 77 69 74 68 20 76 6f 69 64 26 71 75 6f 74 3b 2e 2e 2e 20 0a | .into.a.set.with.void"..... |
| 61220 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 61240 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 69 73 20 64 | e>........<p>Note.that.this.is.d |
| 61260 | 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 75 73 69 6e 67 20 61 20 64 75 6d 6d 79 20 76 61 6c 75 | ifferent.from.using.a.dummy.valu |
| 61280 | 65 20 66 6f 72 20 74 68 65 20 68 61 73 68 20 6d 61 70 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 | e.for.the.hash.map.value........ |
| 612a0 | 42 79 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | By.using.<code.class="zig"><span |
| 612c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-type">void</span></c |
| 612e0 | 6f 64 65 3e 20 61 73 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 76 61 6c 75 65 2c 20 74 | ode>.as.the.type.of.the.value,.t |
| 61300 | 68 65 20 68 61 73 68 20 6d 61 70 20 65 6e 74 72 79 20 74 79 70 65 20 68 61 73 20 6e 6f 20 76 61 | he.hash.map.entry.type.has.no.va |
| 61320 | 6c 75 65 20 66 69 65 6c 64 2c 20 61 6e 64 0a 20 20 20 20 20 20 74 68 75 73 20 74 68 65 20 68 61 | lue.field,.and.......thus.the.ha |
| 61340 | 73 68 20 6d 61 70 20 74 61 6b 65 73 20 75 70 20 6c 65 73 73 20 73 70 61 63 65 2e 20 46 75 72 74 | sh.map.takes.up.less.space..Furt |
| 61360 | 68 65 72 2c 20 61 6c 6c 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 64 65 61 6c 73 20 77 69 74 | her,.all.the.code.that.deals.wit |
| 61380 | 68 20 73 74 6f 72 69 6e 67 20 61 6e 64 20 6c 6f 61 64 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 | h.storing.and.loading.the....... |
| 613a0 | 76 61 6c 75 65 20 69 73 20 64 65 6c 65 74 65 64 2c 20 61 73 20 73 65 65 6e 20 61 62 6f 76 65 2e | value.is.deleted,.as.seen.above. |
| 613c0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 | .......</p>.......<p>.......<cod |
| 613e0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| 61400 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 64 69 73 74 69 | ype">void</span></code>.is.disti |
| 61420 | 6e 63 74 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | nct.from.<code.class="zig"><span |
| 61440 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c | .class="tok-type">c_void</span>< |
| 61460 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | /code>........<code.class="zig"> |
| 61480 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 | <span.class="tok-type">void</spa |
| 614a0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 20 6b 6e 6f 77 6e 20 73 69 7a 65 20 6f 66 20 30 20 | n></code>.has.a.known.size.of.0. |
| 614c0 | 62 79 74 65 73 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | bytes,.and.<code.class="zig"><sp |
| 614e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e | an.class="tok-type">c_void</span |
| 61500 | 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 6e 20 75 6e 6b 6e 6f 77 6e 2c 20 62 75 74 20 6e 6f 6e | ></code>.has.an.unknown,.but.non |
| 61520 | 2d 7a 65 72 6f 2c 20 73 69 7a 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | -zero,.size........</p>.......<p |
| 61540 | 3e 0a 20 20 20 20 20 20 45 78 70 72 65 73 73 69 6f 6e 73 20 6f 66 20 74 79 70 65 20 3c 63 6f 64 | >.......Expressions.of.type.<cod |
| 61560 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| 61580 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 72 65 20 74 68 65 20 | ype">void</span></code>.are.the. |
| 615a0 | 6f 6e 6c 79 20 6f 6e 65 73 20 77 68 6f 73 65 20 76 61 6c 75 65 20 63 61 6e 20 62 65 20 69 67 6e | only.ones.whose.value.can.be.ign |
| 615c0 | 6f 72 65 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ored..For.example:.......</p>... |
| 615e0 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 61600 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 61620 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ss="tok-kw">test</span>.<span.cl |
| 61640 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 67 6e 6f 72 69 6e 67 20 65 78 70 | ass="tok-str">"ignoring.exp |
| 61660 | 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ression.value"</span>.{.... |
| 61680 | 20 66 6f 6f 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .foo();.}..<span.class="tok-kw"> |
| 616a0 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 | fn</span>.<span.class="tok-fn">f |
| 616c0 | 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | oo</span>().<span.class="tok-typ |
| 616e0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">i32</span>.{.....<span.class= |
| 61700 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">return</span>.<span.cla |
| 61720 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f | ss="tok-number">1234</span>;.}</ |
| 61740 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 61760 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c | ll">$.zig.test.test.zig.<span.cl |
| 61780 | 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ass="t0_1">./docgen_tmp/test.zig |
| 617a0 | 3a 32 3a 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 | :2:8:.</span><span.class="t31_1" |
| 617c0 | 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | >error:.</span><span.class="t0_1 |
| 617e0 | 22 3e 65 78 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 20 69 73 20 69 67 6e 6f 72 65 64 3c 2f 73 | ">expression.value.is.ignored</s |
| 61800 | 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 28 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | pan>.....foo();........<span.cla |
| 61820 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 61840 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 3a 33 | "t0_1">./docgen_tmp/test.zig:1:3 |
| 61860 | 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f | 4:.</span><span.class="t36_1">no |
| 61880 | 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 | te:.</span><span.class="t0_1">re |
| 618a0 | 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b | ferenced.here</span>.test." |
| 618c0 | 69 67 6e 6f 72 69 6e 67 20 65 78 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 26 71 75 6f 74 3b 20 | ignoring.expression.value". |
| 618e0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | {............................... |
| 61900 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 61920 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 48 6f 77 65 76 65 72 2c | </code></pre>........<p>However, |
| 61940 | 20 69 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 68 61 73 20 74 79 70 65 20 3c 63 6f 64 | .if.the.expression.has.type.<cod |
| 61960 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| 61980 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 72 65 20 77 | ype">void</span></code>,.there.w |
| 619a0 | 69 6c 6c 20 62 65 20 6e 6f 20 65 72 72 6f 72 2e 20 46 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e | ill.be.no.error..Function.return |
| 619c0 | 20 76 61 6c 75 65 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 65 78 70 6c 69 63 69 74 6c 79 20 69 | .values.can.also.be.explicitly.i |
| 619e0 | 67 6e 6f 72 65 64 20 62 79 20 61 73 73 69 67 6e 69 6e 67 20 74 68 65 6d 20 74 6f 20 3c 63 6f 64 | gnored.by.assigning.them.to.<cod |
| 61a00 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5f 3c 2f 63 6f 64 65 3e 2e 20 3c 2f 70 3e 0a 20 20 20 | e.class="zig">_</code>..</p>.... |
| 61a20 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 61a40 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 61a60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">test</span>.<span.cla |
| 61a80 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 6f 69 64 20 69 73 20 69 67 6e 6f 72 | ss="tok-str">"void.is.ignor |
| 61aa0 | 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 72 65 74 75 72 6e 73 56 6f 69 | ed"</span>.{.....returnsVoi |
| 61ac0 | 64 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | d();.}..<span.class="tok-kw">tes |
| 61ae0 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>.<span.class="tok-str">& |
| 61b00 | 71 75 6f 74 3b 65 78 70 6c 69 63 69 74 6c 79 20 69 67 6e 6f 72 69 6e 67 20 65 78 70 72 65 73 73 | quot;explicitly.ignoring.express |
| 61b20 | 69 6f 6e 20 76 61 6c 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d | ion.value"</span>.{....._.= |
| 61b40 | 20 66 6f 6f 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .foo();.}..<span.class="tok-kw"> |
| 61b60 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 | fn</span>.<span.class="tok-fn">r |
| 61b80 | 65 74 75 72 6e 73 56 6f 69 64 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | eturnsVoid</span>().<span.class= |
| 61ba0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e | "tok-type">void</span>.{}..<span |
| 61bc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | .class="tok-kw">fn</span>.<span. |
| 61be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | class="tok-fn">foo</span>().<spa |
| 61c00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a | n.class="tok-type">i32</span>.{. |
| 61c20 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | ....<span.class="tok-kw">return< |
| 61c40 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | /span>.<span.class="tok-number"> |
| 61c60 | 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | 1234</span>;.}</code></pre><pre> |
| 61c80 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 | <code.class="shell">$.zig.test.t |
| 61ca0 | 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 76 6f | est.zig.Test.[1/2].test."vo |
| 61cc0 | 69 64 20 69 73 20 69 67 6e 6f 72 65 64 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f | id.is.ignored".....Test.[2/ |
| 61ce0 | 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 65 78 70 6c 69 63 69 74 6c 79 20 69 67 6e 6f 72 69 6e | 2].test."explicitly.ignorin |
| 61d00 | 67 20 65 78 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c | g.expression.value"......Al |
| 61d20 | 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.2.tests.passed..</code></pre>. |
| 61d40 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 50 6f 69 6e 74 65 72 73 2d | ...............<h2.id="Pointers- |
| 61d60 | 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | to-Zero-Bit-Types"><a.href="#toc |
| 61d80 | 2d 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 50 6f 69 | -Pointers-to-Zero-Bit-Types">Poi |
| 61da0 | 6e 74 65 72 73 20 74 6f 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 20 3c 61 20 63 | nters.to.Zero.Bit.Types</a>.<a.c |
| 61dc0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 | lass="hdr".href="#Pointers-to-Ze |
| 61de0 | 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | ro-Bit-Types">..</a></h2>....... |
| 61e00 | 20 3c 70 3e 50 6f 69 6e 74 65 72 73 20 74 6f 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 73 20 61 | .<p>Pointers.to.zero.bit.types.a |
| 61e20 | 6c 73 6f 20 68 61 76 65 20 7a 65 72 6f 20 62 69 74 73 2e 20 54 68 65 79 20 61 6c 77 61 79 73 20 | lso.have.zero.bits..They.always. |
| 61e40 | 63 6f 6d 70 61 72 65 20 65 71 75 61 6c 20 74 6f 20 65 61 63 68 20 6f 74 68 65 72 3a 3c 2f 70 3e | compare.equal.to.each.other:</p> |
| 61e60 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c | .......<p.class="file">test.zig< |
| 61e80 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 61ea0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 | class="tok-kw">const</span>.std. |
| 61ec0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 | =.<span.class="tok-builtin">@imp |
| 61ee0 | 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ort</span>(<span.class="tok-str" |
| 61f00 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 | >"std"</span>);.<span. |
| 61f20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | class="tok-kw">const</span>.expe |
| 61f40 | 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 | ct.=.std.testing.expect;..<span. |
| 61f60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">test</span>.<span |
| 61f80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 | .class="tok-str">"pointer.t |
| 61fa0 | 6f 20 65 6d 70 74 79 20 73 74 72 75 63 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | o.empty.struct"</span>.{... |
| 61fc0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| 61fe0 | 61 6e 3e 20 45 6d 70 74 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>.Empty.=.<span.class="tok-kw" |
| 62000 | 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | >struct</span>.{};.....<span.cla |
| 62020 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 45 6d 70 74 79 | ss="tok-kw">var</span>.a.=.Empty |
| 62040 | 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | {};.....<span.class="tok-kw">var |
| 62060 | 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 45 6d 70 74 79 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | </span>.b.=.Empty{};.....<span.c |
| 62080 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 72 5f 61 20 3d | lass="tok-kw">var</span>.ptr_a.= |
| 620a0 | 20 26 61 6d 70 3b 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .&a;.....<span.class="tok-kw |
| 620c0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 72 5f 62 20 3d 20 26 61 6d 70 3b 62 3b 0a 20 20 20 | ">var</span>.ptr_b.=.&b;.... |
| 620e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | .<span.class="tok-kw">comptime</ |
| 62100 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | span>.<span.class="tok-kw">try</ |
| 62120 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 72 5f 61 20 3d 3d 20 70 74 72 5f 62 29 3b 0a 7d 3c | span>.expect(ptr_a.==.ptr_b);.}< |
| 62140 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 62160 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 | ell">$.zig.test.test.zig.Test.[1 |
| 62180 | 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 65 6d 70 74 79 20 | /1].test."pointer.to.empty. |
| 621a0 | 73 74 72 75 63 74 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | struct"......All.1.tests.pa |
| 621c0 | 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 | ssed..</code></pre>........<p>Th |
| 621e0 | 65 20 74 79 70 65 20 62 65 69 6e 67 20 70 6f 69 6e 74 65 64 20 74 6f 20 63 61 6e 20 6f 6e 6c 79 | e.type.being.pointed.to.can.only |
| 62200 | 20 65 76 65 72 20 62 65 20 6f 6e 65 20 76 61 6c 75 65 3b 20 74 68 65 72 65 66 6f 72 65 20 6c 6f | .ever.be.one.value;.therefore.lo |
| 62220 | 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 61 72 65 0a 20 20 20 20 20 20 6e 65 76 65 72 20 67 | ads.and.stores.are.......never.g |
| 62240 | 65 6e 65 72 61 74 65 64 2e 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 22 3e 70 74 | enerated..<a.href="#ptrToInt">pt |
| 62260 | 72 54 6f 49 6e 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 | rToInt</a>.and.<a.href="#intToPt |
| 62280 | 72 22 3e 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 20 61 72 65 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 3a | r">intToPtr</a>.are.not.allowed: |
| 622a0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 622c0 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 622e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 62300 | 45 6d 70 74 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 | Empty.=.<span.class="tok-kw">str |
| 62320 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | uct</span>.{};..<span.class="tok |
| 62340 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 62360 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 70 74 72 54 6f 49 6e 74 20 66 6f 72 20 70 6f 69 6e 74 | k-str">"@ptrToInt.for.point |
| 62380 | 65 72 20 74 6f 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | er.to.zero.bit.type"</span> |
| 623a0 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | .{.....<span.class="tok-kw">var< |
| 623c0 | 2f 73 70 61 6e 3e 20 61 20 3d 20 45 6d 70 74 79 7b 7d 3b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 | /span>.a.=.Empty{};....._.=.<spa |
| 623e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c | n.class="tok-builtin">@ptrToInt< |
| 62400 | 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>(&a);.}..<span.class=" |
| 62420 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">test</span>.<span.class= |
| 62440 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 69 6e 74 54 6f 50 74 72 20 66 6f 72 20 70 6f | "tok-str">"@intToPtr.for.po |
| 62460 | 69 6e 74 65 72 20 74 6f 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 | inter.to.zero.bit.type"</sp |
| 62480 | 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | an>.{....._.=.<span.class="tok-b |
| 624a0 | 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 45 6d 70 74 79 2c | uiltin">@intToPtr</span>(*Empty, |
| 624c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 3c 2f 73 | .<span.class="tok-number">0x1</s |
| 624e0 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | pan>);.}</code></pre><pre><code. |
| 62500 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 62520 | 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d | g.<span.class="t0_1">./docgen_tm |
| 62540 | 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | p/test.zig:4:5:.</span><span.cla |
| 62560 | 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | ss="t31_1">error:.</span><span.c |
| 62580 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 70 6f 69 6e 74 65 72 20 74 6f 20 73 69 7a 65 20 30 20 74 79 | lass="t0_1">pointer.to.size.0.ty |
| 625a0 | 70 65 20 68 61 73 20 6e 6f 20 61 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 | pe.has.no.address</span>.....var |
| 625c0 | 20 61 20 3d 20 45 6d 70 74 79 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .a.=.Empty{};.....<span.class="t |
| 625e0 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | 32_1">^</span>.<span.class="t0_1 |
| 62600 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 39 3a 20 3c 2f 73 | ">./docgen_tmp/test.zig:5:9:.</s |
| 62620 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f | pan><span.class="t36_1">note:.</ |
| 62640 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 | span><span.class="t0_1">referenc |
| 62660 | 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 40 70 74 72 54 6f 49 6e 74 | ed.here</span>....._.=.@ptrToInt |
| 62680 | 28 26 61 6d 70 3b 61 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | (&a);.........<span.class="t |
| 626a0 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | 32_1">^</span>.<span.class="t0_1 |
| 626c0 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 31 39 3a 20 3c 2f | ">./docgen_tmp/test.zig:9:19:.</ |
| 626e0 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 | span><span.class="t31_1">error:. |
| 62700 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 74 79 70 65 20 27 | </span><span.class="t0_1">type.' |
| 62720 | 2a 45 6d 70 74 79 27 20 68 61 73 20 30 20 62 69 74 73 20 61 6e 64 20 63 61 6e 6e 6f 74 20 73 74 | *Empty'.has.0.bits.and.cannot.st |
| 62740 | 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 40 | ore.information</span>....._.=.@ |
| 62760 | 69 6e 74 54 6f 50 74 72 28 2a 45 6d 70 74 79 2c 20 30 78 31 29 3b 0a 20 20 20 20 20 20 20 20 20 | intToPtr(*Empty,.0x1);.......... |
| 62780 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 627a0 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | span>.<span.class="t0_1">./docge |
| 627c0 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | n_tmp/test.zig:9:9:.</span><span |
| 627e0 | 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | .class="t36_1">note:.</span><spa |
| 62800 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f | n.class="t0_1">referenced.here</ |
| 62820 | 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 40 69 6e 74 54 6f 50 74 72 28 2a 45 6d 70 74 79 2c 20 | span>....._.=.@intToPtr(*Empty,. |
| 62840 | 30 78 31 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | 0x1);.........<span.class="t32_1 |
| 62860 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ">^</span>.</code></pre>........ |
| 62880 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 52 65 73 75 6c 74 2d 4c 6f | ...............<h1.id="Result-Lo |
| 628a0 | 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | cation-Semantics"><a.href="#toc- |
| 628c0 | 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 52 65 73 75 6c | Result-Location-Semantics">Resul |
| 628e0 | 74 20 4c 6f 63 61 74 69 6f 6e 20 53 65 6d 61 6e 74 69 63 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | t.Location.Semantics</a>.<a.clas |
| 62900 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 | s="hdr".href="#Result-Location-S |
| 62920 | 65 6d 61 6e 74 69 63 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | emantics">..</a></h1>........<p> |
| 62940 | 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 | .......<a.href="https://github.c |
| 62960 | 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 38 30 39 22 3e 54 4f 44 4f | om/ziglang/zig/issues/2809">TODO |
| 62980 | 20 61 64 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 69 73 3c 2f 61 3e 0a | .add.documentation.for.this</a>. |
| 629a0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d | ......</p>...............<h1.id= |
| 629c0 | 22 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 | "usingnamespace"><a.href="#toc-u |
| 629e0 | 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 61 | singnamespace">usingnamespace</a |
| 62a00 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 75 73 69 6e 67 6e 61 6d | >.<a.class="hdr".href="#usingnam |
| 62a20 | 65 73 70 61 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | espace">..</a></h1>........<p>.. |
| 62a40 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .....<code.class="zig"><span.cla |
| 62a60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e | ss="tok-kw">usingnamespace</span |
| 62a80 | 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 74 68 61 74 20 69 | ></code>.is.a.declaration.that.i |
| 62aa0 | 6d 70 6f 72 74 73 20 61 6c 6c 20 74 68 65 20 70 75 62 6c 69 63 20 64 65 63 6c 61 72 61 74 69 6f | mports.all.the.public.declaratio |
| 62ac0 | 6e 73 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 6f 70 65 72 61 6e 64 2c 20 77 68 69 63 68 20 6d | ns.of.......the.operand,.which.m |
| 62ae0 | 75 73 74 20 62 65 20 61 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 | ust.be.a.<a.href="#struct">struc |
| 62b00 | 74 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 | t</a>,.<a.href="#union">union</a |
| 62b20 | 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 2c 20 | >,.or.<a.href="#enum">enum</a>,. |
| 62b40 | 69 6e 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 3a 0a 20 20 20 20 20 20 3c 2f | into.the.current.scope:.......</ |
| 62b60 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 75 73 69 6e 67 6e 61 | p>.......<p.class="file">usingna |
| 62b80 | 6d 65 73 70 61 63 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | mespace.zig</p><pre><code.class= |
| 62ba0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 | "zig"><span.class="tok-kw">using |
| 62bc0 | 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | namespace</span>.<span.class="to |
| 62be0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| 62c00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c | class="tok-str">"std"< |
| 62c20 | 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | /span>);..<span.class="tok-kw">t |
| 62c40 | 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | est</span>.<span.class="tok-str" |
| 62c60 | 3e 26 71 75 6f 74 3b 75 73 69 6e 67 20 73 74 64 20 6e 61 6d 65 73 70 61 63 65 26 71 75 6f 74 3b | >"using.std.namespace" |
| 62c80 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| 62ca0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 3c 73 70 | w">try</span>.testing.expect(<sp |
| 62cc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 | an.class="tok-null">true</span>) |
| 62ce0 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 62d00 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 75 73 69 6e 67 6e 61 6d 65 73 70 61 | ="shell">$.zig.test.usingnamespa |
| 62d20 | 63 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 75 73 69 | ce.zig.Test.[1/1].test."usi |
| 62d40 | 6e 67 20 73 74 64 20 6e 61 6d 65 73 70 61 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 | ng.std.namespace"......All. |
| 62d60 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 1.tests.passed..</code></pre>... |
| 62d80 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .....<p>.......<code.class="zig" |
| 62da0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 | ><span.class="tok-kw">usingnames |
| 62dc0 | 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 | pace</span></code>.can.also.be.u |
| 62de0 | 73 65 64 20 69 6e 20 63 6f 6e 74 61 69 6e 65 72 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | sed.in.containers:.......</p>... |
| 62e00 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 | ....<p.class="file">usingnamespa |
| 62e20 | 63 65 5f 69 6e 73 69 64 65 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | ce_inside_struct.zig</p><pre><co |
| 62e40 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 62e60 | 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">test</span>.<span.class="tok |
| 62e80 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 73 69 6e 67 20 6e 61 6d 65 73 70 61 63 65 20 69 6e 73 69 | -str">"using.namespace.insi |
| 62ea0 | 64 65 20 73 74 72 75 63 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | de.struct"</span>.{.....<sp |
| 62ec0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4c | an.class="tok-kw">const</span>.L |
| 62ee0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f | .=.<span.class="tok-kw">struct</ |
| 62f00 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.{.........<span.class="tok |
| 62f20 | 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | -kw">usingnamespace</span>.<span |
| 62f40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-kw">struct</span>.{. |
| 62f60 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ............<span.class="tok-kw" |
| 62f80 | 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >pub</span>.<span.class="tok-kw" |
| 62fa0 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e | >fn</span>.<span.class="tok-fn"> |
| 62fc0 | 66 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | f</span>().<span.class="tok-type |
| 62fe0 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 | ">void</span>.{}.........};..... |
| 63000 | 7d 3b 0a 20 20 20 20 4c 2e 66 28 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | };.....L.f();.}</code></pre><pre |
| 63020 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| 63040 | 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 5f 69 6e 73 69 64 65 5f 73 74 72 75 63 74 2e 7a 69 67 | usingnamespace_inside_struct.zig |
| 63060 | 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 75 73 69 6e 67 20 6e 61 6d | .Test.[1/1].test."using.nam |
| 63080 | 65 73 70 61 63 65 20 69 6e 73 69 64 65 20 73 74 72 75 63 74 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a | espace.inside.struct"...... |
| 630a0 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.1.tests.passed..</code></pre |
| 630c0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 20 6f 66 20 74 68 | >........<p>.......Instead.of.th |
| 630e0 | 65 20 61 62 6f 76 65 20 70 61 74 74 65 72 6e 2c 20 69 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 | e.above.pattern,.it.is.generally |
| 63100 | 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 61 6c 69 61 73 | .recommended.to.explicitly.alias |
| 63120 | 20 69 6e 64 69 76 69 64 75 61 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 | .individual.declarations........ |
| 63140 | 48 6f 77 65 76 65 72 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | However,.<code.class="zig"><span |
| 63160 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f | .class="tok-kw">usingnamespace</ |
| 63180 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 6e 20 69 6d 70 6f 72 74 61 6e 74 20 75 73 | span></code>.has.an.important.us |
| 631a0 | 65 20 63 61 73 65 20 77 68 65 6e 20 6f 72 67 61 6e 69 7a 69 6e 67 20 74 68 65 20 70 75 62 6c 69 | e.case.when.organizing.the.publi |
| 631c0 | 63 0a 20 20 20 20 20 20 41 50 49 20 6f 66 20 61 20 66 69 6c 65 20 6f 72 20 70 61 63 6b 61 67 65 | c.......API.of.a.file.or.package |
| 631e0 | 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 65 20 6d 69 67 68 74 20 68 61 76 65 20 3c 63 | ..For.example,.one.might.have.<c |
| 63200 | 6f 64 65 3e 63 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 61 6c 6c 20 6f 66 20 74 68 65 | ode>c.zig</code>.with.all.of.the |
| 63220 | 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 | .......<a.href="#Import-from-C-H |
| 63240 | 65 61 64 65 72 2d 46 69 6c 65 22 3e 43 20 69 6d 70 6f 72 74 73 3c 2f 61 3e 3a 0a 20 20 20 20 20 | eader-File">C.imports</a>:...... |
| 63260 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .</p>.......<pre><code.class="zi |
| 63280 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | g"><span.class="tok-kw">pub</spa |
| 632a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d | n>.<span.class="tok-kw">usingnam |
| 632c0 | 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | espace</span>.<span.class="tok-b |
| 632e0 | 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 7b 0a 20 20 20 20 3c 73 | uiltin">@cImport</span>({.....<s |
| 63300 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 | pan.class="tok-builtin">@cInclud |
| 63320 | 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | e</span>(<span.class="tok-str">& |
| 63340 | 71 75 6f 74 3b 65 70 6f 78 79 2f 67 6c 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | quot;epoxy/gl.h"</span>);.. |
| 63360 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 | ...<span.class="tok-builtin">@cI |
| 63380 | 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | nclude</span>(<span.class="tok-s |
| 633a0 | 74 72 22 3e 26 71 75 6f 74 3b 47 4c 46 57 2f 67 6c 66 77 33 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 | tr">"GLFW/glfw3.h"</sp |
| 633c0 | 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>);.....<span.class="tok-built |
| 633e0 | 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | in">@cDefine</span>(<span.class= |
| 63400 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 53 54 42 49 5f 4f 4e 4c 59 5f 50 4e 47 26 71 75 | "tok-str">"STBI_ONLY_PNG&qu |
| 63420 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | ot;</span>,.<span.class="tok-str |
| 63440 | 22 3e 26 71 75 6f 74 3b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | ">""</span>);.....<spa |
| 63460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f | n.class="tok-builtin">@cDefine</ |
| 63480 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>(<span.class="tok-str">&quo |
| 634a0 | 74 3b 53 54 42 49 5f 4e 4f 5f 53 54 44 49 4f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | t;STBI_NO_STDIO"</span>,.<s |
| 634c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 26 71 75 6f 74 3b | pan.class="tok-str">"" |
| 634e0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | </span>);.....<span.class="tok-b |
| 63500 | 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | uiltin">@cInclude</span>(<span.c |
| 63520 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 62 5f 69 6d 61 67 65 2e 68 | lass="tok-str">"stb_image.h |
| 63540 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | "</span>);.});</code></pre> |
| 63560 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 61 62 6f 76 65 20 65 78 61 6d 70 | .......<p>.......The.above.examp |
| 63580 | 6c 65 20 64 65 6d 6f 6e 73 74 72 61 74 65 73 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 | le.demonstrates.using.<code.clas |
| 635a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | s="zig"><span.class="tok-kw">pub |
| 635c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 71 75 61 6c 69 66 79 20 74 68 65 0a 20 20 | </span></code>.to.qualify.the... |
| 635e0 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ....<code.class="zig"><span.clas |
| 63600 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e | s="tok-kw">usingnamespace</span> |
| 63620 | 3c 2f 63 6f 64 65 3e 20 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 6d 61 6b 65 73 20 74 68 65 20 69 | </code>.additionally.makes.the.i |
| 63640 | 6d 70 6f 72 74 65 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 | mported.declarations.......<code |
| 63660 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 63680 | 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 63 61 6e 20 62 65 | ">pub</span></code>..This.can.be |
| 636a0 | 20 75 73 65 64 20 74 6f 20 66 6f 72 77 61 72 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2c 20 67 | .used.to.forward.declarations,.g |
| 636c0 | 69 76 69 6e 67 20 70 72 65 63 69 73 65 20 63 6f 6e 74 72 6f 6c 0a 20 20 20 20 20 20 6f 76 65 72 | iving.precise.control.......over |
| 636e0 | 20 77 68 61 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 20 67 69 76 65 6e 20 66 69 6c 65 20 | .what.declarations.a.given.file. |
| 63700 | 65 78 70 6f 73 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | exposes........</p>............. |
| 63720 | 20 20 3c 68 31 20 69 64 3d 22 63 6f 6d 70 74 69 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ..<h1.id="comptime"><a.href="#to |
| 63740 | 63 2d 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | c-comptime">comptime</a>.<a.clas |
| 63760 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e c2 a7 3c 2f 61 3e 3c | s="hdr".href="#comptime">..</a>< |
| 63780 | 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 70 6c 61 63 65 73 | /h1>........<p>.......Zig.places |
| 637a0 | 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 6e 20 74 68 65 20 63 6f 6e 63 65 70 74 20 6f 66 20 77 68 | .importance.on.the.concept.of.wh |
| 637c0 | 65 74 68 65 72 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 | ether.an.expression.is.known.at. |
| 637e0 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 | compile-time........There.are.a. |
| 63800 | 66 65 77 20 64 69 66 66 65 72 65 6e 74 20 70 6c 61 63 65 73 20 74 68 69 73 20 63 6f 6e 63 65 70 | few.different.places.this.concep |
| 63820 | 74 20 69 73 20 75 73 65 64 2c 20 61 6e 64 20 74 68 65 73 65 20 62 75 69 6c 64 69 6e 67 20 62 6c | t.is.used,.and.these.building.bl |
| 63840 | 6f 63 6b 73 20 61 72 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 6b 65 65 70 20 74 68 65 20 | ocks.are.used.......to.keep.the. |
| 63860 | 6c 61 6e 67 75 61 67 65 20 73 6d 61 6c 6c 2c 20 72 65 61 64 61 62 6c 65 2c 20 61 6e 64 20 70 6f | language.small,.readable,.and.po |
| 63880 | 77 65 72 66 75 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | werful........</p>.......<h2.id= |
| 638a0 | 22 49 6e 74 72 6f 64 75 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f | "Introducing-the-Compile-Time-Co |
| 638c0 | 6e 63 65 70 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 74 72 6f 64 75 63 69 6e 67 | ncept"><a.href="#toc-Introducing |
| 638e0 | 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 3e 49 6e 74 72 6f | -the-Compile-Time-Concept">Intro |
| 63900 | 64 75 63 69 6e 67 20 74 68 65 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 43 6f 6e 63 65 70 74 3c | ducing.the.Compile-Time.Concept< |
| 63920 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e 74 72 6f 64 | /a>.<a.class="hdr".href="#Introd |
| 63940 | 75 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 3e | ucing-the-Compile-Time-Concept"> |
| 63960 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6d 70 69 | ..</a></h2>........<h3.id="Compi |
| 63980 | 6c 65 2d 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | le-Time-Parameters"><a.href="#to |
| 639a0 | 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 | c-Compile-Time-Parameters">Compi |
| 639c0 | 6c 65 2d 54 69 6d 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | le-Time.Parameters</a>.<a.class= |
| 639e0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 50 61 72 61 6d 65 | "hdr".href="#Compile-Time-Parame |
| 63a00 | 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ters">..</a></h3>........<p>.... |
| 63a20 | 20 20 20 43 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 70 61 72 61 6d 65 74 65 72 73 20 69 73 20 68 6f | ...Compile-time.parameters.is.ho |
| 63a40 | 77 20 5a 69 67 20 69 6d 70 6c 65 6d 65 6e 74 73 20 67 65 6e 65 72 69 63 73 2e 20 49 74 20 69 73 | w.Zig.implements.generics..It.is |
| 63a60 | 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 64 75 63 6b 20 74 79 70 69 6e 67 2e 0a 20 20 20 20 20 | .compile-time.duck.typing....... |
| 63a80 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .</p>.......<pre><code.class="zi |
| 63aa0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | g"><span.class="tok-kw">fn</span |
| 63ac0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e | >.<span.class="tok-fn">max</span |
| 63ae0 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | >(<span.class="tok-kw">comptime< |
| 63b00 | 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.T:.<span.class="tok-type" |
| 63b20 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 | >type</span>,.a:.T,.b:.T).T.{... |
| 63b40 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | ..<span.class="tok-kw">return</s |
| 63b60 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 | pan>.<span.class="tok-kw">if</sp |
| 63b80 | 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.(a.>.b).a.<span.class="to |
| 63ba0 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 | k-kw">else</span>.b;.}.<span.cla |
| 63bc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ss="tok-kw">fn</span>.<span.clas |
| 63be0 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 69 6d 6d 65 54 68 65 42 69 67 67 65 72 46 6c 6f 61 74 3c 2f | s="tok-fn">gimmeTheBiggerFloat</ |
| 63c00 | 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>(a:.<span.class="tok-type"> |
| 63c20 | 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | f32</span>,.b:.<span.class="tok- |
| 63c40 | 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">f32</span>).<span.class="t |
| 63c60 | 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | ok-type">f32</span>.{.....<span. |
| 63c80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6d 61 78 | class="tok-kw">return</span>.max |
| 63ca0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 | (<span.class="tok-type">f32</spa |
| 63cc0 | 6e 3e 2c 20 61 2c 20 62 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>,.a,.b);.}.<span.class="tok-kw |
| 63ce0 | 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 | ">fn</span>.<span.class="tok-fn" |
| 63d00 | 3e 67 69 6d 6d 65 54 68 65 42 69 67 67 65 72 49 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 28 61 3a | >gimmeTheBiggerInteger</span>(a: |
| 63d20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 | .<span.class="tok-type">u64</spa |
| 63d40 | 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 | n>,.b:.<span.class="tok-type">u6 |
| 63d60 | 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | 4</span>).<span.class="tok-type" |
| 63d80 | 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >u64</span>.{.....<span.class="t |
| 63da0 | 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6d 61 78 28 3c 73 70 61 6e 20 63 | ok-kw">return</span>.max(<span.c |
| 63dc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 20 61 2c 20 62 | lass="tok-type">u64</span>,.a,.b |
| 63de0 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | );.}</code></pre>.......<p>..... |
| 63e00 | 20 20 49 6e 20 5a 69 67 2c 20 74 79 70 65 73 20 61 72 65 20 66 69 72 73 74 2d 63 6c 61 73 73 20 | ..In.Zig,.types.are.first-class. |
| 63e20 | 63 69 74 69 7a 65 6e 73 2e 20 54 68 65 79 20 63 61 6e 20 62 65 20 61 73 73 69 67 6e 65 64 20 74 | citizens..They.can.be.assigned.t |
| 63e40 | 6f 20 76 61 72 69 61 62 6c 65 73 2c 20 70 61 73 73 65 64 20 61 73 20 70 61 72 61 6d 65 74 65 72 | o.variables,.passed.as.parameter |
| 63e60 | 73 20 74 6f 20 66 75 6e 63 74 69 6f 6e 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 72 65 74 75 72 6e | s.to.functions,.......and.return |
| 63e80 | 65 64 20 66 72 6f 6d 20 66 75 6e 63 74 69 6f 6e 73 2e 20 48 6f 77 65 76 65 72 2c 20 74 68 65 79 | ed.from.functions..However,.they |
| 63ea0 | 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 75 73 65 64 20 69 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 | .can.only.be.used.in.expressions |
| 63ec0 | 20 77 68 69 63 68 20 61 72 65 20 6b 6e 6f 77 6e 20 61 74 20 3c 65 6d 3e 63 6f 6d 70 69 6c 65 2d | .which.are.known.at.<em>compile- |
| 63ee0 | 74 69 6d 65 3c 2f 65 6d 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 69 73 20 77 68 79 20 74 68 | time</em>,.......which.is.why.th |
| 63f00 | 65 20 70 61 72 61 6d 65 74 65 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c | e.parameter.<code.class="zig">T< |
| 63f20 | 2f 63 6f 64 65 3e 20 69 6e 20 74 68 65 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 20 6d 75 73 74 | /code>.in.the.above.snippet.must |
| 63f40 | 20 62 65 20 6d 61 72 6b 65 64 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .be.marked.with.<code.class="zig |
| 63f60 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | "><span.class="tok-kw">comptime< |
| 63f80 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | /span></code>........</p>....... |
| 63fa0 | 3c 70 3e 0a 20 20 20 20 20 20 41 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | <p>.......A.<code.class="zig"><s |
| 63fc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 | pan.class="tok-kw">comptime</spa |
| 63fe0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 20 6d 65 61 6e 73 20 74 68 61 74 3a 0a | n></code>.parameter.means.that:. |
| 64000 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c | ......</p>.......<ul>.........<l |
| 64020 | 69 3e 41 74 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2c 20 74 68 65 20 76 61 6c 75 65 20 6d 75 73 | i>At.the.callsite,.the.value.mus |
| 64040 | 74 20 62 65 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 6f 72 20 69 | t.be.known.at.compile-time,.or.i |
| 64060 | 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | t.is.a.compile.error.</li>...... |
| 64080 | 20 20 20 3c 6c 69 3e 49 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 69 74 69 6f | ...<li>In.the.function.definitio |
| 640a0 | 6e 2c 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 | n,.the.value.is.known.at.compile |
| 640c0 | 2d 74 69 6d 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 | -time.</li>.......</ul>.......<p |
| 640e0 | 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 77 65 20 77 65 72 65 20 | >.......For.example,.if.we.were. |
| 64100 | 74 6f 20 69 6e 74 72 6f 64 75 63 65 20 61 6e 6f 74 68 65 72 20 66 75 6e 63 74 69 6f 6e 20 74 6f | to.introduce.another.function.to |
| 64120 | 20 74 68 65 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .the.above.snippet:.......</p>.. |
| 64140 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 64160 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 64180 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| 641a0 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ss="tok-fn">max</span>(<span.cla |
| 641c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c | ss="tok-kw">comptime</span>.T:.< |
| 641e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e | span.class="tok-type">type</span |
| 64200 | 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | >,.a:.T,.b:.T).T.{.....<span.cla |
| 64220 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ss="tok-kw">return</span>.<span. |
| 64240 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 3b | class="tok-kw">if</span>.(a.> |
| 64260 | 20 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | .b).a.<span.class="tok-kw">else< |
| 64280 | 2f 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | /span>.b;.}.<span.class="tok-kw" |
| 642a0 | 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >test</span>.<span.class="tok-st |
| 642c0 | 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 70 61 73 73 20 61 20 72 75 6e 74 69 6d 65 20 74 | r">"try.to.pass.a.runtime.t |
| 642e0 | 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e | ype"</span>.{.....foo(<span |
| 64300 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b | .class="tok-null">false</span>); |
| 64320 | 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | .}.<span.class="tok-kw">fn</span |
| 64340 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e | >.<span.class="tok-fn">foo</span |
| 64360 | 3e 28 63 6f 6e 64 69 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | >(condition:.<span.class="tok-ty |
| 64380 | 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pe">bool</span>).<span.class="to |
| 643a0 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | k-type">void</span>.{.....<span. |
| 643c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 | class="tok-kw">const</span>.resu |
| 643e0 | 6c 74 20 3d 20 6d 61 78 28 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | lt.=.max(.........<span.class="t |
| 64400 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 6f 6e 64 69 74 69 6f 6e 29 20 3c 73 70 | ok-kw">if</span>.(condition).<sp |
| 64420 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3c | an.class="tok-type">f32</span>.< |
| 64440 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">else</span>. |
| 64460 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e | <span.class="tok-type">u64</span |
| 64480 | 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >,.........<span.class="tok-numb |
| 644a0 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | er">1234</span>,.........<span.c |
| 644c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 29 3b 0a | lass="tok-number">5678</span>);. |
| 644e0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 64500 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e | shell">$.zig.test.test.zig.<span |
| 64520 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 64540 | 7a 69 67 3a 39 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 | zig:9:9:.</span><span.class="t31 |
| 64560 | 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _1">error:.</span><span.class="t |
| 64580 | 30 5f 31 22 3e 76 61 6c 75 65 73 20 6f 66 20 74 79 70 65 20 27 74 79 70 65 27 20 6d 75 73 74 20 | 0_1">values.of.type.'type'.must. |
| 645a0 | 62 65 20 63 6f 6d 70 74 69 6d 65 20 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | be.comptime.known</span>........ |
| 645c0 | 20 69 66 20 28 63 6f 6e 64 69 74 69 6f 6e 29 20 66 33 32 20 65 6c 73 65 20 75 36 34 2c 0a 20 20 | .if.(condition).f32.else.u64,... |
| 645e0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 64600 | 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | n>.</code></pre>........<p>..... |
| 64620 | 20 20 54 68 69 73 20 69 73 20 61 6e 20 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 74 68 65 20 70 | ..This.is.an.error.because.the.p |
| 64640 | 72 6f 67 72 61 6d 6d 65 72 20 61 74 74 65 6d 70 74 65 64 20 74 6f 20 70 61 73 73 20 61 20 76 61 | rogrammer.attempted.to.pass.a.va |
| 64660 | 6c 75 65 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 0a 20 20 20 20 20 | lue.only.known.at.run-time...... |
| 64680 | 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 65 78 70 65 63 74 73 20 61 20 76 | .to.a.function.which.expects.a.v |
| 646a0 | 61 6c 75 65 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 | alue.known.at.compile-time...... |
| 646c0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 6f 74 68 65 72 20 77 | ..</p>.......<p>.......Another.w |
| 646e0 | 61 79 20 74 6f 20 67 65 74 20 61 6e 20 65 72 72 6f 72 20 69 73 20 69 66 20 77 65 20 70 61 73 73 | ay.to.get.an.error.is.if.we.pass |
| 64700 | 20 61 20 74 79 70 65 20 74 68 61 74 20 76 69 6f 6c 61 74 65 73 20 74 68 65 20 74 79 70 65 20 63 | .a.type.that.violates.the.type.c |
| 64720 | 68 65 63 6b 65 72 20 77 68 65 6e 20 74 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 69 | hecker.when.the.......function.i |
| 64740 | 73 20 61 6e 61 6c 79 7a 65 64 2e 20 54 68 69 73 20 69 73 20 77 68 61 74 20 69 74 20 6d 65 61 6e | s.analyzed..This.is.what.it.mean |
| 64760 | 73 20 74 6f 20 68 61 76 65 20 3c 65 6d 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 64 75 63 6b 20 | s.to.have.<em>compile-time.duck. |
| 64780 | 74 79 70 69 6e 67 3c 2f 65 6d 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | typing</em>........</p>.......<p |
| 647a0 | 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | >.......For.example:.......</p>. |
| 647c0 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| 647e0 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 64800 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | lass="tok-kw">fn</span>.<span.cl |
| 64820 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | ass="tok-fn">max</span>(<span.cl |
| 64840 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 | ass="tok-kw">comptime</span>.T:. |
| 64860 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 | <span.class="tok-type">type</spa |
| 64880 | 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | n>,.a:.T,.b:.T).T.{.....<span.cl |
| 648a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | ass="tok-kw">return</span>.<span |
| 648c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 | .class="tok-kw">if</span>.(a.> |
| 648e0 | 3b 20 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | ;.b).a.<span.class="tok-kw">else |
| 64900 | 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>.b;.}.<span.class="tok-kw |
| 64920 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 64940 | 74 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 26 71 | tr">"try.to.compare.bools&q |
| 64960 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 6d 61 78 28 3c 73 70 61 6e 20 | uot;</span>.{....._.=.max(<span. |
| 64980 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | class="tok-type">bool</span>,.<s |
| 649a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e | pan.class="tok-null">true</span> |
| 649c0 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | ,.<span.class="tok-null">false</ |
| 649e0 | 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | span>);.}</code></pre><pre><code |
| 64a00 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a | .class="shell">$.zig.test.test.z |
| 64a20 | 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 | ig.<span.class="t0_1">./docgen_t |
| 64a40 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | mp/test.zig:2:18:.</span><span.c |
| 64a60 | 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | lass="t31_1">error:.</span><span |
| 64a80 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 6f 70 65 72 61 74 6f 72 20 6e 6f 74 20 61 6c 6c 6f 77 | .class="t0_1">operator.not.allow |
| 64aa0 | 65 64 20 66 6f 72 20 74 79 70 65 20 27 62 6f 6f 6c 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 | ed.for.type.'bool'</span>.....re |
| 64ac0 | 74 75 72 6e 20 69 66 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 65 6c 73 65 20 62 3b 0a 20 20 20 | turn.if.(a.>.b).a.else.b;.... |
| 64ae0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ..............<span.class="t32_1 |
| 64b00 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f | ">^</span>.<span.class="t0_1">./ |
| 64b20 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 32 3a 20 3c 2f 73 70 61 6e | docgen_tmp/test.zig:5:12:.</span |
| 64b40 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 | ><span.class="t36_1">note:.</spa |
| 64b60 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d | n><span.class="t0_1">called.from |
| 64b80 | 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 6d 61 78 28 62 6f 6f 6c 2c 20 74 | .here</span>....._.=.max(bool,.t |
| 64ba0 | 72 75 65 2c 20 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | rue,.false);............<span.cl |
| 64bc0 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ass="t32_1">^</span>.<span.class |
| 64be0 | 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a | ="t0_1">./docgen_tmp/test.zig:4: |
| 64c00 | 32 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e | 29:.</span><span.class="t36_1">n |
| 64c20 | 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 | ote:.</span><span.class="t0_1">c |
| 64c40 | 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f | alled.from.here</span>.test.&quo |
| 64c60 | 74 3b 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 26 71 75 6f 74 3b 20 7b 0a 20 | t;try.to.compare.bools".{.. |
| 64c80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ...........................<span |
| 64ca0 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c | .class="t32_1">^</span>.</code>< |
| 64cc0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 20 74 68 65 20 66 6c | /pre>........<p>.......On.the.fl |
| 64ce0 | 69 70 20 73 69 64 65 2c 20 69 6e 73 69 64 65 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 | ip.side,.inside.the.function.def |
| 64d00 | 69 6e 69 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | inition.with.the.<code.class="zi |
| 64d20 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | g"><span.class="tok-kw">comptime |
| 64d40 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 2c 20 74 68 65 0a 20 20 | </span></code>.parameter,.the... |
| 64d60 | 20 20 20 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | ....value.is.known.at.compile-ti |
| 64d80 | 6d 65 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 77 65 20 61 63 74 75 61 6c 6c 79 20 | me..This.means.that.we.actually. |
| 64da0 | 63 6f 75 6c 64 20 6d 61 6b 65 20 74 68 69 73 20 77 6f 72 6b 20 66 6f 72 20 74 68 65 20 62 6f 6f | could.make.this.work.for.the.boo |
| 64dc0 | 6c 20 74 79 70 65 0a 20 20 20 20 20 20 69 66 20 77 65 20 77 61 6e 74 65 64 20 74 6f 3a 0a 20 20 | l.type.......if.we.wanted.to:... |
| 64de0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| 64e00 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 64e20 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | "><span.class="tok-kw">fn</span> |
| 64e40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e | .<span.class="tok-fn">max</span> |
| 64e60 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| 64e80 | 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.T:.<span.class="tok-type"> |
| 64ea0 | 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 | type</span>,.a:.T,.b:.T).T.{.... |
| 64ec0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">if</span>. |
| 64ee0 | 28 54 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f | (T.==.<span.class="tok-type">boo |
| 64f00 | 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | l</span>).{.........<span.class= |
| 64f20 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 3c 73 70 61 6e 20 63 | "tok-kw">return</span>.a.<span.c |
| 64f40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 3b 0a 20 20 20 20 7d | lass="tok-kw">or</span>.b;.....} |
| 64f60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e | .<span.class="tok-kw">else</span |
| 64f80 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">if</span> |
| 64fa0 | 20 28 61 20 26 67 74 3b 20 62 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .(a.>.b).{.........<span.clas |
| 64fc0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 3b 0a 20 20 20 20 | s="tok-kw">return</span>.a;..... |
| 64fe0 | 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 | }.<span.class="tok-kw">else</spa |
| 65000 | 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>.{.........<span.class="tok-kw |
| 65020 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e | ">return</span>.b;.....}.}.<span |
| 65040 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | .class="tok-kw">test</span>.<spa |
| 65060 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 63 | n.class="tok-str">"try.to.c |
| 65080 | 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ompare.bools"</span>.{..... |
| 650a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 650c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 | <span.class="tok-builtin">@impor |
| 650e0 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>(<span.class="tok-str">& |
| 65100 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 | quot;std"</span>).testing.e |
| 65120 | 78 70 65 63 74 28 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | xpect(max(<span.class="tok-type" |
| 65140 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >bool</span>,.<span.class="tok-n |
| 65160 | 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ull">false</span>,.<span.class=" |
| 65180 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 | tok-null">true</span>).==.<span. |
| 651a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | class="tok-null">true</span>);.} |
| 651c0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </code></pre><pre><code.class="s |
| 651e0 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b | hell">$.zig.test.test.zig.Test.[ |
| 65200 | 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 | 1/1].test."try.to.compare.b |
| 65220 | 6f 6f 6c 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | ools"......All.1.tests.pass |
| 65240 | 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ed..</code></pre>........<p>.... |
| 65260 | 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 62 65 63 61 75 73 65 20 5a 69 67 20 69 6d 70 6c 69 63 | ...This.works.because.Zig.implic |
| 65280 | 69 74 6c 79 20 69 6e 6c 69 6e 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | itly.inlines.<code.class="zig">< |
| 652a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 | span.class="tok-kw">if</span></c |
| 652c0 | 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68 65 6e 20 74 68 65 20 63 6f 6e 64 69 74 | ode>.expressions.when.the.condit |
| 652e0 | 69 6f 6e 0a 20 20 20 20 20 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | ion.......is.known.at.compile-ti |
| 65300 | 6d 65 2c 20 61 6e 64 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 | me,.and.the.compiler.guarantees. |
| 65320 | 74 68 61 74 20 69 74 20 77 69 6c 6c 20 73 6b 69 70 20 61 6e 61 6c 79 73 69 73 20 6f 66 0a 20 20 | that.it.will.skip.analysis.of... |
| 65340 | 20 20 20 20 74 68 65 20 62 72 61 6e 63 68 20 6e 6f 74 20 74 61 6b 65 6e 2e 0a 20 20 20 20 20 20 | ....the.branch.not.taken........ |
| 65360 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 | </p>.......<p>.......This.means. |
| 65380 | 74 68 61 74 20 74 68 65 20 61 63 74 75 61 6c 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 | that.the.actual.function.generat |
| 653a0 | 65 64 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 78 3c 2f 63 6f | ed.for.<code.class="zig">max</co |
| 653c0 | 64 65 3e 20 69 6e 20 74 68 69 73 20 73 69 74 75 61 74 69 6f 6e 20 6c 6f 6f 6b 73 20 6c 69 6b 65 | de>.in.this.situation.looks.like |
| 653e0 | 0a 20 20 20 20 20 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | .......this:.......</p>.......<p |
| 65400 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 65420 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="tok-kw">fn</span>.<span.class= |
| 65440 | 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-fn">max</span>(a:.<span.cla |
| 65460 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 | ss="tok-type">bool</span>,.b:.<s |
| 65480 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e | pan.class="tok-type">bool</span> |
| 654a0 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 | ).<span.class="tok-type">bool</s |
| 654c0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 654e0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | return</span>.a.<span.class="tok |
| 65500 | 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | -kw">or</span>.b;.}</code></pre> |
| 65520 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 6c 20 74 68 65 20 63 6f 64 65 20 74 68 | .......<p>.......All.the.code.th |
| 65540 | 61 74 20 64 65 61 6c 74 20 77 69 74 68 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e | at.dealt.with.compile-time.known |
| 65560 | 20 76 61 6c 75 65 73 20 69 73 20 65 6c 69 6d 69 6e 61 74 65 64 20 61 6e 64 20 77 65 20 61 72 65 | .values.is.eliminated.and.we.are |
| 65580 | 20 6c 65 66 74 20 77 69 74 68 20 6f 6e 6c 79 0a 20 20 20 20 20 20 74 68 65 20 6e 65 63 65 73 73 | .left.with.only.......the.necess |
| 655a0 | 61 72 79 20 72 75 6e 2d 74 69 6d 65 20 63 6f 64 65 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 20 | ary.run-time.code.to.accomplish. |
| 655c0 | 74 68 65 20 74 61 73 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | the.task........</p>.......<p>.. |
| 655e0 | 20 20 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 66 6f 72 | .....This.works.the.same.way.for |
| 65600 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 65620 | 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 | tok-kw">switch</span></code>.exp |
| 65640 | 72 65 73 73 69 6f 6e 73 20 2d 20 74 68 65 79 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 69 | ressions.-.they.are.implicitly.i |
| 65660 | 6e 6c 69 6e 65 64 0a 20 20 20 20 20 20 77 68 65 6e 20 74 68 65 20 74 61 72 67 65 74 20 65 78 70 | nlined.......when.the.target.exp |
| 65680 | 72 65 73 73 69 6f 6e 20 69 73 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 0a 20 | ression.is.compile-time.known... |
| 656a0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 | .....</p>..............<h3.id="C |
| 656c0 | 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 | ompile-Time-Variables"><a.href=" |
| 656e0 | 23 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d | #toc-Compile-Time-Variables">Com |
| 65700 | 70 69 6c 65 2d 54 69 6d 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | pile-Time.Variables</a>.<a.class |
| 65720 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 | ="hdr".href="#Compile-Time-Varia |
| 65740 | 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | bles">..</a></h3>........<p>.... |
| 65760 | 20 20 20 49 6e 20 5a 69 67 2c 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 20 6c 61 | ...In.Zig,.the.programmer.can.la |
| 65780 | 62 65 6c 20 76 61 72 69 61 62 6c 65 73 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | bel.variables.as.<code.class="zi |
| 657a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | g"><span.class="tok-kw">comptime |
| 657c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 | </span></code>..This.guarantees. |
| 657e0 | 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 74 68 61 74 20 65 76 65 72 79 | to.the.compiler.......that.every |
| 65800 | 20 6c 6f 61 64 20 61 6e 64 20 73 74 6f 72 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 | .load.and.store.of.the.variable. |
| 65820 | 69 73 20 70 65 72 66 6f 72 6d 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 41 6e | is.performed.at.compile-time..An |
| 65840 | 79 20 76 69 6f 6c 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 72 65 73 75 6c 74 73 20 69 6e 20 61 | y.violation.of.this.results.in.a |
| 65860 | 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | .......compile.error........</p> |
| 65880 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 6f 6d 62 69 6e 65 64 20 77 | .......<p>.......This.combined.w |
| 658a0 | 69 74 68 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 77 65 20 63 61 6e 20 3c 63 6f 64 65 20 63 | ith.the.fact.that.we.can.<code.c |
| 658c0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 658e0 | 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 20 61 6c 6c 6f 77 | inline</span></code>.loops.allow |
| 65900 | 73 20 75 73 20 74 6f 20 77 72 69 74 65 0a 20 20 20 20 20 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 | s.us.to.write.......a.function.w |
| 65920 | 68 69 63 68 20 69 73 20 70 61 72 74 69 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 | hich.is.partially.evaluated.at.c |
| 65940 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 6e 64 20 70 61 72 74 69 61 6c 6c 79 20 61 74 20 72 75 6e | ompile-time.and.partially.at.run |
| 65960 | 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | -time........</p>.......<p>..... |
| 65980 | 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ..For.example:.......</p>....... |
| 659a0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 76 61 72 73 2e 7a 69 | <p.class="file">comptime_vars.zi |
| 659c0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 659e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 | n.class="tok-kw">const</span>.ex |
| 65a00 | 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | pect.=.<span.class="tok-builtin" |
| 65a20 | 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >@import</span>(<span.class="tok |
| 65a40 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 | -str">"std"</span>).te |
| 65a60 | 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | sting.expect;..<span.class="tok- |
| 65a80 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6d 64 46 6e 20 3d 20 3c 73 70 61 6e 20 63 | kw">const</span>.CmdFn.=.<span.c |
| 65aa0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | lass="tok-kw">struct</span>.{... |
| 65ac0 | 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ..name:.[]<span.class="tok-kw">c |
| 65ae0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | onst</span>.<span.class="tok-typ |
| 65b00 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 75 6e 63 3a 20 3c 73 70 61 6e 20 63 6c | e">u8</span>,.....func:.<span.cl |
| 65b20 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>(<span.cla |
| 65b40 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ss="tok-type">i32</span>).<span. |
| 65b60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a | class="tok-type">i32</span>,.};. |
| 65b80 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 65ba0 | 6e 3e 20 63 6d 64 5f 66 6e 73 20 3d 20 5b 5f 5d 43 6d 64 46 6e 7b 0a 20 20 20 20 43 6d 64 46 6e | n>.cmd_fns.=.[_]CmdFn{.....CmdFn |
| 65bc0 | 20 7b 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | .{.name.=.<span.class="tok-str"> |
| 65be0 | 26 71 75 6f 74 3b 6f 6e 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 | "one"</span>,..func.=. |
| 65c00 | 6f 6e 65 7d 2c 0a 20 20 20 20 43 6d 64 46 6e 20 7b 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 | one},.....CmdFn.{.name.=.<span.c |
| 65c20 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 77 6f 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"two"</ |
| 65c40 | 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 74 77 6f 7d 2c 0a 20 20 20 20 43 6d 64 46 6e 20 7b | span>,..func.=.two},.....CmdFn.{ |
| 65c60 | 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | .name.=.<span.class="tok-str">&q |
| 65c80 | 75 6f 74 3b 74 68 72 65 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 | uot;three"</span>,..func.=. |
| 65ca0 | 74 68 72 65 65 7d 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | three},.};.<span.class="tok-kw"> |
| 65cc0 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6f | fn</span>.<span.class="tok-fn">o |
| 65ce0 | 6e 65 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ne</span>(value:.<span.class="to |
| 65d00 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">i32</span>).<span.class= |
| 65d20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c | "tok-type">i32</span>.{.<span.cl |
| 65d40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 | ass="tok-kw">return</span>.value |
| 65d60 | 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | .+.<span.class="tok-number">1</s |
| 65d80 | 70 61 6e 3e 3b 20 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | pan>;.}.<span.class="tok-kw">fn< |
| 65da0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 77 6f 3c | /span>.<span.class="tok-fn">two< |
| 65dc0 | 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | /span>(value:.<span.class="tok-t |
| 65de0 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">i32</span>).<span.class="to |
| 65e00 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-type">i32</span>.{.<span.class |
| 65e20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 | ="tok-kw">return</span>.value.+. |
| 65e40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e | <span.class="tok-number">2</span |
| 65e60 | 3e 3b 20 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | >;.}.<span.class="tok-kw">fn</sp |
| 65e80 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 68 72 65 65 3c 2f | an>.<span.class="tok-fn">three</ |
| 65ea0 | 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | span>(value:.<span.class="tok-ty |
| 65ec0 | 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe">i32</span>).<span.class="tok |
| 65ee0 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -type">i32</span>.{.<span.class= |
| 65f00 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c | "tok-kw">return</span>.value.+.< |
| 65f20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e | span.class="tok-number">3</span> |
| 65f40 | 3b 20 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | ;.}..<span.class="tok-kw">fn</sp |
| 65f60 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 72 66 6f 72 6d | an>.<span.class="tok-fn">perform |
| 65f80 | 46 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | Fn</span>(<span.class="tok-kw">c |
| 65fa0 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 72 65 66 69 78 5f 63 68 61 72 3a 20 3c 73 70 61 | omptime</span>.prefix_char:.<spa |
| 65fc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 74 | n.class="tok-type">u8</span>,.st |
| 65fe0 | 61 72 74 5f 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | art_value:.<span.class="tok-type |
| 66000 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ">i32</span>).<span.class="tok-t |
| 66020 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">i32</span>.{.....<span.clas |
| 66040 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 | s="tok-kw">var</span>.result:.<s |
| 66060 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| 66080 | 3d 20 73 74 61 72 74 5f 76 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | =.start_value;.....<span.class=" |
| 660a0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | tok-kw">comptime</span>.<span.cl |
| 660c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 | ass="tok-kw">var</span>.i.=.<spa |
| 660e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 | n.class="tok-number">0</span>;.. |
| 66100 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f | ...<span.class="tok-kw">inline</ |
| 66120 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 | span>.<span.class="tok-kw">while |
| 66140 | 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 63 6d 64 5f 66 6e 73 2e 6c 65 6e 29 20 3a 20 28 | </span>.(i.<.cmd_fns.len).:.( |
| 66160 | 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | i.+=.<span.class="tok-number">1< |
| 66180 | 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>).{.........<span.class="t |
| 661a0 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 6d 64 5f 66 6e 73 5b 69 5d 2e 6e 61 6d | ok-kw">if</span>.(cmd_fns[i].nam |
| 661c0 | 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 | e[<span.class="tok-number">0</sp |
| 661e0 | 61 6e 3e 5d 20 3d 3d 20 70 72 65 66 69 78 5f 63 68 61 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | an>].==.prefix_char).{.......... |
| 66200 | 20 20 20 72 65 73 75 6c 74 20 3d 20 63 6d 64 5f 66 6e 73 5b 69 5d 2e 66 75 6e 63 28 72 65 73 75 | ...result.=.cmd_fns[i].func(resu |
| 66220 | 6c 74 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 | lt);.........}.....}.....<span.c |
| 66240 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 | lass="tok-kw">return</span>.resu |
| 66260 | 6c 74 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | lt;.}..<span.class="tok-kw">test |
| 66280 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 662a0 | 75 6f 74 3b 70 65 72 66 6f 72 6d 20 66 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | uot;perform.fn"</span>.{... |
| 662c0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 662e0 | 3e 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.expect(performFn(<span.class=" |
| 66300 | 74 6f 6b 2d 73 74 72 22 3e 27 74 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-str">'t'</span>,.<span.class |
| 66320 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e | ="tok-number">1</span>).==.<span |
| 66340 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .class="tok-number">6</span>);.. |
| 66360 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 66380 | 6e 3e 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>.expect(performFn(<span.class= |
| 663a0 | 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-str">'o'</span>,.<span.clas |
| 663c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 | s="tok-number">0</span>).==.<spa |
| 663e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">1</span>);. |
| 66400 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 66420 | 61 6e 3e 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | an>.expect(performFn(<span.class |
| 66440 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 77 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-str">'w'</span>,.<span.cla |
| 66460 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 | ss="tok-number">99</span>).==.<s |
| 66480 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e | pan.class="tok-number">99</span> |
| 664a0 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 664c0 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 6f 6d 70 74 69 6d 65 5f 76 61 | s="shell">$.zig.test.comptime_va |
| 664e0 | 72 73 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 70 65 72 | rs.zig.Test.[1/1].test."per |
| 66500 | 66 6f 72 6d 20 66 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 | form.fn"......All.1.tests.p |
| 66520 | 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | assed..</code></pre>........<p>. |
| 66540 | 20 20 20 20 20 20 54 68 69 73 20 65 78 61 6d 70 6c 65 20 69 73 20 61 20 62 69 74 20 63 6f 6e 74 | ......This.example.is.a.bit.cont |
| 66560 | 72 69 76 65 64 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 | rived,.because.the.compile-time. |
| 66580 | 65 76 61 6c 75 61 74 69 6f 6e 20 63 6f 6d 70 6f 6e 65 6e 74 20 69 73 20 75 6e 6e 65 63 65 73 73 | evaluation.component.is.unnecess |
| 665a0 | 61 72 79 3b 0a 20 20 20 20 20 20 74 68 69 73 20 63 6f 64 65 20 77 6f 75 6c 64 20 77 6f 72 6b 20 | ary;.......this.code.would.work. |
| 665c0 | 66 69 6e 65 20 69 66 20 69 74 20 77 61 73 20 61 6c 6c 20 64 6f 6e 65 20 61 74 20 72 75 6e 2d 74 | fine.if.it.was.all.done.at.run-t |
| 665e0 | 69 6d 65 2e 20 42 75 74 20 69 74 20 64 6f 65 73 20 65 6e 64 20 75 70 20 67 65 6e 65 72 61 74 69 | ime..But.it.does.end.up.generati |
| 66600 | 6e 67 0a 20 20 20 20 20 20 64 69 66 66 65 72 65 6e 74 20 63 6f 64 65 2e 20 49 6e 20 74 68 69 73 | ng.......different.code..In.this |
| 66620 | 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 3c 63 6f 64 65 20 63 6c 61 | .example,.the.function.<code.cla |
| 66640 | 73 73 3d 22 7a 69 67 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 63 6f 64 65 3e 20 69 73 20 67 65 6e | ss="zig">performFn</code>.is.gen |
| 66660 | 65 72 61 74 65 64 20 74 68 72 65 65 20 64 69 66 66 65 72 65 6e 74 20 74 69 6d 65 73 2c 0a 20 20 | erated.three.different.times,... |
| 66680 | 20 20 20 20 20 20 20 20 66 6f 72 20 74 68 65 20 64 69 66 66 65 72 65 6e 74 20 76 61 6c 75 65 73 | ........for.the.different.values |
| 666a0 | 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 72 65 66 69 78 5f 63 68 61 | .of.<code.class="zig">prefix_cha |
| 666c0 | 72 3c 2f 63 6f 64 65 3e 20 70 72 6f 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | r</code>.provided:.......</p>... |
| 666e0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 66700 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 72 6f 6d 20 74 68 65 | .class="tok-comment">//.From.the |
| 66720 | 20 6c 69 6e 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | .line:</span>.<span.class="tok-c |
| 66740 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 74 27 2c | omment">//.expect(performFn('t', |
| 66760 | 20 31 29 20 3d 3d 20 36 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .1).==.6);</span>.<span.class="t |
| 66780 | 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ok-kw">fn</span>.<span.class="to |
| 667a0 | 6b 2d 66 6e 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 61 6c | k-fn">performFn</span>(start_val |
| 667c0 | 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | ue:.<span.class="tok-type">i32</ |
| 667e0 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | span>).<span.class="tok-type">i3 |
| 66800 | 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 2</span>.{.....<span.class="tok- |
| 66820 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 | kw">var</span>.result:.<span.cla |
| 66840 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 72 74 | ss="tok-type">i32</span>.=.start |
| 66860 | 5f 76 61 6c 75 65 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 77 6f 28 72 65 73 75 6c 74 29 | _value;.....result.=.two(result) |
| 66880 | 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 68 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 | ;.....result.=.three(result);... |
| 668a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | ..<span.class="tok-kw">return</s |
| 668c0 | 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | pan>.result;.}</code></pre>..... |
| 668e0 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 66900 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 72 6f 6d 20 74 68 65 20 6c | lass="tok-comment">//.From.the.l |
| 66920 | 69 6e 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | ine:</span>.<span.class="tok-com |
| 66940 | 6d 65 6e 74 22 3e 2f 2f 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 6f 27 2c 20 30 | ment">//.expect(performFn('o',.0 |
| 66960 | 29 20 3d 3d 20 31 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ).==.1);</span>.<span.class="tok |
| 66980 | 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | -kw">fn</span>.<span.class="tok- |
| 669a0 | 66 6e 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 61 6c 75 65 | fn">performFn</span>(start_value |
| 669c0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | :.<span.class="tok-type">i32</sp |
| 669e0 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | an>).<span.class="tok-type">i32< |
| 66a00 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.{.....<span.class="tok-kw |
| 66a20 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">var</span>.result:.<span.class |
| 66a40 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 72 74 5f 76 | ="tok-type">i32</span>.=.start_v |
| 66a60 | 61 6c 75 65 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 6f 6e 65 28 72 65 73 75 6c 74 29 3b 0a | alue;.....result.=.one(result);. |
| 66a80 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | ....<span.class="tok-kw">return< |
| 66aa0 | 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | /span>.result;.}</code></pre>... |
| 66ac0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 66ae0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 72 6f 6d 20 74 68 65 | .class="tok-comment">//.From.the |
| 66b00 | 20 6c 69 6e 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | .line:</span>.<span.class="tok-c |
| 66b20 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 77 27 2c | omment">//.expect(performFn('w', |
| 66b40 | 20 39 39 29 20 3d 3d 20 39 39 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .99).==.99);</span>.<span.class= |
| 66b60 | 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "tok-kw">fn</span>.<span.class=" |
| 66b80 | 74 6f 6b 2d 66 6e 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 | tok-fn">performFn</span>(start_v |
| 66ba0 | 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | alue:.<span.class="tok-type">i32 |
| 66bc0 | 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | </span>).<span.class="tok-type"> |
| 66be0 | 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | i32</span>.{.....<span.class="to |
| 66c00 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 | k-kw">var</span>.result:.<span.c |
| 66c20 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 | lass="tok-type">i32</span>.=.sta |
| 66c40 | 72 74 5f 76 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | rt_value;.....<span.class="tok-k |
| 66c60 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 | w">return</span>.result;.}</code |
| 66c80 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 | ></pre>.......<p>.......Note.tha |
| 66ca0 | 74 20 74 68 69 73 20 68 61 70 70 65 6e 73 20 65 76 65 6e 20 69 6e 20 61 20 64 65 62 75 67 20 62 | t.this.happens.even.in.a.debug.b |
| 66cc0 | 75 69 6c 64 3b 20 69 6e 20 61 20 72 65 6c 65 61 73 65 20 62 75 69 6c 64 20 74 68 65 73 65 20 67 | uild;.in.a.release.build.these.g |
| 66ce0 | 65 6e 65 72 61 74 65 64 20 66 75 6e 63 74 69 6f 6e 73 20 73 74 69 6c 6c 0a 20 20 20 20 20 20 70 | enerated.functions.still.......p |
| 66d00 | 61 73 73 20 74 68 72 6f 75 67 68 20 72 69 67 6f 72 6f 75 73 20 4c 4c 56 4d 20 6f 70 74 69 6d 69 | ass.through.rigorous.LLVM.optimi |
| 66d20 | 7a 61 74 69 6f 6e 73 2e 20 54 68 65 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 69 6e 67 20 74 6f 20 | zations..The.important.thing.to. |
| 66d40 | 6e 6f 74 65 2c 20 68 6f 77 65 76 65 72 2c 20 69 73 20 6e 6f 74 20 74 68 61 74 20 74 68 69 73 0a | note,.however,.is.not.that.this. |
| 66d60 | 20 20 20 20 20 20 69 73 20 61 20 77 61 79 20 74 6f 20 77 72 69 74 65 20 6d 6f 72 65 20 6f 70 74 | ......is.a.way.to.write.more.opt |
| 66d80 | 69 6d 69 7a 65 64 20 63 6f 64 65 2c 20 62 75 74 20 74 68 61 74 20 69 74 20 69 73 20 61 20 77 61 | imized.code,.but.that.it.is.a.wa |
| 66da0 | 79 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 77 68 61 74 20 3c 65 6d 3e 73 68 6f | y.to.make.sure.that.what.<em>sho |
| 66dc0 | 75 6c 64 3c 2f 65 6d 3e 20 68 61 70 70 65 6e 0a 20 20 20 20 20 20 61 74 20 63 6f 6d 70 69 6c 65 | uld</em>.happen.......at.compile |
| 66de0 | 2d 74 69 6d 65 2c 20 3c 65 6d 3e 64 6f 65 73 3c 2f 65 6d 3e 20 68 61 70 70 65 6e 20 61 74 20 63 | -time,.<em>does</em>.happen.at.c |
| 66e00 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 54 68 69 73 20 63 61 74 63 68 65 73 20 6d 6f 72 65 20 65 | ompile-time..This.catches.more.e |
| 66e20 | 72 72 6f 72 73 20 61 6e 64 20 61 73 20 64 65 6d 6f 6e 73 74 72 61 74 65 64 0a 20 20 20 20 20 20 | rrors.and.as.demonstrated....... |
| 66e40 | 6c 61 74 65 72 20 69 6e 20 74 68 69 73 20 61 72 74 69 63 6c 65 2c 20 61 6c 6c 6f 77 73 20 65 78 | later.in.this.article,.allows.ex |
| 66e60 | 70 72 65 73 73 69 76 65 6e 65 73 73 20 74 68 61 74 20 69 6e 20 6f 74 68 65 72 20 6c 61 6e 67 75 | pressiveness.that.in.other.langu |
| 66e80 | 61 67 65 73 20 72 65 71 75 69 72 65 73 20 75 73 69 6e 67 20 6d 61 63 72 6f 73 2c 0a 20 20 20 20 | ages.requires.using.macros,..... |
| 66ea0 | 20 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 2c 20 6f 72 20 61 20 70 72 65 70 72 6f 63 65 73 | ..generated.code,.or.a.preproces |
| 66ec0 | 73 6f 72 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | sor.to.accomplish........</p>... |
| 66ee0 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d | ...........<h3.id="Compile-Time- |
| 66f00 | 45 78 70 72 65 73 73 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 | Expressions"><a.href="#toc-Compi |
| 66f20 | 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d | le-Time-Expressions">Compile-Tim |
| 66f40 | 65 20 45 78 70 72 65 73 73 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | e.Expressions</a>.<a.class="hdr" |
| 66f60 | 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e 73 | .href="#Compile-Time-Expressions |
| 66f80 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | ">..</a></h3>........<p>.......I |
| 66fa0 | 6e 20 5a 69 67 2c 20 69 74 20 6d 61 74 74 65 72 73 20 77 68 65 74 68 65 72 20 61 20 67 69 76 65 | n.Zig,.it.matters.whether.a.give |
| 66fc0 | 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 | n.expression.is.known.at.compile |
| 66fe0 | 2d 74 69 6d 65 20 6f 72 20 72 75 6e 2d 74 69 6d 65 2e 20 41 20 70 72 6f 67 72 61 6d 6d 65 72 20 | -time.or.run-time..A.programmer. |
| 67000 | 63 61 6e 0a 20 20 20 20 20 20 75 73 65 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | can.......use.a.<code.class="zig |
| 67020 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | "><span.class="tok-kw">comptime< |
| 67040 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 74 6f 20 67 75 61 72 | /span></code>.expression.to.guar |
| 67060 | 61 6e 74 65 65 20 74 68 61 74 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 62 | antee.that.the.expression.will.b |
| 67080 | 65 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 | e.evaluated.at.compile-time..... |
| 670a0 | 20 20 20 49 66 20 74 68 69 73 20 63 61 6e 6e 6f 74 20 62 65 20 61 63 63 6f 6d 70 6c 69 73 68 65 | ...If.this.cannot.be.accomplishe |
| 670c0 | 64 2c 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 77 69 6c 6c 20 65 6d 69 74 20 61 6e 20 65 72 72 | d,.the.compiler.will.emit.an.err |
| 670e0 | 6f 72 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | or..For.example:.......</p>..... |
| 67100 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 67120 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 67140 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">extern</span>.<span.cl |
| 67160 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| 67180 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 78 69 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | ss="tok-fn">exit</span>().<span. |
| 671a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e | class="tok-type">noreturn</span> |
| 671c0 | 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 | ;..<span.class="tok-kw">test</sp |
| 671e0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>.<span.class="tok-str">" |
| 67200 | 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | foo"</span>.{.....<span.cla |
| 67220 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ss="tok-kw">comptime</span>.{... |
| 67240 | 20 20 20 20 20 20 65 78 69 74 28 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ......exit();.....}.}</code></pr |
| 67260 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 67280 | 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | .test.test.zig.<span.class="t0_1 |
| 672a0 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 39 3a 20 3c 2f 73 | ">./docgen_tmp/test.zig:5:9:.</s |
| 672c0 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c | pan><span.class="t31_1">error:.< |
| 672e0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 75 6e 61 62 6c 65 20 | /span><span.class="t0_1">unable. |
| 67300 | 74 6f 20 65 76 61 6c 75 61 74 65 20 63 6f 6e 73 74 61 6e 74 20 65 78 70 72 65 73 73 69 6f 6e 3c | to.evaluate.constant.expression< |
| 67320 | 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 65 78 69 74 28 29 3b 0a 20 20 20 20 20 20 20 20 3c | /span>.........exit();.........< |
| 67340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 67360 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | n.class="t0_1">./docgen_tmp/test |
| 67380 | 2e 7a 69 67 3a 35 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .zig:5:13:.</span><span.class="t |
| 673a0 | 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 36_1">note:.</span><span.class=" |
| 673c0 | 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 | t0_1">referenced.here</span>.... |
| 673e0 | 20 20 20 20 20 65 78 69 74 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | .....exit();.............<span.c |
| 67400 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | lass="t32_1">^</span>.</code></p |
| 67420 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 64 6f 65 73 6e 27 74 20 | re>........<p>.......It.doesn't. |
| 67440 | 6d 61 6b 65 20 73 65 6e 73 65 20 74 68 61 74 20 61 20 70 72 6f 67 72 61 6d 20 63 6f 75 6c 64 20 | make.sense.that.a.program.could. |
| 67460 | 63 61 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 78 69 74 28 29 3c 2f 63 | call.<code.class="zig">exit()</c |
| 67480 | 6f 64 65 3e 20 28 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 65 78 74 65 72 6e 61 6c 20 66 75 6e 63 | ode>.(or.any.other.external.func |
| 674a0 | 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c | tion)...........at.compile-time, |
| 674c0 | 20 73 6f 20 74 68 69 73 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 20 48 6f 77 | .so.this.is.a.compile.error..How |
| 674e0 | 65 76 65 72 2c 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ever,.a.<code.class="zig"><span. |
| 67500 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">comptime</span></ |
| 67520 | 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 64 6f 65 73 20 6d 75 63 68 0a 20 20 20 20 20 | code>.expression.does.much...... |
| 67540 | 20 6d 6f 72 65 20 74 68 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 63 61 75 73 65 20 61 20 63 6f 6d | .more.than.sometimes.cause.a.com |
| 67560 | 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | pile.error........</p>.......<p> |
| 67580 | 0a 20 20 20 20 20 20 57 69 74 68 69 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .......Within.a.<code.class="zig |
| 675a0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | "><span.class="tok-kw">comptime< |
| 675c0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 0a 20 20 20 20 20 20 | /span></code>.expression:....... |
| 675e0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c | </p>.......<ul>...........<li>Al |
| 67600 | 6c 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | l.variables.are.<code.class="zig |
| 67620 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | "><span.class="tok-kw">comptime< |
| 67640 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 72 69 61 62 6c 65 73 2e 3c 2f 6c 69 3e 0a 20 20 | /span></code>.variables.</li>... |
| 67660 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ........<li>All.<code.class="zig |
| 67680 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | "><span.class="tok-kw">if</span> |
| 676a0 | 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </code>,.<code.class="zig"><span |
| 676c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | .class="tok-kw">while</span></co |
| 676e0 | 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | de>,.<code.class="zig"><span.cla |
| 67700 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 | ss="tok-kw">for</span></code>,.a |
| 67720 | 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | nd.<code.class="zig"><span.class |
| 67740 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 | ="tok-kw">switch</span></code>.. |
| 67760 | 20 20 20 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 65 76 61 6c 75 61 74 | .........expressions.are.evaluat |
| 67780 | 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 6f 72 20 65 6d 69 74 20 61 20 63 6f | ed.at.compile-time,.or.emit.a.co |
| 677a0 | 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 74 68 69 73 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 | mpile.error.if.this.is.not.possi |
| 677c0 | 62 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 66 75 6e 63 74 69 | ble.</li>.........<li>All.functi |
| 677e0 | 6f 6e 20 63 61 6c 6c 73 20 63 61 75 73 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 69 | on.calls.cause.the.compiler.to.i |
| 67800 | 6e 74 65 72 70 72 65 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 | nterpret.the.function.at.compile |
| 67820 | 2d 74 69 6d 65 2c 20 65 6d 69 74 74 69 6e 67 20 61 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 | -time,.emitting.a...........comp |
| 67840 | 69 6c 65 20 65 72 72 6f 72 20 69 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 74 72 69 65 73 20 | ile.error.if.the.function.tries. |
| 67860 | 74 6f 20 64 6f 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 68 61 73 20 67 6c 6f 62 61 6c 20 | to.do.something.that.has.global. |
| 67880 | 72 75 6e 2d 74 69 6d 65 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | run-time.side.effects.</li>..... |
| 678a0 | 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 | ..</ul>.......<p>.......This.mea |
| 678c0 | 6e 73 20 74 68 61 74 20 61 20 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 20 63 72 65 61 74 65 20 | ns.that.a.programmer.can.create. |
| 678e0 | 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 69 73 20 63 61 6c 6c 65 64 20 62 6f 74 68 20 | a.function.which.is.called.both. |
| 67900 | 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 6e 64 20 72 75 6e 2d 74 69 6d 65 2c 20 77 69 | at.compile-time.and.run-time,.wi |
| 67920 | 74 68 0a 20 20 20 20 20 20 6e 6f 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 | th.......no.modification.to.the. |
| 67940 | 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 69 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | function.required........</p>... |
| 67960 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 65 74 27 73 20 6c 6f 6f 6b 20 61 74 20 61 6e 20 65 | ....<p>.......Let's.look.at.an.e |
| 67980 | 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | xample:.......</p>.......<p.clas |
| 679a0 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 679c0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 679e0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | >const</span>.expect.=.<span.cla |
| 67a00 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@import</span>( |
| 67a20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 | <span.class="tok-str">"std& |
| 67a40 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c | quot;</span>).testing.expect;..< |
| 67a60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 67a80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 62 6f 6e 61 63 63 69 3c 2f 73 70 | pan.class="tok-fn">fibonacci</sp |
| 67aa0 | 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | an>(index:.<span.class="tok-type |
| 67ac0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ">u32</span>).<span.class="tok-t |
| 67ae0 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">u32</span>.{.....<span.clas |
| 67b00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 6e 64 65 78 20 26 6c 74 3b | s="tok-kw">if</span>.(index.< |
| 67b20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | .<span.class="tok-number">2</spa |
| 67b40 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | n>).<span.class="tok-kw">return< |
| 67b60 | 2f 73 70 61 6e 3e 20 69 6e 64 65 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.index;.....<span.class="t |
| 67b80 | 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 | ok-kw">return</span>.fibonacci(i |
| 67ba0 | 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ndex.-.<span.class="tok-number"> |
| 67bc0 | 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 | 1</span>).+.fibonacci(index.-.<s |
| 67be0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">2</span>) |
| 67c00 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ;.}..<span.class="tok-kw">test</ |
| 67c20 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| 67c40 | 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | t;fibonacci"</span>.{.....< |
| 67c60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 65 73 74 | span.class="tok-comment">//.test |
| 67c80 | 20 66 69 62 6f 6e 61 63 63 69 20 61 74 20 72 75 6e 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 | .fibonacci.at.run-time</span>... |
| 67ca0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 67cc0 | 3e 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.expect(fibonacci(<span.class=" |
| 67ce0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">7</span>).==.<span.c |
| 67d00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 | lass="tok-number">13</span>);... |
| 67d20 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ...<span.class="tok-comment">//. |
| 67d40 | 74 65 73 74 20 66 69 62 6f 6e 61 63 63 69 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f | test.fibonacci.at.compile-time</ |
| 67d60 | 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | span>.....<span.class="tok-kw">c |
| 67d80 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | omptime</span>.{.........<span.c |
| 67da0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 67dc0 | 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | fibonacci(<span.class="tok-numbe |
| 67de0 | 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">7</span>).==.<span.class="tok |
| 67e00 | 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f | -number">13</span>);.....}.}</co |
| 67e20 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 67e40 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d | ">$.zig.test.test.zig.Test.[1/1] |
| 67e60 | 20 74 65 73 74 20 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 2e 2e 2e 20 0a | .test."fibonacci"..... |
| 67e80 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 67ea0 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6d 61 67 69 6e 65 20 69 66 20 77 | e>........<p>.......Imagine.if.w |
| 67ec0 | 65 20 68 61 64 20 66 6f 72 67 6f 74 74 65 6e 20 74 68 65 20 62 61 73 65 20 63 61 73 65 20 6f 66 | e.had.forgotten.the.base.case.of |
| 67ee0 | 20 74 68 65 20 72 65 63 75 72 73 69 76 65 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 74 72 69 65 | .the.recursive.function.and.trie |
| 67f00 | 64 20 74 6f 20 72 75 6e 20 74 68 65 20 74 65 73 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | d.to.run.the.tests:.......</p>.. |
| 67f20 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 67f40 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 67f60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | ass="tok-kw">const</span>.expect |
| 67f80 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | .=.<span.class="tok-builtin">@im |
| 67fa0 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | port</span>(<span.class="tok-str |
| 67fc0 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e | ">"std"</span>).testin |
| 67fe0 | 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | g.expect;..<span.class="tok-kw"> |
| 68000 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 | fn</span>.<span.class="tok-fn">f |
| 68020 | 69 62 6f 6e 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 | ibonacci</span>(index:.<span.cla |
| 68040 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ss="tok-type">u32</span>).<span. |
| 68060 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | class="tok-type">u32</span>.{... |
| 68080 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 69 66 | ..<span.class="tok-comment">//if |
| 680a0 | 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 3c 2f 73 | .(index.<.2).return.index;</s |
| 680c0 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | pan>.....<span.class="tok-kw">re |
| 680e0 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 | turn</span>.fibonacci(index.-.<s |
| 68100 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">1</span>) |
| 68120 | 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .+.fibonacci(index.-.<span.class |
| 68140 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 | ="tok-number">2</span>);.}..<spa |
| 68160 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | n.class="tok-kw">test</span>.<sp |
| 68180 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 | an.class="tok-str">"fibonac |
| 681a0 | 63 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ci"</span>.{.....<span.clas |
| 681c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | s="tok-kw">comptime</span>.{.... |
| 681e0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 68200 | 70 61 6e 3e 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 | pan>.expect(fibonacci(<span.clas |
| 68220 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 | s="tok-number">7</span>).==.<spa |
| 68240 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b | n.class="tok-number">13</span>); |
| 68260 | 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | .....}.}</code></pre><pre><code. |
| 68280 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 682a0 | 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d | g.<span.class="t0_1">./docgen_tm |
| 682c0 | 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | p/test.zig:5:28:.</span><span.cl |
| 682e0 | 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ass="t31_1">error:.</span><span. |
| 68300 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 6f 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 64 20 6f 76 | class="t0_1">operation.caused.ov |
| 68320 | 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 | erflow</span>.....return.fibonac |
| 68340 | 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 | ci(index.-.1).+.fibonacci(index. |
| 68360 | 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -.2);........................... |
| 68380 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .<span.class="t32_1">^</span>.<s |
| 683a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | pan.class="t0_1">./docgen_tmp/te |
| 683c0 | 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:5:21:.</span><span.class= |
| 683e0 | 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | "t36_1">note:.</span><span.class |
| 68400 | 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a | ="t0_1">called.from.here</span>. |
| 68420 | 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 | ....return.fibonacci(index.-.1). |
| 68440 | 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 | +.fibonacci(index.-.2);......... |
| 68460 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| 68480 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f | ^</span>.<span.class="t0_1">./do |
| 684a0 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c | cgen_tmp/test.zig:5:21:.</span>< |
| 684c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e | span.class="t36_1">note:.</span> |
| 684e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 | <span.class="t0_1">called.from.h |
| 68500 | 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 | ere</span>.....return.fibonacci( |
| 68520 | 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 | index.-.1).+.fibonacci(index.-.2 |
| 68540 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | );.....................<span.cla |
| 68560 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 68580 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 | "t0_1">./docgen_tmp/test.zig:5:2 |
| 685a0 | 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f | 1:.</span><span.class="t36_1">no |
| 685c0 | 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 | te:.</span><span.class="t0_1">ca |
| 685e0 | 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e | lled.from.here</span>.....return |
| 68600 | 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 | .fibonacci(index.-.1).+.fibonacc |
| 68620 | 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | i(index.-.2);................... |
| 68640 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 68660 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 68680 | 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:5:21:.</span><span.class |
| 686a0 | 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ="t36_1">note:.</span><span.clas |
| 686c0 | 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e | s="t0_1">called.from.here</span> |
| 686e0 | 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 | .....return.fibonacci(index.-.1) |
| 68700 | 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 | .+.fibonacci(index.-.2);........ |
| 68720 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| 68740 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 | >^</span>.<span.class="t0_1">./d |
| 68760 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e | ocgen_tmp/test.zig:5:21:.</span> |
| 68780 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | <span.class="t36_1">note:.</span |
| 687a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 | ><span.class="t0_1">called.from. |
| 687c0 | 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 | here</span>.....return.fibonacci |
| 687e0 | 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 | (index.-.1).+.fibonacci(index.-. |
| 68800 | 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | 2);.....................<span.cl |
| 68820 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ass="t32_1">^</span>.<span.class |
| 68840 | 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a | ="t0_1">./docgen_tmp/test.zig:5: |
| 68860 | 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e | 21:.</span><span.class="t36_1">n |
| 68880 | 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 | ote:.</span><span.class="t0_1">c |
| 688a0 | 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 | alled.from.here</span>.....retur |
| 688c0 | 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 | n.fibonacci(index.-.1).+.fibonac |
| 688e0 | 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ci(index.-.2);.................. |
| 68900 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 68920 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f | <span.class="t0_1">./docgen_tmp/ |
| 68940 | 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | test.zig:5:21:.</span><span.clas |
| 68960 | 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | s="t36_1">note:.</span><span.cla |
| 68980 | 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e | ss="t0_1">called.from.here</span |
| 689a0 | 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 | >.....return.fibonacci(index.-.1 |
| 689c0 | 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 | ).+.fibonacci(index.-.2);....... |
| 689e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ..............<span.class="t32_1 |
| 68a00 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f | ">^</span>.<span.class="t0_1">./ |
| 68a20 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 32 39 3a 20 3c 2f 73 70 61 | docgen_tmp/test.zig:10:29:.</spa |
| 68a40 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 | n><span.class="t36_1">note:.</sp |
| 68a60 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f | an><span.class="t0_1">called.fro |
| 68a80 | 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 74 72 79 20 65 78 70 65 63 74 | m.here</span>.........try.expect |
| 68aa0 | 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 3d 3d 20 31 33 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | (fibonacci(7).==.13);........... |
| 68ac0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..................<span.class="t |
| 68ae0 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | 32_1">^</span>.<span.class="t0_1 |
| 68b00 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 38 3a 31 38 3a 20 3c 2f | ">./docgen_tmp/test.zig:8:18:.</ |
| 68b20 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c | span><span.class="t36_1">note:.< |
| 68b40 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 | /span><span.class="t0_1">called. |
| 68b60 | 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b 66 69 62 6f | from.here</span>.test."fibo |
| 68b80 | 6e 61 63 63 69 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | nacci".{..................< |
| 68ba0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 68bc0 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | n.class="t0_1">./docgen_tmp/test |
| 68be0 | 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .zig:5:21:.</span><span.class="t |
| 68c00 | 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 36_1">note:.</span><span.class=" |
| 68c20 | 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 | t0_1">referenced.here</span>.... |
| 68c40 | 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 | .return.fibonacci(index.-.1).+.f |
| 68c60 | 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | ibonacci(index.-.2);............ |
| 68c80 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 68ca0 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | span>.<span.class="t0_1">./docge |
| 68cc0 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 32 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | n_tmp/test.zig:10:29:.</span><sp |
| 68ce0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | an.class="t36_1">note:.</span><s |
| 68d00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 | pan.class="t0_1">referenced.here |
| 68d20 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 74 72 79 20 65 78 70 65 63 74 28 66 69 62 6f 6e | </span>.........try.expect(fibon |
| 68d40 | 61 63 63 69 28 37 29 20 3d 3d 20 31 33 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | acci(7).==.13);................. |
| 68d60 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| 68d80 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | ^</span>.</code></pre>........<p |
| 68da0 | 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f 6d 70 69 6c 65 72 20 70 72 6f 64 75 63 65 73 20 61 6e | >.......The.compiler.produces.an |
| 68dc0 | 20 65 72 72 6f 72 20 77 68 69 63 68 20 69 73 20 61 20 73 74 61 63 6b 20 74 72 61 63 65 20 66 72 | .error.which.is.a.stack.trace.fr |
| 68de0 | 6f 6d 20 74 72 79 69 6e 67 20 74 6f 20 65 76 61 6c 75 61 74 65 20 74 68 65 0a 20 20 20 20 20 20 | om.trying.to.evaluate.the....... |
| 68e00 | 66 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 | function.at.compile-time........ |
| 68e20 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 75 63 6b 69 6c 79 2c 20 77 65 | </p>.......<p>.......Luckily,.we |
| 68e40 | 20 75 73 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 2c 20 61 6e 64 20 73 | .used.an.unsigned.integer,.and.s |
| 68e60 | 6f 20 77 68 65 6e 20 77 65 20 74 72 69 65 64 20 74 6f 20 73 75 62 74 72 61 63 74 20 31 20 66 72 | o.when.we.tried.to.subtract.1.fr |
| 68e80 | 6f 6d 20 30 2c 20 69 74 20 74 72 69 67 67 65 72 65 64 0a 20 20 20 20 20 20 75 6e 64 65 66 69 6e | om.0,.it.triggered.......undefin |
| 68ea0 | 65 64 20 62 65 68 61 76 69 6f 72 2c 20 77 68 69 63 68 20 69 73 20 61 6c 77 61 79 73 20 61 20 63 | ed.behavior,.which.is.always.a.c |
| 68ec0 | 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6b 6e 6f | ompile.error.if.the.compiler.kno |
| 68ee0 | 77 73 20 69 74 20 68 61 70 70 65 6e 65 64 2e 0a 20 20 20 20 20 20 42 75 74 20 77 68 61 74 20 77 | ws.it.happened........But.what.w |
| 68f00 | 6f 75 6c 64 20 68 61 76 65 20 68 61 70 70 65 6e 65 64 20 69 66 20 77 65 20 75 73 65 64 20 61 20 | ould.have.happened.if.we.used.a. |
| 68f20 | 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | signed.integer?.......</p>...... |
| 68f40 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 68f60 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 68f80 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c | "tok-kw">const</span>.expect.=.< |
| 68fa0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| 68fc0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| 68fe0 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 | uot;std"</span>).testing.ex |
| 69000 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | pect;..<span.class="tok-kw">fn</ |
| 69020 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 62 6f 6e | span>.<span.class="tok-fn">fibon |
| 69040 | 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | acci</span>(index:.<span.class=" |
| 69060 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">i32</span>).<span.clas |
| 69080 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | s="tok-type">i32</span>.{.....<s |
| 690a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 69 66 20 28 69 6e | pan.class="tok-comment">//if.(in |
| 690c0 | 64 65 78 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 3c 2f 73 70 61 6e 3e | dex.<.2).return.index;</span> |
| 690e0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e | .....<span.class="tok-kw">return |
| 69100 | 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 | </span>.fibonacci(index.-.<span. |
| 69120 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 | class="tok-number">1</span>).+.f |
| 69140 | 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ibonacci(index.-.<span.class="to |
| 69160 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | k-number">2</span>);.}..<span.cl |
| 69180 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">test</span>.<span.c |
| 691a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 | lass="tok-str">"fibonacci&q |
| 691c0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>.{.....<span.class="t |
| 691e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 | ok-kw">comptime</span>.{........ |
| 69200 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 69220 | 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .expect(fibonacci(<span.class="t |
| 69240 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ok-number">7</span>).==.<span.cl |
| 69260 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | ass="tok-number">13</span>);.... |
| 69280 | 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | .}.}</code></pre><pre><code.clas |
| 692a0 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 | s="shell">$.zig.test.test.zig.<s |
| 692c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | pan.class="t0_1">./docgen_tmp/te |
| 692e0 | 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:5:21:.</span><span.class= |
| 69300 | 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | "t31_1">error:.</span><span.clas |
| 69320 | 73 3d 22 74 30 5f 31 22 3e 65 76 61 6c 75 61 74 69 6f 6e 20 65 78 63 65 65 64 65 64 20 31 30 30 | s="t0_1">evaluation.exceeded.100 |
| 69340 | 30 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e 63 68 65 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | 0.backwards.branches</span>..... |
| 69360 | 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 | return.fibonacci(index.-.1).+.fi |
| 69380 | 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | bonacci(index.-.2);............. |
| 693a0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | ........<span.class="t32_1">^</s |
| 693c0 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e | pan>.<span.class="t0_1">./docgen |
| 693e0 | 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | _tmp/test.zig:5:21:.</span><span |
| 69400 | 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | .class="t36_1">note:.</span><spa |
| 69420 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c | n.class="t0_1">called.from.here< |
| 69440 | 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 | /span>.....return.fibonacci(inde |
| 69460 | 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 | x.-.1).+.fibonacci(index.-.2);.. |
| 69480 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...................<span.class=" |
| 694a0 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | t32_1">^</span>.<span.class="t0_ |
| 694c0 | 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c | 1">./docgen_tmp/test.zig:5:21:.< |
| 694e0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 | /span><span.class="t36_1">note:. |
| 69500 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 | </span><span.class="t0_1">called |
| 69520 | 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 | .from.here</span>.....return.fib |
| 69540 | 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e | onacci(index.-.1).+.fibonacci(in |
| 69560 | 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | dex.-.2);.....................<s |
| 69580 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| 695a0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 695c0 | 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | zig:5:21:.</span><span.class="t3 |
| 695e0 | 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 6_1">note:.</span><span.class="t |
| 69600 | 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 0_1">called.from.here</span>.... |
| 69620 | 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 | .return.fibonacci(index.-.1).+.f |
| 69640 | 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | ibonacci(index.-.2);............ |
| 69660 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 69680 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | span>.<span.class="t0_1">./docge |
| 696a0 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | n_tmp/test.zig:5:21:.</span><spa |
| 696c0 | 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | n.class="t36_1">note:.</span><sp |
| 696e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 | an.class="t0_1">called.from.here |
| 69700 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 | </span>.....return.fibonacci(ind |
| 69720 | 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a | ex.-.1).+.fibonacci(index.-.2);. |
| 69740 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....................<span.class= |
| 69760 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 | "t32_1">^</span>.<span.class="t0 |
| 69780 | 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 | _1">./docgen_tmp/test.zig:5:21:. |
| 697a0 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a | </span><span.class="t36_1">note: |
| 697c0 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 | .</span><span.class="t0_1">calle |
| 697e0 | 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 | d.from.here</span>.....return.fi |
| 69800 | 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 | bonacci(index.-.1).+.fibonacci(i |
| 69820 | 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ndex.-.2);.....................< |
| 69840 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 69860 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | n.class="t0_1">./docgen_tmp/test |
| 69880 | 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .zig:5:21:.</span><span.class="t |
| 698a0 | 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 36_1">note:.</span><span.class=" |
| 698c0 | 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 | t0_1">called.from.here</span>... |
| 698e0 | 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 | ..return.fibonacci(index.-.1).+. |
| 69900 | 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | fibonacci(index.-.2);........... |
| 69920 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 69940 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 | /span>.<span.class="t0_1">./docg |
| 69960 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | en_tmp/test.zig:5:21:.</span><sp |
| 69980 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | an.class="t36_1">note:.</span><s |
| 699a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 | pan.class="t0_1">called.from.her |
| 699c0 | 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e | e</span>.....return.fibonacci(in |
| 699e0 | 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b | dex.-.1).+.fibonacci(index.-.2); |
| 69a00 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .....................<span.class |
| 69a20 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 69a40 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a | 0_1">./docgen_tmp/test.zig:5:21: |
| 69a60 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 | .</span><span.class="t36_1">note |
| 69a80 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c | :.</span><span.class="t0_1">call |
| 69aa0 | 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 | ed.from.here</span>.....return.f |
| 69ac0 | 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 | ibonacci(index.-.1).+.fibonacci( |
| 69ae0 | 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | index.-.2);..................... |
| 69b00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 69b20 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | an.class="t0_1">./docgen_tmp/tes |
| 69b40 | 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.zig:5:21:.</span><span.class=" |
| 69b60 | 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t36_1">note:.</span><span.class= |
| 69b80 | 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 | "t0_1">called.from.here</span>.. |
| 69ba0 | 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b | ...return.fibonacci(index.-.1).+ |
| 69bc0 | 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 | .fibonacci(index.-.2);.......... |
| 69be0 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 69c00 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 | </span>.<span.class="t0_1">./doc |
| 69c20 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | gen_tmp/test.zig:5:21:.</span><s |
| 69c40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c | pan.class="t36_1">note:.</span>< |
| 69c60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 | span.class="t0_1">called.from.he |
| 69c80 | 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 | re</span>.....return.fibonacci(i |
| 69ca0 | 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 | ndex.-.1).+.fibonacci(index.-.2) |
| 69cc0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ;.....................<span.clas |
| 69ce0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 69d00 | 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 | t0_1">./docgen_tmp/test.zig:5:21 |
| 69d20 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 | :.</span><span.class="t36_1">not |
| 69d40 | 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c | e:.</span><span.class="t0_1">cal |
| 69d60 | 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 | led.from.here</span>.....return. |
| 69d80 | 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 | fibonacci(index.-.1).+.fibonacci |
| 69da0 | 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | (index.-.2);.................... |
| 69dc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .<span.class="t32_1">^</span>.<s |
| 69de0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | pan.class="t0_1">./docgen_tmp/te |
| 69e00 | 73 74 2e 7a 69 67 3a 31 30 3a 32 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | st.zig:10:29:.</span><span.class |
| 69e20 | 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ="t36_1">note:.</span><span.clas |
| 69e40 | 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a | s="t0_1">referenced.here</span>. |
| 69e60 | 20 20 20 20 20 20 20 20 74 72 79 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 | ........try.expect(fibonacci(7). |
| 69e80 | 3d 3d 20 31 33 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ==.13);......................... |
| 69ea0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 69ec0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | .</code></pre>........<p>....... |
| 69ee0 | 54 68 65 20 63 6f 6d 70 69 6c 65 72 20 6e 6f 74 69 63 65 64 20 74 68 61 74 20 65 76 61 6c 75 61 | The.compiler.noticed.that.evalua |
| 69f00 | 74 69 6e 67 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | ting.this.function.at.compile-ti |
| 69f20 | 6d 65 20 74 6f 6f 6b 20 61 20 6c 6f 6e 67 20 74 69 6d 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 | me.took.a.long.time,.......and.t |
| 69f40 | 68 75 73 20 65 6d 69 74 74 65 64 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 61 6e 64 20 | hus.emitted.a.compile.error.and. |
| 69f60 | 67 61 76 65 20 75 70 2e 20 49 66 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 77 61 6e 74 73 | gave.up..If.the.programmer.wants |
| 69f80 | 20 74 6f 20 69 6e 63 72 65 61 73 65 0a 20 20 20 20 20 20 74 68 65 20 62 75 64 67 65 74 20 66 6f | .to.increase.......the.budget.fo |
| 69fa0 | 72 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 6d 70 75 74 61 74 69 6f 6e 2c 20 74 68 65 79 | r.compile-time.computation,.they |
| 69fc0 | 20 63 61 6e 20 75 73 65 20 61 20 62 75 69 6c 74 2d 69 6e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c | .can.use.a.built-in.function.cal |
| 69fe0 | 6c 65 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 73 65 74 45 76 61 6c 42 72 61 6e 63 | led.......<a.href="#setEvalBranc |
| 6a000 | 68 51 75 6f 74 61 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 61 3e 20 | hQuota">@setEvalBranchQuota</a>. |
| 6a020 | 74 6f 20 63 68 61 6e 67 65 20 74 68 65 20 64 65 66 61 75 6c 74 20 6e 75 6d 62 65 72 20 31 30 30 | to.change.the.default.number.100 |
| 6a040 | 30 20 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 65 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | 0.to.something.else........</p>. |
| 6a060 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 61 74 20 69 66 20 77 65 20 66 69 78 20 74 | ......<p>.......What.if.we.fix.t |
| 6a080 | 68 65 20 62 61 73 65 20 63 61 73 65 2c 20 62 75 74 20 70 75 74 20 74 68 65 20 77 72 6f 6e 67 20 | he.base.case,.but.put.the.wrong. |
| 6a0a0 | 76 61 6c 75 65 20 69 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 | value.in.the.<code.class="zig">e |
| 6a0c0 | 78 70 65 63 74 3c 2f 63 6f 64 65 3e 20 6c 69 6e 65 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | xpect</code>.line?.......</p>... |
| 6a0e0 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 6a100 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 6a120 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 | ss="tok-kw">const</span>.expect. |
| 6a140 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 | =.<span.class="tok-builtin">@imp |
| 6a160 | 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ort</span>(<span.class="tok-str" |
| 6a180 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 | >"std"</span>).testing |
| 6a1a0 | 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | .expect;..<span.class="tok-kw">f |
| 6a1c0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 | n</span>.<span.class="tok-fn">fi |
| 6a1e0 | 62 6f 6e 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | bonacci</span>(index:.<span.clas |
| 6a200 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | s="tok-type">i32</span>).<span.c |
| 6a220 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | lass="tok-type">i32</span>.{.... |
| 6a240 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">if</span>. |
| 6a260 | 28 69 6e 64 65 78 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | (index.<.<span.class="tok-num |
| 6a280 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">2</span>).<span.class="tok- |
| 6a2a0 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 64 65 78 3b 0a 20 20 20 20 3c 73 70 | kw">return</span>.index;.....<sp |
| 6a2c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">return</span>. |
| 6a2e0 | 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | fibonacci(index.-.<span.class="t |
| 6a300 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 | ok-number">1</span>).+.fibonacci |
| 6a320 | 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | (index.-.<span.class="tok-number |
| 6a340 | 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">2</span>);.}..<span.class="tok |
| 6a360 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 6a380 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 3c 2f 73 70 | k-str">"fibonacci"</sp |
| 6a3a0 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | an>.{.....<span.class="tok-kw">c |
| 6a3c0 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | omptime</span>.{.........<span.c |
| 6a3e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 | lass="tok-kw">try</span>.expect( |
| 6a400 | 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | fibonacci(<span.class="tok-numbe |
| 6a420 | 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">7</span>).==.<span.class="tok |
| 6a440 | 2d 6e 75 6d 62 65 72 22 3e 39 39 39 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c | -number">99999</span>);.....}.}< |
| 6a460 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 6a480 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 | ell">$.zig.test.test.zig.Test.[1 |
| 6a4a0 | 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 2e 2e | /1].test."fibonacci".. |
| 6a4c0 | 2e 20 0a 54 65 73 74 20 5b 32 2f 31 5d 20 0a 74 65 73 74 20 26 71 75 6f 74 3b 66 69 62 6f 6e 61 | ...Test.[2/1]..test."fibona |
| 6a4e0 | 63 63 69 26 71 75 6f 74 3b 2e 2e 2e 20 46 41 49 4c 20 28 54 65 73 74 55 6e 65 78 70 65 63 74 65 | cci"....FAIL.(TestUnexpecte |
| 6a500 | 64 52 65 73 75 6c 74 29 0a 0a 30 20 70 61 73 73 65 64 3b 20 30 20 73 6b 69 70 70 65 64 3b 20 31 | dResult)..0.passed;.0.skipped;.1 |
| 6a520 | 20 66 61 69 6c 65 64 2e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 | .failed..error:.the.following.te |
| 6a540 | 73 74 20 63 6f 6d 6d 61 6e 64 20 66 61 69 6c 65 64 20 77 69 74 68 20 65 78 69 74 20 63 6f 64 65 | st.command.failed.with.exit.code |
| 6a560 | 20 31 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 33 33 33 61 38 | .1:.docgen_tmp/zig-cache/o/333a8 |
| 6a580 | 37 34 31 38 31 36 37 30 32 64 61 66 64 30 66 66 39 39 61 66 33 38 30 65 62 62 31 2f 74 65 73 74 | 741816702dafd0ff99af380ebb1/test |
| 6a5a0 | 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 62 75 69 6c 64 2d | ./home/andy/Downloads/zig/build- |
| 6a5c0 | 72 65 6c 65 61 73 65 2f 7a 69 67 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | release/zig.</code></pre>....... |
| 6a5e0 | 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 61 74 20 68 61 70 70 65 6e 65 64 20 69 73 20 5a 69 67 20 | .<p>.......What.happened.is.Zig. |
| 6a600 | 73 74 61 72 74 65 64 20 69 6e 74 65 72 70 72 65 74 69 6e 67 20 74 68 65 20 3c 63 6f 64 65 20 63 | started.interpreting.the.<code.c |
| 6a620 | 6c 61 73 73 3d 22 7a 69 67 22 3e 65 78 70 65 63 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f | lass="zig">expect</code>.functio |
| 6a640 | 6e 20 77 69 74 68 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 70 61 72 61 6d 65 74 65 72 20 3c | n.with.the...........parameter.< |
| 6a660 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6f 6b 3c 2f 63 6f 64 65 3e 20 73 65 74 20 74 | code.class="zig">ok</code>.set.t |
| 6a680 | 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | o.<code.class="zig"><span.class= |
| 6a6a0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 | "tok-null">false</span></code>.. |
| 6a6c0 | 57 68 65 6e 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 68 69 74 0a 20 20 20 20 20 20 20 | When.the.interpreter.hit........ |
| 6a6e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ...........<code.class="zig"><sp |
| 6a700 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 | an.class="tok-builtin">@panic</s |
| 6a720 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 74 20 65 6d 69 74 74 65 64 20 61 20 63 6f 6d 70 69 6c 65 | pan></code>.it.emitted.a.compile |
| 6a740 | 20 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 61 20 70 61 6e 69 63 20 64 75 72 69 6e 67 20 63 6f | .error.because.a.panic.during.co |
| 6a760 | 6d 70 69 6c 65 0a 20 20 20 20 20 20 63 61 75 73 65 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 | mpile.......causes.a.compile.err |
| 6a780 | 6f 72 20 69 66 20 69 74 20 69 73 20 64 65 74 65 63 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d | or.if.it.is.detected.at.compile- |
| 6a7a0 | 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | time........</p>........<p>..... |
| 6a7c0 | 20 20 41 74 20 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 28 6f 75 74 73 69 64 65 20 6f 66 | ..At.container.level.(outside.of |
| 6a7e0 | 20 61 6e 79 20 66 75 6e 63 74 69 6f 6e 29 2c 20 61 6c 6c 20 65 78 70 72 65 73 73 69 6f 6e 73 20 | .any.function),.all.expressions. |
| 6a800 | 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | are.implicitly.......<code.class |
| 6a820 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | ="zig"><span.class="tok-kw">comp |
| 6a840 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 | time</span></code>.expressions.. |
| 6a860 | 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 77 65 20 63 61 6e 20 75 73 65 20 66 75 6e 63 74 | This.means.that.we.can.use.funct |
| 6a880 | 69 6f 6e 73 20 74 6f 0a 20 20 20 20 20 20 69 6e 69 74 69 61 6c 69 7a 65 20 63 6f 6d 70 6c 65 78 | ions.to.......initialize.complex |
| 6a8a0 | 20 73 74 61 74 69 63 20 64 61 74 61 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 | .static.data..For.example:...... |
| 6a8c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | .</p>.......<p.class="file">test |
| 6a8e0 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 6a900 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 6a920 | 20 66 69 72 73 74 5f 32 35 5f 70 72 69 6d 65 73 20 3d 20 66 69 72 73 74 4e 50 72 69 6d 65 73 28 | .first_25_primes.=.firstNPrimes( |
| 6a940 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 3c 2f 73 70 61 | <span.class="tok-number">25</spa |
| 6a960 | 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | n>);.<span.class="tok-kw">const< |
| 6a980 | 2f 73 70 61 6e 3e 20 73 75 6d 5f 6f 66 5f 66 69 72 73 74 5f 32 35 5f 70 72 69 6d 65 73 20 3d 20 | /span>.sum_of_first_25_primes.=. |
| 6a9a0 | 73 75 6d 28 26 61 6d 70 3b 66 69 72 73 74 5f 32 35 5f 70 72 69 6d 65 73 29 3b 0a 0a 3c 73 70 61 | sum(&first_25_primes);..<spa |
| 6a9c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| 6a9e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 72 73 74 4e 50 72 69 6d 65 73 3c 2f 73 70 | .class="tok-fn">firstNPrimes</sp |
| 6aa00 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | an>(<span.class="tok-kw">comptim |
| 6aa20 | 65 3c 2f 73 70 61 6e 3e 20 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | e</span>.n:.<span.class="tok-typ |
| 6aa40 | 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 5b 6e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">usize</span>).[n]<span.class= |
| 6aa60 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | "tok-type">i32</span>.{.....<spa |
| 6aa80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 72 69 6d | n.class="tok-kw">var</span>.prim |
| 6aaa0 | 65 5f 6c 69 73 74 3a 20 5b 6e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | e_list:.[n]<span.class="tok-type |
| 6aac0 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">i32</span>.=.<span.class="tok- |
| 6aae0 | 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | null">undefined</span>;.....<spa |
| 6ab00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 65 78 74 | n.class="tok-kw">var</span>.next |
| 6ab20 | 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | _index:.<span.class="tok-type">u |
| 6ab40 | 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | size</span>.=.<span.class="tok-n |
| 6ab60 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">0</span>;.....<span.class |
| 6ab80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 74 65 73 74 5f 6e 75 6d 62 65 72 | ="tok-kw">var</span>.test_number |
| 6aba0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | :.<span.class="tok-type">i32</sp |
| 6abc0 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | an>.=.<span.class="tok-number">2 |
| 6abe0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>;.....<span.class="tok-kw |
| 6ac00 | 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 6e 65 78 74 5f 69 6e 64 65 78 20 26 6c 74 3b 20 | ">while</span>.(next_index.<. |
| 6ac20 | 70 72 69 6d 65 5f 6c 69 73 74 2e 6c 65 6e 29 20 3a 20 28 74 65 73 74 5f 6e 75 6d 62 65 72 20 2b | prime_list.len).:.(test_number.+ |
| 6ac40 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 | =.<span.class="tok-number">1</sp |
| 6ac60 | 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>).{.........<span.class="tok- |
| 6ac80 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 74 65 73 74 5f 70 72 69 6d 65 5f 69 6e 64 65 78 3a | kw">var</span>.test_prime_index: |
| 6aca0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 | .<span.class="tok-type">usize</s |
| 6acc0 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pan>.=.<span.class="tok-number"> |
| 6ace0 | 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 0</span>;.........<span.class="t |
| 6ad00 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 73 5f 70 72 69 6d 65 20 3d 20 3c 73 70 | ok-kw">var</span>.is_prime.=.<sp |
| 6ad20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b | an.class="tok-null">true</span>; |
| 6ad40 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 | .........<span.class="tok-kw">wh |
| 6ad60 | 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 74 65 73 74 5f 70 72 69 6d 65 5f 69 6e 64 65 78 20 26 6c 74 | ile</span>.(test_prime_index.< |
| 6ad80 | 3b 20 6e 65 78 74 5f 69 6e 64 65 78 29 20 3a 20 28 74 65 73 74 5f 70 72 69 6d 65 5f 69 6e 64 65 | ;.next_index).:.(test_prime_inde |
| 6ada0 | 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | x.+=.<span.class="tok-number">1< |
| 6adc0 | 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | /span>).{.............<span.clas |
| 6ade0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 74 65 73 74 5f 6e 75 6d 62 65 | s="tok-kw">if</span>.(test_numbe |
| 6ae00 | 72 20 25 20 70 72 69 6d 65 5f 6c 69 73 74 5b 74 65 73 74 5f 70 72 69 6d 65 5f 69 6e 64 65 78 5d | r.%.prime_list[test_prime_index] |
| 6ae20 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | .==.<span.class="tok-number">0</ |
| 6ae40 | 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 5f 70 72 69 6d | span>).{.................is_prim |
| 6ae60 | 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 | e.=.<span.class="tok-null">false |
| 6ae80 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | </span>;.................<span.c |
| 6aea0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-kw">break</span>;..... |
| 6aec0 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | ........}.........}.........<spa |
| 6aee0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 73 5f 70 | n.class="tok-kw">if</span>.(is_p |
| 6af00 | 72 69 6d 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6d 65 5f 6c 69 73 74 5b 6e | rime).{.............prime_list[n |
| 6af20 | 65 78 74 5f 69 6e 64 65 78 5d 20 3d 20 74 65 73 74 5f 6e 75 6d 62 65 72 3b 0a 20 20 20 20 20 20 | ext_index].=.test_number;....... |
| 6af40 | 20 20 20 20 20 20 6e 65 78 74 5f 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ......next_index.+=.<span.class= |
| 6af60 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d | "tok-number">1</span>;.........} |
| 6af80 | 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .....}.....<span.class="tok-kw"> |
| 6afa0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 70 72 69 6d 65 5f 6c 69 73 74 3b 0a 7d 0a 0a 3c 73 70 | return</span>.prime_list;.}..<sp |
| 6afc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| 6afe0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 75 6d 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 | n.class="tok-fn">sum</span>(numb |
| 6b000 | 65 72 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ers:.[]<span.class="tok-kw">cons |
| 6b020 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | t</span>.<span.class="tok-type"> |
| 6b040 | 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | i32</span>).<span.class="tok-typ |
| 6b060 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">i32</span>.{.....<span.class= |
| 6b080 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 | "tok-kw">var</span>.result:.<spa |
| 6b0a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 | n.class="tok-type">i32</span>.=. |
| 6b0c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e | <span.class="tok-number">0</span |
| 6b0e0 | 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c | >;.....<span.class="tok-kw">for< |
| 6b100 | 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 73 29 20 7c 78 7c 20 7b 0a 20 20 20 20 20 20 20 20 72 | /span>.(numbers).|x|.{.........r |
| 6b120 | 65 73 75 6c 74 20 2b 3d 20 78 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | esult.+=.x;.....}.....<span.clas |
| 6b140 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b | s="tok-kw">return</span>.result; |
| 6b160 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | .}..<span.class="tok-kw">test</s |
| 6b180 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>.<span.class="tok-str">" |
| 6b1a0 | 3b 76 61 72 69 61 62 6c 65 20 76 61 6c 75 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ;variable.values"</span>.{. |
| 6b1c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 | ....<span.class="tok-kw">try</sp |
| 6b1e0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | an>.<span.class="tok-builtin">@i |
| 6b200 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | mport</span>(<span.class="tok-st |
| 6b220 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 | r">"std"</span>).testi |
| 6b240 | 6e 67 2e 65 78 70 65 63 74 28 73 75 6d 5f 6f 66 5f 66 69 72 73 74 5f 32 35 5f 70 72 69 6d 65 73 | ng.expect(sum_of_first_25_primes |
| 6b260 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 36 | .==.<span.class="tok-number">106 |
| 6b280 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | 0</span>);.}</code></pre><pre><c |
| 6b2a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 6b2c0 | 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 76 61 72 69 | t.zig.Test.[1/1].test."vari |
| 6b2e0 | 61 62 6c 65 20 76 61 6c 75 65 73 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 | able.values"......All.1.tes |
| 6b300 | 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ts.passed..</code></pre>........ |
| 6b320 | 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 77 65 20 63 6f 6d 70 69 6c 65 20 74 68 69 73 20 70 | <p>.......When.we.compile.this.p |
| 6b340 | 72 6f 67 72 61 6d 2c 20 5a 69 67 20 67 65 6e 65 72 61 74 65 73 20 74 68 65 20 63 6f 6e 73 74 61 | rogram,.Zig.generates.the.consta |
| 6b360 | 6e 74 73 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 61 6e 73 77 65 72 20 70 72 65 2d 63 6f | nts.......with.the.answer.pre-co |
| 6b380 | 6d 70 75 74 65 64 2e 20 48 65 72 65 20 61 72 65 20 74 68 65 20 6c 69 6e 65 73 20 66 72 6f 6d 20 | mputed..Here.are.the.lines.from. |
| 6b3a0 | 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 4c 4c 56 4d 20 49 52 3a 0a 20 20 20 20 20 20 3c 2f 70 | the.generated.LLVM.IR:.......</p |
| 6b3c0 | 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 6c 6c 76 6d 22 3e | >.......<pre><code.class="llvm"> |
| 6b3e0 | 40 30 20 3d 20 69 6e 74 65 72 6e 61 6c 20 75 6e 6e 61 6d 65 64 5f 61 64 64 72 20 63 6f 6e 73 74 | @0.=.internal.unnamed_addr.const |
| 6b400 | 61 6e 74 20 5b 32 35 20 78 20 69 33 32 5d 20 5b 69 33 32 20 32 2c 20 69 33 32 20 33 2c 20 69 33 | ant.[25.x.i32].[i32.2,.i32.3,.i3 |
| 6b420 | 32 20 35 2c 20 69 33 32 20 37 2c 20 69 33 32 20 31 31 2c 20 69 33 32 20 31 33 2c 20 69 33 32 20 | 2.5,.i32.7,.i32.11,.i32.13,.i32. |
| 6b440 | 31 37 2c 20 69 33 32 20 31 39 2c 20 69 33 32 20 32 33 2c 20 69 33 32 20 32 39 2c 20 69 33 32 20 | 17,.i32.19,.i32.23,.i32.29,.i32. |
| 6b460 | 33 31 2c 20 69 33 32 20 33 37 2c 20 69 33 32 20 34 31 2c 20 69 33 32 20 34 33 2c 20 69 33 32 20 | 31,.i32.37,.i32.41,.i32.43,.i32. |
| 6b480 | 34 37 2c 20 69 33 32 20 35 33 2c 20 69 33 32 20 35 39 2c 20 69 33 32 20 36 31 2c 20 69 33 32 20 | 47,.i32.53,.i32.59,.i32.61,.i32. |
| 6b4a0 | 36 37 2c 20 69 33 32 20 37 31 2c 20 69 33 32 20 37 33 2c 20 69 33 32 20 37 39 2c 20 69 33 32 20 | 67,.i32.71,.i32.73,.i32.79,.i32. |
| 6b4c0 | 38 33 2c 20 69 33 32 20 38 39 2c 20 69 33 32 20 39 37 5d 0a 40 31 20 3d 20 69 6e 74 65 72 6e 61 | 83,.i32.89,.i32.97].@1.=.interna |
| 6b4e0 | 6c 20 75 6e 6e 61 6d 65 64 5f 61 64 64 72 20 63 6f 6e 73 74 61 6e 74 20 69 33 32 20 31 30 36 30 | l.unnamed_addr.constant.i32.1060 |
| 6b500 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f | </code></pre>.......<p>.......No |
| 6b520 | 74 65 20 74 68 61 74 20 77 65 20 64 69 64 20 6e 6f 74 20 68 61 76 65 20 74 6f 20 64 6f 20 61 6e | te.that.we.did.not.have.to.do.an |
| 6b540 | 79 74 68 69 6e 67 20 73 70 65 63 69 61 6c 20 77 69 74 68 20 74 68 65 20 73 79 6e 74 61 78 20 6f | ything.special.with.the.syntax.o |
| 6b560 | 66 20 74 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 0a | f.these.functions..For.example,. |
| 6b580 | 20 20 20 20 20 20 77 65 20 63 6f 75 6c 64 20 63 61 6c 6c 20 74 68 65 20 3c 63 6f 64 65 20 63 6c | ......we.could.call.the.<code.cl |
| 6b5a0 | 61 73 73 3d 22 7a 69 67 22 3e 73 75 6d 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 61 73 | ass="zig">sum</code>.function.as |
| 6b5c0 | 20 69 73 20 77 69 74 68 20 61 20 73 6c 69 63 65 20 6f 66 20 6e 75 6d 62 65 72 73 20 77 68 6f 73 | .is.with.a.slice.of.numbers.whos |
| 6b5e0 | 65 20 6c 65 6e 67 74 68 20 61 6e 64 20 76 61 6c 75 65 73 20 77 65 72 65 0a 20 20 20 20 20 20 6f | e.length.and.values.were.......o |
| 6b600 | 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | nly.known.at.run-time........</p |
| 6b620 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 47 65 | >.....................<h2.id="Ge |
| 6b640 | 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 | neric-Data-Structures"><a.href=" |
| 6b660 | 23 74 6f 63 2d 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 47 65 | #toc-Generic-Data-Structures">Ge |
| 6b680 | 6e 65 72 69 63 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | neric.Data.Structures</a>.<a.cla |
| 6b6a0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 | ss="hdr".href="#Generic-Data-Str |
| 6b6c0 | 75 63 74 75 72 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | uctures">..</a></h2>........<p>. |
| 6b6e0 | 20 20 20 20 20 20 5a 69 67 20 75 73 65 73 20 74 68 65 73 65 20 63 61 70 61 62 69 6c 69 74 69 65 | ......Zig.uses.these.capabilitie |
| 6b700 | 73 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 67 65 6e 65 72 69 63 20 64 61 74 61 20 73 74 72 75 | s.to.implement.generic.data.stru |
| 6b720 | 63 74 75 72 65 73 20 77 69 74 68 6f 75 74 20 69 6e 74 72 6f 64 75 63 69 6e 67 20 61 6e 79 0a 20 | ctures.without.introducing.any.. |
| 6b740 | 20 20 20 20 20 73 70 65 63 69 61 6c 2d 63 61 73 65 20 73 79 6e 74 61 78 2e 20 49 66 20 79 6f 75 | .....special-case.syntax..If.you |
| 6b760 | 20 66 6f 6c 6c 6f 77 65 64 20 61 6c 6f 6e 67 20 73 6f 20 66 61 72 2c 20 79 6f 75 20 6d 61 79 20 | .followed.along.so.far,.you.may. |
| 6b780 | 61 6c 72 65 61 64 79 20 6b 6e 6f 77 20 68 6f 77 20 74 6f 20 63 72 65 61 74 65 20 61 0a 20 20 20 | already.know.how.to.create.a.... |
| 6b7a0 | 20 20 20 67 65 6e 65 72 69 63 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 2e 0a 20 20 20 20 20 | ...generic.data.structure....... |
| 6b7c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 20 69 73 20 61 6e | .</p>.......<p>.......Here.is.an |
| 6b7e0 | 20 65 78 61 6d 70 6c 65 20 6f 66 20 61 20 67 65 6e 65 72 69 63 20 3c 63 6f 64 65 20 63 6c 61 73 | .example.of.a.generic.<code.clas |
| 6b800 | 73 3d 22 7a 69 67 22 3e 4c 69 73 74 3c 2f 63 6f 64 65 3e 20 64 61 74 61 20 73 74 72 75 63 74 75 | s="zig">List</code>.data.structu |
| 6b820 | 72 65 2c 20 74 68 61 74 20 77 65 20 77 69 6c 6c 20 69 6e 73 74 61 6e 74 69 61 74 65 20 77 69 74 | re,.that.we.will.instantiate.wit |
| 6b840 | 68 0a 20 20 20 20 20 20 20 20 20 20 74 68 65 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | h...........the.type.<code.class |
| 6b860 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | ="zig"><span.class="tok-type">i3 |
| 6b880 | 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 5a 69 67 20 77 65 20 72 65 66 65 72 | 2</span></code>..In.Zig.we.refer |
| 6b8a0 | 20 74 6f 20 74 68 65 20 74 79 70 65 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .to.the.type.as.<code.class="zig |
| 6b8c0 | 22 3e 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | ">List(<span.class="tok-type">i3 |
| 6b8e0 | 32 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | 2</span>)</code>........</p>.... |
| 6b900 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 6b920 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | class="tok-kw">fn</span>.<span.c |
| 6b940 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | lass="tok-fn">List</span>(<span. |
| 6b960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 | class="tok-kw">comptime</span>.T |
| 6b980 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 | :.<span.class="tok-type">type</s |
| 6b9a0 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | pan>).<span.class="tok-type">typ |
| 6b9c0 | 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e</span>.{.....<span.class="tok- |
| 6b9e0 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">return</span>.<span.class="t |
| 6ba00 | 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 69 | ok-kw">struct</span>.{.........i |
| 6ba20 | 74 65 6d 73 3a 20 5b 5d 54 2c 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c | tems:.[]T,.........len:.<span.cl |
| 6ba40 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | ass="tok-type">usize</span>,.... |
| 6ba60 | 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | .};.}</code></pre>.......<p>.... |
| 6ba80 | 20 20 20 54 68 61 74 27 73 20 69 74 2e 20 49 74 27 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 | ...That's.it..It's.a.function.th |
| 6baa0 | 61 74 20 72 65 74 75 72 6e 73 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 3c 63 6f 64 65 20 63 6c | at.returns.an.anonymous.<code.cl |
| 6bac0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | ass="zig"><span.class="tok-kw">s |
| 6bae0 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 46 6f 72 20 74 68 65 20 70 75 72 | truct</span></code>..For.the.pur |
| 6bb00 | 70 6f 73 65 73 20 6f 66 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73 0a 20 20 20 20 20 20 20 20 | poses.of.error.messages......... |
| 6bb20 | 20 20 61 6e 64 20 64 65 62 75 67 67 69 6e 67 2c 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 | ..and.debugging,.Zig.infers.the. |
| 6bb40 | 6e 61 6d 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | name.<code.class="zig"><span.cla |
| 6bb60 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4c 69 73 74 28 69 33 32 29 26 71 75 6f | ss="tok-str">"List(i32)&quo |
| 6bb80 | 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 74 68 65 20 66 75 6e 63 74 69 | t;</span></code>.from.the.functi |
| 6bba0 | 6f 6e 20 6e 61 6d 65 20 61 6e 64 20 70 61 72 61 6d 65 74 65 72 73 20 69 6e 76 6f 6b 65 64 20 77 | on.name.and.parameters.invoked.w |
| 6bbc0 | 68 65 6e 20 63 72 65 61 74 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 61 6e 6f 6e 79 6d 6f 75 73 | hen.creating.......the.anonymous |
| 6bbe0 | 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | .struct........</p>.......<p>... |
| 6bc00 | 20 20 20 20 54 6f 20 6b 65 65 70 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 73 6d 61 6c 6c 20 61 | ....To.keep.the.language.small.a |
| 6bc20 | 6e 64 20 75 6e 69 66 6f 72 6d 2c 20 61 6c 6c 20 61 67 67 72 65 67 61 74 65 20 74 79 70 65 73 20 | nd.uniform,.all.aggregate.types. |
| 6bc40 | 69 6e 20 5a 69 67 20 61 72 65 20 61 6e 6f 6e 79 6d 6f 75 73 2e 20 54 6f 20 67 69 76 65 20 61 20 | in.Zig.are.anonymous..To.give.a. |
| 6bc60 | 74 79 70 65 0a 20 20 20 20 20 20 61 20 6e 61 6d 65 2c 20 77 65 20 61 73 73 69 67 6e 20 69 74 20 | type.......a.name,.we.assign.it. |
| 6bc80 | 74 6f 20 61 20 63 6f 6e 73 74 61 6e 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | to.a.constant:.......</p>....... |
| 6bca0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 6bcc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 6f 64 65 20 3d 20 | ss="tok-kw">const</span>.Node.=. |
| 6bce0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 | <span.class="tok-kw">struct</spa |
| 6bd00 | 6e 3e 20 7b 0a 20 20 20 20 6e 65 78 74 3a 20 2a 4e 6f 64 65 2c 0a 20 20 20 20 6e 61 6d 65 3a 20 | n>.{.....next:.*Node,.....name:. |
| 6bd20 | 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | []<span.class="tok-type">u8</spa |
| 6bd40 | 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | n>,.};</code></pre>.......<p>... |
| 6bd60 | 20 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 62 65 63 61 75 73 65 20 61 6c 6c 20 74 6f 70 20 6c | ....This.works.because.all.top.l |
| 6bd80 | 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 | evel.declarations.are.order-inde |
| 6bda0 | 70 65 6e 64 65 6e 74 2c 20 61 6e 64 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 72 65 20 69 73 | pendent,.and.as.long.as.there.is |
| 6bdc0 | 6e 27 74 0a 20 20 20 20 20 20 61 6e 20 61 63 74 75 61 6c 20 69 6e 66 69 6e 69 74 65 20 72 65 67 | n't.......an.actual.infinite.reg |
| 6bde0 | 72 65 73 73 69 6f 6e 2c 20 76 61 6c 75 65 73 20 63 61 6e 20 72 65 66 65 72 20 74 6f 20 74 68 65 | ression,.values.can.refer.to.the |
| 6be00 | 6d 73 65 6c 76 65 73 2c 20 64 69 72 65 63 74 6c 79 20 6f 72 20 69 6e 64 69 72 65 63 74 6c 79 2e | mselves,.directly.or.indirectly. |
| 6be20 | 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .In.this.case,.......<code.class |
| 6be40 | 3d 22 7a 69 67 22 3e 4e 6f 64 65 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 69 74 73 | ="zig">Node</code>.refers.to.its |
| 6be60 | 65 6c 66 20 61 73 20 61 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 20 69 73 20 6e 6f 74 20 61 | elf.as.a.pointer,.which.is.not.a |
| 6be80 | 63 74 75 61 6c 6c 79 20 61 6e 20 69 6e 66 69 6e 69 74 65 20 72 65 67 72 65 73 73 69 6f 6e 2c 20 | ctually.an.infinite.regression,. |
| 6bea0 | 73 6f 0a 20 20 20 20 20 20 69 74 20 77 6f 72 6b 73 20 66 69 6e 65 2e 0a 20 20 20 20 20 20 3c 2f | so.......it.works.fine........</ |
| 6bec0 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 61 73 65 2d 53 74 75 | p>..............<h2.id="Case-Stu |
| 6bee0 | 64 79 2d 70 72 69 6e 74 66 2d 69 6e 2d 5a 69 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | dy-printf-in-Zig"><a.href="#toc- |
| 6bf00 | 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 66 2d 69 6e 2d 5a 69 67 22 3e 43 61 73 65 20 53 | Case-Study-printf-in-Zig">Case.S |
| 6bf20 | 74 75 64 79 3a 20 70 72 69 6e 74 66 20 69 6e 20 5a 69 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | tudy:.printf.in.Zig</a>.<a.class |
| 6bf40 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 66 2d | ="hdr".href="#Case-Study-printf- |
| 6bf60 | 69 6e 2d 5a 69 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | in-Zig">..</a></h2>........<p>.. |
| 6bf80 | 20 20 20 20 20 50 75 74 74 69 6e 67 20 61 6c 6c 20 6f 66 20 74 68 69 73 20 74 6f 67 65 74 68 65 | .....Putting.all.of.this.togethe |
| 6bfa0 | 72 2c 20 6c 65 74 27 73 20 73 65 65 20 68 6f 77 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | r,.let's.see.how.<code.class="zi |
| 6bfc0 | 67 22 3e 70 72 69 6e 74 66 3c 2f 63 6f 64 65 3e 20 77 6f 72 6b 73 20 69 6e 20 5a 69 67 2e 0a 20 | g">printf</code>.works.in.Zig... |
| 6bfe0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 6c000 | 70 72 69 6e 74 66 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | printf.zig</p><pre><code.class=" |
| 6c020 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 6c040 | 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.print.=.<span.class="tok- |
| 6c060 | 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | builtin">@import</span>(<span.cl |
| 6c080 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 | ass="tok-str">"std"</s |
| 6c0a0 | 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>).debug.print;..<span.class= |
| 6c0c0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 | "tok-kw">const</span>.a_number:. |
| 6c0e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">i32</span |
| 6c100 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 | >.=.<span.class="tok-number">123 |
| 6c120 | 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | 4</span>;.<span.class="tok-kw">c |
| 6c140 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 73 74 72 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | onst</span>.a_string.=.<span.cla |
| 6c160 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c | ss="tok-str">"foobar"< |
| 6c180 | 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | /span>;..<span.class="tok-kw">pu |
| 6c1a0 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | b</span>.<span.class="tok-kw">fn |
| 6c1c0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 | </span>.<span.class="tok-fn">mai |
| 6c1e0 | 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n</span>().<span.class="tok-type |
| 6c200 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 | ">void</span>.{.....print(<span. |
| 6c220 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 | class="tok-str">"here.is.a. |
| 6c240 | 73 74 72 69 6e 67 3a 20 27 7b 73 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 | string:.'{s}'.here.is.a.number:. |
| 6c260 | 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 61 5f 73 74 72 69 6e 67 2c 20 61 | {}\n"</span>,..{a_string,.a |
| 6c280 | 5f 6e 75 6d 62 65 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | _number});.}</code></pre><pre><c |
| 6c2a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 | ode.class="shell">$.zig.build-ex |
| 6c2c0 | 65 20 70 72 69 6e 74 66 2e 7a 69 67 0a 24 20 2e 2f 70 72 69 6e 74 66 0a 68 65 72 65 20 69 73 20 | e.printf.zig.$../printf.here.is. |
| 6c2e0 | 61 20 73 74 72 69 6e 67 3a 20 27 66 6f 6f 62 61 72 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d | a.string:.'foobar'.here.is.a.num |
| 6c300 | 62 65 72 3a 20 31 32 33 34 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 0a 20 20 20 20 20 20 | ber:.1234.</code></pre>......... |
| 6c320 | 3c 70 3e 0a 20 20 20 20 20 20 4c 65 74 27 73 20 63 72 61 63 6b 20 6f 70 65 6e 20 74 68 65 20 69 | <p>.......Let's.crack.open.the.i |
| 6c340 | 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 61 6e 64 20 73 65 65 20 68 6f | mplementation.of.this.and.see.ho |
| 6c360 | 77 20 69 74 20 77 6f 72 6b 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 70 | w.it.works:.......</p>........<p |
| 6c380 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 6c3a0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 43 61 6c 6c 73 20 70 72 69 6e 74 20 61 | ="tok-comment">///.Calls.print.a |
| 6c3c0 | 6e 64 20 74 68 65 6e 20 66 6c 75 73 68 65 73 20 74 68 65 20 62 75 66 66 65 72 2e 3c 2f 73 70 61 | nd.then.flushes.the.buffer.</spa |
| 6c3e0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | n>.<span.class="tok-kw">pub</spa |
| 6c400 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | n>.<span.class="tok-kw">fn</span |
| 6c420 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 72 69 6e 74 66 3c 2f 73 | >.<span.class="tok-fn">printf</s |
| 6c440 | 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 57 72 69 74 65 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>(self:.*Writer,.<span.class= |
| 6c460 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 6f 72 6d 61 74 3a | "tok-kw">comptime</span>.format: |
| 6c480 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | .[]<span.class="tok-kw">const</s |
| 6c4a0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | pan>.<span.class="tok-type">u8</ |
| 6c4c0 | 73 70 61 6e 3e 2c 20 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>,.args:.<span.class="tok-kw |
| 6c4e0 | 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">anytype</span>).<span.class="t |
| 6c500 | 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 | ok-type">anyerror</span>!<span.c |
| 6c520 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | lass="tok-type">void</span>.{... |
| 6c540 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| 6c560 | 61 6e 3e 20 53 74 61 74 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>.State.=.<span.class="tok-kw" |
| 6c580 | 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 73 74 61 72 74 2c 0a 20 20 | >enum</span>.{.........start,... |
| 6c5a0 | 20 20 20 20 20 20 6f 70 65 6e 5f 62 72 61 63 65 2c 0a 20 20 20 20 20 20 20 20 63 6c 6f 73 65 5f | ......open_brace,.........close_ |
| 6c5c0 | 62 72 61 63 65 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | brace,.....};......<span.class=" |
| 6c5e0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | tok-kw">comptime</span>.<span.cl |
| 6c600 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 74 61 72 74 5f 69 6e | ass="tok-kw">var</span>.start_in |
| 6c620 | 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a | dex:.<span.class="tok-type">usiz |
| 6c640 | 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | e</span>.=.<span.class="tok-numb |
| 6c660 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">0</span>;.....<span.class="t |
| 6c680 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">comptime</span>.<span.cla |
| 6c6a0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 74 61 74 65 20 3d 20 53 | ss="tok-kw">var</span>.state.=.S |
| 6c6c0 | 74 61 74 65 2e 73 74 61 72 74 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tate.start;.....<span.class="tok |
| 6c6e0 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -kw">comptime</span>.<span.class |
| 6c700 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 65 78 74 5f 61 72 67 3a 20 3c | ="tok-kw">var</span>.next_arg:.< |
| 6c720 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 | span.class="tok-type">usize</spa |
| 6c740 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | n>.=.<span.class="tok-number">0< |
| 6c760 | 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>;......<span.class="tok-kw |
| 6c780 | 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">inline</span>.<span.class="tok |
| 6c7a0 | 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 66 6f 72 6d 61 74 29 20 7c 63 2c 20 69 7c 20 | -kw">for</span>.(format).|c,.i|. |
| 6c7c0 | 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | {.........<span.class="tok-kw">s |
| 6c7e0 | 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 73 74 61 74 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | witch</span>.(state).{.......... |
| 6c800 | 20 20 20 53 74 61 74 65 2e 73 74 61 72 74 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ...State.start.=>.<span.class |
| 6c820 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 | ="tok-kw">switch</span>.(c).{... |
| 6c840 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ..............<span.class="tok-s |
| 6c860 | 74 72 22 3e 27 7b 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 | tr">'{'</span>.=>.{.......... |
| 6c880 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ...........<span.class="tok-kw"> |
| 6c8a0 | 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 26 6c 74 3b 20 69 29 20 3c | if</span>.(start_index.<.i).< |
| 6c8c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 | span.class="tok-kw">try</span>.s |
| 6c8e0 | 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f 69 6e 64 65 78 2e 2e 69 5d | elf.write(format[start_index..i] |
| 6c900 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 | );.....................state.=.S |
| 6c920 | 74 61 74 65 2e 6f 70 65 6e 5f 62 72 61 63 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tate.open_brace;................ |
| 6c940 | 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .},.................<span.class= |
| 6c960 | 22 74 6f 6b 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 | "tok-str">'}'</span>.=>.{.... |
| 6c980 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .................<span.class="to |
| 6c9a0 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 26 6c 74 | k-kw">if</span>.(start_index.< |
| 6c9c0 | 3b 20 69 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | ;.i).<span.class="tok-kw">try</s |
| 6c9e0 | 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f 69 6e 64 | pan>.self.write(format[start_ind |
| 6ca00 | 65 78 2e 2e 69 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 | ex..i]);.....................sta |
| 6ca20 | 74 65 20 3d 20 53 74 61 74 65 2e 63 6c 6f 73 65 5f 62 72 61 63 65 3b 0a 20 20 20 20 20 20 20 20 | te.=.State.close_brace;......... |
| 6ca40 | 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ........},.................<span |
| 6ca60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 | .class="tok-kw">else</span>.=> |
| 6ca80 | 3b 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | ;.{},.............},............ |
| 6caa0 | 20 53 74 61 74 65 2e 6f 70 65 6e 5f 62 72 61 63 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c | .State.open_brace.=>.<span.cl |
| 6cac0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b | ass="tok-kw">switch</span>.(c).{ |
| 6cae0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .................<span.class="to |
| 6cb00 | 6b 2d 73 74 72 22 3e 27 7b 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 | k-str">'{'</span>.=>.{....... |
| 6cb20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 73 74 61 72 | ..............state.=.State.star |
| 6cb40 | 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 69 6e 64 | t;.....................start_ind |
| 6cb60 | 65 78 20 3d 20 69 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 | ex.=.i;.................},...... |
| 6cb80 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ...........<span.class="tok-str" |
| 6cba0 | 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >'}'</span>.=>.{............. |
| 6cbc0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | ........<span.class="tok-kw">try |
| 6cbe0 | 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 61 72 67 73 5b 6e 65 78 | </span>.self.printValue(args[nex |
| 6cc00 | 74 5f 61 72 67 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 | t_arg]);.....................nex |
| 6cc20 | 74 5f 61 72 67 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | t_arg.+=.<span.class="tok-number |
| 6cc40 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ">1</span>;..................... |
| 6cc60 | 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 73 74 61 72 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | state.=.State.start;............ |
| 6cc80 | 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 69 6e 64 65 78 20 3d 20 69 20 2b 20 3c 73 70 61 6e | .........start_index.=.i.+.<span |
| 6cca0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">1</span>;... |
| 6ccc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..............},................ |
| 6cce0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e | .<span.class="tok-kw">else</span |
| 6cd00 | 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | >.=>.<span.class="tok-builtin |
| 6cd20 | 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ">@compileError</span>(<span.cla |
| 6cd40 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 55 6e 6b 6e 6f 77 6e 20 66 6f 72 6d 61 | ss="tok-str">"Unknown.forma |
| 6cd60 | 74 20 63 68 61 72 61 63 74 65 72 3a 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 2b 2b 20 63 29 | t.character:."</span>.++.c) |
| 6cd80 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 74 61 | ,.............},.............Sta |
| 6cda0 | 74 65 2e 63 6c 6f 73 65 5f 62 72 61 63 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | te.close_brace.=>.<span.class |
| 6cdc0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 | ="tok-kw">switch</span>.(c).{... |
| 6cde0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ..............<span.class="tok-s |
| 6ce00 | 74 72 22 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 | tr">'}'</span>.=>.{.......... |
| 6ce20 | 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 73 74 61 72 74 3b 0a | ...........state.=.State.start;. |
| 6ce40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 69 6e 64 65 78 20 | ....................start_index. |
| 6ce60 | 3d 20 69 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 | =.i;.................},......... |
| 6ce80 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | ........<span.class="tok-kw">els |
| 6cea0 | 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e</span>.=>.<span.class="tok- |
| 6cec0 | 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 | builtin">@compileError</span>(<s |
| 6cee0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 53 69 6e 67 6c 65 | pan.class="tok-str">"Single |
| 6cf00 | 20 27 7d 27 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 69 6e 20 66 6f 72 6d 61 74 20 73 74 72 69 6e | .'}'.encountered.in.format.strin |
| 6cf20 | 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a | g"</span>),.............},. |
| 6cf40 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ........}.....}.....<span.class= |
| 6cf60 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 | "tok-kw">comptime</span>.{...... |
| 6cf80 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | ...<span.class="tok-kw">if</span |
| 6cfa0 | 3e 20 28 61 72 67 73 2e 6c 65 6e 20 21 3d 20 6e 65 78 74 5f 61 72 67 29 20 7b 0a 20 20 20 20 20 | >.(args.len.!=.next_arg).{...... |
| 6cfc0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | .......<span.class="tok-builtin" |
| 6cfe0 | 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | >@compileError</span>(<span.clas |
| 6d000 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 55 6e 75 73 65 64 20 61 72 67 75 6d 65 6e | s="tok-str">"Unused.argumen |
| 6d020 | 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | ts"</span>);.........}..... |
| 6d040 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 | ....<span.class="tok-kw">if</spa |
| 6d060 | 6e 3e 20 28 73 74 61 74 65 20 21 3d 20 53 74 61 74 65 2e 53 74 61 72 74 29 20 7b 0a 20 20 20 20 | n>.(state.!=.State.Start).{..... |
| 6d080 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | ........<span.class="tok-builtin |
| 6d0a0 | 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ">@compileError</span>(<span.cla |
| 6d0c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 49 6e 63 6f 6d 70 6c 65 74 65 20 66 6f | ss="tok-str">"Incomplete.fo |
| 6d0e0 | 72 6d 61 74 20 73 74 72 69 6e 67 3a 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 2b 2b 20 66 6f | rmat.string:."</span>.++.fo |
| 6d100 | 72 6d 61 74 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e | rmat);.........}.....}.....<span |
| 6d120 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 | .class="tok-kw">if</span>.(start |
| 6d140 | 5f 69 6e 64 65 78 20 26 6c 74 3b 20 66 6f 72 6d 61 74 2e 6c 65 6e 29 20 7b 0a 20 20 20 20 20 20 | _index.<.format.len).{....... |
| 6d160 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 6d180 | 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f 69 6e 64 65 78 2e | >.self.write(format[start_index. |
| 6d1a0 | 2e 66 6f 72 6d 61 74 2e 6c 65 6e 5d 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .format.len]);.....}.....<span.c |
| 6d1c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 66 6c | lass="tok-kw">try</span>.self.fl |
| 6d1e0 | 75 73 68 28 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | ush();.}</code></pre>.......<p>. |
| 6d200 | 20 20 20 20 20 20 54 68 69 73 20 69 73 20 61 20 70 72 6f 6f 66 20 6f 66 20 63 6f 6e 63 65 70 74 | ......This.is.a.proof.of.concept |
| 6d220 | 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 3b 20 74 68 65 20 61 63 74 75 61 6c 20 66 75 6e 63 | .implementation;.the.actual.func |
| 6d240 | 74 69 6f 6e 20 69 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 68 61 73 | tion.in.the.standard.library.has |
| 6d260 | 20 6d 6f 72 65 0a 20 20 20 20 20 20 66 6f 72 6d 61 74 74 69 6e 67 20 63 61 70 61 62 69 6c 69 74 | .more.......formatting.capabilit |
| 6d280 | 69 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ies........</p>.......<p>....... |
| 6d2a0 | 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 69 73 20 6e 6f 74 20 68 61 72 64 2d 63 6f 64 65 64 | Note.that.this.is.not.hard-coded |
| 6d2c0 | 20 69 6e 74 6f 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 65 72 3b 20 74 68 69 73 20 69 73 20 | .into.the.Zig.compiler;.this.is. |
| 6d2e0 | 75 73 65 72 6c 61 6e 64 20 63 6f 64 65 20 69 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 | userland.code.in.the.standard.li |
| 6d300 | 62 72 61 72 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | brary........</p>.......<p>..... |
| 6d320 | 20 20 57 68 65 6e 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 6e 61 6c 79 7a 65 64 | ..When.this.function.is.analyzed |
| 6d340 | 20 66 72 6f 6d 20 6f 75 72 20 65 78 61 6d 70 6c 65 20 63 6f 64 65 20 61 62 6f 76 65 2c 20 5a 69 | .from.our.example.code.above,.Zi |
| 6d360 | 67 20 70 61 72 74 69 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 73 20 74 68 65 20 66 75 6e 63 74 69 | g.partially.evaluates.the.functi |
| 6d380 | 6f 6e 0a 20 20 20 20 20 20 61 6e 64 20 65 6d 69 74 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 | on.......and.emits.a.function.th |
| 6d3a0 | 61 74 20 61 63 74 75 61 6c 6c 79 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 | at.actually.looks.like.this:.... |
| 6d3c0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...</p>.......<pre><code.class=" |
| 6d3e0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | zig"><span.class="tok-kw">pub</s |
| 6d400 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | pan>.<span.class="tok-kw">fn</sp |
| 6d420 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 72 69 6e 74 66 3c | an>.<span.class="tok-fn">printf< |
| 6d440 | 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 57 72 69 74 65 72 2c 20 61 72 67 30 3a 20 3c 73 70 61 | /span>(self:.*Writer,.arg0:.<spa |
| 6d460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 61 | n.class="tok-type">i32</span>,.a |
| 6d480 | 72 67 31 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | rg1:.[]<span.class="tok-kw">cons |
| 6d4a0 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | t</span>.<span.class="tok-type"> |
| 6d4c0 | 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | u8</span>).!<span.class="tok-typ |
| 6d4e0 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">void</span>.{.....<span.class |
| 6d500 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 | ="tok-kw">try</span>.self.write( |
| 6d520 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 72 65 | <span.class="tok-str">"here |
| 6d540 | 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .is.a.string:.'"</span>);.. |
| 6d560 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 6d580 | 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 61 72 67 30 29 3b 0a 20 20 20 20 3c 73 | n>.self.printValue(arg0);.....<s |
| 6d5a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 | pan.class="tok-kw">try</span>.se |
| 6d5c0 | 6c 66 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | lf.write(<span.class="tok-str">& |
| 6d5e0 | 71 75 6f 74 3b 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 26 71 75 6f 74 3b 3c | quot;'.here.is.a.number:."< |
| 6d600 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>);.....<span.class="tok-kw |
| 6d620 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 61 72 67 | ">try</span>.self.printValue(arg |
| 6d640 | 31 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | 1);.....<span.class="tok-kw">try |
| 6d660 | 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.self.write(<span.class=" |
| 6d680 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b | tok-str">"\n"</span>); |
| 6d6a0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 6d6c0 | 70 61 6e 3e 20 73 65 6c 66 2e 66 6c 75 73 68 28 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | pan>.self.flush();.}</code></pre |
| 6d6e0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.......<p>.......<code.class="z |
| 6d700 | 69 67 22 3e 70 72 69 6e 74 56 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 66 75 6e 63 74 | ig">printValue</code>.is.a.funct |
| 6d720 | 69 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 6f 66 20 61 6e | ion.that.takes.a.parameter.of.an |
| 6d740 | 79 20 74 79 70 65 2c 20 61 6e 64 20 64 6f 65 73 20 64 69 66 66 65 72 65 6e 74 20 74 68 69 6e 67 | y.type,.and.does.different.thing |
| 6d760 | 73 20 64 65 70 65 6e 64 69 6e 67 0a 20 20 20 20 20 20 6f 6e 20 74 68 65 20 74 79 70 65 3a 0a 20 | s.depending.......on.the.type:.. |
| 6d780 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | .....</p>.......<pre><code.class |
| 6d7a0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | ="zig"><span.class="tok-kw">pub< |
| 6d7c0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | /span>.<span.class="tok-kw">fn</ |
| 6d7e0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 72 69 6e 74 | span>.<span.class="tok-fn">print |
| 6d800 | 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 57 72 69 74 65 72 2c 20 76 61 6c 75 | Value</span>(self:.*Writer,.valu |
| 6d820 | 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c | e:.<span.class="tok-kw">anytype< |
| 6d840 | 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | /span>).!<span.class="tok-type"> |
| 6d860 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | void</span>.{.....<span.class="t |
| 6d880 | 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 | ok-kw">switch</span>.(<span.clas |
| 6d8a0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e | s="tok-builtin">@typeInfo</span> |
| 6d8c0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 | (<span.class="tok-builtin">@Type |
| 6d8e0 | 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 29 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 49 6e | Of</span>(value))).{..........In |
| 6d900 | 74 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | t.=>.{.............<span.clas |
| 6d920 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 | s="tok-kw">return</span>.self.pr |
| 6d940 | 69 6e 74 49 6e 74 28 54 2c 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 | intInt(T,.value);.........},.... |
| 6d960 | 20 20 20 20 20 2e 46 6c 6f 61 74 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ......Float.=>.{............. |
| 6d980 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 | <span.class="tok-kw">return</spa |
| 6d9a0 | 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 46 6c 6f 61 74 28 54 2c 20 76 61 6c 75 65 29 3b 0a 20 20 | n>.self.printFloat(T,.value);... |
| 6d9c0 | 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......},.........<span.class="to |
| 6d9e0 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 | k-kw">else</span>.=>.{....... |
| 6da00 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | ......<span.class="tok-builtin"> |
| 6da20 | 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | @compileError</span>(<span.class |
| 6da40 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 55 6e 61 62 6c 65 20 74 6f 20 70 72 69 6e 74 | ="tok-str">"Unable.to.print |
| 6da60 | 20 74 79 70 65 20 27 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 2b 2b 20 3c 73 70 61 6e 20 63 6c | .type.'"</span>.++.<span.cl |
| 6da80 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 | ass="tok-builtin">@typeName</spa |
| 6daa0 | 6e 3e 28 54 29 20 2b 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | n>(T).++.<span.class="tok-str">& |
| 6dac0 | 71 75 6f 74 3b 27 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d 2c | quot;'"</span>);.........}, |
| 6dae0 | 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | .....}.}</code></pre>.......<p>. |
| 6db00 | 20 20 20 20 20 20 41 6e 64 20 6e 6f 77 2c 20 77 68 61 74 20 68 61 70 70 65 6e 73 20 69 66 20 77 | ......And.now,.what.happens.if.w |
| 6db20 | 65 20 67 69 76 65 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 3c 63 6f | e.give.too.many.arguments.to.<co |
| 6db40 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 72 69 6e 74 66 3c 2f 63 6f 64 65 3e 3f 0a 20 20 | de.class="zig">printf</code>?... |
| 6db60 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| 6db80 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 6dba0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 6dbc0 | 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | an>.print.=.<span.class="tok-bui |
| 6dbe0 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| 6dc00 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ="tok-str">"std"</span |
| 6dc20 | 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >).debug.print;..<span.class="to |
| 6dc40 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 | k-kw">const</span>.a_number:.<sp |
| 6dc60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-type">i32</span>.= |
| 6dc80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f | .<span.class="tok-number">1234</ |
| 6dca0 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | span>;.<span.class="tok-kw">cons |
| 6dcc0 | 74 3c 2f 73 70 61 6e 3e 20 61 5f 73 74 72 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>.a_string.=.<span.class= |
| 6dce0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 | "tok-str">"foobar"</sp |
| 6dd00 | 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | an>;..<span.class="tok-kw">test< |
| 6dd20 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>.<span.class="tok-str">&qu |
| 6dd40 | 6f 74 3b 70 72 69 6e 74 66 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 26 71 75 6f | ot;printf.too.many.arguments&quo |
| 6dd60 | 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 | t;</span>.{.....print(<span.clas |
| 6dd80 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 | s="tok-str">"here.is.a.stri |
| 6dda0 | 6e 67 3a 20 27 7b 73 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e | ng:.'{s}'.here.is.a.number:.{}\n |
| 6ddc0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 61 5f 73 74 72 69 | "</span>,..{.........a_stri |
| 6dde0 | 6e 67 2c 0a 20 20 20 20 20 20 20 20 61 5f 6e 75 6d 62 65 72 2c 0a 20 20 20 20 20 20 20 20 61 5f | ng,.........a_number,.........a_ |
| 6de00 | 6e 75 6d 62 65 72 2c 0a 20 20 20 20 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | number,.....});.}</code></pre><p |
| 6de20 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 6de40 | 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f | t.test.zig.<span.class="t0_1">./ |
| 6de60 | 6c 69 62 2f 73 74 64 2f 66 6d 74 2e 7a 69 67 3a 33 36 32 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | lib/std/fmt.zig:362:9:.</span><s |
| 6de80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e | pan.class="t31_1">error:.</span> |
| 6dea0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 55 6e 75 73 65 64 20 61 72 67 75 6d 65 | <span.class="t0_1">Unused.argume |
| 6dec0 | 6e 74 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 | nts</span>.........@compileError |
| 6dee0 | 28 26 71 75 6f 74 3b 55 6e 75 73 65 64 20 61 72 67 75 6d 65 6e 74 73 26 71 75 6f 74 3b 29 3b 0a | ("Unused.arguments");. |
| 6df00 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | ........<span.class="t32_1">^</s |
| 6df20 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 | pan>.<span.class="t0_1">./lib/st |
| 6df40 | 64 2f 69 6f 2f 77 72 69 74 65 72 2e 7a 69 67 3a 33 34 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | d/io/writer.zig:34:34:.</span><s |
| 6df60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c | pan.class="t36_1">note:.</span>< |
| 6df80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 | span.class="t0_1">called.from.he |
| 6dfa0 | 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 74 64 | re</span>.............return.std |
| 6dfc0 | 2e 66 6d 74 2e 66 6f 72 6d 61 74 28 73 65 6c 66 2c 20 66 6f 72 6d 61 74 2c 20 61 72 67 73 29 3b | .fmt.format(self,.format,.args); |
| 6dfe0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 6e000 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 6e020 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 | span.class="t0_1">./lib/std/debu |
| 6e040 | 67 2e 7a 69 67 3a 36 38 3a 32 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | g.zig:68:27:.</span><span.class= |
| 6e060 | 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | "t36_1">note:.</span><span.class |
| 6e080 | 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a | ="t0_1">called.from.here</span>. |
| 6e0a0 | 20 20 20 20 6e 6f 73 75 73 70 65 6e 64 20 73 74 64 65 72 72 2e 70 72 69 6e 74 28 66 6d 74 2c 20 | ....nosuspend.stderr.print(fmt,. |
| 6e0c0 | 61 72 67 73 29 20 63 61 74 63 68 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | args).catch.return;............. |
| 6e0e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ..............<span.class="t32_1 |
| 6e100 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f | ">^</span>.<span.class="t0_1">./ |
| 6e120 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 37 3a 31 30 3a 20 3c 2f 73 70 61 6e | docgen_tmp/test.zig:7:10:.</span |
| 6e140 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 | ><span.class="t36_1">note:.</spa |
| 6e160 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d | n><span.class="t0_1">called.from |
| 6e180 | 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 26 71 75 6f 74 3b 68 65 72 | .here</span>.....print("her |
| 6e1a0 | 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 73 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e | e.is.a.string:.'{s}'.here.is.a.n |
| 6e1c0 | 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 3c | umber:.{}\n",..{..........< |
| 6e1e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 6e200 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | n.class="t0_1">./docgen_tmp/test |
| 6e220 | 2e 7a 69 67 3a 36 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .zig:6:34:.</span><span.class="t |
| 6e240 | 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 36_1">note:.</span><span.class=" |
| 6e260 | 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 | t0_1">called.from.here</span>.te |
| 6e280 | 73 74 20 26 71 75 6f 74 3b 70 72 69 6e 74 66 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e | st."printf.too.many.argumen |
| 6e2a0 | 74 73 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ts".{...................... |
| 6e2c0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| 6e2e0 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 | ^</span>.<span.class="t0_1">./li |
| 6e300 | 62 2f 73 74 64 2f 69 6f 2f 77 72 69 74 65 72 2e 7a 69 67 3a 33 34 3a 33 34 3a 20 3c 2f 73 70 61 | b/std/io/writer.zig:34:34:.</spa |
| 6e320 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 | n><span.class="t31_1">error:.</s |
| 6e340 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 | pan><span.class="t0_1">expected. |
| 6e360 | 74 79 70 65 20 27 73 74 64 2e 6f 73 2e 57 72 69 74 65 45 72 72 6f 72 21 76 6f 69 64 27 2c 20 66 | type.'std.os.WriteError!void',.f |
| 6e380 | 6f 75 6e 64 20 27 40 74 79 70 65 49 6e 66 6f 28 40 74 79 70 65 49 6e 66 6f 28 40 54 79 70 65 4f | ound.'@typeInfo(@typeInfo(@TypeO |
| 6e3a0 | 66 28 73 74 64 2e 66 6d 74 2e 66 6f 72 6d 61 74 29 29 2e 46 6e 2e 72 65 74 75 72 6e 5f 74 79 70 | f(std.fmt.format)).Fn.return_typ |
| 6e3c0 | 65 2e 3f 29 2e 45 72 72 6f 72 55 6e 69 6f 6e 2e 65 72 72 6f 72 5f 73 65 74 21 76 6f 69 64 27 3c | e.?).ErrorUnion.error_set!void'< |
| 6e3e0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 74 64 2e 66 6d | /span>.............return.std.fm |
| 6e400 | 74 2e 66 6f 72 6d 61 74 28 73 65 6c 66 2c 20 66 6f 72 6d 61 74 2c 20 61 72 67 73 29 3b 0a 20 20 | t.format(self,.format,.args);... |
| 6e420 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ...............................< |
| 6e440 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 6e460 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a | n.class="t0_1">./lib/std/debug.z |
| 6e480 | 69 67 3a 36 38 3a 32 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | ig:68:27:.</span><span.class="t3 |
| 6e4a0 | 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 6_1">note:.</span><span.class="t |
| 6e4c0 | 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 0_1">called.from.here</span>.... |
| 6e4e0 | 20 6e 6f 73 75 73 70 65 6e 64 20 73 74 64 65 72 72 2e 70 72 69 6e 74 28 66 6d 74 2c 20 61 72 67 | .nosuspend.stderr.print(fmt,.arg |
| 6e500 | 73 29 20 63 61 74 63 68 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | s).catch.return;................ |
| 6e520 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 6e540 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 | </span>.<span.class="t0_1">./doc |
| 6e560 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 37 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | gen_tmp/test.zig:7:10:.</span><s |
| 6e580 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c | pan.class="t36_1">note:.</span>< |
| 6e5a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 | span.class="t0_1">called.from.he |
| 6e5c0 | 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 26 71 75 6f 74 3b 68 65 72 65 20 69 | re</span>.....print("here.i |
| 6e5e0 | 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 73 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 | s.a.string:.'{s}'.here.is.a.numb |
| 6e600 | 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 | er:.{}\n",..{..........<spa |
| 6e620 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 6e640 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 6e660 | 67 3a 36 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f | g:6:34:.</span><span.class="t36_ |
| 6e680 | 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | 1">note:.</span><span.class="t0_ |
| 6e6a0 | 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 | 1">called.from.here</span>.test. |
| 6e6c0 | 26 71 75 6f 74 3b 70 72 69 6e 74 66 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 26 | "printf.too.many.arguments& |
| 6e6e0 | 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | quot;.{......................... |
| 6e700 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 6e720 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 | span>.<span.class="t0_1">./lib/s |
| 6e740 | 74 64 2f 69 6f 2f 77 72 69 74 65 72 2e 7a 69 67 3a 33 34 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c | td/io/writer.zig:34:34:.</span>< |
| 6e760 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e | span.class="t36_1">note:.</span> |
| 6e780 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 72 72 6f 72 20 73 65 74 20 27 40 74 | <span.class="t0_1">error.set.'@t |
| 6e7a0 | 79 70 65 49 6e 66 6f 28 40 74 79 70 65 49 6e 66 6f 28 40 54 79 70 65 4f 66 28 73 74 64 2e 66 6d | ypeInfo(@typeInfo(@TypeOf(std.fm |
| 6e7c0 | 74 2e 66 6f 72 6d 61 74 29 29 2e 46 6e 2e 72 65 74 75 72 6e 5f 74 79 70 65 2e 3f 29 2e 45 72 72 | t.format)).Fn.return_type.?).Err |
| 6e7e0 | 6f 72 55 6e 69 6f 6e 2e 65 72 72 6f 72 5f 73 65 74 27 20 63 61 6e 6e 6f 74 20 63 61 73 74 20 69 | orUnion.error_set'.cannot.cast.i |
| 6e800 | 6e 74 6f 20 65 72 72 6f 72 20 73 65 74 20 27 73 74 64 2e 6f 73 2e 57 72 69 74 65 45 72 72 6f 72 | nto.error.set.'std.os.WriteError |
| 6e820 | 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 74 64 2e | '</span>.............return.std. |
| 6e840 | 66 6d 74 2e 66 6f 72 6d 61 74 28 73 65 6c 66 2c 20 66 6f 72 6d 61 74 2c 20 61 72 67 73 29 3b 0a | fmt.format(self,.format,.args);. |
| 6e860 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 6e880 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f | .<span.class="t32_1">^</span>.</ |
| 6e8a0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 | code></pre>........<p>.......Zig |
| 6e8c0 | 20 67 69 76 65 73 20 70 72 6f 67 72 61 6d 6d 65 72 73 20 74 68 65 20 74 6f 6f 6c 73 20 6e 65 65 | .gives.programmers.the.tools.nee |
| 6e8e0 | 64 65 64 20 74 6f 20 70 72 6f 74 65 63 74 20 74 68 65 6d 73 65 6c 76 65 73 20 61 67 61 69 6e 73 | ded.to.protect.themselves.agains |
| 6e900 | 74 20 74 68 65 69 72 20 6f 77 6e 20 6d 69 73 74 61 6b 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | t.their.own.mistakes........</p> |
| 6e920 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 64 6f 65 73 6e 27 74 20 63 61 72 | .......<p>.......Zig.doesn't.car |
| 6e940 | 65 20 77 68 65 74 68 65 72 20 74 68 65 20 66 6f 72 6d 61 74 20 61 72 67 75 6d 65 6e 74 20 69 73 | e.whether.the.format.argument.is |
| 6e960 | 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2c 0a 20 20 20 20 20 20 6f 6e 6c 79 20 74 68 | .a.string.literal,.......only.th |
| 6e980 | 61 74 20 69 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 61 | at.it.is.a.compile-time.known.va |
| 6e9a0 | 6c 75 65 20 74 68 61 74 20 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 61 20 3c 63 6f | lue.that.can.be.coerced.to.a.<co |
| 6e9c0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | de.class="zig">[]<span.class="to |
| 6e9e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-kw">const</span>.<span.class=" |
| 6ea00 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 | tok-type">u8</span></code>:..... |
| 6ea20 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 72 69 | ..</p>.......<p.class="file">pri |
| 6ea40 | 6e 74 66 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ntf.zig</p><pre><code.class="zig |
| 6ea60 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 6ea80 | 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | an>.print.=.<span.class="tok-bui |
| 6eaa0 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| 6eac0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ="tok-str">"std"</span |
| 6eae0 | 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >).debug.print;..<span.class="to |
| 6eb00 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 | k-kw">const</span>.a_number:.<sp |
| 6eb20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-type">i32</span>.= |
| 6eb40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f | .<span.class="tok-number">1234</ |
| 6eb60 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | span>;.<span.class="tok-kw">cons |
| 6eb80 | 74 3c 2f 73 70 61 6e 3e 20 61 5f 73 74 72 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>.a_string.=.<span.class= |
| 6eba0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 | "tok-str">"foobar"</sp |
| 6ebc0 | 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | an>;.<span.class="tok-kw">const< |
| 6ebe0 | 2f 73 70 61 6e 3e 20 66 6d 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | /span>.fmt.=.<span.class="tok-st |
| 6ec00 | 72 22 3e 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 73 7d 27 | r">"here.is.a.string:.'{s}' |
| 6ec20 | 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | .here.is.a.number:.{}\n"</s |
| 6ec40 | 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | pan>;..<span.class="tok-kw">pub< |
| 6ec60 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | /span>.<span.class="tok-kw">fn</ |
| 6ec80 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c | span>.<span.class="tok-fn">main< |
| 6eca0 | 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | /span>().<span.class="tok-type"> |
| 6ecc0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 66 6d 74 2c 20 2e 7b 61 | void</span>.{.....print(fmt,..{a |
| 6ece0 | 5f 73 74 72 69 6e 67 2c 20 61 5f 6e 75 6d 62 65 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | _string,.a_number});.}</code></p |
| 6ed00 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 6ed20 | 67 20 62 75 69 6c 64 2d 65 78 65 20 70 72 69 6e 74 66 2e 7a 69 67 0a 24 20 2e 2f 70 72 69 6e 74 | g.build-exe.printf.zig.$../print |
| 6ed40 | 66 0a 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 66 6f 6f 62 61 72 27 20 68 65 72 | f.here.is.a.string:.'foobar'.her |
| 6ed60 | 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 31 32 33 34 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | e.is.a.number:.1234.</code></pre |
| 6ed80 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 66 69 | >........<p>.......This.works.fi |
| 6eda0 | 6e 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a | ne........</p>.......<p>.......Z |
| 6edc0 | 69 67 20 64 6f 65 73 20 6e 6f 74 20 73 70 65 63 69 61 6c 20 63 61 73 65 20 73 74 72 69 6e 67 20 | ig.does.not.special.case.string. |
| 6ede0 | 66 6f 72 6d 61 74 74 69 6e 67 20 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 69 | formatting.in.the.compiler.and.i |
| 6ee00 | 6e 73 74 65 61 64 20 65 78 70 6f 73 65 73 20 65 6e 6f 75 67 68 20 70 6f 77 65 72 20 74 6f 20 61 | nstead.exposes.enough.power.to.a |
| 6ee20 | 63 63 6f 6d 70 6c 69 73 68 20 74 68 69 73 0a 20 20 20 20 20 20 74 61 73 6b 20 69 6e 20 75 73 65 | ccomplish.this.......task.in.use |
| 6ee40 | 72 6c 61 6e 64 2e 20 49 74 20 64 6f 65 73 20 73 6f 20 77 69 74 68 6f 75 74 20 69 6e 74 72 6f 64 | rland..It.does.so.without.introd |
| 6ee60 | 75 63 69 6e 67 20 61 6e 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 20 6f 6e 20 74 6f 70 20 6f 66 | ucing.another.language.on.top.of |
| 6ee80 | 20 5a 69 67 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 61 20 6d 61 63 72 6f 20 6c 61 6e 67 | .Zig,.such.as.......a.macro.lang |
| 6eea0 | 75 61 67 65 20 6f 72 20 61 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 6c 61 6e 67 75 61 67 65 2e | uage.or.a.preprocessor.language. |
| 6eec0 | 20 49 74 27 73 20 5a 69 67 20 61 6c 6c 20 74 68 65 20 77 61 79 20 64 6f 77 6e 2e 0a 20 20 20 20 | .It's.Zig.all.the.way.down...... |
| 6eee0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a | ..</p>..............<p>See.also: |
| 6ef00 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 | </p><ul>.<li><a.href="#inline-wh |
| 6ef20 | 69 6c 65 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | ile">inline.while</a></li>.<li>< |
| 6ef40 | 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c | a.href="#inline-for">inline.for< |
| 6ef60 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 | /a></li>.</ul>...............<h1 |
| 6ef80 | 20 69 64 3d 22 41 73 73 65 6d 62 6c 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 73 | .id="Assembly"><a.href="#toc-Ass |
| 6efa0 | 65 6d 62 6c 79 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | embly">Assembly</a>.<a.class="hd |
| 6efc0 | 72 22 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a | r".href="#Assembly">..</a></h1>. |
| 6efe0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 73 6f 6d 65 20 75 73 65 20 63 61 | .......<p>.......For.some.use.ca |
| 6f000 | 73 65 73 2c 20 69 74 20 6d 61 79 20 62 65 20 6e 65 63 65 73 73 61 72 79 20 74 6f 20 64 69 72 65 | ses,.it.may.be.necessary.to.dire |
| 6f020 | 63 74 6c 79 20 63 6f 6e 74 72 6f 6c 20 74 68 65 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 67 65 | ctly.control.the.machine.code.ge |
| 6f040 | 6e 65 72 61 74 65 64 0a 20 20 20 20 20 20 62 79 20 5a 69 67 20 70 72 6f 67 72 61 6d 73 2c 20 72 | nerated.......by.Zig.programs,.r |
| 6f060 | 61 74 68 65 72 20 74 68 61 6e 20 72 65 6c 79 69 6e 67 20 6f 6e 20 5a 69 67 27 73 20 63 6f 64 65 | ather.than.relying.on.Zig's.code |
| 6f080 | 20 67 65 6e 65 72 61 74 69 6f 6e 2e 20 46 6f 72 20 74 68 65 73 65 20 63 61 73 65 73 2c 20 6f 6e | .generation..For.these.cases,.on |
| 6f0a0 | 65 0a 20 20 20 20 20 20 63 61 6e 20 75 73 65 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 2e | e.......can.use.inline.assembly. |
| 6f0c0 | 20 48 65 72 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 | .Here.is.an.example.of.implement |
| 6f0e0 | 69 6e 67 20 48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 20 6f 6e 20 78 38 36 5f 36 34 20 4c 69 6e 75 78 | ing.Hello,.World.on.x86_64.Linux |
| 6f100 | 0a 20 20 20 20 20 20 75 73 69 6e 67 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 3a 0a 20 20 | .......using.inline.assembly:... |
| 6f120 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| 6f140 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 6f160 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e | "><span.class="tok-kw">pub</span |
| 6f180 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">fn</span> |
| 6f1a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e | .<span.class="tok-fn">main</span |
| 6f1c0 | 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 | >().<span.class="tok-type">noret |
| 6f1e0 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | urn</span>.{.....<span.class="to |
| 6f200 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 73 67 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.msg.=.<span.c |
| 6f220 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 77 6f 72 6c 64 | lass="tok-str">"hello.world |
| 6f240 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 73 79 73 63 61 6c 6c | \n"</span>;....._.=.syscall |
| 6f260 | 33 28 53 59 53 5f 77 72 69 74 65 2c 20 53 54 44 4f 55 54 5f 46 49 4c 45 4e 4f 2c 20 3c 73 70 61 | 3(SYS_write,.STDOUT_FILENO,.<spa |
| 6f280 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c | n.class="tok-builtin">@ptrToInt< |
| 6f2a0 | 2f 73 70 61 6e 3e 28 6d 73 67 29 2c 20 6d 73 67 2e 6c 65 6e 29 3b 0a 20 20 20 20 5f 20 3d 20 73 | /span>(msg),.msg.len);....._.=.s |
| 6f2c0 | 79 73 63 61 6c 6c 31 28 53 59 53 5f 65 78 69 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | yscall1(SYS_exit,.<span.class="t |
| 6f2e0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ok-number">0</span>);.....<span. |
| 6f300 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e | class="tok-kw">unreachable</span |
| 6f320 | 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | >;.}..<span.class="tok-kw">pub</ |
| 6f340 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | span>.<span.class="tok-kw">const |
| 6f360 | 3c 2f 73 70 61 6e 3e 20 53 59 53 5f 77 72 69 74 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>.SYS_write.=.<span.class= |
| 6f380 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 | "tok-number">1</span>;.<span.cla |
| 6f3a0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ss="tok-kw">pub</span>.<span.cla |
| 6f3c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 59 53 5f 65 78 69 | ss="tok-kw">const</span>.SYS_exi |
| 6f3e0 | 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 30 3c | t.=.<span.class="tok-number">60< |
| 6f400 | 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | /span>;..<span.class="tok-kw">pu |
| 6f420 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | b</span>.<span.class="tok-kw">co |
| 6f440 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 54 44 4f 55 54 5f 46 49 4c 45 4e 4f 20 3d 20 3c 73 70 61 6e | nst</span>.STDOUT_FILENO.=.<span |
| 6f460 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c | .class="tok-number">1</span>;..< |
| 6f480 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c | span.class="tok-kw">pub</span>.< |
| 6f4a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 6f4c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 79 73 63 61 6c 6c 31 3c 2f 73 70 61 | pan.class="tok-fn">syscall1</spa |
| 6f4e0 | 6e 3e 28 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n>(number:.<span.class="tok-type |
| 6f500 | 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ">usize</span>,.arg1:.<span.clas |
| 6f520 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e | s="tok-type">usize</span>).<span |
| 6f540 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b | .class="tok-type">usize</span>.{ |
| 6f560 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e | .....<span.class="tok-kw">return |
| 6f580 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d | </span>.<span.class="tok-kw">asm |
| 6f5a0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c | </span>.<span.class="tok-kw">vol |
| 6f5c0 | 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | atile</span>.(<span.class="tok-s |
| 6f5e0 | 74 72 22 3e 26 71 75 6f 74 3b 73 79 73 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 | tr">"syscall"</span>.. |
| 6f600 | 20 20 20 20 20 20 20 3a 20 5b 72 65 74 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .......:.[ret].<span.class="tok- |
| 6f620 | 73 74 72 22 3e 26 71 75 6f 74 3b 3d 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 | str">"={rax}"</span>.( |
| 6f640 | 2d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 | ->.<span.class="tok-type">usi |
| 6f660 | 7a 65 3c 2f 73 70 61 6e 3e 29 0a 20 20 20 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 | ze</span>).........:.[number].<s |
| 6f680 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 | pan.class="tok-str">"{rax}& |
| 6f6a0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 | quot;</span>.(number),.......... |
| 6f6c0 | 20 5b 61 72 67 31 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | .[arg1].<span.class="tok-str">&q |
| 6f6e0 | 75 6f 74 3b 7b 72 64 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 0a 20 20 | uot;{rdi}"</span>.(arg1)... |
| 6f700 | 20 20 20 20 20 20 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | ......:.<span.class="tok-str">&q |
| 6f720 | 75 6f 74 3b 72 63 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | uot;rcx"</span>,.<span.clas |
| 6f740 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 31 31 26 71 75 6f 74 3b 3c 2f 73 70 61 | s="tok-str">"r11"</spa |
| 6f760 | 6e 3e 0a 20 20 20 20 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>.....);.}..<span.class="tok-kw |
| 6f780 | 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">pub</span>.<span.class="tok-kw |
| 6f7a0 | 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 | ">fn</span>.<span.class="tok-fn" |
| 6f7c0 | 3e 73 79 73 63 61 6c 6c 33 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 | >syscall3</span>(number:.<span.c |
| 6f7e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 | lass="tok-type">usize</span>,.ar |
| 6f800 | 67 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | g1:.<span.class="tok-type">usize |
| 6f820 | 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>,.arg2:.<span.class="tok- |
| 6f840 | 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 33 3a 20 3c 73 70 61 6e 20 | type">usize</span>,.arg3:.<span. |
| 6f860 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c | class="tok-type">usize</span>).< |
| 6f880 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 | span.class="tok-type">usize</spa |
| 6f8a0 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | n>.{.....<span.class="tok-kw">re |
| 6f8c0 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | turn</span>.<span.class="tok-kw" |
| 6f8e0 | 3e 61 73 6d 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >asm</span>.<span.class="tok-kw" |
| 6f900 | 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >volatile</span>.(<span.class="t |
| 6f920 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 79 73 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 | ok-str">"syscall"</spa |
| 6f940 | 6e 3e 0a 20 20 20 20 20 20 20 20 3a 20 5b 72 65 74 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.........:.[ret].<span.class=" |
| 6f960 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 3d 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 | tok-str">"={rax}"</spa |
| 6f980 | 6e 3e 20 28 2d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | n>.(->.<span.class="tok-type" |
| 6f9a0 | 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 0a 20 20 20 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 | >usize</span>).........:.[number |
| 6f9c0 | 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 | ].<span.class="tok-str">"{r |
| 6f9e0 | 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 | ax}"</span>.(number),...... |
| 6fa00 | 20 20 20 20 20 5b 61 72 67 31 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | .....[arg1].<span.class="tok-str |
| 6fa20 | 22 3e 26 71 75 6f 74 3b 7b 72 64 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 | ">"{rdi}"</span>.(arg1 |
| 6fa40 | 29 2c 0a 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 32 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ),...........[arg2].<span.class= |
| 6fa60 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 73 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 | "tok-str">"{rsi}"</spa |
| 6fa80 | 6e 3e 20 28 61 72 67 32 29 2c 0a 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 33 5d 20 3c 73 70 61 | n>.(arg2),...........[arg3].<spa |
| 6faa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 64 78 7d 26 71 75 | n.class="tok-str">"{rdx}&qu |
| 6fac0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 33 29 0a 20 20 20 20 20 20 20 20 3a 20 3c 73 70 61 | ot;</span>.(arg3).........:.<spa |
| 6fae0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 63 78 26 71 75 6f 74 | n.class="tok-str">"rcx" |
| 6fb00 | 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ;</span>,.<span.class="tok-str"> |
| 6fb20 | 26 71 75 6f 74 3b 72 31 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 29 3b 0a 7d 3c | "r11"</span>.....);.}< |
| 6fb40 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 6fb60 | 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 20 2d 74 | ell">$.zig.build-exe.test.zig.-t |
| 6fb80 | 61 72 67 65 74 20 78 38 36 5f 36 34 2d 6c 69 6e 75 78 0a 24 20 2e 2f 74 65 73 74 0a 68 65 6c 6c | arget.x86_64-linux.$../test.hell |
| 6fba0 | 6f 20 77 6f 72 6c 64 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | o.world.</code></pre>........<p> |
| 6fbc0 | 0a 20 20 20 20 20 20 44 69 73 73 65 63 74 69 6e 67 20 74 68 65 20 73 79 6e 74 61 78 3a 0a 20 20 | .......Dissecting.the.syntax:... |
| 6fbe0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ....</p>.......<pre><code.class= |
| 6fc00 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | "zig"><span.class="tok-comment"> |
| 6fc20 | 2f 2f 20 49 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 69 73 20 61 6e 20 65 78 70 72 65 73 73 | //.Inline.assembly.is.an.express |
| 6fc40 | 69 6f 6e 20 77 68 69 63 68 20 72 65 74 75 72 6e 73 20 61 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e | ion.which.returns.a.value.</span |
| 6fc60 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 | >.<span.class="tok-comment">//.t |
| 6fc80 | 68 65 20 60 61 73 6d 60 20 6b 65 79 77 6f 72 64 20 62 65 67 69 6e 73 20 74 68 65 20 65 78 70 72 | he.`asm`.keyword.begins.the.expr |
| 6fca0 | 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ession.</span>._.=.<span.class=" |
| 6fcc0 | 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tok-kw">asm</span>.<span.class=" |
| 6fce0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 76 6f 6c 61 74 69 6c 65 60 20 69 73 20 61 6e | tok-comment">//.`volatile`.is.an |
| 6fd00 | 20 6f 70 74 69 6f 6e 61 6c 20 6d 6f 64 69 66 69 65 72 20 74 68 61 74 20 74 65 6c 6c 73 20 5a 69 | .optional.modifier.that.tells.Zi |
| 6fd20 | 67 20 74 68 69 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | g.this</span>.<span.class="tok-c |
| 6fd40 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 | omment">//.inline.assembly.expre |
| 6fd60 | 73 73 69 6f 6e 20 68 61 73 20 73 69 64 65 2d 65 66 66 65 63 74 73 2e 20 57 69 74 68 6f 75 74 3c | ssion.has.side-effects..Without< |
| 6fd80 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | /span>.<span.class="tok-comment" |
| 6fda0 | 3e 2f 2f 20 60 76 6f 6c 61 74 69 6c 65 60 2c 20 5a 69 67 20 69 73 20 61 6c 6c 6f 77 65 64 20 74 | >//.`volatile`,.Zig.is.allowed.t |
| 6fdc0 | 6f 20 64 65 6c 65 74 65 20 74 68 65 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 3c 2f 73 70 | o.delete.the.inline.assembly</sp |
| 6fde0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | an>.<span.class="tok-comment">// |
| 6fe00 | 20 63 6f 64 65 20 69 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 75 6e 75 73 65 64 2e 3c 2f | .code.if.the.result.is.unused.</ |
| 6fe20 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 | span>.<span.class="tok-kw">volat |
| 6fe40 | 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | ile</span>.(.<span.class="tok-co |
| 6fe60 | 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 61 20 63 6f 6d 70 74 69 6d 65 20 73 74 72 | mment">//.Next.is.a.comptime.str |
| 6fe80 | 69 6e 67 20 77 68 69 63 68 20 69 73 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2e 3c | ing.which.is.the.assembly.code.< |
| 6fea0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | /span>.<span.class="tok-comment" |
| 6fec0 | 3e 2f 2f 20 49 6e 73 69 64 65 20 74 68 69 73 20 73 74 72 69 6e 67 20 6f 6e 65 20 6d 61 79 20 75 | >//.Inside.this.string.one.may.u |
| 6fee0 | 73 65 20 60 25 5b 72 65 74 5d 60 2c 20 60 25 5b 6e 75 6d 62 65 72 5d 60 2c 3c 2f 73 70 61 6e 3e | se.`%[ret]`,.`%[number]`,</span> |
| 6ff00 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 72 | .<span.class="tok-comment">//.or |
| 6ff20 | 20 60 25 5b 61 72 67 31 5d 60 20 77 68 65 72 65 20 61 20 72 65 67 69 73 74 65 72 20 69 73 20 65 | .`%[arg1]`.where.a.register.is.e |
| 6ff40 | 78 70 65 63 74 65 64 2c 20 74 6f 20 73 70 65 63 69 66 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | xpected,.to.specify</span>.<span |
| 6ff60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 72 65 67 69 | .class="tok-comment">//.the.regi |
| 6ff80 | 73 74 65 72 20 74 68 61 74 20 5a 69 67 20 75 73 65 73 20 66 6f 72 20 74 68 65 20 61 72 67 75 6d | ster.that.Zig.uses.for.the.argum |
| 6ffa0 | 65 6e 74 20 6f 72 20 72 65 74 75 72 6e 20 76 61 6c 75 65 2c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ent.or.return.value,</span>.<spa |
| 6ffc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 66 20 74 68 65 20 | n.class="tok-comment">//.if.the. |
| 6ffe0 | 72 65 67 69 73 74 65 72 20 63 6f 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e 67 73 20 61 72 65 20 | register.constraint.strings.are. |
| 70000 | 75 73 65 64 2e 20 48 6f 77 65 76 65 72 20 69 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | used..However.in</span>.<span.cl |
| 70020 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 62 65 6c 6f 77 20 63 | ass="tok-comment">//.the.below.c |
| 70040 | 6f 64 65 2c 20 74 68 69 73 20 69 73 20 6e 6f 74 20 75 73 65 64 2e 20 41 20 6c 69 74 65 72 61 6c | ode,.this.is.not.used..A.literal |
| 70060 | 20 60 25 60 20 63 61 6e 20 62 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .`%`.can.be</span>.<span.class=" |
| 70080 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 62 74 61 69 6e 65 64 20 62 79 20 65 73 63 61 | tok-comment">//.obtained.by.esca |
| 700a0 | 70 69 6e 67 20 69 74 20 77 69 74 68 20 61 20 64 6f 75 62 6c 65 20 70 65 72 63 65 6e 74 3a 20 60 | ping.it.with.a.double.percent:.` |
| 700c0 | 25 25 60 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | %%`.</span>.<span.class="tok-com |
| 700e0 | 6d 65 6e 74 22 3e 2f 2f 20 4f 66 74 65 6e 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 | ment">//.Often.multiline.string. |
| 70100 | 73 79 6e 74 61 78 20 63 6f 6d 65 73 20 69 6e 20 68 61 6e 64 79 20 68 65 72 65 2e 3c 2f 73 70 61 | syntax.comes.in.handy.here.</spa |
| 70120 | 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 73 | n>.....<span.class="tok-str">\\s |
| 70140 | 79 73 63 61 6c 6c 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | yscall.</span><span.class="tok-c |
| 70160 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 74 68 65 20 6f 75 74 70 75 74 2e 20 49 | omment">//.Next.is.the.output..I |
| 70180 | 74 20 69 73 20 70 6f 73 73 69 62 6c 65 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 20 5a 69 67 20 | t.is.possible.in.the.future.Zig. |
| 701a0 | 77 69 6c 6c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | will</span>.<span.class="tok-com |
| 701c0 | 6d 65 6e 74 22 3e 2f 2f 20 73 75 70 70 6f 72 74 20 6d 75 6c 74 69 70 6c 65 20 6f 75 74 70 75 74 | ment">//.support.multiple.output |
| 701e0 | 73 2c 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 68 6f 77 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | s,.depending.on.how</span>.<span |
| 70200 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 74 74 70 73 3a 2f 2f | .class="tok-comment">//.https:// |
| 70220 | 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 | github.com/ziglang/zig/issues/21 |
| 70240 | 35 20 69 73 20 72 65 73 6f 6c 76 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | 5.is.resolved.</span>.<span.clas |
| 70260 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 20 69 73 20 61 6c 6c 6f 77 65 64 | s="tok-comment">//.It.is.allowed |
| 70280 | 20 66 6f 72 20 74 68 65 72 65 20 74 6f 20 62 65 20 6e 6f 20 6f 75 74 70 75 74 73 2c 20 69 6e 20 | .for.there.to.be.no.outputs,.in. |
| 702a0 | 77 68 69 63 68 20 63 61 73 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | which.case</span>.<span.class="t |
| 702c0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 69 73 20 63 6f 6c 6f 6e 20 77 6f 75 6c 64 20 | ok-comment">//.this.colon.would. |
| 702e0 | 62 65 20 64 69 72 65 63 74 6c 79 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 74 68 65 20 63 6f 6c 6f | be.directly.followed.by.the.colo |
| 70300 | 6e 20 66 6f 72 20 74 68 65 20 69 6e 70 75 74 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3a 0a 3c | n.for.the.inputs.</span>.....:.< |
| 70320 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 | span.class="tok-comment">//.This |
| 70340 | 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 62 65 20 75 73 65 64 20 69 | .specifies.the.name.to.be.used.i |
| 70360 | 6e 20 60 25 5b 72 65 74 5d 60 20 73 79 6e 74 61 78 20 69 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | n.`%[ret]`.syntax.in</span>.<spa |
| 70380 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 61 62 6f | n.class="tok-comment">//.the.abo |
| 703a0 | 76 65 20 61 73 73 65 6d 62 6c 79 20 73 74 72 69 6e 67 2e 20 54 68 69 73 20 65 78 61 6d 70 6c 65 | ve.assembly.string..This.example |
| 703c0 | 20 64 6f 65 73 20 6e 6f 74 20 75 73 65 20 69 74 2c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | .does.not.use.it,</span>.<span.c |
| 703e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 75 74 20 74 68 65 20 73 79 | lass="tok-comment">//.but.the.sy |
| 70400 | 6e 74 61 78 20 69 73 20 6d 61 6e 64 61 74 6f 72 79 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5b 72 | ntax.is.mandatory.</span>.....[r |
| 70420 | 65 74 5d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | et].<span.class="tok-comment">// |
| 70440 | 20 4e 65 78 74 20 69 73 20 74 68 65 20 6f 75 74 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 20 73 | .Next.is.the.output.constraint.s |
| 70460 | 74 72 69 6e 67 2e 20 54 68 69 73 20 66 65 61 74 75 72 65 20 69 73 20 73 74 69 6c 6c 3c 2f 73 70 | tring..This.feature.is.still</sp |
| 70480 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | an>.<span.class="tok-comment">// |
| 704a0 | 20 63 6f 6e 73 69 64 65 72 65 64 20 75 6e 73 74 61 62 6c 65 20 69 6e 20 5a 69 67 2c 20 61 6e 64 | .considered.unstable.in.Zig,.and |
| 704c0 | 20 73 6f 20 4c 4c 56 4d 2f 47 43 43 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 73 70 61 6e | .so.LLVM/GCC.documentation</span |
| 704e0 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d | >.<span.class="tok-comment">//.m |
| 70500 | 75 73 74 20 62 65 20 75 73 65 64 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 73 65 | ust.be.used.to.understand.the.se |
| 70520 | 6d 61 6e 74 69 63 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mantics.</span>.<span.class="tok |
| 70540 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 74 74 70 3a 2f 2f 72 65 6c 65 61 73 65 73 2e 6c 6c 76 | -comment">//.http://releases.llv |
| 70560 | 6d 2e 6f 72 67 2f 31 30 2e 30 2e 30 2f 64 6f 63 73 2f 4c 61 6e 67 52 65 66 2e 68 74 6d 6c 23 69 | m.org/10.0.0/docs/LangRef.html#i |
| 70580 | 6e 6c 69 6e 65 2d 61 73 6d 2d 63 6f 6e 73 74 72 61 69 6e 74 2d 73 74 72 69 6e 67 3c 2f 73 70 61 | nline-asm-constraint-string</spa |
| 705a0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | n>.<span.class="tok-comment">//. |
| 705c0 | 68 74 74 70 73 3a 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 | https://gcc.gnu.org/onlinedocs/g |
| 705e0 | 63 63 2f 45 78 74 65 6e 64 65 64 2d 41 73 6d 2e 68 74 6d 6c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | cc/Extended-Asm.html</span>.<spa |
| 70600 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 74 68 69 73 | n.class="tok-comment">//.In.this |
| 70620 | 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e 67 20 | .example,.the.constraint.string. |
| 70640 | 6d 65 61 6e 73 20 26 71 75 6f 74 3b 74 68 65 20 72 65 73 75 6c 74 20 76 61 6c 75 65 20 6f 66 3c | means."the.result.value.of< |
| 70660 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | /span>.<span.class="tok-comment" |
| 70680 | 3e 2f 2f 20 74 68 69 73 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 69 6e 73 74 72 75 63 | >//.this.inline.assembly.instruc |
| 706a0 | 74 69 6f 6e 20 69 73 20 77 68 61 74 65 76 65 72 20 69 73 20 69 6e 20 24 72 61 78 26 71 75 6f 74 | tion.is.whatever.is.in.$rax" |
| 706c0 | 3b 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ;.</span>.....<span.class="tok-s |
| 706e0 | 74 72 22 3e 26 71 75 6f 74 3b 3d 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 | tr">"={rax}"</span>.<s |
| 70700 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 | pan.class="tok-comment">//.Next. |
| 70720 | 69 73 20 65 69 74 68 65 72 20 61 20 76 61 6c 75 65 20 62 69 6e 64 69 6e 67 2c 20 6f 72 20 60 2d | is.either.a.value.binding,.or.`- |
| 70740 | 26 67 74 3b 60 20 61 6e 64 20 74 68 65 6e 20 61 20 74 79 70 65 2e 20 54 68 65 3c 2f 73 70 61 6e | >`.and.then.a.type..The</span |
| 70760 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 | >.<span.class="tok-comment">//.t |
| 70780 | 79 70 65 20 69 73 20 74 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 20 6f 66 20 74 68 65 20 69 6e | ype.is.the.result.type.of.the.in |
| 707a0 | 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e | line.assembly.expression.</span> |
| 707c0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 | .<span.class="tok-comment">//.If |
| 707e0 | 20 69 74 20 69 73 20 61 20 76 61 6c 75 65 20 62 69 6e 64 69 6e 67 2c 20 74 68 65 6e 20 60 25 5b | .it.is.a.value.binding,.then.`%[ |
| 70800 | 72 65 74 5d 60 20 73 79 6e 74 61 78 20 77 6f 75 6c 64 20 62 65 20 75 73 65 64 3c 2f 73 70 61 6e | ret]`.syntax.would.be.used</span |
| 70820 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 | >.<span.class="tok-comment">//.t |
| 70840 | 6f 20 72 65 66 65 72 20 74 6f 20 74 68 65 20 72 65 67 69 73 74 65 72 20 62 6f 75 6e 64 20 74 6f | o.refer.to.the.register.bound.to |
| 70860 | 20 74 68 65 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 28 2d 26 67 74 3b 20 3c 73 | .the.value.</span>.....(->.<s |
| 70880 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e | pan.class="tok-type">usize</span |
| 708a0 | 3e 29 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | >).<span.class="tok-comment">//. |
| 708c0 | 4e 65 78 74 20 69 73 20 74 68 65 20 6c 69 73 74 20 6f 66 20 69 6e 70 75 74 73 2e 3c 2f 73 70 61 | Next.is.the.list.of.inputs.</spa |
| 708e0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | n>.<span.class="tok-comment">//. |
| 70900 | 54 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 20 66 6f 72 20 74 68 65 73 65 20 69 6e 70 75 74 73 20 | The.constraint.for.these.inputs. |
| 70920 | 6d 65 61 6e 73 2c 20 26 71 75 6f 74 3b 77 68 65 6e 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 | means,."when.the.assembly.c |
| 70940 | 6f 64 65 20 69 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | ode.is</span>.<span.class="tok-c |
| 70960 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 78 65 63 75 74 65 64 2c 20 24 72 61 78 20 73 68 61 6c 6c 20 | omment">//.executed,.$rax.shall. |
| 70980 | 68 61 76 65 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 60 6e 75 6d 62 65 72 60 20 61 6e 64 20 24 | have.the.value.of.`number`.and.$ |
| 709a0 | 72 64 69 20 73 68 61 6c 6c 20 68 61 76 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | rdi.shall.have</span>.<span.clas |
| 709c0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 | s="tok-comment">//.the.value.of. |
| 709e0 | 60 61 72 67 31 60 26 71 75 6f 74 3b 2e 20 41 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 69 6e 70 75 | `arg1`"..Any.number.of.inpu |
| 70a00 | 74 20 70 61 72 61 6d 65 74 65 72 73 20 69 73 20 61 6c 6c 6f 77 65 64 2c 3c 2f 73 70 61 6e 3e 0a | t.parameters.is.allowed,</span>. |
| 70a20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 63 | <span.class="tok-comment">//.inc |
| 70a40 | 6c 75 64 69 6e 67 20 6e 6f 6e 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3a 20 5b 6e 75 6d 62 65 | luding.none.</span>.....:.[numbe |
| 70a60 | 72 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b | r].<span.class="tok-str">"{ |
| 70a80 | 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 | rax}"</span>.(number),..... |
| 70aa0 | 20 20 20 20 5b 61 72 67 31 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ....[arg1].<span.class="tok-str" |
| 70ac0 | 3e 26 71 75 6f 74 3b 7b 72 64 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 | >"{rdi}"</span>.(arg1) |
| 70ae0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 | .<span.class="tok-comment">//.Ne |
| 70b00 | 78 74 20 69 73 20 74 68 65 20 6c 69 73 74 20 6f 66 20 63 6c 6f 62 62 65 72 73 2e 20 54 68 65 73 | xt.is.the.list.of.clobbers..Thes |
| 70b20 | 65 20 64 65 63 6c 61 72 65 20 61 20 73 65 74 20 6f 66 20 72 65 67 69 73 74 65 72 73 20 77 68 6f | e.declare.a.set.of.registers.who |
| 70b40 | 73 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | se</span>.<span.class="tok-comme |
| 70b60 | 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 73 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 70 72 65 73 65 72 | nt">//.values.will.not.be.preser |
| 70b80 | 76 65 64 20 62 79 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 61 73 73 | ved.by.the.execution.of.this.ass |
| 70ba0 | 65 6d 62 6c 79 20 63 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | embly.code.</span>.<span.class=" |
| 70bc0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 73 65 20 64 6f 20 6e 6f 74 20 69 6e 63 | tok-comment">//.These.do.not.inc |
| 70be0 | 6c 75 64 65 20 6f 75 74 70 75 74 20 6f 72 20 69 6e 70 75 74 20 72 65 67 69 73 74 65 72 73 2e 20 | lude.output.or.input.registers.. |
| 70c00 | 54 68 65 20 73 70 65 63 69 61 6c 20 63 6c 6f 62 62 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | The.special.clobber</span>.<span |
| 70c20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 20 6f 66 | .class="tok-comment">//.value.of |
| 70c40 | 20 26 71 75 6f 74 3b 6d 65 6d 6f 72 79 26 71 75 6f 74 3b 20 6d 65 61 6e 73 20 74 68 61 74 20 74 | ."memory".means.that.t |
| 70c60 | 68 65 20 61 73 73 65 6d 62 6c 79 20 77 72 69 74 65 73 20 74 6f 20 61 72 62 69 74 72 61 72 79 20 | he.assembly.writes.to.arbitrary. |
| 70c80 | 75 6e 64 65 63 6c 61 72 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | undeclared</span>.<span.class="t |
| 70ca0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 65 6d 6f 72 79 20 6c 6f 63 61 74 69 6f 6e 73 20 | ok-comment">//.memory.locations. |
| 70cc0 | 2d 20 6e 6f 74 20 6f 6e 6c 79 20 74 68 65 20 6d 65 6d 6f 72 79 20 70 6f 69 6e 74 65 64 20 74 6f | -.not.only.the.memory.pointed.to |
| 70ce0 | 20 62 79 20 61 20 64 65 63 6c 61 72 65 64 20 69 6e 64 69 72 65 63 74 3c 2f 73 70 61 6e 3e 0a 3c | .by.a.declared.indirect</span>.< |
| 70d00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 75 74 70 | span.class="tok-comment">//.outp |
| 70d20 | 75 74 2e 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 77 65 20 6c 69 73 74 20 24 72 63 78 | ut..In.this.example.we.list.$rcx |
| 70d40 | 20 61 6e 64 20 24 72 31 31 20 62 65 63 61 75 73 65 20 69 74 20 69 73 20 6b 6e 6f 77 6e 20 74 68 | .and.$r11.because.it.is.known.th |
| 70d60 | 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | e</span>.<span.class="tok-commen |
| 70d80 | 74 22 3e 2f 2f 20 6b 65 72 6e 65 6c 20 73 79 73 63 61 6c 6c 20 64 6f 65 73 20 6e 6f 74 20 70 72 | t">//.kernel.syscall.does.not.pr |
| 70da0 | 65 73 65 72 76 65 20 74 68 65 73 65 20 72 65 67 69 73 74 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 20 | eserve.these.registers.</span>.. |
| 70dc0 | 20 20 20 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | ...:.<span.class="tok-str">" |
| 70de0 | 3b 72 63 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ;rcx"</span>,.<span.class=" |
| 70e00 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 31 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a | tok-str">"r11"</span>. |
| 70e20 | 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | );</code></pre>.......<p>....... |
| 70e40 | 46 6f 72 20 69 33 38 36 20 61 6e 64 20 78 38 36 5f 36 34 20 74 61 72 67 65 74 73 2c 20 74 68 65 | For.i386.and.x86_64.targets,.the |
| 70e60 | 20 73 79 6e 74 61 78 20 69 73 20 41 54 26 61 6d 70 3b 54 20 73 79 6e 74 61 78 2c 20 72 61 74 68 | .syntax.is.AT&T.syntax,.rath |
| 70e80 | 65 72 20 74 68 61 6e 20 74 68 65 20 6d 6f 72 65 0a 20 20 20 20 20 20 70 6f 70 75 6c 61 72 20 49 | er.than.the.more.......popular.I |
| 70ea0 | 6e 74 65 6c 20 73 79 6e 74 61 78 2e 20 54 68 69 73 20 69 73 20 64 75 65 20 74 6f 20 74 65 63 68 | ntel.syntax..This.is.due.to.tech |
| 70ec0 | 6e 69 63 61 6c 20 63 6f 6e 73 74 72 61 69 6e 74 73 3b 20 61 73 73 65 6d 62 6c 79 20 70 61 72 73 | nical.constraints;.assembly.pars |
| 70ee0 | 69 6e 67 20 69 73 0a 20 20 20 20 20 20 70 72 6f 76 69 64 65 64 20 62 79 20 4c 4c 56 4d 20 61 6e | ing.is.......provided.by.LLVM.an |
| 70f00 | 64 20 69 74 73 20 73 75 70 70 6f 72 74 20 66 6f 72 20 49 6e 74 65 6c 20 73 79 6e 74 61 78 20 69 | d.its.support.for.Intel.syntax.i |
| 70f20 | 73 20 62 75 67 67 79 20 61 6e 64 20 6e 6f 74 20 77 65 6c 6c 20 74 65 73 74 65 64 2e 0a 20 20 20 | s.buggy.and.not.well.tested..... |
| 70f40 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 20 64 61 79 | ...</p>.......<p>.......Some.day |
| 70f60 | 20 5a 69 67 20 6d 61 79 20 68 61 76 65 20 69 74 73 20 6f 77 6e 20 61 73 73 65 6d 62 6c 65 72 2e | .Zig.may.have.its.own.assembler. |
| 70f80 | 20 54 68 69 73 20 77 6f 75 6c 64 20 61 6c 6c 6f 77 20 69 74 20 74 6f 20 69 6e 74 65 67 72 61 74 | .This.would.allow.it.to.integrat |
| 70fa0 | 65 20 6d 6f 72 65 20 73 65 61 6d 6c 65 73 73 6c 79 0a 20 20 20 20 20 20 69 6e 74 6f 20 74 68 65 | e.more.seamlessly.......into.the |
| 70fc0 | 20 6c 61 6e 67 75 61 67 65 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 62 65 20 63 6f 6d 70 61 74 69 | .language,.as.well.as.be.compati |
| 70fe0 | 62 6c 65 20 77 69 74 68 20 74 68 65 20 70 6f 70 75 6c 61 72 20 4e 41 53 4d 20 73 79 6e 74 61 78 | ble.with.the.popular.NASM.syntax |
| 71000 | 2e 20 54 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 73 65 63 74 69 | ..This.documentation.......secti |
| 71020 | 6f 6e 20 77 69 6c 6c 20 62 65 20 75 70 64 61 74 65 64 20 62 65 66 6f 72 65 20 31 2e 30 2e 30 20 | on.will.be.updated.before.1.0.0. |
| 71040 | 69 73 20 72 65 6c 65 61 73 65 64 2c 20 77 69 74 68 20 61 20 63 6f 6e 63 6c 75 73 69 76 65 20 73 | is.released,.with.a.conclusive.s |
| 71060 | 74 61 74 65 6d 65 6e 74 20 61 62 6f 75 74 20 74 68 65 20 73 74 61 74 75 73 0a 20 20 20 20 20 20 | tatement.about.the.status....... |
| 71080 | 6f 66 20 41 54 26 61 6d 70 3b 54 20 76 73 20 49 6e 74 65 6c 2f 4e 41 53 4d 20 73 79 6e 74 61 78 | of.AT&T.vs.Intel/NASM.syntax |
| 710a0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4f 75 74 70 75 | ........</p>.......<h2.id="Outpu |
| 710c0 | 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 75 74 | t-Constraints"><a.href="#toc-Out |
| 710e0 | 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 4f 75 74 70 75 74 20 43 6f 6e 73 74 72 61 69 | put-Constraints">Output.Constrai |
| 71100 | 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 75 | nts</a>.<a.class="hdr".href="#Ou |
| 71120 | 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | tput-Constraints">..</a></h2>... |
| 71140 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 75 74 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 | .....<p>.......Output.constraint |
| 71160 | 73 20 61 72 65 20 73 74 69 6c 6c 20 63 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 75 6e 73 | s.are.still.considered.to.be.uns |
| 71180 | 74 61 62 6c 65 20 69 6e 20 5a 69 67 2c 20 61 6e 64 0a 20 20 20 20 20 20 73 6f 0a 20 20 20 20 20 | table.in.Zig,.and.......so...... |
| 711a0 | 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f 72 65 6c 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f | .<a.href="http://releases.llvm.o |
| 711c0 | 72 67 2f 31 30 2e 30 2e 30 2f 64 6f 63 73 2f 4c 61 6e 67 52 65 66 2e 68 74 6d 6c 23 69 6e 6c 69 | rg/10.0.0/docs/LangRef.html#inli |
| 711e0 | 6e 65 2d 61 73 6d 2d 63 6f 6e 73 74 72 61 69 6e 74 2d 73 74 72 69 6e 67 22 3e 4c 4c 56 4d 20 64 | ne-asm-constraint-string">LLVM.d |
| 71200 | 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 61 6e 64 0a 20 20 20 20 20 | ocumentation</a>.......and...... |
| 71220 | 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e | .<a.href="https://gcc.gnu.org/on |
| 71240 | 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2f 45 78 74 65 6e 64 65 64 2d 41 73 6d 2e 68 74 6d 6c 22 3e | linedocs/gcc/Extended-Asm.html"> |
| 71260 | 47 43 43 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 6d 75 73 74 | GCC.documentation</a>.......must |
| 71280 | 20 62 65 20 75 73 65 64 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 73 65 6d 61 6e | .be.used.to.understand.the.seman |
| 712a0 | 74 69 63 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | tics........</p>.......<p>...... |
| 712c0 | 20 4e 6f 74 65 20 74 68 61 74 20 73 6f 6d 65 20 62 72 65 61 6b 69 6e 67 20 63 68 61 6e 67 65 73 | .Note.that.some.breaking.changes |
| 712e0 | 20 74 6f 20 6f 75 74 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 65 20 70 6c 61 6e 6e | .to.output.constraints.are.plann |
| 71300 | 65 64 20 77 69 74 68 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 | ed.with.......<a.href="https://g |
| 71320 | 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 35 | ithub.com/ziglang/zig/issues/215 |
| 71340 | 22 3e 69 73 73 75 65 20 23 32 31 35 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ">issue.#215</a>........</p>.... |
| 71360 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 | ...........<h2.id="Input-Constra |
| 71380 | 69 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 70 75 74 2d 43 6f 6e 73 74 72 | ints"><a.href="#toc-Input-Constr |
| 713a0 | 61 69 6e 74 73 22 3e 49 6e 70 75 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 20 3c 61 20 | aints">Input.Constraints</a>.<a. |
| 713c0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 | class="hdr".href="#Input-Constra |
| 713e0 | 69 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ints">..</a></h2>........<p>.... |
| 71400 | 20 20 20 49 6e 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 65 20 73 74 69 6c 6c 20 63 | ...Input.constraints.are.still.c |
| 71420 | 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 75 6e 73 74 61 62 6c 65 20 69 6e 20 5a 69 67 2c | onsidered.to.be.unstable.in.Zig, |
| 71440 | 20 61 6e 64 0a 20 20 20 20 20 20 73 6f 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 | .and.......so.......<a.href="htt |
| 71460 | 70 3a 2f 2f 72 65 6c 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 30 2e 30 2e 30 2f 64 6f 63 | p://releases.llvm.org/10.0.0/doc |
| 71480 | 73 2f 4c 61 6e 67 52 65 66 2e 68 74 6d 6c 23 69 6e 6c 69 6e 65 2d 61 73 6d 2d 63 6f 6e 73 74 72 | s/LangRef.html#inline-asm-constr |
| 714a0 | 61 69 6e 74 2d 73 74 72 69 6e 67 22 3e 4c 4c 56 4d 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c | aint-string">LLVM.documentation< |
| 714c0 | 2f 61 3e 0a 20 20 20 20 20 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 | /a>.......and.......<a.href="htt |
| 714e0 | 70 73 3a 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2f | ps://gcc.gnu.org/onlinedocs/gcc/ |
| 71500 | 45 78 74 65 6e 64 65 64 2d 41 73 6d 2e 68 74 6d 6c 22 3e 47 43 43 20 64 6f 63 75 6d 65 6e 74 61 | Extended-Asm.html">GCC.documenta |
| 71520 | 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 74 6f 20 75 | tion</a>.......must.be.used.to.u |
| 71540 | 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 2e 0a 20 20 20 20 20 20 3c | nderstand.the.semantics........< |
| 71560 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 73 6f | /p>.......<p>.......Note.that.so |
| 71580 | 6d 65 20 62 72 65 61 6b 69 6e 67 20 63 68 61 6e 67 65 73 20 74 6f 20 69 6e 70 75 74 20 63 6f 6e | me.breaking.changes.to.input.con |
| 715a0 | 73 74 72 61 69 6e 74 73 20 61 72 65 20 70 6c 61 6e 6e 65 64 20 77 69 74 68 0a 20 20 20 20 20 20 | straints.are.planned.with....... |
| 715c0 | 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c | <a.href="https://github.com/zigl |
| 715e0 | 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 35 22 3e 69 73 73 75 65 20 23 32 31 35 3c 2f | ang/zig/issues/215">issue.#215</ |
| 71600 | 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 | a>........</p>...............<h2 |
| 71620 | 20 69 64 3d 22 43 6c 6f 62 62 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6c 6f | .id="Clobbers"><a.href="#toc-Clo |
| 71640 | 62 62 65 72 73 22 3e 43 6c 6f 62 62 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | bbers">Clobbers</a>.<a.class="hd |
| 71660 | 72 22 20 68 72 65 66 3d 22 23 43 6c 6f 62 62 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | r".href="#Clobbers">..</a></h2>. |
| 71680 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6c 6f 62 62 65 72 73 20 61 72 65 20 74 68 | .......<p>.......Clobbers.are.th |
| 716a0 | 65 20 73 65 74 20 6f 66 20 72 65 67 69 73 74 65 72 73 20 77 68 6f 73 65 20 76 61 6c 75 65 73 20 | e.set.of.registers.whose.values. |
| 716c0 | 77 69 6c 6c 20 6e 6f 74 20 62 65 20 70 72 65 73 65 72 76 65 64 20 62 79 20 74 68 65 20 65 78 65 | will.not.be.preserved.by.the.exe |
| 716e0 | 63 75 74 69 6f 6e 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 | cution.of.......the.assembly.cod |
| 71700 | 65 2e 20 54 68 65 73 65 20 64 6f 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 6f 75 74 70 75 74 20 6f | e..These.do.not.include.output.o |
| 71720 | 72 20 69 6e 70 75 74 20 72 65 67 69 73 74 65 72 73 2e 20 54 68 65 20 73 70 65 63 69 61 6c 20 63 | r.input.registers..The.special.c |
| 71740 | 6c 6f 62 62 65 72 0a 20 20 20 20 20 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 | lobber.......value.of.<code.clas |
| 71760 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | s="zig"><span.class="tok-str">&q |
| 71780 | 75 6f 74 3b 6d 65 6d 6f 72 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d | uot;memory"</span></code>.m |
| 717a0 | 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 61 75 73 65 73 20 77 72 | eans.that.the.assembly.causes.wr |
| 717c0 | 69 74 65 73 20 74 6f 0a 20 20 20 20 20 20 61 72 62 69 74 72 61 72 79 20 75 6e 64 65 63 6c 61 72 | ites.to.......arbitrary.undeclar |
| 717e0 | 65 64 20 6d 65 6d 6f 72 79 20 6c 6f 63 61 74 69 6f 6e 73 20 2d 20 6e 6f 74 20 6f 6e 6c 79 20 74 | ed.memory.locations.-.not.only.t |
| 71800 | 68 65 20 6d 65 6d 6f 72 79 20 70 6f 69 6e 74 65 64 20 74 6f 20 62 79 20 61 20 64 65 63 6c 61 72 | he.memory.pointed.to.by.a.declar |
| 71820 | 65 64 0a 20 20 20 20 20 20 69 6e 64 69 72 65 63 74 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 | ed.......indirect.output........ |
| 71840 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 61 69 6c 75 72 65 20 74 6f 20 | </p>.......<p>.......Failure.to. |
| 71860 | 64 65 63 6c 61 72 65 20 74 68 65 20 66 75 6c 6c 20 73 65 74 20 6f 66 20 63 6c 6f 62 62 65 72 73 | declare.the.full.set.of.clobbers |
| 71880 | 20 66 6f 72 20 61 20 67 69 76 65 6e 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 0a 20 20 20 | .for.a.given.inline.assembly.... |
| 718a0 | 20 20 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 75 6e 63 68 65 63 6b 65 64 20 3c 61 20 68 72 | ...expression.is.unchecked.<a.hr |
| 718c0 | 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e | ef="#Undefined-Behavior">Undefin |
| 718e0 | 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ed.Behavior</a>........</p>..... |
| 71900 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c | ..........<h2.id="Global-Assembl |
| 71920 | 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 | y"><a.href="#toc-Global-Assembly |
| 71940 | 22 3e 47 6c 6f 62 61 6c 20 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | ">Global.Assembly</a>.<a.class=" |
| 71960 | 68 64 72 22 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 3e c2 a7 3c | hdr".href="#Global-Assembly">..< |
| 71980 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 | /a></h2>........<p>.......When.a |
| 719a0 | 6e 20 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 63 63 75 72 73 20 69 6e 20 | n.assembly.expression.occurs.in. |
| 719c0 | 61 20 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 | a.container.level.<a.href="#comp |
| 719e0 | 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 62 6c 6f 63 6b 2c 20 74 68 69 73 20 69 | time">comptime</a>.block,.this.i |
| 71a00 | 73 0a 20 20 20 20 20 20 3c 73 74 72 6f 6e 67 3e 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 3c | s.......<strong>global.assembly< |
| 71a20 | 2f 73 74 72 6f 6e 67 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | /strong>........</p>.......<p>.. |
| 71a40 | 20 20 20 20 20 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 61 73 73 65 6d 62 6c 79 20 68 61 73 20 64 | .....This.kind.of.assembly.has.d |
| 71a60 | 69 66 66 65 72 65 6e 74 20 72 75 6c 65 73 20 74 68 61 6e 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d | ifferent.rules.than.inline.assem |
| 71a80 | 62 6c 79 2e 20 46 69 72 73 74 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | bly..First,.<code.class="zig"><s |
| 71aa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 | pan.class="tok-kw">volatile</spa |
| 71ac0 | 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 6e 6f 74 20 76 61 6c 69 64 20 62 65 63 | n></code>.......is.not.valid.bec |
| 71ae0 | 61 75 73 65 20 61 6c 6c 20 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 20 69 73 20 75 6e 63 6f | ause.all.global.assembly.is.unco |
| 71b00 | 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 69 6e 63 6c 75 64 65 64 2e 0a 20 20 20 20 20 20 53 65 63 6f | nditionally.included........Seco |
| 71b20 | 6e 64 2c 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 69 6e 70 75 74 73 2c 20 6f 75 74 70 75 74 73 | nd,.there.are.no.inputs,.outputs |
| 71b40 | 2c 20 6f 72 20 63 6c 6f 62 62 65 72 73 2e 20 41 6c 6c 20 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 | ,.or.clobbers..All.global.assemb |
| 71b60 | 6c 79 20 69 73 20 63 6f 6e 63 61 74 65 6e 61 74 65 64 0a 20 20 20 20 20 20 76 65 72 62 61 74 69 | ly.is.concatenated.......verbati |
| 71b80 | 6d 20 69 6e 74 6f 20 6f 6e 65 20 6c 6f 6e 67 20 73 74 72 69 6e 67 20 61 6e 64 20 61 73 73 65 6d | m.into.one.long.string.and.assem |
| 71ba0 | 62 6c 65 64 20 74 6f 67 65 74 68 65 72 2e 20 54 68 65 72 65 20 61 72 65 20 6e 6f 20 74 65 6d 70 | bled.together..There.are.no.temp |
| 71bc0 | 6c 61 74 65 20 73 75 62 73 74 69 74 75 74 69 6f 6e 20 72 75 6c 65 73 20 72 65 67 61 72 64 69 6e | late.substitution.rules.regardin |
| 71be0 | 67 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 25 3c 2f 63 6f 64 65 3e 20 61 73 20 74 68 65 72 65 20 | g.......<code>%</code>.as.there. |
| 71c00 | 61 72 65 20 69 6e 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f | are.in.inline.assembly.expressio |
| 71c20 | 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | ns........</p>.......<p.class="f |
| 71c40 | 69 6c 65 22 3e 67 6c 6f 62 61 6c 2d 61 73 6d 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ile">global-asm.zig</p><pre><cod |
| 71c60 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 71c80 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.std.=.<span.clas |
| 71ca0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| 71cc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| 71ce0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | uot;</span>);.<span.class="tok-k |
| 71d00 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 | w">const</span>.expect.=.std.tes |
| 71d20 | 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ting.expect;..<span.class="tok-k |
| 71d40 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | w">comptime</span>.{.....<span.c |
| 71d60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 20 28 0a 20 20 20 20 20 | lass="tok-kw">asm</span>.(...... |
| 71d80 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 2e 67 6c 6f 62 | ...<span.class="tok-str">\\.glob |
| 71da0 | 61 6c 20 6d 79 5f 66 75 6e 63 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e | al.my_func;.</span>........<span |
| 71dc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 2e 74 79 70 65 20 6d 79 5f 66 75 6e 63 | .class="tok-str">\\.type.my_func |
| 71de0 | 2c 20 40 66 75 6e 63 74 69 6f 6e 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 | ,.@function;.</span>........<spa |
| 71e00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 6d 79 5f 66 75 6e 63 3a 0a 3c 2f 73 | n.class="tok-str">\\my_func:.</s |
| 71e20 | 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | pan>........<span.class="tok-str |
| 71e40 | 22 3e 5c 5c 20 20 6c 65 61 20 28 25 72 64 69 2c 25 72 73 69 2c 31 29 2c 25 65 61 78 0a 3c 2f 73 | ">\\..lea.(%rdi,%rsi,1),%eax.</s |
| 71e60 | 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | pan>........<span.class="tok-str |
| 71e80 | 22 3e 5c 5c 20 20 72 65 74 71 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 29 3b 0a 7d 0a 0a 3c 73 70 61 | ">\\..retq.</span>....);.}..<spa |
| 71ea0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c | n.class="tok-kw">extern</span>.< |
| 71ec0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| 71ee0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 79 5f 66 75 6e 63 3c 2f 73 70 61 6e | pan.class="tok-fn">my_func</span |
| 71f00 | 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | >(a:.<span.class="tok-type">i32< |
| 71f20 | 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>,.b:.<span.class="tok-type |
| 71f40 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ">i32</span>).<span.class="tok-t |
| 71f60 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">i32</span>;..<span.class="t |
| 71f80 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| 71fa0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 26 71 | tok-str">"global.assembly&q |
| 71fc0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>.{.....<span.class="t |
| 71fe0 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 79 5f 66 75 6e 63 | ok-kw">try</span>.expect(my_func |
| 72000 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 | (<span.class="tok-number">12</sp |
| 72020 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 34 | an>,.<span.class="tok-number">34 |
| 72040 | 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | </span>).==.<span.class="tok-num |
| 72060 | 62 65 72 22 3e 34 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | ber">46</span>);.}</code></pre>< |
| 72080 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| 720a0 | 73 74 20 67 6c 6f 62 61 6c 2d 61 73 6d 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 34 | st.global-asm.zig.-target.x86_64 |
| 720c0 | 2d 6c 69 6e 75 78 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 67 6c 6f | -linux.Test.[1/1].test."glo |
| 720e0 | 62 61 6c 20 61 73 73 65 6d 62 6c 79 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 | bal.assembly"......All.1.te |
| 72100 | 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | sts.passed..</code></pre>....... |
| 72120 | 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 41 74 6f 6d 69 63 73 22 | ................<h1.id="Atomics" |
| 72140 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 3c | ><a.href="#toc-Atomics">Atomics< |
| 72160 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 | /a>.<a.class="hdr".href="#Atomic |
| 72180 | 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 40 | s">..</a></h1>........<p>TODO:.@ |
| 721a0 | 66 65 6e 63 65 28 29 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 40 61 74 6f 6d | fence()</p>.......<p>TODO:.@atom |
| 721c0 | 69 63 20 72 6d 77 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 62 75 69 6c 74 69 | ic.rmw</p>.......<p>TODO:.builti |
| 721e0 | 6e 20 61 74 6f 6d 69 63 20 6d 65 6d 6f 72 79 20 6f 72 64 65 72 69 6e 67 20 65 6e 75 6d 3c 2f 70 | n.atomic.memory.ordering.enum</p |
| 72200 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 41 73 79 6e 63 2d 46 75 6e | >..............<h1.id="Async-Fun |
| 72220 | 63 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 79 6e 63 2d 46 75 6e 63 | ctions"><a.href="#toc-Async-Func |
| 72240 | 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c | tions">Async.Functions</a>.<a.cl |
| 72260 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 | ass="hdr".href="#Async-Functions |
| 72280 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 | ">..</a></h1>........<p>.......W |
| 722a0 | 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 2c 20 61 20 66 72 61 6d | hen.a.function.is.called,.a.fram |
| 722c0 | 65 20 69 73 20 70 75 73 68 65 64 20 74 6f 20 74 68 65 20 73 74 61 63 6b 2c 0a 20 20 20 20 20 20 | e.is.pushed.to.the.stack,....... |
| 722e0 | 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 73 20 75 6e 74 69 6c 20 69 74 20 72 65 61 63 68 | the.function.runs.until.it.reach |
| 72300 | 65 73 20 61 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 2c 20 61 6e 64 20 74 68 65 6e 20 | es.a.return.statement,.and.then. |
| 72320 | 74 68 65 20 66 72 61 6d 65 20 69 73 20 70 6f 70 70 65 64 20 66 72 6f 6d 20 74 68 65 20 73 74 61 | the.frame.is.popped.from.the.sta |
| 72340 | 63 6b 2e 0a 20 20 20 20 20 20 41 74 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2c 20 74 68 65 20 66 | ck........At.the.callsite,.the.f |
| 72360 | 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 20 64 6f 65 73 20 6e 6f 74 20 72 75 6e 20 75 6e 74 69 6c | ollowing.code.does.not.run.until |
| 72380 | 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | .the.function.returns........</p |
| 723a0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 | >.......<p>.......An.async.funct |
| 723c0 | 69 6f 6e 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 6f 73 65 20 63 61 6c 6c 73 69 74 65 | ion.is.a.function.whose.callsite |
| 723e0 | 20 69 73 20 73 70 6c 69 74 20 69 6e 74 6f 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .is.split.into.an.<code.class="z |
| 72400 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f | ig"><span.class="tok-kw">async</ |
| 72420 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 69 74 69 61 74 69 6f 6e 2c 0a 20 20 20 20 20 20 66 | span></code>.initiation,.......f |
| 72440 | 6f 6c 6c 6f 77 65 64 20 62 79 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ollowed.by.an.<code.class="zig"> |
| 72460 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e | <span.class="tok-kw">await</span |
| 72480 | 3e 3c 2f 63 6f 64 65 3e 20 63 6f 6d 70 6c 65 74 69 6f 6e 2e 20 49 74 73 20 66 72 61 6d 65 20 69 | ></code>.completion..Its.frame.i |
| 724a0 | 73 0a 20 20 20 20 20 20 70 72 6f 76 69 64 65 64 20 65 78 70 6c 69 63 69 74 6c 79 20 62 79 20 74 | s.......provided.explicitly.by.t |
| 724c0 | 68 65 20 63 61 6c 6c 65 72 2c 20 61 6e 64 20 69 74 20 63 61 6e 20 62 65 20 73 75 73 70 65 6e 64 | he.caller,.and.it.can.be.suspend |
| 724e0 | 65 64 20 61 6e 64 20 72 65 73 75 6d 65 64 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 74 69 6d | ed.and.resumed.any.number.of.tim |
| 72500 | 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a | es........</p>.......<p>.......Z |
| 72520 | 69 67 20 69 6e 66 65 72 73 20 74 68 61 74 20 61 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 3c 63 6f | ig.infers.that.a.function.is.<co |
| 72540 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 72560 | 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 65 6e 20 69 74 20 | kw">async</span></code>.when.it. |
| 72580 | 6f 62 73 65 72 76 65 73 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 74 61 | observes.that.the.function.conta |
| 725a0 | 69 6e 73 0a 20 20 20 20 20 20 61 20 3c 73 74 72 6f 6e 67 3e 73 75 73 70 65 6e 73 69 6f 6e 20 70 | ins.......a.<strong>suspension.p |
| 725c0 | 6f 69 6e 74 3c 2f 73 74 72 6f 6e 67 3e 2e 20 41 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 73 20 63 | oint</strong>..Async.functions.c |
| 725e0 | 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 74 68 65 20 73 61 6d 65 20 61 73 20 6e 6f 72 6d 61 6c 20 | an.be.called.the.same.as.normal. |
| 72600 | 66 75 6e 63 74 69 6f 6e 73 2e 20 41 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c | functions..A.......function.call |
| 72620 | 20 6f 66 20 61 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 73 75 73 70 65 | .of.an.async.function.is.a.suspe |
| 72640 | 6e 64 20 70 6f 69 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 | nd.point........</p>.......<h2.i |
| 72660 | 64 3d 22 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 | d="Suspend-and-Resume"><a.href=" |
| 72680 | 23 74 6f 63 2d 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 3e 53 75 73 70 65 6e 64 | #toc-Suspend-and-Resume">Suspend |
| 726a0 | 20 61 6e 64 20 52 65 73 75 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | .and.Resume</a>.<a.class="hdr".h |
| 726c0 | 72 65 66 3d 22 23 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 3e c2 a7 3c 2f 61 3e | ref="#Suspend-and-Resume">..</a> |
| 726e0 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 74 20 61 6e 79 20 70 6f | </h2>........<p>.......At.any.po |
| 72700 | 69 6e 74 2c 20 61 20 66 75 6e 63 74 69 6f 6e 20 6d 61 79 20 73 75 73 70 65 6e 64 20 69 74 73 65 | int,.a.function.may.suspend.itse |
| 72720 | 6c 66 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 74 6f 0a | lf..This.causes.control.flow.to. |
| 72740 | 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 6f 20 74 68 65 20 63 61 6c 6c 73 69 74 65 20 28 69 6e | ......return.to.the.callsite.(in |
| 72760 | 20 74 68 65 20 63 61 73 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 73 75 73 70 65 6e 73 69 6f | .the.case.of.the.first.suspensio |
| 72780 | 6e 29 2c 0a 20 20 20 20 20 20 6f 72 20 72 65 73 75 6d 65 72 20 28 69 6e 20 74 68 65 20 63 61 73 | n),.......or.resumer.(in.the.cas |
| 727a0 | 65 20 6f 66 20 73 75 62 73 65 71 75 65 6e 74 20 73 75 73 70 65 6e 73 69 6f 6e 73 29 2e 0a 20 20 | e.of.subsequent.suspensions).... |
| 727c0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| 727e0 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 72800 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 72820 | 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>.std.=.<span.class="tok-built |
| 72840 | 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in">@import</span>(<span.class=" |
| 72860 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | tok-str">"std"</span>) |
| 72880 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ;.<span.class="tok-kw">const</sp |
| 728a0 | 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b | an>.expect.=.std.testing.expect; |
| 728c0 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| 728e0 | 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | >.x:.<span.class="tok-type">i32< |
| 72900 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | /span>.=.<span.class="tok-number |
| 72920 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">1</span>;..<span.class="tok-kw |
| 72940 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 72960 | 74 72 22 3e 26 71 75 6f 74 3b 73 75 73 70 65 6e 64 20 77 69 74 68 20 6e 6f 20 72 65 73 75 6d 65 | tr">"suspend.with.no.resume |
| 72980 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 729a0 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 72 61 6d 65 20 3d 20 3c 73 70 61 | "tok-kw">var</span>.frame.=.<spa |
| 729c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 66 75 | n.class="tok-kw">async</span>.fu |
| 729e0 | 6e 63 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | nc();.....<span.class="tok-kw">t |
| 72a00 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ry</span>.expect(x.==.<span.clas |
| 72a20 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | s="tok-number">2</span>);.}..<sp |
| 72a40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| 72a60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 75 6e 63 3c 2f 73 70 61 6e 3e 28 29 20 3c | n.class="tok-fn">func</span>().< |
| 72a80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e | span.class="tok-type">void</span |
| 72aa0 | 3e 20 7b 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | >.{.....x.+=.<span.class="tok-nu |
| 72ac0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">1</span>;.....<span.class= |
| 72ae0 | 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 20 20 20 20 3c | "tok-kw">suspend</span>.{}.....< |
| 72b00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 | span.class="tok-comment">//.This |
| 72b20 | 20 6c 69 6e 65 20 69 73 20 6e 65 76 65 72 20 72 65 61 63 68 65 64 20 62 65 63 61 75 73 65 20 74 | .line.is.never.reached.because.t |
| 72b40 | 68 65 20 73 75 73 70 65 6e 64 20 68 61 73 20 6e 6f 20 6d 61 74 63 68 69 6e 67 20 72 65 73 75 6d | he.suspend.has.no.matching.resum |
| 72b60 | 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e.</span>.....x.+=.<span.class=" |
| 72b80 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | tok-number">1</span>;.}</code></ |
| 72ba0 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 72bc0 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 | ig.test.test.zig.Test.[1/1].test |
| 72be0 | 20 26 71 75 6f 74 3b 73 75 73 70 65 6e 64 20 77 69 74 68 20 6e 6f 20 72 65 73 75 6d 65 26 71 75 | ."suspend.with.no.resume&qu |
| 72c00 | 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 | ot;......All.1.tests.passed..</c |
| 72c20 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 | ode></pre>........<p>.......In.t |
| 72c40 | 68 65 20 73 61 6d 65 20 77 61 79 20 74 68 61 74 20 65 61 63 68 20 61 6c 6c 6f 63 61 74 69 6f 6e | he.same.way.that.each.allocation |
| 72c60 | 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 66 72 65 | .should.have.a.corresponding.fre |
| 72c80 | 65 2c 0a 20 20 20 20 20 20 45 61 63 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | e,.......Each.<code.class="zig"> |
| 72ca0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 | <span.class="tok-kw">suspend</sp |
| 72cc0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 63 6f 72 72 65 73 70 | an></code>.should.have.a.corresp |
| 72ce0 | 6f 6e 64 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | onding.<code.class="zig"><span.c |
| 72d00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">resume</span></cod |
| 72d20 | 65 3e 2e 0a 20 20 20 20 20 20 41 20 3c 73 74 72 6f 6e 67 3e 73 75 73 70 65 6e 64 20 62 6c 6f 63 | e>........A.<strong>suspend.bloc |
| 72d40 | 6b 3c 2f 73 74 72 6f 6e 67 3e 20 61 6c 6c 6f 77 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 | k</strong>.allows.a.function.to. |
| 72d60 | 70 75 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 69 74 73 20 6f 77 6e 0a 20 20 20 20 20 20 66 | put.a.pointer.to.its.own.......f |
| 72d80 | 72 61 6d 65 20 73 6f 6d 65 77 68 65 72 65 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 69 6e 74 6f | rame.somewhere,.for.example.into |
| 72da0 | 20 61 6e 20 65 76 65 6e 74 20 6c 6f 6f 70 2c 20 65 76 65 6e 20 69 66 20 74 68 61 74 20 61 63 74 | .an.event.loop,.even.if.that.act |
| 72dc0 | 69 6f 6e 20 77 69 6c 6c 20 70 65 72 66 6f 72 6d 20 61 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | ion.will.perform.a.......<code.c |
| 72de0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 72e00 | 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 69 6f 6e 20 6f | resume</span></code>.operation.o |
| 72e20 | 6e 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 68 72 65 61 64 2e 0a 20 20 20 20 20 20 3c 61 20 68 | n.a.different.thread........<a.h |
| 72e40 | 72 65 66 3d 22 23 66 72 61 6d 65 22 3e 40 66 72 61 6d 65 3c 2f 61 3e 20 70 72 6f 76 69 64 65 73 | ref="#frame">@frame</a>.provides |
| 72e60 | 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 66 72 | .access.to.the.async.function.fr |
| 72e80 | 61 6d 65 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ame.pointer........</p>.......<p |
| 72ea0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | .class="file">test.zig</p><pre>< |
| 72ec0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 72ee0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.std.=.<span.c |
| 72f00 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e | lass="tok-builtin">@import</span |
| 72f20 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 | >(<span.class="tok-str">"st |
| 72f40 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | d"</span>);.<span.class="to |
| 72f60 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e | k-kw">const</span>.expect.=.std. |
| 72f80 | 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | testing.expect;..<span.class="to |
| 72fa0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 74 68 65 5f 66 72 61 6d 65 3a 20 3c 73 70 61 | k-kw">var</span>.the_frame:.<spa |
| 72fc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e | n.class="tok-kw">anyframe</span> |
| 72fe0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 | .=.<span.class="tok-null">undefi |
| 73000 | 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ned</span>;.<span.class="tok-kw" |
| 73020 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >var</span>.result.=.<span.class |
| 73040 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e | ="tok-null">false</span>;..<span |
| 73060 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | .class="tok-kw">test</span>.<spa |
| 73080 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 75 | n.class="tok-str">"async.fu |
| 730a0 | 6e 63 74 69 6f 6e 20 73 75 73 70 65 6e 64 20 77 69 74 68 20 62 6c 6f 63 6b 26 71 75 6f 74 3b 3c | nction.suspend.with.block"< |
| 730c0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>.{....._.=.<span.class="to |
| 730e0 | 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 74 65 73 74 53 75 73 70 65 6e 64 42 6c | k-kw">async</span>.testSuspendBl |
| 73100 | 6f 63 6b 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ock();.....<span.class="tok-kw"> |
| 73120 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 | try</span>.expect(!result);..... |
| 73140 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 | <span.class="tok-kw">resume</spa |
| 73160 | 6e 3e 20 74 68 65 5f 66 72 61 6d 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n>.the_frame;.....<span.class="t |
| 73180 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 | ok-kw">try</span>.expect(result) |
| 731a0 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | ;.}..<span.class="tok-kw">fn</sp |
| 731c0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 53 75 73 | an>.<span.class="tok-fn">testSus |
| 731e0 | 70 65 6e 64 42 6c 6f 63 6b 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pendBlock</span>().<span.class=" |
| 73200 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | tok-type">void</span>.{.....<spa |
| 73220 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 20 | n.class="tok-kw">suspend</span>. |
| 73240 | 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | {.........<span.class="tok-kw">c |
| 73260 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | omptime</span>.<span.class="tok- |
| 73280 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 | kw">try</span>.expect(<span.clas |
| 732a0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@TypeOf</span>(< |
| 732c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c | span.class="tok-builtin">@frame< |
| 732e0 | 2f 73 70 61 6e 3e 28 29 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | /span>()).==.*<span.class="tok-b |
| 73300 | 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 74 65 73 74 53 75 73 70 65 6e | uiltin">@Frame</span>(testSuspen |
| 73320 | 64 42 6c 6f 63 6b 29 29 3b 0a 20 20 20 20 20 20 20 20 74 68 65 5f 66 72 61 6d 65 20 3d 20 3c 73 | dBlock));.........the_frame.=.<s |
| 73340 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c 2f | pan.class="tok-builtin">@frame</ |
| 73360 | 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 | span>();.....}.....result.=.<spa |
| 73380 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a | n.class="tok-null">true</span>;. |
| 733a0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 733c0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 | shell">$.zig.test.test.zig.Test. |
| 733e0 | 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 | [1/1].test."async.function. |
| 73400 | 73 75 73 70 65 6e 64 20 77 69 74 68 20 62 6c 6f 63 6b 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c | suspend.with.block"......Al |
| 73420 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 73440 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .......<p>.......<code.class="zi |
| 73460 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c | g"><span.class="tok-kw">suspend< |
| 73480 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 75 73 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 | /span></code>.causes.a.function. |
| 734a0 | 74 6f 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | to.be.<code.class="zig"><span.cl |
| 734c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-kw">async</span></code> |
| 734e0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 73 75 | ........</p>........<h3.id="Resu |
| 73500 | 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b 73 22 3e 3c 61 20 68 72 65 | ming-from-Suspend-Blocks"><a.hre |
| 73520 | 66 3d 22 23 74 6f 63 2d 52 65 73 75 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c | f="#toc-Resuming-from-Suspend-Bl |
| 73540 | 6f 63 6b 73 22 3e 52 65 73 75 6d 69 6e 67 20 66 72 6f 6d 20 53 75 73 70 65 6e 64 20 42 6c 6f 63 | ocks">Resuming.from.Suspend.Bloc |
| 73560 | 6b 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 73 | ks</a>.<a.class="hdr".href="#Res |
| 73580 | 75 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b 73 22 3e c2 a7 3c 2f 61 | uming-from-Suspend-Blocks">..</a |
| 735a0 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 70 6f 6e 20 65 6e 74 | ></h3>........<p>.......Upon.ent |
| 735c0 | 65 72 69 6e 67 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ering.a.<code.class="zig"><span. |
| 735e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 | class="tok-kw">suspend</span></c |
| 73600 | 6f 64 65 3e 20 62 6c 6f 63 6b 2c 20 74 68 65 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 69 | ode>.block,.the.async.function.i |
| 73620 | 73 20 61 6c 72 65 61 64 79 20 63 6f 6e 73 69 64 65 72 65 64 0a 20 20 20 20 20 20 73 75 73 70 65 | s.already.considered.......suspe |
| 73640 | 6e 64 65 64 2c 20 61 6e 64 20 63 61 6e 20 62 65 20 72 65 73 75 6d 65 64 2e 20 46 6f 72 20 65 78 | nded,.and.can.be.resumed..For.ex |
| 73660 | 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 73 74 61 72 74 65 64 20 61 6e 6f 74 68 65 72 20 6b 65 | ample,.if.you.started.another.ke |
| 73680 | 72 6e 65 6c 20 74 68 72 65 61 64 2c 0a 20 20 20 20 20 20 61 6e 64 20 68 61 64 20 74 68 61 74 20 | rnel.thread,.......and.had.that. |
| 736a0 | 74 68 72 65 61 64 20 63 61 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | thread.call.<code.class="zig"><s |
| 736c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">resume</span> |
| 736e0 | 3c 2f 63 6f 64 65 3e 20 6f 6e 20 74 68 65 20 66 72 61 6d 65 20 70 6f 69 6e 74 65 72 20 70 72 6f | </code>.on.the.frame.pointer.pro |
| 73700 | 76 69 64 65 64 20 62 79 20 74 68 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 66 72 61 | vided.by.the.......<a.href="#fra |
| 73720 | 6d 65 22 3e 40 66 72 61 6d 65 3c 2f 61 3e 2c 20 74 68 65 20 6e 65 77 20 74 68 72 65 61 64 20 77 | me">@frame</a>,.the.new.thread.w |
| 73740 | 6f 75 6c 64 20 62 65 67 69 6e 20 65 78 65 63 75 74 69 6e 67 20 61 66 74 65 72 20 74 68 65 20 73 | ould.begin.executing.after.the.s |
| 73760 | 75 73 70 65 6e 64 0a 20 20 20 20 20 20 62 6c 6f 63 6b 2c 20 77 68 69 6c 65 20 74 68 65 20 6f 6c | uspend.......block,.while.the.ol |
| 73780 | 64 20 74 68 72 65 61 64 20 63 6f 6e 74 69 6e 75 65 64 20 65 78 65 63 75 74 69 6e 67 20 74 68 65 | d.thread.continued.executing.the |
| 737a0 | 20 73 75 73 70 65 6e 64 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .suspend.block........</p>...... |
| 737c0 | 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 74 68 65 20 61 73 79 6e 63 20 66 75 | .<p>.......However,.the.async.fu |
| 737e0 | 6e 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 64 69 72 65 63 74 6c 79 20 72 65 73 75 6d 65 64 20 66 | nction.can.be.directly.resumed.f |
| 73800 | 72 6f 6d 20 74 68 65 20 73 75 73 70 65 6e 64 20 62 6c 6f 63 6b 2c 20 69 6e 20 77 68 69 63 68 20 | rom.the.suspend.block,.in.which. |
| 73820 | 63 61 73 65 20 69 74 0a 20 20 20 20 20 20 6e 65 76 65 72 20 72 65 74 75 72 6e 73 20 74 6f 20 69 | case.it.......never.returns.to.i |
| 73840 | 74 73 20 72 65 73 75 6d 65 72 20 61 6e 64 20 63 6f 6e 74 69 6e 75 65 73 20 65 78 65 63 75 74 69 | ts.resumer.and.continues.executi |
| 73860 | 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | ng........</p>.......<p.class="f |
| 73880 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| 738a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 738c0 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| 738e0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 73900 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 73920 | 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | span>);.<span.class="tok-kw">con |
| 73940 | 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 | st</span>.expect.=.std.testing.e |
| 73960 | 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | xpect;..<span.class="tok-kw">tes |
| 73980 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>.<span.class="tok-str">& |
| 739a0 | 71 75 6f 74 3b 72 65 73 75 6d 65 20 66 72 6f 6d 20 73 75 73 70 65 6e 64 26 71 75 6f 74 3b 3c 2f | quot;resume.from.suspend"</ |
| 739c0 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.{.....<span.class="tok-kw" |
| 739e0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 79 5f 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 | >var</span>.my_result:.<span.cla |
| 73a00 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e | ss="tok-type">i32</span>.=.<span |
| 73a20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">1</span>;... |
| 73a40 | 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 | .._.=.<span.class="tok-kw">async |
| 73a60 | 3c 2f 73 70 61 6e 3e 20 74 65 73 74 52 65 73 75 6d 65 46 72 6f 6d 53 75 73 70 65 6e 64 28 26 61 | </span>.testResumeFromSuspend(&a |
| 73a80 | 6d 70 3b 6d 79 5f 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mp;my_result);.....<span.class=" |
| 73aa0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 | tok-kw">try</span>.std.testing.e |
| 73ac0 | 78 70 65 63 74 28 6d 79 5f 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | xpect(my_result.==.<span.class=" |
| 73ae0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 | tok-number">2</span>);.}.<span.c |
| 73b00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | lass="tok-kw">fn</span>.<span.cl |
| 73b20 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 52 65 73 75 6d 65 46 72 6f 6d 53 75 73 70 65 | ass="tok-fn">testResumeFromSuspe |
| 73b40 | 6e 64 3c 2f 73 70 61 6e 3e 28 6d 79 5f 72 65 73 75 6c 74 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 | nd</span>(my_result:.*<span.clas |
| 73b60 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | s="tok-type">i32</span>).<span.c |
| 73b80 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | lass="tok-type">void</span>.{... |
| 73ba0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f | ..<span.class="tok-kw">suspend</ |
| 73bc0 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.{.........<span.class="tok |
| 73be0 | 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">resume</span>.<span.class=" |
| 73c00 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 | tok-builtin">@frame</span>();... |
| 73c20 | 20 20 7d 0a 20 20 20 20 6d 79 5f 72 65 73 75 6c 74 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 | ..}.....my_result.*.+=.<span.cla |
| 73c40 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 | ss="tok-number">1</span>;.....<s |
| 73c60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e | pan.class="tok-kw">suspend</span |
| 73c80 | 3e 20 7b 7d 0a 20 20 20 20 6d 79 5f 72 65 73 75 6c 74 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | >.{}.....my_result.*.+=.<span.cl |
| 73ca0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f | ass="tok-number">1</span>;.}</co |
| 73cc0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 73ce0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d | ">$.zig.test.test.zig.Test.[1/1] |
| 73d00 | 20 74 65 73 74 20 26 71 75 6f 74 3b 72 65 73 75 6d 65 20 66 72 6f 6d 20 73 75 73 70 65 6e 64 26 | .test."resume.from.suspend& |
| 73d20 | 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | quot;......All.1.tests.passed..< |
| 73d40 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | /code></pre>........<p>.......Th |
| 73d60 | 69 73 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 74 61 69 6c 20 63 61 6c 6c 2c 20 61 | is.is.guaranteed.to.tail.call,.a |
| 73d80 | 6e 64 20 74 68 65 72 65 66 6f 72 65 20 77 69 6c 6c 20 6e 6f 74 20 63 61 75 73 65 20 61 20 6e 65 | nd.therefore.will.not.cause.a.ne |
| 73da0 | 77 20 73 74 61 63 6b 20 66 72 61 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | w.stack.frame........</p>....... |
| 73dc0 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 73 79 6e 63 2d 61 6e 64 | ...............<h2.id="Async-and |
| 73de0 | 2d 41 77 61 69 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 79 6e 63 2d 61 6e 64 2d | -Await"><a.href="#toc-Async-and- |
| 73e00 | 41 77 61 69 74 22 3e 41 73 79 6e 63 20 61 6e 64 20 41 77 61 69 74 3c 2f 61 3e 20 3c 61 20 63 6c | Await">Async.and.Await</a>.<a.cl |
| 73e20 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 69 74 | ass="hdr".href="#Async-and-Await |
| 73e40 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | ">..</a></h2>........<p>.......I |
| 73e60 | 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 68 61 74 20 65 76 65 72 79 20 3c 63 6f 64 65 20 | n.the.same.way.that.every.<code. |
| 73e80 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 73ea0 | 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 20 6d 61 74 | >suspend</span></code>.has.a.mat |
| 73ec0 | 63 68 69 6e 67 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ching.......<code.class="zig"><s |
| 73ee0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">resume</span> |
| 73f00 | 3c 2f 63 6f 64 65 3e 2c 20 65 76 65 72 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | </code>,.every.<code.class="zig" |
| 73f20 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 | ><span.class="tok-kw">async</spa |
| 73f40 | 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 20 6d 61 74 63 68 69 6e 67 20 3c 63 6f 64 65 20 63 | n></code>.has.a.matching.<code.c |
| 73f60 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 73f80 | 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | await</span></code>........</p>. |
| 73fa0 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| 73fc0 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 73fe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d | lass="tok-kw">const</span>.std.= |
| 74000 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f | .<span.class="tok-builtin">@impo |
| 74020 | 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | rt</span>(<span.class="tok-str"> |
| 74040 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 | "std"</span>);.<span.c |
| 74060 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | lass="tok-kw">const</span>.expec |
| 74080 | 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 | t.=.std.testing.expect;..<span.c |
| 740a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">test</span>.<span. |
| 740c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 73 79 6e 63 20 61 6e 64 20 | class="tok-str">"async.and. |
| 740e0 | 61 77 61 69 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | await"</span>.{.....<span.c |
| 74100 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 74 65 73 74 20 62 | lass="tok-comment">//.The.test.b |
| 74120 | 6c 6f 63 6b 20 69 73 20 6e 6f 74 20 61 73 79 6e 63 20 61 6e 64 20 73 6f 20 63 61 6e 6e 6f 74 20 | lock.is.not.async.and.so.cannot. |
| 74140 | 68 61 76 65 20 61 20 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | have.a.suspend</span>.....<span. |
| 74160 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 6f 69 6e 74 20 69 6e 20 | class="tok-comment">//.point.in. |
| 74180 | 69 74 2e 20 42 79 20 75 73 69 6e 67 20 74 68 65 20 6e 6f 73 75 73 70 65 6e 64 20 6b 65 79 77 6f | it..By.using.the.nosuspend.keywo |
| 741a0 | 72 64 2c 20 77 65 20 70 72 6f 6d 69 73 65 20 74 68 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | rd,.we.promise.that</span>.....< |
| 741c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 | span.class="tok-comment">//.the. |
| 741e0 | 63 6f 64 65 20 69 6e 20 61 6d 61 69 6e 20 77 69 6c 6c 20 66 69 6e 69 73 68 20 65 78 65 63 75 74 | code.in.amain.will.finish.execut |
| 74200 | 69 6e 67 20 77 69 74 68 6f 75 74 20 73 75 73 70 65 6e 64 69 6e 67 3c 2f 73 70 61 6e 3e 0a 20 20 | ing.without.suspending</span>... |
| 74220 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 | ..<span.class="tok-comment">//.b |
| 74240 | 61 63 6b 20 74 6f 20 74 68 65 20 74 65 73 74 20 62 6c 6f 63 6b 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | ack.to.the.test.block.</span>... |
| 74260 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 6e 64 | ..<span.class="tok-kw">nosuspend |
| 74280 | 3c 2f 73 70 61 6e 3e 20 61 6d 61 69 6e 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>.amain();.}..<span.class= |
| 742a0 | 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "tok-kw">fn</span>.<span.class=" |
| 742c0 | 74 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | tok-fn">amain</span>().<span.cla |
| 742e0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ss="tok-type">void</span>.{..... |
| 74300 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">var</span>. |
| 74320 | 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 | frame.=.<span.class="tok-kw">asy |
| 74340 | 6e 63 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | nc</span>.func();.....<span.clas |
| 74360 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | s="tok-kw">comptime</span>.<span |
| 74380 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 743a0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | t(<span.class="tok-builtin">@Typ |
| 743c0 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 72 61 6d 65 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | eOf</span>(frame).==.<span.class |
| 743e0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 66 75 6e | ="tok-builtin">@Frame</span>(fun |
| 74400 | 63 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | c));......<span.class="tok-kw">c |
| 74420 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | onst</span>.ptr:.<span.class="to |
| 74440 | 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 2d 26 67 74 3b 3c 73 70 61 6e 20 | k-kw">anyframe</span>-><span. |
| 74460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 26 | class="tok-type">void</span>.=.& |
| 74480 | 61 6d 70 3b 66 72 61 6d 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | amp;frame;.....<span.class="tok- |
| 744a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 79 5f 70 74 72 3a 20 3c 73 70 61 6e 20 | kw">const</span>.any_ptr:.<span. |
| 744c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 20 3d | class="tok-kw">anyframe</span>.= |
| 744e0 | 20 70 74 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .ptr;......<span.class="tok-kw"> |
| 74500 | 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 20 61 6e 79 5f 70 74 72 3b 0a 20 20 20 20 3c 73 70 61 6e | resume</span>.any_ptr;.....<span |
| 74520 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 70 74 72 | .class="tok-kw">await</span>.ptr |
| 74540 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | ;.}..<span.class="tok-kw">fn</sp |
| 74560 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 75 6e 63 3c 2f 73 | an>.<span.class="tok-fn">func</s |
| 74580 | 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | pan>().<span.class="tok-type">vo |
| 745a0 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | id</span>.{.....<span.class="tok |
| 745c0 | 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c | -kw">suspend</span>.{}.}</code>< |
| 745e0 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 74600 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 | zig.test.test.zig.Test.[1/1].tes |
| 74620 | 74 20 26 71 75 6f 74 3b 61 73 79 6e 63 20 61 6e 64 20 61 77 61 69 74 26 71 75 6f 74 3b 2e 2e 2e | t."async.and.await"... |
| 74640 | 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f | ...All.1.tests.passed..</code></ |
| 74660 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 | pre>........<p>.......The.<code. |
| 74680 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 746a0 | 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 69 73 20 | >await</span></code>.keyword.is. |
| 746c0 | 75 73 65 64 20 74 6f 20 63 6f 6f 72 64 69 6e 61 74 65 20 77 69 74 68 20 61 6e 20 61 73 79 6e 63 | used.to.coordinate.with.an.async |
| 746e0 | 20 66 75 6e 63 74 69 6f 6e 27 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .function's.......<code.class="z |
| 74700 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | ig"><span.class="tok-kw">return< |
| 74720 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 61 74 65 6d 65 6e 74 2e 0a 20 20 20 20 20 20 3c | /span></code>.statement........< |
| 74740 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | /p>.......<p>.......<code.class= |
| 74760 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 | "zig"><span.class="tok-kw">await |
| 74780 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 73 75 73 70 65 6e 64 20 70 6f 69 6e | </span></code>.is.a.suspend.poin |
| 747a0 | 74 2c 20 61 6e 64 20 74 61 6b 65 73 20 61 73 20 61 6e 20 6f 70 65 72 61 6e 64 20 61 6e 79 74 68 | t,.and.takes.as.an.operand.anyth |
| 747c0 | 69 6e 67 20 74 68 61 74 0a 20 20 20 20 20 20 63 6f 65 72 63 65 73 20 74 6f 20 3c 63 6f 64 65 20 | ing.that.......coerces.to.<code. |
| 747e0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 74800 | 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 2d 26 67 74 3b 54 3c 2f 63 6f 64 65 3e 2e 0a 20 | >anyframe</span>->T</code>... |
| 74820 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 | .....</p>.......<p>.......There. |
| 74840 | 69 73 20 61 20 63 6f 6d 6d 6f 6e 20 6d 69 73 63 6f 6e 63 65 70 74 69 6f 6e 20 74 68 61 74 20 3c | is.a.common.misconception.that.< |
| 74860 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 74880 | 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6d 65 | k-kw">await</span></code>.resume |
| 748a0 | 73 20 74 68 65 20 74 61 72 67 65 74 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 49 74 20 | s.the.target.function........It. |
| 748c0 | 69 73 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 20 61 72 6f 75 6e 64 3a 20 69 74 20 73 75 73 70 | is.the.other.way.around:.it.susp |
| 748e0 | 65 6e 64 73 20 75 6e 74 69 6c 20 74 68 65 20 74 61 72 67 65 74 20 66 75 6e 63 74 69 6f 6e 20 63 | ends.until.the.target.function.c |
| 74900 | 6f 6d 70 6c 65 74 65 73 2e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 65 76 65 6e 74 20 74 68 61 | ompletes........In.the.event.tha |
| 74920 | 74 20 74 68 65 20 74 61 72 67 65 74 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 20 61 6c 72 65 61 64 | t.the.target.function.has.alread |
| 74940 | 79 20 63 6f 6d 70 6c 65 74 65 64 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | y.completed,.<code.class="zig">< |
| 74960 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">await</span> |
| 74980 | 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 73 75 73 70 65 6e 64 3b 20 | </code>.......does.not.suspend;. |
| 749a0 | 69 6e 73 74 65 61 64 20 69 74 20 63 6f 70 69 65 73 20 74 68 65 0a 20 20 20 20 20 20 72 65 74 75 | instead.it.copies.the.......retu |
| 749c0 | 72 6e 20 76 61 6c 75 65 20 64 69 72 65 63 74 6c 79 20 66 72 6f 6d 20 74 68 65 20 74 61 72 67 65 | rn.value.directly.from.the.targe |
| 749e0 | 74 20 66 75 6e 63 74 69 6f 6e 27 73 20 66 72 61 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | t.function's.frame........</p>.. |
| 74a00 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 74a20 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 74a40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 | ass="tok-kw">const</span>.std.=. |
| 74a60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 | <span.class="tok-builtin">@impor |
| 74a80 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>(<span.class="tok-str">& |
| 74aa0 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c | quot;std"</span>);.<span.cl |
| 74ac0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | ass="tok-kw">const</span>.expect |
| 74ae0 | 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | .=.std.testing.expect;..<span.cl |
| 74b00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 74 68 65 5f 66 72 61 6d | ass="tok-kw">var</span>.the_fram |
| 74b20 | 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 | e:.<span.class="tok-kw">anyframe |
| 74b40 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | </span>.=.<span.class="tok-null" |
| 74b60 | 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >undefined</span>;.<span.class=" |
| 74b80 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 69 6e 61 6c 5f 72 65 73 75 6c 74 3a | tok-kw">var</span>.final_result: |
| 74ba0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 | .<span.class="tok-type">i32</spa |
| 74bc0 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | n>.=.<span.class="tok-number">0< |
| 74be0 | 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | /span>;..<span.class="tok-kw">te |
| 74c00 | 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | st</span>.<span.class="tok-str"> |
| 74c20 | 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 61 77 61 69 74 26 71 75 6f 74 3b | "async.function.await" |
| 74c40 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.{.....seq(<span.class="t |
| 74c60 | 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 | ok-str">'a'</span>);....._.=.<sp |
| 74c80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 | an.class="tok-kw">async</span>.a |
| 74ca0 | 6d 61 69 6e 28 29 3b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | main();.....seq(<span.class="tok |
| 74cc0 | 2d 73 74 72 22 3e 27 66 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | -str">'f'</span>);.....<span.cla |
| 74ce0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 20 74 68 65 5f 66 72 | ss="tok-kw">resume</span>.the_fr |
| 74d00 | 61 6d 65 3b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ame;.....seq(<span.class="tok-st |
| 74d20 | 72 22 3e 27 69 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r">'i'</span>);.....<span.class= |
| 74d40 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 69 6e 61 6c | "tok-kw">try</span>.expect(final |
| 74d60 | 5f 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | _result.==.<span.class="tok-numb |
| 74d80 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | er">1234</span>);.....<span.clas |
| 74da0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 | s="tok-kw">try</span>.expect(std |
| 74dc0 | 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | .mem.eql(<span.class="tok-type"> |
| 74de0 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 73 65 71 5f 70 6f 69 6e 74 73 2c 20 3c 73 70 61 | u8</span>,.&seq_points,.<spa |
| 74e00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 63 64 65 66 67 68 | n.class="tok-str">"abcdefgh |
| 74e20 | 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | i"</span>));.}.<span.class= |
| 74e40 | 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "tok-kw">fn</span>.<span.class=" |
| 74e60 | 74 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | tok-fn">amain</span>().<span.cla |
| 74e80 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ss="tok-type">void</span>.{..... |
| 74ea0 | 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 62 27 3c 2f 73 | seq(<span.class="tok-str">'b'</s |
| 74ec0 | 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>);.....<span.class="tok-kw"> |
| 74ee0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | var</span>.f.=.<span.class="tok- |
| 74f00 | 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 28 29 3b 0a 20 20 20 20 | kw">async</span>.another();..... |
| 74f20 | 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 | seq(<span.class="tok-str">'e'</s |
| 74f40 | 70 61 6e 3e 29 3b 0a 20 20 20 20 66 69 6e 61 6c 5f 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 | pan>);.....final_result.=.<span. |
| 74f60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 66 3b 0a 20 | class="tok-kw">await</span>.f;.. |
| 74f80 | 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 | ...seq(<span.class="tok-str">'h' |
| 74fa0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | </span>);.}.<span.class="tok-kw" |
| 74fc0 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e | >fn</span>.<span.class="tok-fn"> |
| 74fe0 | 61 6e 6f 74 68 65 72 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | another</span>().<span.class="to |
| 75000 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 65 71 28 3c 73 70 | k-type">i32</span>.{.....seq(<sp |
| 75020 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 63 27 3c 2f 73 70 61 6e 3e 29 3b 0a | an.class="tok-str">'c'</span>);. |
| 75040 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 | ....<span.class="tok-kw">suspend |
| 75060 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 | </span>.{.........seq(<span.clas |
| 75080 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 64 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 | s="tok-str">'d'</span>);........ |
| 750a0 | 20 74 68 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .the_frame.=.<span.class="tok-bu |
| 750c0 | 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 | iltin">@frame</span>();.....}... |
| 750e0 | 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 67 27 3c | ..seq(<span.class="tok-str">'g'< |
| 75100 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>);.....<span.class="tok-kw |
| 75120 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">return</span>.<span.class="tok |
| 75140 | 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | -number">1234</span>;.}..<span.c |
| 75160 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 65 71 5f 70 6f 69 | lass="tok-kw">var</span>.seq_poi |
| 75180 | 6e 74 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | nts.=.[_]<span.class="tok-type"> |
| 751a0 | 75 38 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | u8</span>{<span.class="tok-numbe |
| 751c0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">0</span>}.**.<span.class="tok |
| 751e0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 63 64 65 66 67 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 | -str">"abcdefghi"</spa |
| 75200 | 6e 3e 2e 6c 65 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | n>.len;.<span.class="tok-kw">var |
| 75220 | 3c 2f 73 70 61 6e 3e 20 73 65 71 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.seq_index:.<span.class=" |
| 75240 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | tok-type">usize</span>.=.<span.c |
| 75260 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 | lass="tok-number">0</span>;..<sp |
| 75280 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| 752a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 65 71 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c | n.class="tok-fn">seq</span>(c:.< |
| 752c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 | span.class="tok-type">u8</span>) |
| 752e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 | .<span.class="tok-type">void</sp |
| 75300 | 61 6e 3e 20 7b 0a 20 20 20 20 73 65 71 5f 70 6f 69 6e 74 73 5b 73 65 71 5f 69 6e 64 65 78 5d 20 | an>.{.....seq_points[seq_index]. |
| 75320 | 3d 20 63 3b 0a 20 20 20 20 73 65 71 5f 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | =.c;.....seq_index.+=.<span.clas |
| 75340 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 | s="tok-number">1</span>;.}</code |
| 75360 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 75380 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 | $.zig.test.test.zig.Test.[1/1].t |
| 753a0 | 65 73 74 20 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 61 77 61 69 74 26 71 | est."async.function.await&q |
| 753c0 | 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | uot;......All.1.tests.passed..</ |
| 753e0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 | code></pre>........<p>.......In. |
| 75400 | 67 65 6e 65 72 61 6c 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | general,.<code.class="zig"><span |
| 75420 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f | .class="tok-kw">suspend</span></ |
| 75440 | 63 6f 64 65 3e 20 69 73 20 6c 6f 77 65 72 20 6c 65 76 65 6c 20 74 68 61 6e 20 3c 63 6f 64 65 20 | code>.is.lower.level.than.<code. |
| 75460 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 75480 | 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 4d 6f 73 74 20 61 70 70 6c 69 | >await</span></code>..Most.appli |
| 754a0 | 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 63 6f 64 65 20 77 69 6c 6c 20 75 73 65 20 6f 6e 6c 79 20 | cation.......code.will.use.only. |
| 754c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 754e0 | 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c | ok-kw">async</span></code>.and.< |
| 75500 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 75520 | 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 62 75 74 20 65 | k-kw">await</span></code>,.but.e |
| 75540 | 76 65 6e 74 20 6c 6f 6f 70 0a 20 20 20 20 20 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 | vent.loop.......implementations. |
| 75560 | 77 69 6c 6c 20 6d 61 6b 65 20 75 73 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | will.make.use.of.<code.class="zi |
| 75580 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c | g"><span.class="tok-kw">suspend< |
| 755a0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 74 65 72 6e 61 6c 6c 79 2e 0a 20 20 20 20 20 20 | /span></code>.internally........ |
| 755c0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 73 79 6e 63 | </p>...............<h2.id="Async |
| 755e0 | 2d 46 75 6e 63 74 69 6f 6e 2d 45 78 61 6d 70 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | -Function-Example"><a.href="#toc |
| 75600 | 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 2d 45 78 61 6d 70 6c 65 22 3e 41 73 79 6e 63 20 46 | -Async-Function-Example">Async.F |
| 75620 | 75 6e 63 74 69 6f 6e 20 45 78 61 6d 70 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | unction.Example</a>.<a.class="hd |
| 75640 | 72 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 2d 45 78 61 6d 70 6c 65 | r".href="#Async-Function-Example |
| 75660 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 | ">..</a></h2>........<p>.......P |
| 75680 | 75 74 74 69 6e 67 20 61 6c 6c 20 6f 66 20 74 68 69 73 20 74 6f 67 65 74 68 65 72 2c 20 68 65 72 | utting.all.of.this.together,.her |
| 756a0 | 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 74 79 70 69 63 61 6c 0a 20 20 20 20 20 | e.is.an.example.of.typical...... |
| 756c0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 756e0 | 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2f 3c 63 6f 64 | tok-kw">async</span></code>/<cod |
| 75700 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 75720 | 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 75 73 61 67 65 3a 0a 20 20 | w">await</span></code>.usage:... |
| 75740 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 61 | ....</p>.......<p.class="file">a |
| 75760 | 73 79 6e 63 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | sync.zig</p><pre><code.class="zi |
| 75780 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 757a0 | 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | pan>.std.=.<span.class="tok-buil |
| 757c0 | 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@import</span>(<span.class= |
| 757e0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "tok-str">"std"</span> |
| 75800 | 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | );.<span.class="tok-kw">const</s |
| 75820 | 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 | pan>.Allocator.=.std.mem.Allocat |
| 75840 | 6f 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | or;..<span.class="tok-kw">pub</s |
| 75860 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | pan>.<span.class="tok-kw">fn</sp |
| 75880 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 | an>.<span.class="tok-fn">main</s |
| 758a0 | 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | pan>().<span.class="tok-type">vo |
| 758c0 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | id</span>.{....._.=.<span.class= |
| 758e0 | 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 6d 61 69 6e 57 72 61 70 28 | "tok-kw">async</span>.amainWrap( |
| 75900 | 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | );......<span.class="tok-comment |
| 75920 | 22 3e 2f 2f 20 54 79 70 69 63 61 6c 6c 79 20 77 65 20 77 6f 75 6c 64 20 75 73 65 20 61 6e 20 65 | ">//.Typically.we.would.use.an.e |
| 75940 | 76 65 6e 74 20 6c 6f 6f 70 20 74 6f 20 6d 61 6e 61 67 65 20 72 65 73 75 6d 69 6e 67 20 61 73 79 | vent.loop.to.manage.resuming.asy |
| 75960 | 6e 63 20 66 75 6e 63 74 69 6f 6e 73 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | nc.functions,</span>.....<span.c |
| 75980 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 75 74 20 69 6e 20 74 68 69 | lass="tok-comment">//.but.in.thi |
| 759a0 | 73 20 65 78 61 6d 70 6c 65 20 77 65 20 68 61 72 64 20 63 6f 64 65 20 77 68 61 74 20 74 68 65 20 | s.example.we.hard.code.what.the. |
| 759c0 | 65 76 65 6e 74 20 6c 6f 6f 70 20 77 6f 75 6c 64 20 64 6f 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | event.loop.would.do,</span>..... |
| 759e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 | <span.class="tok-comment">//.to. |
| 75a00 | 6d 61 6b 65 20 74 68 69 6e 67 73 20 64 65 74 65 72 6d 69 6e 69 73 74 69 63 2e 3c 2f 73 70 61 6e | make.things.deterministic.</span |
| 75a20 | 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d | >.....<span.class="tok-kw">resum |
| 75a40 | 65 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f 66 69 6c 65 5f 66 72 61 6d 65 3b 0a 20 20 20 20 | e</span>.global_file_frame;..... |
| 75a60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 | <span.class="tok-kw">resume</spa |
| 75a80 | 6e 3e 20 67 6c 6f 62 61 6c 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 3b 0a 7d 0a 0a 3c 73 70 | n>.global_download_frame;.}..<sp |
| 75aa0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| 75ac0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 57 72 61 70 3c 2f 73 70 61 6e | n.class="tok-fn">amainWrap</span |
| 75ae0 | 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | >().<span.class="tok-type">void< |
| 75b00 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 6d 61 69 6e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>.{.....amain().<span.class |
| 75b20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7c 65 7c 20 7b 0a 20 20 20 | ="tok-kw">catch</span>.|e|.{.... |
| 75b40 | 20 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | .....std.debug.print(<span.class |
| 75b60 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | ="tok-str">"{}\n"</spa |
| 75b80 | 6e 3e 2c 20 2e 7b 65 7d 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>,..{e});.........<span.class=" |
| 75ba0 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tok-kw">if</span>.(<span.class=" |
| 75bc0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f | tok-builtin">@errorReturnTrace</ |
| 75be0 | 73 70 61 6e 3e 28 29 29 20 7c 74 72 61 63 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 | span>()).|trace|.{.............s |
| 75c00 | 74 64 2e 64 65 62 75 67 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 63 65 28 74 72 61 63 65 2e 2a 29 | td.debug.dumpStackTrace(trace.*) |
| 75c20 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 74 64 2e 70 72 6f 63 65 73 73 2e | ;.........}.........std.process. |
| 75c40 | 65 78 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | exit(<span.class="tok-number">1< |
| 75c60 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>);.....};.}..<span.class=" |
| 75c80 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 75ca0 | 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 | ok-fn">amain</span>().!<span.cla |
| 75cc0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ss="tok-type">void</span>.{..... |
| 75ce0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 75d00 | 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 68 65 61 70 2e 70 61 67 65 5f 61 6c 6c 6f | >.allocator.=.std.heap.page_allo |
| 75d20 | 63 61 74 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | cator;.....<span.class="tok-kw"> |
| 75d40 | 76 61 72 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 | var</span>.download_frame.=.<spa |
| 75d60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 66 65 | n.class="tok-kw">async</span>.fe |
| 75d80 | 74 63 68 55 72 6c 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tchUrl(allocator,.<span.class="t |
| 75da0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 74 74 70 73 3a 2f 2f 65 78 61 6d 70 6c 65 2e 63 6f | ok-str">"https://example.co |
| 75dc0 | 6d 2f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | m/"</span>);.....<span.clas |
| 75de0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 77 61 69 74 65 64 5f 64 6f | s="tok-kw">var</span>.awaited_do |
| 75e00 | 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | wnload_frame.=.<span.class="tok- |
| 75e20 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | null">false</span>;.....<span.cl |
| 75e40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 3c 73 70 | ass="tok-kw">errdefer</span>.<sp |
| 75e60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 61 77 | an.class="tok-kw">if</span>.(!aw |
| 75e80 | 61 69 74 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 29 20 7b 0a 20 20 20 20 20 20 20 20 | aited_download_frame).{......... |
| 75ea0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 | <span.class="tok-kw">if</span>.( |
| 75ec0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e | <span.class="tok-kw">await</span |
| 75ee0 | 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 29 20 7c 72 7c 20 61 6c 6c 6f 63 61 74 6f 72 2e | >.download_frame).|r|.allocator. |
| 75f00 | 66 72 65 65 28 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | free(r).<span.class="tok-kw">els |
| 75f20 | 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 7d 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 | e</span>.|_|.{}.....};......<spa |
| 75f40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 69 6c 65 | n.class="tok-kw">var</span>.file |
| 75f60 | 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 | _frame.=.<span.class="tok-kw">as |
| 75f80 | 79 6e 63 3c 2f 73 70 61 6e 3e 20 72 65 61 64 46 69 6c 65 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c | ync</span>.readFile(allocator,.< |
| 75fa0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6f 6d 65 74 | span.class="tok-str">"somet |
| 75fc0 | 68 69 6e 67 2e 74 78 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | hing.txt"</span>);.....<spa |
| 75fe0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 77 61 69 | n.class="tok-kw">var</span>.awai |
| 76000 | 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ted_file_frame.=.<span.class="to |
| 76020 | 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | k-null">false</span>;.....<span. |
| 76040 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 3c | class="tok-kw">errdefer</span>.< |
| 76060 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 | span.class="tok-kw">if</span>.(! |
| 76080 | 61 77 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 | awaited_file_frame).{.........<s |
| 760a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 | pan.class="tok-kw">if</span>.(<s |
| 760c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">await</span>. |
| 760e0 | 66 69 6c 65 5f 66 72 61 6d 65 29 20 7c 72 7c 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 | file_frame).|r|.allocator.free(r |
| 76100 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 | ).<span.class="tok-kw">else</spa |
| 76120 | 6e 3e 20 7c 5f 7c 20 7b 7d 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 61 77 61 69 74 65 64 5f 66 69 | n>.|_|.{}.....};......awaited_fi |
| 76140 | 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | le_frame.=.<span.class="tok-null |
| 76160 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">true</span>;.....<span.class=" |
| 76180 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 69 6c 65 5f 74 65 78 74 20 3d | tok-kw">const</span>.file_text.= |
| 761a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 761c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 | .<span.class="tok-kw">await</spa |
| 761e0 | 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.file_frame;.....<span.class=" |
| 76200 | 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 | tok-kw">defer</span>.allocator.f |
| 76220 | 72 65 65 28 66 69 6c 65 5f 74 65 78 74 29 3b 0a 0a 20 20 20 20 61 77 61 69 74 65 64 5f 64 6f 77 | ree(file_text);......awaited_dow |
| 76240 | 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | nload_frame.=.<span.class="tok-n |
| 76260 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ull">true</span>;.....<span.clas |
| 76280 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 | s="tok-kw">const</span>.download |
| 762a0 | 5f 74 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | _text.=.<span.class="tok-kw">try |
| 762c0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 | </span>.<span.class="tok-kw">awa |
| 762e0 | 69 74 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 3b 0a 20 20 20 20 3c 73 | it</span>.download_frame;.....<s |
| 76300 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">defer</span>. |
| 76320 | 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 64 6f 77 6e 6c 6f 61 64 5f 74 65 78 74 29 3b 0a 0a | allocator.free(download_text);.. |
| 76340 | 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....std.debug.print(<span.class= |
| 76360 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 77 6e 6c 6f 61 64 5f 74 65 78 74 3a 20 7b | "tok-str">"download_text:.{ |
| 76380 | 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 64 6f 77 6e 6c 6f 61 64 5f 74 65 | s}\n"</span>,..{download_te |
| 763a0 | 78 74 7d 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 | xt});.....std.debug.print(<span. |
| 763c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 6c 65 5f 74 65 78 74 3a | class="tok-str">"file_text: |
| 763e0 | 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 69 6c 65 5f 74 65 78 74 | .{s}\n"</span>,..{file_text |
| 76400 | 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | });.}..<span.class="tok-kw">var< |
| 76420 | 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 3a 20 3c 73 | /span>.global_download_frame:.<s |
| 76440 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 | pan.class="tok-kw">anyframe</spa |
| 76460 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 | n>.=.<span.class="tok-null">unde |
| 76480 | 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | fined</span>;.<span.class="tok-k |
| 764a0 | 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e | w">fn</span>.<span.class="tok-fn |
| 764c0 | 22 3e 66 65 74 63 68 55 72 6c 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 2a 41 6c | ">fetchUrl</span>(allocator:.*Al |
| 764e0 | 6c 6f 63 61 74 6f 72 2c 20 75 72 6c 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | locator,.url:.[]<span.class="tok |
| 76500 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">const</span>.<span.class="t |
| 76520 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 | ok-type">u8</span>).![]<span.cla |
| 76540 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ss="tok-type">u8</span>.{.....<s |
| 76560 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 76580 | 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | result.=.<span.class="tok-kw">tr |
| 765a0 | 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 6d 65 6d 2e 64 75 70 65 28 61 6c 6c 6f 63 61 74 6f 72 2c | y</span>.std.mem.dupe(allocator, |
| 765c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | .<span.class="tok-type">u8</span |
| 765e0 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 | >,.<span.class="tok-str">"t |
| 76600 | 68 69 73 20 69 73 20 74 68 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 75 72 6c 20 63 6f 6e 74 65 6e | his.is.the.downloaded.url.conten |
| 76620 | 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ts"</span>);.....<span.clas |
| 76640 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 | s="tok-kw">errdefer</span>.alloc |
| 76660 | 61 74 6f 72 2e 66 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ator.free(result);.....<span.cla |
| 76680 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ss="tok-kw">suspend</span>.{.... |
| 766a0 | 20 20 20 20 20 67 6c 6f 62 61 6c 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 | .....global_download_frame.=.<sp |
| 766c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c 2f 73 | an.class="tok-builtin">@frame</s |
| 766e0 | 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e | pan>();.....}.....std.debug.prin |
| 76700 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 65 | t(<span.class="tok-str">"fe |
| 76720 | 74 63 68 55 72 6c 20 72 65 74 75 72 6e 69 6e 67 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | tchUrl.returning\n"</span>, |
| 76740 | 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ..{});.....<span.class="tok-kw"> |
| 76760 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | return</span>.result;.}..<span.c |
| 76780 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f | lass="tok-kw">var</span>.global_ |
| 767a0 | 66 69 6c 65 5f 66 72 61 6d 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | file_frame:.<span.class="tok-kw" |
| 767c0 | 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >anyframe</span>.=.<span.class=" |
| 767e0 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | tok-null">undefined</span>;.<spa |
| 76800 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| 76820 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 65 61 64 46 69 6c 65 3c 2f 73 70 61 6e 3e 28 | .class="tok-fn">readFile</span>( |
| 76840 | 61 6c 6c 6f 63 61 74 6f 72 3a 20 2a 41 6c 6c 6f 63 61 74 6f 72 2c 20 66 69 6c 65 6e 61 6d 65 3a | allocator:.*Allocator,.filename: |
| 76860 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | .[]<span.class="tok-kw">const</s |
| 76880 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | pan>.<span.class="tok-type">u8</ |
| 768a0 | 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | span>).![]<span.class="tok-type" |
| 768c0 | 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >u8</span>.{.....<span.class="to |
| 768e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 | k-kw">const</span>.result.=.<spa |
| 76900 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e | n.class="tok-kw">try</span>.std. |
| 76920 | 6d 65 6d 2e 64 75 70 65 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mem.dupe(allocator,.<span.class= |
| 76940 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-type">u8</span>,.<span.clas |
| 76960 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 74 68 65 20 66 69 | s="tok-str">"this.is.the.fi |
| 76980 | 6c 65 20 63 6f 6e 74 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c | le.contents"</span>);.....< |
| 769a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 | span.class="tok-kw">errdefer</sp |
| 769c0 | 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 | an>.allocator.free(result);..... |
| 769e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 | <span.class="tok-kw">suspend</sp |
| 76a00 | 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 5f 66 69 6c 65 5f 66 72 61 6d 65 20 | an>.{.........global_file_frame. |
| 76a20 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 | =.<span.class="tok-builtin">@fra |
| 76a40 | 6d 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 | me</span>();.....}.....std.debug |
| 76a60 | 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .print(<span.class="tok-str">&qu |
| 76a80 | 6f 74 3b 72 65 61 64 46 69 6c 65 20 72 65 74 75 72 6e 69 6e 67 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | ot;readFile.returning\n"</s |
| 76aa0 | 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>,..{});.....<span.class="tok |
| 76ac0 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f | -kw">return</span>.result;.}</co |
| 76ae0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 76b00 | 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 61 73 79 6e 63 2e 7a 69 67 0a 24 20 2e 2f | ">$.zig.build-exe.async.zig.$../ |
| 76b20 | 61 73 79 6e 63 0a 72 65 61 64 46 69 6c 65 20 72 65 74 75 72 6e 69 6e 67 0a 66 65 74 63 68 55 72 | async.readFile.returning.fetchUr |
| 76b40 | 6c 20 72 65 74 75 72 6e 69 6e 67 0a 64 6f 77 6e 6c 6f 61 64 5f 74 65 78 74 3a 20 74 68 69 73 20 | l.returning.download_text:.this. |
| 76b60 | 69 73 20 74 68 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 75 72 6c 20 63 6f 6e 74 65 6e 74 73 0a 66 | is.the.downloaded.url.contents.f |
| 76b80 | 69 6c 65 5f 74 65 78 74 3a 20 74 68 69 73 20 69 73 20 74 68 65 20 66 69 6c 65 20 63 6f 6e 74 65 | ile_text:.this.is.the.file.conte |
| 76ba0 | 6e 74 73 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | nts.</code></pre>........<p>.... |
| 76bc0 | 20 20 20 4e 6f 77 20 77 65 20 72 65 6d 6f 76 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ...Now.we.remove.the.<code.class |
| 76be0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 | ="zig"><span.class="tok-kw">susp |
| 76c00 | 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 | end</span></code>.and.<code.clas |
| 76c20 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 | s="zig"><span.class="tok-kw">res |
| 76c40 | 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 2c 20 61 6e 64 0a 20 20 20 20 | ume</span></code>.code,.and..... |
| 76c60 | 20 20 6f 62 73 65 72 76 65 20 74 68 65 20 73 61 6d 65 20 62 65 68 61 76 69 6f 72 2c 20 77 69 74 | ..observe.the.same.behavior,.wit |
| 76c80 | 68 20 6f 6e 65 20 74 69 6e 79 20 64 69 66 66 65 72 65 6e 63 65 3a 0a 20 20 20 20 20 20 3c 2f 70 | h.one.tiny.difference:.......</p |
| 76ca0 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 6c 6f 63 6b 69 6e 67 | >.......<p.class="file">blocking |
| 76cc0 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 76ce0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 76d00 | 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | .std.=.<span.class="tok-builtin" |
| 76d20 | 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >@import</span>(<span.class="tok |
| 76d40 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c | -str">"std"</span>);.< |
| 76d60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 76d80 | 20 41 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 3b 0a | .Allocator.=.std.mem.Allocator;. |
| 76da0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">pub</span> |
| 76dc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">fn</span>. |
| 76de0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e | <span.class="tok-fn">main</span> |
| 76e00 | 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | ().<span.class="tok-type">void</ |
| 76e20 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.{....._.=.<span.class="tok |
| 76e40 | 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 6d 61 69 6e 57 72 61 70 28 29 3b 0a 7d | -kw">async</span>.amainWrap();.} |
| 76e60 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | ..<span.class="tok-kw">fn</span> |
| 76e80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 57 72 61 70 3c | .<span.class="tok-fn">amainWrap< |
| 76ea0 | 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | /span>().<span.class="tok-type"> |
| 76ec0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 6d 61 69 6e 28 29 20 3c 73 70 61 6e 20 | void</span>.{.....amain().<span. |
| 76ee0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7c 65 7c 20 | class="tok-kw">catch</span>.|e|. |
| 76f00 | 7b 0a 20 20 20 20 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 | {.........std.debug.print(<span. |
| 76f20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 5c 6e 26 71 75 6f 74 3b | class="tok-str">"{}\n" |
| 76f40 | 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 65 7d 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | </span>,..{e});.........<span.cl |
| 76f60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c | ass="tok-kw">if</span>.(<span.cl |
| 76f80 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 | ass="tok-builtin">@errorReturnTr |
| 76fa0 | 61 63 65 3c 2f 73 70 61 6e 3e 28 29 29 20 7c 74 72 61 63 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 | ace</span>()).|trace|.{......... |
| 76fc0 | 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 63 65 28 74 72 61 | ....std.debug.dumpStackTrace(tra |
| 76fe0 | 63 65 2e 2a 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 74 64 2e 70 72 6f | ce.*);.........}.........std.pro |
| 77000 | 63 65 73 73 2e 65 78 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | cess.exit(<span.class="tok-numbe |
| 77020 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | r">1</span>);.....};.}..<span.cl |
| 77040 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| 77060 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 | ss="tok-fn">amain</span>().!<spa |
| 77080 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 770a0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| 770c0 | 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 68 65 61 70 2e 70 61 67 65 | /span>.allocator.=.std.heap.page |
| 770e0 | 5f 61 6c 6c 6f 63 61 74 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | _allocator;.....<span.class="tok |
| 77100 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d | -kw">var</span>.download_frame.= |
| 77120 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 | .<span.class="tok-kw">async</spa |
| 77140 | 6e 3e 20 66 65 74 63 68 55 72 6c 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 | n>.fetchUrl(allocator,.<span.cla |
| 77160 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 74 74 70 73 3a 2f 2f 65 78 61 6d 70 | ss="tok-str">"https://examp |
| 77180 | 6c 65 2e 63 6f 6d 2f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | le.com/"</span>);.....<span |
| 771a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 77 61 69 74 | .class="tok-kw">var</span>.await |
| 771c0 | 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ed_download_frame.=.<span.class= |
| 771e0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | "tok-null">false</span>;.....<sp |
| 77200 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e | an.class="tok-kw">errdefer</span |
| 77220 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">if</span> |
| 77240 | 20 28 21 61 77 61 69 74 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 29 20 7b 0a 20 20 20 | .(!awaited_download_frame).{.... |
| 77260 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 | .....<span.class="tok-kw">if</sp |
| 77280 | 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c | an>.(<span.class="tok-kw">await< |
| 772a0 | 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 29 20 7c 72 7c 20 61 6c 6c 6f 63 | /span>.download_frame).|r|.alloc |
| 772c0 | 61 74 6f 72 2e 66 72 65 65 28 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ator.free(r).<span.class="tok-kw |
| 772e0 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 7d 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 | ">else</span>.|_|.{}.....};..... |
| 77300 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 77320 | 20 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .file_frame.=.<span.class="tok-k |
| 77340 | 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 72 65 61 64 46 69 6c 65 28 61 6c 6c 6f 63 61 74 | w">async</span>.readFile(allocat |
| 77360 | 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | or,.<span.class="tok-str">" |
| 77380 | 73 6f 6d 65 74 68 69 6e 67 2e 74 78 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | something.txt"</span>);.... |
| 773a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 773c0 | 20 61 77 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | .awaited_file_frame.=.<span.clas |
| 773e0 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | s="tok-null">false</span>;.....< |
| 77400 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 | span.class="tok-kw">errdefer</sp |
| 77420 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 | an>.<span.class="tok-kw">if</spa |
| 77440 | 6e 3e 20 28 21 61 77 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 29 20 7b 0a 20 20 20 20 20 | n>.(!awaited_file_frame).{...... |
| 77460 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | ...<span.class="tok-kw">if</span |
| 77480 | 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 | >.(<span.class="tok-kw">await</s |
| 774a0 | 70 61 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 29 20 7c 72 7c 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 | pan>.file_frame).|r|.allocator.f |
| 774c0 | 72 65 65 28 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | ree(r).<span.class="tok-kw">else |
| 774e0 | 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 7d 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 61 77 61 69 74 | </span>.|_|.{}.....};......await |
| 77500 | 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ed_file_frame.=.<span.class="tok |
| 77520 | 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -null">true</span>;.....<span.cl |
| 77540 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 69 6c 65 5f 74 | ass="tok-kw">const</span>.file_t |
| 77560 | 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | ext.=.<span.class="tok-kw">try</ |
| 77580 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 | span>.<span.class="tok-kw">await |
| 775a0 | 3c 2f 73 70 61 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | </span>.file_frame;.....<span.cl |
| 775c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 | ass="tok-kw">defer</span>.alloca |
| 775e0 | 74 6f 72 2e 66 72 65 65 28 66 69 6c 65 5f 74 65 78 74 29 3b 0a 0a 20 20 20 20 61 77 61 69 74 65 | tor.free(file_text);......awaite |
| 77600 | 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | d_download_frame.=.<span.class=" |
| 77620 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-null">true</span>;.....<span |
| 77640 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 6f 77 | .class="tok-kw">const</span>.dow |
| 77660 | 6e 6c 6f 61 64 5f 74 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | nload_text.=.<span.class="tok-kw |
| 77680 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">try</span>.<span.class="tok-kw |
| 776a0 | 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 3b 0a 20 | ">await</span>.download_frame;.. |
| 776c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 | ...<span.class="tok-kw">defer</s |
| 776e0 | 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 64 6f 77 6e 6c 6f 61 64 5f 74 65 78 | pan>.allocator.free(download_tex |
| 77700 | 74 29 3b 0a 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | t);......std.debug.print(<span.c |
| 77720 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 77 6e 6c 6f 61 64 5f 74 65 | lass="tok-str">"download_te |
| 77740 | 78 74 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 64 6f 77 6e 6c 6f | xt:.{s}\n"</span>,..{downlo |
| 77760 | 61 64 5f 74 65 78 74 7d 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c | ad_text});.....std.debug.print(< |
| 77780 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 6c 65 5f | span.class="tok-str">"file_ |
| 777a0 | 74 65 78 74 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 69 6c 65 | text:.{s}\n"</span>,..{file |
| 777c0 | 5f 74 65 78 74 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | _text});.}..<span.class="tok-kw" |
| 777e0 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e | >fn</span>.<span.class="tok-fn"> |
| 77800 | 66 65 74 63 68 55 72 6c 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 2a 41 6c 6c 6f | fetchUrl</span>(allocator:.*Allo |
| 77820 | 63 61 74 6f 72 2c 20 75 72 6c 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | cator,.url:.[]<span.class="tok-k |
| 77840 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | w">const</span>.<span.class="tok |
| 77860 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | -type">u8</span>).![]<span.class |
| 77880 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | ="tok-type">u8</span>.{.....<spa |
| 778a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 | n.class="tok-kw">const</span>.re |
| 778c0 | 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | sult.=.<span.class="tok-kw">try< |
| 778e0 | 2f 73 70 61 6e 3e 20 73 74 64 2e 6d 65 6d 2e 64 75 70 65 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c | /span>.std.mem.dupe(allocator,.< |
| 77900 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c | span.class="tok-type">u8</span>, |
| 77920 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 | .<span.class="tok-str">"thi |
| 77940 | 73 20 69 73 20 74 68 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 75 72 6c 20 63 6f 6e 74 65 6e 74 73 | s.is.the.downloaded.url.contents |
| 77960 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>);.....<span.class= |
| 77980 | 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 | "tok-kw">errdefer</span>.allocat |
| 779a0 | 6f 72 2e 66 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 | or.free(result);.....std.debug.p |
| 779c0 | 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | rint(<span.class="tok-str">" |
| 779e0 | 3b 66 65 74 63 68 55 72 6c 20 72 65 74 75 72 6e 69 6e 67 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | ;fetchUrl.returning\n"</spa |
| 77a00 | 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | n>,..{});.....<span.class="tok-k |
| 77a20 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 0a 0a 3c 73 70 61 | w">return</span>.result;.}..<spa |
| 77a40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| 77a60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 65 61 64 46 69 6c 65 3c 2f 73 70 61 6e 3e 28 | .class="tok-fn">readFile</span>( |
| 77a80 | 61 6c 6c 6f 63 61 74 6f 72 3a 20 2a 41 6c 6c 6f 63 61 74 6f 72 2c 20 66 69 6c 65 6e 61 6d 65 3a | allocator:.*Allocator,.filename: |
| 77aa0 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | .[]<span.class="tok-kw">const</s |
| 77ac0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | pan>.<span.class="tok-type">u8</ |
| 77ae0 | 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | span>).![]<span.class="tok-type" |
| 77b00 | 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >u8</span>.{.....<span.class="to |
| 77b20 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 | k-kw">const</span>.result.=.<spa |
| 77b40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e | n.class="tok-kw">try</span>.std. |
| 77b60 | 6d 65 6d 2e 64 75 70 65 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mem.dupe(allocator,.<span.class= |
| 77b80 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-type">u8</span>,.<span.clas |
| 77ba0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 74 68 65 20 66 69 | s="tok-str">"this.is.the.fi |
| 77bc0 | 6c 65 20 63 6f 6e 74 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c | le.contents"</span>);.....< |
| 77be0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 | span.class="tok-kw">errdefer</sp |
| 77c00 | 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 | an>.allocator.free(result);..... |
| 77c20 | 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | std.debug.print(<span.class="tok |
| 77c40 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 61 64 46 69 6c 65 20 72 65 74 75 72 6e 69 6e 67 5c 6e | -str">"readFile.returning\n |
| 77c60 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | "</span>,..{});.....<span.c |
| 77c80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 | lass="tok-kw">return</span>.resu |
| 77ca0 | 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | lt;.}</code></pre><pre><code.cla |
| 77cc0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 62 6c 6f 63 6b | ss="shell">$.zig.build-exe.block |
| 77ce0 | 69 6e 67 2e 7a 69 67 0a 24 20 2e 2f 62 6c 6f 63 6b 69 6e 67 0a 66 65 74 63 68 55 72 6c 20 72 65 | ing.zig.$../blocking.fetchUrl.re |
| 77d00 | 74 75 72 6e 69 6e 67 0a 72 65 61 64 46 69 6c 65 20 72 65 74 75 72 6e 69 6e 67 0a 64 6f 77 6e 6c | turning.readFile.returning.downl |
| 77d20 | 6f 61 64 5f 74 65 78 74 3a 20 74 68 69 73 20 69 73 20 74 68 65 20 64 6f 77 6e 6c 6f 61 64 65 64 | oad_text:.this.is.the.downloaded |
| 77d40 | 20 75 72 6c 20 63 6f 6e 74 65 6e 74 73 0a 66 69 6c 65 5f 74 65 78 74 3a 20 74 68 69 73 20 69 73 | .url.contents.file_text:.this.is |
| 77d60 | 20 74 68 65 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | .the.file.contents.</code></pre> |
| 77d80 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 72 65 76 69 6f 75 73 6c 79 2c 20 74 68 | ........<p>.......Previously,.th |
| 77da0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 65 74 63 68 55 72 6c 3c 2f 63 6f | e.<code.class="zig">fetchUrl</co |
| 77dc0 | 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 61 64 46 69 | de>.and.<code.class="zig">readFi |
| 77de0 | 6c 65 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 73 20 73 75 73 70 65 6e 64 65 64 2c 0a 20 | le</code>.functions.suspended,.. |
| 77e00 | 20 20 20 20 20 61 6e 64 20 77 65 72 65 20 72 65 73 75 6d 65 64 20 69 6e 20 61 6e 20 6f 72 64 65 | .....and.were.resumed.in.an.orde |
| 77e20 | 72 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | r.determined.by.the.<code.class= |
| 77e40 | 22 7a 69 67 22 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2e 20 4e 6f 77 2c | "zig">main</code>.function..Now, |
| 77e60 | 0a 20 20 20 20 20 20 73 69 6e 63 65 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 73 75 73 70 65 6e | .......since.there.are.no.suspen |
| 77e80 | 64 20 70 6f 69 6e 74 73 2c 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 74 68 65 20 70 72 69 6e 74 | d.points,.the.order.of.the.print |
| 77ea0 | 65 64 20 22 2e 2e 2e 20 72 65 74 75 72 6e 69 6e 67 22 20 6d 65 73 73 61 67 65 73 0a 20 20 20 20 | ed."....returning".messages..... |
| 77ec0 | 20 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 | ..is.determined.by.the.order.of. |
| 77ee0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 77f00 | 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 73 | ok-kw">async</span></code>.calls |
| 77f20 | 69 74 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a | ites........</p>................ |
| 77f40 | 20 20 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e | ........<h1.id="Builtin-Function |
| 77f60 | 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f | s"><a.href="#toc-Builtin-Functio |
| 77f80 | 6e 73 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ns">Builtin.Functions</a>.<a.cla |
| 77fa0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e | ss="hdr".href="#Builtin-Function |
| 77fc0 | 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | s">..</a></h1>........<p>....... |
| 77fe0 | 42 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 62 | Builtin.functions.are.provided.b |
| 78000 | 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 61 72 65 20 70 72 65 66 69 78 65 64 20 | y.the.compiler.and.are.prefixed. |
| 78020 | 77 69 74 68 20 3c 63 6f 64 65 3e 40 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 3c | with.<code>@</code>........The.< |
| 78040 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 78060 | 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 | k-kw">comptime</span></code>.key |
| 78080 | 77 6f 72 64 20 6f 6e 20 61 20 70 61 72 61 6d 65 74 65 72 20 6d 65 61 6e 73 20 74 68 61 74 20 74 | word.on.a.parameter.means.that.t |
| 780a0 | 68 65 20 70 61 72 61 6d 65 74 65 72 20 6d 75 73 74 20 62 65 20 6b 6e 6f 77 6e 0a 20 20 20 20 20 | he.parameter.must.be.known...... |
| 780c0 | 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .at.compile.time........</p>.... |
| 780e0 | 20 20 20 3c 68 32 20 69 64 3d 22 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 | ...<h2.id="addWithOverflow"><a.h |
| 78100 | 72 65 66 3d 22 23 74 6f 63 2d 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 64 57 | ref="#toc-addWithOverflow">@addW |
| 78120 | 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ithOverflow</a>.<a.class="hdr".h |
| 78140 | 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ref="#addWithOverflow">..</a></h |
| 78160 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 78180 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 | ><span.class="tok-builtin">@addW |
| 781a0 | 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ithOverflow</span>(<span.class=" |
| 781c0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e | tok-kw">comptime</span>.T:.<span |
| 781e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 | .class="tok-type">type</span>,.a |
| 78200 | 3a 20 54 2c 20 62 3a 20 54 2c 20 72 65 73 75 6c 74 3a 20 2a 54 29 20 3c 73 70 61 6e 20 63 6c 61 | :.T,.b:.T,.result:.*T).<span.cla |
| 78220 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-type">bool</span></code> |
| 78240 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 | </pre>.......<p>.......Performs. |
| 78260 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 2e 2a 20 3d 20 61 20 2b | <code.class="zig">result.*.=.a.+ |
| 78280 | 20 62 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 | .b</code>..If.overflow.or.underf |
| 782a0 | 6c 6f 77 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 20 20 20 20 73 74 6f 72 65 73 20 74 68 65 | low.occurs,...........stores.the |
| 782c0 | 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .overflowed.bits.in.<code.class= |
| 782e0 | 22 7a 69 67 22 3e 72 65 73 75 6c 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 | "zig">result</code>.and.returns. |
| 78300 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 78320 | 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | ok-null">true</span></code>..... |
| 78340 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 6e 6f 20 6f 76 65 72 66 6c 6f 77 20 6f 72 | ...............If.no.overflow.or |
| 78360 | 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 | .underflow.occurs,.returns.<code |
| 78380 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .class="zig"><span.class="tok-nu |
| 783a0 | 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c | ll">false</span></code>........< |
| 783c0 | 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 6c 69 67 6e 43 61 | /p>..............<h2.id="alignCa |
| 783e0 | 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c | st"><a.href="#toc-alignCast">@al |
| 78400 | 69 67 6e 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | ignCast</a>.<a.class="hdr".href= |
| 78420 | 22 23 61 6c 69 67 6e 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | "#alignCast">..</a></h2>........ |
| 78440 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 78460 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 | ss="tok-builtin">@alignCast</spa |
| 78480 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | n>(<span.class="tok-kw">comptime |
| 784a0 | 3c 2f 73 70 61 6e 3e 20 61 6c 69 67 6e 6d 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.alignment:.<span.class=" |
| 784c0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 32 39 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 3c 73 70 61 6e | tok-type">u29</span>,.ptr:.<span |
| 784e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 | .class="tok-kw">anytype</span>). |
| 78500 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 | <span.class="tok-kw">anytype</sp |
| 78520 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | an></code></pre>.......<p>...... |
| 78540 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 63 61 | .<code.class="zig">ptr</code>.ca |
| 78560 | 6e 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 54 3c 2f 63 6f 64 65 3e | n.be.<code.class="zig">*T</code> |
| 78580 | 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ,.<code.class="zig"><span.class= |
| 785a0 | 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f | "tok-kw">fn</span>()</code>,.<co |
| 785c0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 2a 54 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 | de.class="zig">?*T</code>,...... |
| 785e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .................<code.class="zi |
| 78600 | 67 22 3e 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | g">?<span.class="tok-kw">fn</spa |
| 78620 | 6e 3e 28 29 3c 2f 63 6f 64 65 3e 2c 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | n>()</code>,.or.<code.class="zig |
| 78640 | 22 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 2e 20 49 74 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 61 6d | ">[]T</code>..It.returns.the.sam |
| 78660 | 65 20 74 79 70 65 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 3c | e.type.as.<code.class="zig">ptr< |
| 78680 | 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 65 78 63 65 70 74 20 77 69 74 68 20 74 68 65 20 61 6c 69 | /code>.......except.with.the.ali |
| 786a0 | 67 6e 6d 65 6e 74 20 61 64 6a 75 73 74 65 64 20 74 6f 20 74 68 65 20 6e 65 77 20 76 61 6c 75 65 | gnment.adjusted.to.the.new.value |
| 786c0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 41 20 3c 61 20 68 72 65 66 3d | ........</p>.......<p>A.<a.href= |
| 786e0 | 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e 70 | "#Incorrect-Pointer-Alignment">p |
| 78700 | 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 20 63 68 65 63 6b 3c 2f 61 | ointer.alignment.safety.check</a |
| 78720 | 3e 20 69 73 20 61 64 64 65 64 0a 20 20 20 20 20 20 74 6f 20 74 68 65 20 67 65 6e 65 72 61 74 65 | >.is.added.......to.the.generate |
| 78740 | 64 20 63 6f 64 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 70 6f 69 6e 74 65 72 20 | d.code.to.make.sure.the.pointer. |
| 78760 | 69 73 20 61 6c 69 67 6e 65 64 20 61 73 20 70 72 6f 6d 69 73 65 64 2e 3c 2f 70 3e 0a 0a 20 20 20 | is.aligned.as.promised.</p>..... |
| 78780 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 6c 69 67 6e 4f 66 22 3e 3c 61 20 68 72 | ..........<h2.id="alignOf"><a.hr |
| 787a0 | 65 66 3d 22 23 74 6f 63 2d 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 61 3e 20 3c | ef="#toc-alignOf">@alignOf</a>.< |
| 787c0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 22 3e c2 a7 | a.class="hdr".href="#alignOf">.. |
| 787e0 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | </a></h2>........<pre><code.clas |
| 78800 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 78820 | 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">@alignOf</span>(<span.class="t |
| 78840 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 | ok-kw">comptime</span>.T:.<span. |
| 78860 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 | class="tok-type">type</span>).<s |
| 78880 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e | pan.class="tok-type">comptime_in |
| 788a0 | 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | t</span></code></pre>.......<p>. |
| 788c0 | 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 | ......This.function.returns.the. |
| 788e0 | 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 74 68 61 74 20 74 68 69 73 20 74 79 70 65 20 73 | number.of.bytes.that.this.type.s |
| 78900 | 68 6f 75 6c 64 20 62 65 20 61 6c 69 67 6e 65 64 20 74 6f 0a 20 20 20 20 20 20 66 6f 72 20 74 68 | hould.be.aligned.to.......for.th |
| 78920 | 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 43 20 | e.current.target.to.match.the.C. |
| 78940 | 41 42 49 2e 20 57 68 65 6e 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 20 70 6f | ABI..When.the.child.type.of.a.po |
| 78960 | 69 6e 74 65 72 20 68 61 73 0a 20 20 20 20 20 20 74 68 69 73 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 | inter.has.......this.alignment,. |
| 78980 | 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f | the.alignment.can.be.omitted.fro |
| 789a0 | 6d 20 74 68 65 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 | m.the.type........</p>.......<pr |
| 789c0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 789e0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c | "tok-kw">const</span>.expect.=.< |
| 78a00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| 78a20 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| 78a40 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 | uot;std"</span>).debug.asse |
| 78a60 | 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | rt;.<span.class="tok-kw">comptim |
| 78a80 | 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 2a 3c 73 70 61 6e 20 63 6c 61 | e</span>.{.....assert(*<span.cla |
| 78aa0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 3d 20 2a 3c 73 70 | ss="tok-type">u32</span>.==.*<sp |
| 78ac0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c | an.class="tok-kw">align</span>(< |
| 78ae0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f | span.class="tok-builtin">@alignO |
| 78b00 | 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | f</span>(<span.class="tok-type"> |
| 78b20 | 75 33 32 3c 2f 73 70 61 6e 3e 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | u32</span>)).<span.class="tok-ty |
| 78b40 | 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | pe">u32</span>);.}</code></pre>. |
| 78b60 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 | ......<p>.......The.result.is.a. |
| 78b80 | 74 61 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e | target-specific.compile.time.con |
| 78ba0 | 73 74 61 6e 74 2e 20 49 74 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 0a 20 20 | stant..It.is.guaranteed.to.be... |
| 78bc0 | 20 20 20 20 6c 65 73 73 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 3c 61 20 68 72 65 | ....less.than.or.equal.to.<a.hre |
| 78be0 | 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 28 54 29 3c 2f 61 3e 2e 0a 20 20 20 20 | f="#sizeOf">@sizeOf(T)</a>...... |
| 78c00 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | ..</p>.......<p>See.also:</p><ul |
| 78c20 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e | >.<li><a.href="#Alignment">Align |
| 78c40 | 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 | ment</a></li>.</ul>............. |
| 78c60 | 20 20 20 3c 68 32 20 69 64 3d 22 61 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 73 22 | ...<h2.id="as"><a.href="#toc-as" |
| 78c80 | 3e 40 61 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 | >@as</a>.<a.class="hdr".href="#a |
| 78ca0 | 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | s">..</a></h2>........<pre><code |
| 78cc0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 78ce0 | 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | iltin">@as</span>(<span.class="t |
| 78d00 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 | ok-kw">comptime</span>.T:.<span. |
| 78d20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 65 78 | class="tok-type">type</span>,.ex |
| 78d40 | 70 72 65 73 73 69 6f 6e 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | pression).T</code></pre>.......< |
| 78d60 | 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 | p>.......Performs.<a.href="#Type |
| 78d80 | 2d 43 6f 65 72 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 2e 20 54 68 | -Coercion">Type.Coercion</a>..Th |
| 78da0 | 69 73 20 63 61 73 74 20 69 73 20 61 6c 6c 6f 77 65 64 20 77 68 65 6e 20 74 68 65 20 63 6f 6e 76 | is.cast.is.allowed.when.the.conv |
| 78dc0 | 65 72 73 69 6f 6e 20 69 73 20 75 6e 61 6d 62 69 67 75 6f 75 73 20 61 6e 64 20 73 61 66 65 2c 0a | ersion.is.unambiguous.and.safe,. |
| 78de0 | 20 20 20 20 20 20 61 6e 64 20 69 73 20 74 68 65 20 70 72 65 66 65 72 72 65 64 20 77 61 79 20 74 | ......and.is.the.preferred.way.t |
| 78e00 | 6f 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 74 79 70 65 73 2c 20 77 68 65 6e 65 76 65 | o.convert.between.types,.wheneve |
| 78e20 | 72 20 70 6f 73 73 69 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | r.possible........</p>.......... |
| 78e40 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 73 79 6e 63 43 61 6c 6c 22 3e 3c 61 20 68 72 65 66 3d | .....<h2.id="asyncCall"><a.href= |
| 78e60 | 22 23 74 6f 63 2d 61 73 79 6e 63 43 61 6c 6c 22 3e 40 61 73 79 6e 63 43 61 6c 6c 3c 2f 61 3e 20 | "#toc-asyncCall">@asyncCall</a>. |
| 78e80 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 73 79 6e 63 43 61 6c 6c 22 | <a.class="hdr".href="#asyncCall" |
| 78ea0 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | >..</a></h2>........<pre><code.c |
| 78ec0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 78ee0 | 74 69 6e 22 3e 40 61 73 79 6e 63 43 61 6c 6c 3c 2f 73 70 61 6e 3e 28 66 72 61 6d 65 5f 62 75 66 | tin">@asyncCall</span>(frame_buf |
| 78f00 | 66 65 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 | fer:.[]<span.class="tok-kw">alig |
| 78f20 | 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | n</span>(<span.class="tok-builti |
| 78f40 | 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n">@alignOf</span>(<span.class=" |
| 78f60 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 61 6e 79 41 73 | tok-builtin">@Frame</span>(anyAs |
| 78f80 | 79 6e 63 46 75 6e 63 74 69 6f 6e 29 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | yncFunction))).<span.class="tok- |
| 78fa0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 5f 70 74 72 2c 20 66 75 6e | type">u8</span>,.result_ptr,.fun |
| 78fc0 | 63 74 69 6f 6e 5f 70 74 72 2c 20 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ction_ptr,.args:.<span.class="to |
| 78fe0 | 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">anytype</span>).<span.clas |
| 79000 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 2d 26 67 74 3b 54 | s="tok-kw">anyframe</span>->T |
| 79020 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 | </code></pre>.......<p>.......<c |
| 79040 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 79060 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 79 6e 63 43 61 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | -builtin">@asyncCall</span></cod |
| 79080 | 65 3e 20 70 65 72 66 6f 72 6d 73 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | e>.performs.an.<code.class="zig" |
| 790a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 | ><span.class="tok-kw">async</spa |
| 790c0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 20 6f 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 70 6f 69 | n></code>.call.on.a.function.poi |
| 790e0 | 6e 74 65 72 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 | nter,.......which.may.or.may.not |
| 79100 | 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 | .be.an.<a.href="#Async-Functions |
| 79120 | 22 3e 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ">async.function</a>........</p> |
| 79140 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 70 72 6f 76 69 64 65 64 20 3c 63 | .......<p>.......The.provided.<c |
| 79160 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 72 61 6d 65 5f 62 75 66 66 65 72 3c 2f 63 6f | ode.class="zig">frame_buffer</co |
| 79180 | 64 65 3e 20 6d 75 73 74 20 62 65 20 6c 61 72 67 65 20 65 6e 6f 75 67 68 20 74 6f 20 66 69 74 20 | de>.must.be.large.enough.to.fit. |
| 791a0 | 74 68 65 20 65 6e 74 69 72 65 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 2e 0a 20 20 20 20 20 | the.entire.function.frame....... |
| 791c0 | 20 54 68 69 73 20 73 69 7a 65 20 63 61 6e 20 62 65 20 64 65 74 65 72 6d 69 6e 65 64 20 77 69 74 | .This.size.can.be.determined.wit |
| 791e0 | 68 20 3c 61 20 68 72 65 66 3d 22 23 66 72 61 6d 65 53 69 7a 65 22 3e 40 66 72 61 6d 65 53 69 7a | h.<a.href="#frameSize">@frameSiz |
| 79200 | 65 3c 2f 61 3e 2e 20 54 6f 20 70 72 6f 76 69 64 65 20 61 20 74 6f 6f 2d 73 6d 61 6c 6c 20 62 75 | e</a>..To.provide.a.too-small.bu |
| 79220 | 66 66 65 72 0a 20 20 20 20 20 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 | ffer.......invokes.safety-checke |
| 79240 | 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e | d.<a.href="#Undefined-Behavior"> |
| 79260 | 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f | Undefined.Behavior</a>........</ |
| 79280 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | p>.......<p>.......<code.class=" |
| 792a0 | 7a 69 67 22 3e 72 65 73 75 6c 74 5f 70 74 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6f 70 74 69 6f 6e | zig">result_ptr</code>.is.option |
| 792c0 | 61 6c 20 28 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 6d 61 79 | al.(<a.href="#null">null</a>.may |
| 792e0 | 20 62 65 20 70 72 6f 76 69 64 65 64 29 2e 20 49 66 20 70 72 6f 76 69 64 65 64 2c 0a 20 20 20 20 | .be.provided)..If.provided,..... |
| 79300 | 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 77 69 6c 6c 20 77 72 69 74 65 20 69 | ..the.function.call.will.write.i |
| 79320 | 74 73 20 72 65 73 75 6c 74 20 64 69 72 65 63 74 6c 79 20 74 6f 20 74 68 65 20 72 65 73 75 6c 74 | ts.result.directly.to.the.result |
| 79340 | 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 62 65 20 61 76 61 69 6c 61 62 6c | .pointer,.which.will.be.availabl |
| 79360 | 65 20 74 6f 0a 20 20 20 20 20 20 72 65 61 64 20 61 66 74 65 72 20 3c 61 20 68 72 65 66 3d 22 23 | e.to.......read.after.<a.href="# |
| 79380 | 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 69 74 22 3e 61 77 61 69 74 3c 2f 61 3e 20 63 6f 6d 70 6c | Async-and-Await">await</a>.compl |
| 793a0 | 65 74 65 73 2e 20 41 6e 79 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 70 72 6f 76 69 64 | etes..Any.result.location.provid |
| 793c0 | 65 64 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ed.to.......<code.class="zig"><s |
| 793e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-kw">await</span>< |
| 79400 | 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 63 6f 70 79 20 74 68 65 20 72 65 73 75 6c 74 20 66 72 6f 6d | /code>.will.copy.the.result.from |
| 79420 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 5f 70 74 72 3c 2f 63 | .<code.class="zig">result_ptr</c |
| 79440 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | ode>........</p>.......<p.class= |
| 79460 | 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | "file">test.zig</p><pre><code.cl |
| 79480 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ass="zig"><span.class="tok-kw">c |
| 794a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | onst</span>.std.=.<span.class="t |
| 794c0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-builtin">@import</span>(<span |
| 794e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b | .class="tok-str">"std" |
| 79500 | 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | </span>);.<span.class="tok-kw">c |
| 79520 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 | onst</span>.expect.=.std.testing |
| 79540 | 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | .expect;..<span.class="tok-kw">t |
| 79560 | 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | est</span>.<span.class="tok-str" |
| 79580 | 3e 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 6e 20 70 6f 69 6e 74 65 72 20 69 6e 20 61 20 73 74 72 | >"async.fn.pointer.in.a.str |
| 795a0 | 75 63 74 20 66 69 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | uct.field"</span>.{.....<sp |
| 795c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 | an.class="tok-kw">var</span>.dat |
| 795e0 | 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | a:.<span.class="tok-type">i32</s |
| 79600 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pan>.=.<span.class="tok-number"> |
| 79620 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 1</span>;.....<span.class="tok-k |
| 79640 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.Foo.=.<span.clas |
| 79660 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 | s="tok-kw">struct</span>.{...... |
| 79680 | 20 20 20 62 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | ...bar:.<span.class="tok-kw">fn< |
| 796a0 | 2f 73 70 61 6e 3e 20 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | /span>.(*<span.class="tok-type"> |
| 796c0 | 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | i32</span>).<span.class="tok-kw" |
| 796e0 | 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 41 73 79 6e 63 29 20 3c 73 70 61 6e 20 63 | >callconv</span>(.Async).<span.c |
| 79700 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | lass="tok-type">void</span>,.... |
| 79720 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | .};.....<span.class="tok-kw">var |
| 79740 | 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 46 6f 6f 7b 20 2e 62 61 72 20 3d 20 66 75 6e 63 20 7d | </span>.foo.=.Foo{..bar.=.func.} |
| 79760 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | ;.....<span.class="tok-kw">var</ |
| 79780 | 73 70 61 6e 3e 20 62 79 74 65 73 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | span>.bytes:.[<span.class="tok-n |
| 797a0 | 75 6d 62 65 72 22 3e 36 34 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">64</span>]<span.class="to |
| 797c0 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | k-type">u8</span>.<span.class="t |
| 797e0 | 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-kw">align</span>(<span.class= |
| 79800 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 | "tok-builtin">@alignOf</span>(<s |
| 79820 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f | pan.class="tok-builtin">@Frame</ |
| 79840 | 73 70 61 6e 3e 28 66 75 6e 63 29 29 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>(func))).=.<span.class="tok |
| 79860 | 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | -null">undefined</span>;.....<sp |
| 79880 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 | an.class="tok-kw">const</span>.f |
| 798a0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 | .=.<span.class="tok-builtin">@as |
| 798c0 | 79 6e 63 43 61 6c 6c 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 62 79 74 65 73 2c 20 7b 7d 2c 20 66 | yncCall</span>(&bytes,.{},.f |
| 798e0 | 6f 6f 2e 62 61 72 2c 20 2e 7b 26 61 6d 70 3b 64 61 74 61 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e | oo.bar,..{&data});.....<span |
| 79900 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 79920 | 74 28 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | t(data.==.<span.class="tok-numbe |
| 79940 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r">2</span>);.....<span.class="t |
| 79960 | 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 20 66 3b 0a 20 20 20 20 3c 73 70 61 | ok-kw">resume</span>.f;.....<spa |
| 79980 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 | n.class="tok-kw">try</span>.expe |
| 799a0 | 63 74 28 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ct(data.==.<span.class="tok-numb |
| 799c0 | 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">4</span>);.}..<span.class="t |
| 799e0 | 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ok-kw">fn</span>.<span.class="to |
| 79a00 | 6b 2d 66 6e 22 3e 66 75 6e 63 3c 2f 73 70 61 6e 3e 28 79 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 | k-fn">func</span>(y:.*<span.clas |
| 79a20 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | s="tok-type">i32</span>).<span.c |
| 79a40 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | lass="tok-type">void</span>.{... |
| 79a60 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 | ..<span.class="tok-kw">defer</sp |
| 79a80 | 61 6e 3e 20 79 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | an>.y.*.+=.<span.class="tok-numb |
| 79aa0 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 79 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 | er">2</span>;.....y.*.+=.<span.c |
| 79ac0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">1</span>;..... |
| 79ae0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 | <span.class="tok-kw">suspend</sp |
| 79b00 | 61 6e 3e 20 7b 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | an>.{}.}</code></pre><pre><code. |
| 79b20 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 79b40 | 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 6e | g.Test.[1/1].test."async.fn |
| 79b60 | 20 70 6f 69 6e 74 65 72 20 69 6e 20 61 20 73 74 72 75 63 74 20 66 69 65 6c 64 26 71 75 6f 74 3b | .pointer.in.a.struct.field" |
| 79b80 | 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 | ......All.1.tests.passed..</code |
| 79ba0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 | ></pre>................<h2.id="a |
| 79bc0 | 74 6f 6d 69 63 4c 6f 61 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d 69 63 4c | tomicLoad"><a.href="#toc-atomicL |
| 79be0 | 6f 61 64 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | oad">@atomicLoad</a>.<a.class="h |
| 79c00 | 64 72 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | dr".href="#atomicLoad">..</a></h |
| 79c20 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 79c40 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 74 6f 6d | ><span.class="tok-builtin">@atom |
| 79c60 | 69 63 4c 6f 61 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | icLoad</span>(<span.class="tok-k |
| 79c80 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | w">comptime</span>.T:.<span.clas |
| 79ca0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a | s="tok-type">type</span>,.ptr:.* |
| 79cc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 79ce0 | 3e 20 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | >.T,.<span.class="tok-kw">compti |
| 79d00 | 6d 65 3c 2f 73 70 61 6e 3e 20 6f 72 64 65 72 69 6e 67 3a 20 62 75 69 6c 74 69 6e 2e 41 74 6f 6d | me</span>.ordering:.builtin.Atom |
| 79d20 | 69 63 4f 72 64 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | icOrder).T</code></pre>.......<p |
| 79d40 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 61 74 | >.......This.builtin.function.at |
| 79d60 | 6f 6d 69 63 61 6c 6c 79 20 64 65 72 65 66 65 72 65 6e 63 65 73 20 61 20 70 6f 69 6e 74 65 72 20 | omically.dereferences.a.pointer. |
| 79d80 | 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | and.returns.the.value........</p |
| 79da0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.......<p>.......<code.class="z |
| 79dc0 | 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 | ig">T</code>.must.be.a.pointer,. |
| 79de0 | 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | a.<code.class="zig"><span.class= |
| 79e00 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 | "tok-type">bool</span></code>,.a |
| 79e20 | 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 | .float,.......an.integer.or.an.e |
| 79e40 | 6e 75 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 | num........</p>..............<h2 |
| 79e60 | 20 69 64 3d 22 61 74 6f 6d 69 63 52 6d 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 | .id="atomicRmw"><a.href="#toc-at |
| 79e80 | 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | omicRmw">@atomicRmw</a>.<a.class |
| 79ea0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e c2 a7 3c 2f 61 3e 3c | ="hdr".href="#atomicRmw">..</a>< |
| 79ec0 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 79ee0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 74 | g"><span.class="tok-builtin">@at |
| 79f00 | 6f 6d 69 63 52 6d 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | omicRmw</span>(<span.class="tok- |
| 79f20 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 | kw">comptime</span>.T:.<span.cla |
| 79f40 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 | ss="tok-type">type</span>,.ptr:. |
| 79f60 | 2a 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | *T,.<span.class="tok-kw">comptim |
| 79f80 | 65 3c 2f 73 70 61 6e 3e 20 6f 70 3a 20 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 52 6d 77 4f 70 | e</span>.op:.builtin.AtomicRmwOp |
| 79fa0 | 2c 20 6f 70 65 72 61 6e 64 3a 20 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ,.operand:.T,.<span.class="tok-k |
| 79fc0 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6f 72 64 65 72 69 6e 67 3a 20 62 75 69 | w">comptime</span>.ordering:.bui |
| 79fe0 | 6c 74 69 6e 2e 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ltin.AtomicOrder).T</code></pre> |
| 7a000 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 66 75 | .......<p>.......This.builtin.fu |
| 7a020 | 6e 63 74 69 6f 6e 20 61 74 6f 6d 69 63 61 6c 6c 79 20 6d 6f 64 69 66 69 65 73 20 6d 65 6d 6f 72 | nction.atomically.modifies.memor |
| 7a040 | 79 20 61 6e 64 20 74 68 65 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 | y.and.then.returns.the.previous. |
| 7a060 | 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | value........</p>.......<p>..... |
| 7a080 | 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 | ..<code.class="zig">T</code>.mus |
| 7a0a0 | 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | t.be.a.pointer,.a.<code.class="z |
| 7a0c0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c | ig"><span.class="tok-type">bool< |
| 7a0e0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e | /span></code>,.a.float,.......an |
| 7a100 | 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .integer.or.an.enum........</p>. |
| 7a120 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 65 64 20 6f 70 65 72 61 74 | ......<p>.......Supported.operat |
| 7a140 | 69 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ions:.......</p>.......<ul>..... |
| 7a160 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 58 63 68 67 3c | ....<li><code.class="zig">.Xchg< |
| 7a180 | 2f 63 6f 64 65 3e 20 2d 20 73 74 6f 72 65 73 20 74 68 65 20 6f 70 65 72 61 6e 64 20 75 6e 6d 6f | /code>.-.stores.the.operand.unmo |
| 7a1a0 | 64 69 66 69 65 64 2e 20 53 75 70 70 6f 72 74 73 20 65 6e 75 6d 73 2c 20 69 6e 74 65 67 65 72 73 | dified..Supports.enums,.integers |
| 7a1c0 | 20 61 6e 64 20 66 6c 6f 61 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 | .and.floats.</li>.........<li><c |
| 7a1e0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 41 64 64 3c 2f 63 6f 64 65 3e 20 2d 20 66 6f | ode.class="zig">.Add</code>.-.fo |
| 7a200 | 72 20 69 6e 74 65 67 65 72 73 2c 20 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 | r.integers,.twos.complement.wrap |
| 7a220 | 61 72 6f 75 6e 64 20 61 64 64 69 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 73 | around.addition..............Als |
| 7a240 | 6f 20 73 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f | o.supports.<a.href="#Floats">Flo |
| 7a260 | 61 74 73 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 | ats</a>.</li>.........<li><code. |
| 7a280 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 53 75 62 3c 2f 63 6f 64 65 3e 20 2d 20 66 6f 72 20 69 6e | class="zig">.Sub</code>.-.for.in |
| 7a2a0 | 74 65 67 65 72 73 2c 20 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 61 72 6f 75 | tegers,.twos.complement.wraparou |
| 7a2c0 | 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 73 6f | nd.subtraction..............Also |
| 7a2e0 | 20 73 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 | .supports.<a.href="#Floats">Floa |
| 7a300 | 74 73 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 | ts</a>.</li>.........<li><code.c |
| 7a320 | 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 41 6e 64 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 74 77 69 73 65 | lass="zig">.And</code>.-.bitwise |
| 7a340 | 20 61 6e 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | .and</li>.........<li><code.clas |
| 7a360 | 73 3d 22 7a 69 67 22 3e 2e 4e 61 6e 64 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 74 77 69 73 65 20 6e | s="zig">.Nand</code>.-.bitwise.n |
| 7a380 | 61 6e 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | and</li>.........<li><code.class |
| 7a3a0 | 3d 22 7a 69 67 22 3e 2e 4f 72 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 74 77 69 73 65 20 6f 72 3c 2f | ="zig">.Or</code>.-.bitwise.or</ |
| 7a3c0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | li>.........<li><code.class="zig |
| 7a3e0 | 22 3e 2e 58 6f 72 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 74 77 69 73 65 20 78 6f 72 3c 2f 6c 69 3e | ">.Xor</code>.-.bitwise.xor</li> |
| 7a400 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e | .........<li><code.class="zig">. |
| 7a420 | 4d 61 78 3c 2f 63 6f 64 65 3e 20 2d 20 73 74 6f 72 65 73 20 74 68 65 20 6f 70 65 72 61 6e 64 20 | Max</code>.-.stores.the.operand. |
| 7a440 | 69 66 20 69 74 20 69 73 20 6c 61 72 67 65 72 2e 20 53 75 70 70 6f 72 74 73 20 69 6e 74 65 67 65 | if.it.is.larger..Supports.intege |
| 7a460 | 72 73 20 61 6e 64 20 66 6c 6f 61 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | rs.and.floats.</li>.........<li> |
| 7a480 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 4d 69 6e 3c 2f 63 6f 64 65 3e 20 2d 20 | <code.class="zig">.Min</code>.-. |
| 7a4a0 | 73 74 6f 72 65 73 20 74 68 65 20 6f 70 65 72 61 6e 64 20 69 66 20 69 74 20 69 73 20 73 6d 61 6c | stores.the.operand.if.it.is.smal |
| 7a4c0 | 6c 65 72 2e 20 53 75 70 70 6f 72 74 73 20 69 6e 74 65 67 65 72 73 20 61 6e 64 20 66 6c 6f 61 74 | ler..Supports.integers.and.float |
| 7a4e0 | 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | s.</li>.......</ul>............. |
| 7a500 | 20 3c 68 32 20 69 64 3d 22 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .<h2.id="atomicStore"><a.href="# |
| 7a520 | 74 6f 63 2d 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 | toc-atomicStore">@atomicStore</a |
| 7a540 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 53 74 | >.<a.class="hdr".href="#atomicSt |
| 7a560 | 6f 72 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ore">..</a></h2>........<pre><co |
| 7a580 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 7a5a0 | 62 75 69 6c 74 69 6e 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 | builtin">@atomicStore</span>(<sp |
| 7a5c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e | an.class="tok-kw">comptime</span |
| 7a5e0 | 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 | >.T:.<span.class="tok-type">type |
| 7a600 | 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 76 61 6c 75 65 3a 20 54 2c 20 3c 73 70 61 | </span>,.ptr:.*T,.value:.T,.<spa |
| 7a620 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e | n.class="tok-kw">comptime</span> |
| 7a640 | 20 6f 72 64 65 72 69 6e 67 3a 20 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 | .ordering:.builtin.AtomicOrder). |
| 7a660 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 | <span.class="tok-type">void</spa |
| 7a680 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | n></code></pre>.......<p>....... |
| 7a6a0 | 54 68 69 73 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 61 74 6f 6d 69 63 61 6c 6c 79 | This.builtin.function.atomically |
| 7a6c0 | 20 73 74 6f 72 65 73 20 61 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .stores.a.value........</p>..... |
| 7a6e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c | ..<p>.......<code.class="zig">T< |
| 7a700 | 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 | /code>.must.be.a.pointer,.a.<cod |
| 7a720 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| 7a740 | 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 66 6c 6f 61 74 | ype">bool</span></code>,.a.float |
| 7a760 | 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 6d 2e 0a 20 | ,.......an.integer.or.an.enum... |
| 7a780 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 | .....</p>..............<h2.id="b |
| 7a7a0 | 69 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 43 61 73 74 22 3e 40 | itCast"><a.href="#toc-bitCast">@ |
| 7a7c0 | 62 69 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | bitCast</a>.<a.class="hdr".href= |
| 7a7e0 | 22 23 62 69 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | "#bitCast">..</a></h2>........<p |
| 7a800 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 7a820 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c | ="tok-builtin">@bitCast</span>(< |
| 7a840 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 | span.class="tok-kw">comptime</sp |
| 7a860 | 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | an>.DestType:.<span.class="tok-t |
| 7a880 | 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 | ype">type</span>,.value:.<span.c |
| 7a8a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 | lass="tok-kw">anytype</span>).De |
| 7a8c0 | 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | stType</code></pre>.......<p>... |
| 7a8e0 | 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 20 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 | ....Converts.a.value.of.one.type |
| 7a900 | 20 74 6f 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .to.another.type........</p>.... |
| 7a920 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 73 65 72 74 73 20 74 68 61 74 20 3c 63 6f 64 65 20 | ...<p>.......Asserts.that.<code. |
| 7a940 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 7a960 | 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@sizeOf</span>(<span.class |
| 7a980 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 | ="tok-builtin">@TypeOf</span>(va |
| 7a9a0 | 6c 75 65 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | lue)).==.<span.class="tok-builti |
| 7a9c0 | 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 3c 2f 63 6f 64 | n">@sizeOf</span>(DestType)</cod |
| 7a9e0 | 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 | e>........</p>.......<p>.......A |
| 7aa00 | 73 73 65 72 74 73 20 74 68 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | sserts.that.<code.class="zig"><s |
| 7aa20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 | pan.class="tok-builtin">@typeInf |
| 7aa40 | 6f 3c 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 20 21 3d 20 2e 50 6f 69 6e 74 65 72 3c 2f | o</span>(DestType).!=..Pointer</ |
| 7aa60 | 63 6f 64 65 3e 2e 20 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | code>..Use.<code.class="zig"><sp |
| 7aa80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c | an.class="tok-builtin">@ptrCast< |
| 7aaa0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /span></code>.or.<code.class="zi |
| 7aac0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e | g"><span.class="tok-builtin">@in |
| 7aae0 | 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 79 6f 75 20 6e 65 65 64 | tToPtr</span></code>.if.you.need |
| 7ab00 | 20 74 68 69 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | .this........</p>.......<p>..... |
| 7ab20 | 20 20 43 61 6e 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 68 65 73 65 20 74 68 69 6e 67 73 20 66 | ..Can.be.used.for.these.things.f |
| 7ab40 | 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c | or.example:.......</p>.......<ul |
| 7ab60 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 3c 63 6f 64 65 20 63 6c | >...........<li>Convert.<code.cl |
| 7ab80 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| 7aba0 | 3e 66 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 | >f32</span></code>.to.<code.clas |
| 7abc0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | s="zig"><span.class="tok-type">u |
| 7abe0 | 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 69 74 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 | 32</span></code>.bits</li>...... |
| 7ac00 | 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .....<li>Convert.<code.class="zi |
| 7ac20 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | g"><span.class="tok-type">i32</s |
| 7ac40 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | pan></code>.to.<code.class="zig" |
| 7ac60 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 | ><span.class="tok-type">u32</spa |
| 7ac80 | 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 65 73 65 72 76 69 6e 67 20 74 77 6f 73 20 63 6f 6d 70 6c 65 | n></code>.preserving.twos.comple |
| 7aca0 | 6d 65 6e 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | ment</li>.......</ul>.......<p>. |
| 7acc0 | 20 20 20 20 20 20 57 6f 72 6b 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 69 66 20 3c | ......Works.at.compile-time.if.< |
| 7ace0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 69 73 | code.class="zig">value</code>.is |
| 7ad00 | 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 20 49 74 27 73 20 61 20 63 | .known.at.compile.time..It's.a.c |
| 7ad20 | 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 74 6f 20 62 69 74 63 61 73 74 20 61 20 73 74 72 75 63 74 | ompile.error.to.bitcast.a.struct |
| 7ad40 | 20 74 6f 20 61 20 73 63 61 6c 61 72 20 74 79 70 65 20 6f 66 20 74 68 65 20 73 61 6d 65 20 73 69 | .to.a.scalar.type.of.the.same.si |
| 7ad60 | 7a 65 20 73 69 6e 63 65 20 73 74 72 75 63 74 73 20 68 61 76 65 20 75 6e 64 65 66 69 6e 65 64 20 | ze.since.structs.have.undefined. |
| 7ad80 | 6c 61 79 6f 75 74 2e 20 48 6f 77 65 76 65 72 20 69 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 | layout..However.if.the.struct.is |
| 7ada0 | 20 70 61 63 6b 65 64 20 74 68 65 6e 20 69 74 20 77 6f 72 6b 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | .packed.then.it.works........</p |
| 7adc0 | 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 69 74 4f 66 66 73 65 | >...............<h2.id="bitOffse |
| 7ade0 | 74 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 4f 66 66 73 65 74 4f 66 22 3e | tOf"><a.href="#toc-bitOffsetOf"> |
| 7ae00 | 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | @bitOffsetOf</a>.<a.class="hdr". |
| 7ae20 | 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | href="#bitOffsetOf">..</a></h2>. |
| 7ae40 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 7ae60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 4f 66 66 73 | pan.class="tok-builtin">@bitOffs |
| 7ae80 | 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | etOf</span>(<span.class="tok-kw" |
| 7aea0 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >comptime</span>.T:.<span.class= |
| 7aec0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | "tok-type">type</span>,.<span.cl |
| 7aee0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 65 | ass="tok-kw">comptime</span>.fie |
| 7af00 | 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ld_name:.[]<span.class="tok-kw"> |
| 7af20 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | const</span>.<span.class="tok-ty |
| 7af40 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>).<span.class="tok- |
| 7af60 | 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | type">comptime_int</span></code> |
| 7af80 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 | </pre>.......<p>.......Returns.t |
| 7afa0 | 68 65 20 62 69 74 20 6f 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c 64 20 72 65 6c 61 74 69 76 | he.bit.offset.of.a.field.relativ |
| 7afc0 | 65 20 74 6f 20 69 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 75 63 74 2e 0a 20 20 20 20 | e.to.its.containing.struct...... |
| 7afe0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 6e 6f 6e 20 3c | ..</p>.......<p>.......For.non.< |
| 7b000 | 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 | a.href="#packed-struct">packed.s |
| 7b020 | 74 72 75 63 74 73 3c 2f 61 3e 2c 20 74 68 69 73 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 | tructs</a>,.this.will.always.be. |
| 7b040 | 64 69 76 69 73 69 62 6c 65 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | divisible.by.<code.class="zig">< |
| 7b060 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e | span.class="tok-number">8</span> |
| 7b080 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 46 6f 72 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 | </code>........For.packed.struct |
| 7b0a0 | 73 2c 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 20 77 69 6c 6c 20 | s,.non-byte-aligned.fields.will. |
| 7b0c0 | 73 68 61 72 65 20 61 20 62 79 74 65 20 6f 66 66 73 65 74 2c 20 62 75 74 20 74 68 65 79 20 77 69 | share.a.byte.offset,.but.they.wi |
| 7b0e0 | 6c 6c 20 68 61 76 65 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 62 69 74 20 6f 66 66 73 | ll.have.different.......bit.offs |
| 7b100 | 65 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | ets........</p>.......<p>See.als |
| 7b120 | 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 79 74 65 4f 66 66 | o:</p><ul>.<li><a.href="#byteOff |
| 7b140 | 73 65 74 4f 66 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f | setOf">@byteOffsetOf</a></li>.</ |
| 7b160 | 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 6f 6f 6c 54 | ul>................<h2.id="boolT |
| 7b180 | 6f 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 6f 6f 6c 54 6f 49 6e 74 22 3e 40 | oInt"><a.href="#toc-boolToInt">@ |
| 7b1a0 | 62 6f 6f 6c 54 6f 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | boolToInt</a>.<a.class="hdr".hre |
| 7b1c0 | 66 3d 22 23 62 6f 6f 6c 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | f="#boolToInt">..</a></h2>...... |
| 7b1e0 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 7b200 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 6f 6f 6c 54 6f 49 6e 74 3c 2f 73 | lass="tok-builtin">@boolToInt</s |
| 7b220 | 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | pan>(value:.<span.class="tok-typ |
| 7b240 | 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e">bool</span>).<span.class="tok |
| 7b260 | 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | -type">u1</span></code></pre>... |
| 7b280 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 3c 63 6f 64 65 20 63 6c 61 | ....<p>.......Converts.<code.cla |
| 7b2a0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ss="zig"><span.class="tok-null"> |
| 7b2c0 | 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 | true</span></code>.to.<code.clas |
| 7b2e0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | s="zig"><span.class="tok-type">u |
| 7b300 | 31 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | 1</span>(<span.class="tok-number |
| 7b320 | 22 3e 31 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 | ">1</span>)</code>.and.<code.cla |
| 7b340 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ss="zig"><span.class="tok-null"> |
| 7b360 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 0a 20 20 20 20 20 20 20 20 20 | false</span></code>.to.......... |
| 7b380 | 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .........<code.class="zig"><span |
| 7b3a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | .class="tok-type">u1</span>(<spa |
| 7b3c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3c 2f | n.class="tok-number">0</span>)</ |
| 7b3e0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | code>........</p>.......<p>..... |
| 7b400 | 20 20 49 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 | ..If.the.value.is.known.at.compi |
| 7b420 | 6c 65 2d 74 69 6d 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 | le-time,.the.return.type.is.<cod |
| 7b440 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| 7b460 | 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a | ype">comptime_int</span></code>. |
| 7b480 | 20 20 20 20 20 20 20 20 20 20 69 6e 73 74 65 61 64 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ..........instead.of.<code.class |
| 7b4a0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 | ="zig"><span.class="tok-type">u1 |
| 7b4c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | </span></code>........</p>...... |
| 7b4e0 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 69 74 53 69 7a 65 4f 66 22 3e 3c 61 20 68 | .........<h2.id="bitSizeOf"><a.h |
| 7b500 | 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 53 69 7a 65 4f 66 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c | ref="#toc-bitSizeOf">@bitSizeOf< |
| 7b520 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 53 69 7a | /a>.<a.class="hdr".href="#bitSiz |
| 7b540 | 65 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | eOf">..</a></h2>........<pre><co |
| 7b560 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 7b580 | 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | builtin">@bitSizeOf</span>(<span |
| 7b5a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 | .class="tok-kw">comptime</span>. |
| 7b5c0 | 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f | T:.<span.class="tok-type">type</ |
| 7b5e0 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f | span>).<span.class="tok-type">co |
| 7b600 | 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | mptime_int</span></code></pre>.. |
| 7b620 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 | .....<p>.......This.function.ret |
| 7b640 | 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 20 69 74 20 74 61 6b 65 73 | urns.the.number.of.bits.it.takes |
| 7b660 | 20 74 6f 20 73 74 6f 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 | .to.store.<code.class="zig">T</c |
| 7b680 | 6f 64 65 3e 20 69 6e 20 6d 65 6d 6f 72 79 20 69 66 20 74 68 65 20 74 79 70 65 0a 20 20 20 20 20 | ode>.in.memory.if.the.type...... |
| 7b6a0 | 20 77 65 72 65 20 61 20 66 69 65 6c 64 20 69 6e 20 61 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 | .were.a.field.in.a.packed.struct |
| 7b6c0 | 2f 75 6e 69 6f 6e 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 74 61 | /union........The.result.is.a.ta |
| 7b6e0 | 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 | rget-specific.compile.time.const |
| 7b700 | 61 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ant........</p>.......<p>....... |
| 7b720 | 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 65 61 73 75 72 65 73 20 74 68 65 20 73 69 7a 65 20 | This.function.measures.the.size. |
| 7b740 | 61 74 20 72 75 6e 74 69 6d 65 2e 20 46 6f 72 20 74 79 70 65 73 20 74 68 61 74 20 61 72 65 20 64 | at.runtime..For.types.that.are.d |
| 7b760 | 69 73 61 6c 6c 6f 77 65 64 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 73 75 63 68 20 61 73 0a 20 20 | isallowed.at.runtime,.such.as... |
| 7b780 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ....<code.class="zig"><span.clas |
| 7b7a0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e | s="tok-type">comptime_int</span> |
| 7b7c0 | 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | </code>.and.<code.class="zig"><s |
| 7b7e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e | pan.class="tok-type">type</span> |
| 7b800 | 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 | </code>,.the.result.is.<code.cla |
| 7b820 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ss="zig"><span.class="tok-number |
| 7b840 | 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ">0</span></code>........</p>... |
| 7b860 | 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 | ....<p>See.also:</p><ul>.<li><a. |
| 7b880 | 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a | href="#sizeOf">@sizeOf</a></li>. |
| 7b8a0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 | <li><a.href="#typeInfo">@typeInf |
| 7b8c0 | 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | o</a></li>.</ul>................ |
| 7b8e0 | 3c 68 32 20 69 64 3d 22 62 72 65 61 6b 70 6f 69 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | <h2.id="breakpoint"><a.href="#to |
| 7b900 | 63 2d 62 72 65 61 6b 70 6f 69 6e 74 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 61 3e 20 3c 61 | c-breakpoint">@breakpoint</a>.<a |
| 7b920 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 72 65 61 6b 70 6f 69 6e 74 22 3e | .class="hdr".href="#breakpoint"> |
| 7b940 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..</a></h2>........<pre><code.cl |
| 7b960 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 7b980 | 69 6e 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 3c | in">@breakpoint</span>()</code>< |
| 7b9a0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 | /pre>.......<p>.......This.funct |
| 7b9c0 | 69 6f 6e 20 69 6e 73 65 72 74 73 20 61 20 70 6c 61 74 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 20 | ion.inserts.a.platform-specific. |
| 7b9e0 | 64 65 62 75 67 20 74 72 61 70 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 69 63 68 20 63 61 75 | debug.trap.instruction.which.cau |
| 7ba00 | 73 65 73 0a 20 20 20 20 20 20 64 65 62 75 67 67 65 72 73 20 74 6f 20 62 72 65 61 6b 20 74 68 65 | ses.......debuggers.to.break.the |
| 7ba20 | 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | re........</p>.......<p>.......T |
| 7ba40 | 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 | his.function.is.only.valid.withi |
| 7ba60 | 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 | n.function.scope........</p>.... |
| 7ba80 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 75 6c 41 64 64 22 3e 3c 61 20 68 72 | ...........<h2.id="mulAdd"><a.hr |
| 7baa0 | 65 66 3d 22 23 74 6f 63 2d 6d 75 6c 41 64 64 22 3e 40 6d 75 6c 41 64 64 3c 2f 61 3e 20 3c 61 20 | ef="#toc-mulAdd">@mulAdd</a>.<a. |
| 7bac0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 75 6c 41 64 64 22 3e c2 a7 3c 2f 61 | class="hdr".href="#mulAdd">..</a |
| 7bae0 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ></h2>........<pre><code.class=" |
| 7bb00 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 7bb20 | 6d 75 6c 41 64 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | mulAdd</span>(<span.class="tok-k |
| 7bb40 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | w">comptime</span>.T:.<span.clas |
| 7bb60 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 | s="tok-type">type</span>,.a:.T,. |
| 7bb80 | 62 3a 20 54 2c 20 63 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | b:.T,.c:.T).T</code></pre>...... |
| 7bba0 | 20 3c 70 3e 0a 20 20 20 20 20 20 46 75 73 65 64 20 6d 75 6c 74 69 70 6c 79 20 61 64 64 2c 20 73 | .<p>.......Fused.multiply.add,.s |
| 7bbc0 | 69 6d 69 6c 61 72 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 61 20 2a | imilar.to.<code.class="zig">(a.* |
| 7bbe0 | 20 62 29 20 2b 20 63 3c 2f 63 6f 64 65 3e 2c 20 65 78 63 65 70 74 0a 20 20 20 20 20 20 6f 6e 6c | .b).+.c</code>,.except.......onl |
| 7bc00 | 79 20 72 6f 75 6e 64 73 20 6f 6e 63 65 2c 20 61 6e 64 20 69 73 20 74 68 75 73 20 6d 6f 72 65 20 | y.rounds.once,.and.is.thus.more. |
| 7bc20 | 61 63 63 75 72 61 74 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | accurate........</p>.......<p>.. |
| 7bc40 | 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 46 6c 6f 61 74 73 20 61 6e 64 20 56 65 63 74 6f 72 73 | .....Supports.Floats.and.Vectors |
| 7bc60 | 20 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | .of.floats........</p>.......... |
| 7bc80 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 79 74 65 53 77 61 70 22 3e 3c 61 20 68 72 65 66 3d 22 | .....<h2.id="byteSwap"><a.href=" |
| 7bca0 | 23 74 6f 63 2d 62 79 74 65 53 77 61 70 22 3e 40 62 79 74 65 53 77 61 70 3c 2f 61 3e 20 3c 61 20 | #toc-byteSwap">@byteSwap</a>.<a. |
| 7bcc0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 79 74 65 53 77 61 70 22 3e c2 a7 3c | class="hdr".href="#byteSwap">..< |
| 7bce0 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | /a></h2>........<pre><code.class |
| 7bd00 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 7bd20 | 3e 40 62 79 74 65 53 77 61 70 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >@byteSwap</span>(<span.class="t |
| 7bd40 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 | ok-kw">comptime</span>.T:.<span. |
| 7bd60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 6f 70 | class="tok-type">type</span>,.op |
| 7bd80 | 65 72 61 6e 64 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | erand:.T).T</code></pre>.......< |
| 7bda0 | 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 | p><code.class="zig">T</code>.mus |
| 7bdc0 | 74 20 62 65 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 77 69 74 68 20 62 69 74 20 63 6f | t.be.an.integer.type.with.bit.co |
| 7bde0 | 75 6e 74 20 65 76 65 6e 6c 79 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 38 2e 3c 2f 70 3e 0a 20 | unt.evenly.divisible.by.8.</p>.. |
| 7be00 | 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6f 70 65 72 61 6e | .....<p><code.class="zig">operan |
| 7be20 | 64 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 | d</code>.may.be.an.<a.href="#Int |
| 7be40 | 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 | egers">integer</a>.or.<a.href="# |
| 7be60 | 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | Vectors">vector</a>.</p>.......< |
| 7be80 | 70 3e 0a 20 20 20 20 20 20 53 77 61 70 73 20 74 68 65 20 62 79 74 65 20 6f 72 64 65 72 20 6f 66 | p>.......Swaps.the.byte.order.of |
| 7bea0 | 20 74 68 65 20 69 6e 74 65 67 65 72 2e 20 54 68 69 73 20 63 6f 6e 76 65 72 74 73 20 61 20 62 69 | .the.integer..This.converts.a.bi |
| 7bec0 | 67 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 6c 69 74 74 6c 65 20 65 6e 64 | g.endian.integer.to.a.little.end |
| 7bee0 | 69 61 6e 20 69 6e 74 65 67 65 72 2c 0a 20 20 20 20 20 20 61 6e 64 20 63 6f 6e 76 65 72 74 73 20 | ian.integer,.......and.converts. |
| 7bf00 | 61 20 6c 69 74 74 6c 65 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 62 69 67 | a.little.endian.integer.to.a.big |
| 7bf20 | 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .endian.integer........</p>..... |
| 7bf40 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 66 6f 72 20 74 68 65 20 70 75 | ..<p>.......Note.that.for.the.pu |
| 7bf60 | 72 70 6f 73 65 73 20 6f 66 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 77 69 74 68 20 72 65 73 | rposes.of.memory.layout.with.res |
| 7bf80 | 70 65 63 74 20 74 6f 20 65 6e 64 69 61 6e 6e 65 73 73 2c 20 74 68 65 20 69 6e 74 65 67 65 72 20 | pect.to.endianness,.the.integer. |
| 7bfa0 | 74 79 70 65 20 73 68 6f 75 6c 64 20 62 65 0a 20 20 20 20 20 20 72 65 6c 61 74 65 64 20 74 6f 20 | type.should.be.......related.to. |
| 7bfc0 | 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 72 65 70 6f 72 74 65 64 20 62 79 20 | the.number.of.bytes.reported.by. |
| 7bfe0 | 3c 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 20 62 79 | <a.href="#sizeOf">@sizeOf</a>.by |
| 7c000 | 74 65 73 2e 20 54 68 69 73 20 69 73 20 64 65 6d 6f 6e 73 74 72 61 74 65 64 20 77 69 74 68 0a 20 | tes..This.is.demonstrated.with.. |
| 7c020 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .....<code.class="zig"><span.cla |
| 7c040 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e | ss="tok-type">u24</span></code>. |
| 7c060 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 7c080 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@sizeOf</span>(<spa |
| 7c0a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 29 20 3d | n.class="tok-type">u24</span>).= |
| 7c0c0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 | =.<span.class="tok-number">4</sp |
| 7c0e0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 61 74 20 61 0a 20 | an></code>,.which.means.that.a.. |
| 7c100 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .....<code.class="zig"><span.cla |
| 7c120 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | ss="tok-type">u24</span></code>. |
| 7c140 | 73 74 6f 72 65 64 20 69 6e 20 6d 65 6d 6f 72 79 20 74 61 6b 65 73 20 34 20 62 79 74 65 73 2c 20 | stored.in.memory.takes.4.bytes,. |
| 7c160 | 61 6e 64 20 74 68 6f 73 65 20 34 20 62 79 74 65 73 20 61 72 65 20 77 68 61 74 20 61 72 65 20 73 | and.those.4.bytes.are.what.are.s |
| 7c180 | 77 61 70 70 65 64 20 6f 6e 0a 20 20 20 20 20 20 61 20 6c 69 74 74 6c 65 20 76 73 20 62 69 67 20 | wapped.on.......a.little.vs.big. |
| 7c1a0 | 65 6e 64 69 61 6e 20 73 79 73 74 65 6d 2e 20 4f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 | endian.system..On.the.other.hand |
| 7c1c0 | 2c 20 69 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 | ,.if.<code.class="zig">T</code>. |
| 7c1e0 | 69 73 20 73 70 65 63 69 66 69 65 64 20 74 6f 0a 20 20 20 20 20 20 62 65 20 3c 63 6f 64 65 20 63 | is.specified.to.......be.<code.c |
| 7c200 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | lass="zig"><span.class="tok-type |
| 7c220 | 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 20 6f 6e 6c 79 20 33 | ">u24</span></code>,.then.only.3 |
| 7c240 | 20 62 79 74 65 73 20 61 72 65 20 72 65 76 65 72 73 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .bytes.are.reversed........</p>. |
| 7c260 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 69 74 52 65 76 65 72 73 65 | ..............<h2.id="bitReverse |
| 7c280 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 52 65 76 65 72 73 65 22 3e 40 62 69 74 | "><a.href="#toc-bitReverse">@bit |
| 7c2a0 | 52 65 76 65 72 73 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | Reverse</a>.<a.class="hdr".href= |
| 7c2c0 | 22 23 62 69 74 52 65 76 65 72 73 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | "#bitReverse">..</a></h2>....... |
| 7c2e0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 7c300 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 52 65 76 65 72 73 65 3c 2f 73 | ass="tok-builtin">@bitReverse</s |
| 7c320 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | pan>(<span.class="tok-kw">compti |
| 7c340 | 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | me</span>.T:.<span.class="tok-ty |
| 7c360 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 54 29 20 54 3c 2f | pe">type</span>,.integer:.T).T</ |
| 7c380 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | code></pre>.......<p><code.class |
| 7c3a0 | 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 61 63 63 65 70 74 73 20 61 6e 79 20 69 6e 74 65 | ="zig">T</code>.accepts.any.inte |
| 7c3c0 | 67 65 72 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 | ger.type.</p>.......<p>.......Re |
| 7c3e0 | 76 65 72 73 65 73 20 74 68 65 20 62 69 74 70 61 74 74 65 72 6e 20 6f 66 20 61 6e 20 69 6e 74 65 | verses.the.bitpattern.of.an.inte |
| 7c400 | 67 65 72 20 76 61 6c 75 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 73 69 67 6e 20 62 69 | ger.value,.including.the.sign.bi |
| 7c420 | 74 20 69 66 20 61 70 70 6c 69 63 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | t.if.applicable........</p>..... |
| 7c440 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 30 62 31 30 31 31 30 31 | ..<p>.......For.example.0b101101 |
| 7c460 | 31 30 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | 10.(<code.class="zig"><span.clas |
| 7c480 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | s="tok-type">u8</span>.=.<span.c |
| 7c4a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 38 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | lass="tok-number">182</span></co |
| 7c4c0 | 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | de>,.<code.class="zig"><span.cla |
| 7c4e0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 2d 3c 73 70 61 6e | ss="tok-type">i8</span>.=.-<span |
| 7c500 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 34 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-number">74</span></c |
| 7c520 | 6f 64 65 3e 29 0a 20 20 20 20 20 20 62 65 63 6f 6d 65 73 20 30 62 30 31 31 30 31 31 30 31 20 28 | ode>).......becomes.0b01101101.( |
| 7c540 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 7c560 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u8</span>.=.<span.class |
| 7c580 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 39 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c | ="tok-number">109</span></code>, |
| 7c5a0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 7c5c0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">i8</span>.=.<span.clas |
| 7c5e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 39 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | s="tok-number">109</span></code> |
| 7c600 | 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 | )........</p>...............<h2. |
| 7c620 | 69 64 3d 22 62 79 74 65 4f 66 66 73 65 74 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | id="byteOffsetOf"><a.href="#toc- |
| 7c640 | 62 79 74 65 4f 66 66 73 65 74 4f 66 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 20 | byteOffsetOf">@byteOffsetOf</a>. |
| 7c660 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 79 74 65 4f 66 66 73 65 74 | <a.class="hdr".href="#byteOffset |
| 7c680 | 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | Of">..</a></h2>........<pre><cod |
| 7c6a0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 7c6c0 | 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 | uiltin">@byteOffsetOf</span>(<sp |
| 7c6e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e | an.class="tok-kw">comptime</span |
| 7c700 | 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 | >.T:.<span.class="tok-type">type |
| 7c720 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | </span>,.<span.class="tok-kw">co |
| 7c740 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 | mptime</span>.field_name:.[]<spa |
| 7c760 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | n.class="tok-kw">const</span>.<s |
| 7c780 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 | pan.class="tok-type">u8</span>). |
| 7c7a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f | <span.class="tok-type">comptime_ |
| 7c7c0 | 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | int</span></code></pre>.......<p |
| 7c7e0 | 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 62 79 74 65 20 6f 66 66 73 65 74 20 | >.......Returns.the.byte.offset. |
| 7c800 | 6f 66 20 61 20 66 69 65 6c 64 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 74 73 20 63 6f 6e 74 61 | of.a.field.relative.to.its.conta |
| 7c820 | 69 6e 69 6e 67 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ining.struct........</p>.......< |
| 7c840 | 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | p>See.also:</p><ul>.<li><a.href= |
| 7c860 | 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c | "#bitOffsetOf">@bitOffsetOf</a>< |
| 7c880 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | /li>.</ul>................<h2.id |
| 7c8a0 | 3d 22 63 61 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 61 6c 6c 22 3e 40 63 61 6c | ="call"><a.href="#toc-call">@cal |
| 7c8c0 | 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 61 6c 6c | l</a>.<a.class="hdr".href="#call |
| 7c8e0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 7c900 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 7c920 | 6c 74 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 73 3a 20 73 74 64 2e | ltin">@call</span>(options:.std. |
| 7c940 | 62 75 69 6c 74 69 6e 2e 43 61 6c 6c 4f 70 74 69 6f 6e 73 2c 20 66 75 6e 63 74 69 6f 6e 3a 20 3c | builtin.CallOptions,.function:.< |
| 7c960 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 | span.class="tok-kw">anytype</spa |
| 7c980 | 6e 3e 2c 20 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | n>,.args:.<span.class="tok-kw">a |
| 7c9a0 | 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nytype</span>).<span.class="tok- |
| 7c9c0 | 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | kw">anytype</span></code></pre>. |
| 7c9e0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e | ......<p>.......Calls.a.function |
| 7ca00 | 2c 20 69 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 68 61 74 20 69 6e 76 6f 6b 69 6e 67 20 | ,.in.the.same.way.that.invoking. |
| 7ca20 | 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 74 68 20 70 61 72 65 6e 74 68 65 73 65 73 20 64 | an.expression.with.parentheses.d |
| 7ca40 | 6f 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | oes:.......</p>.......<p.class=" |
| 7ca60 | 66 69 6c 65 22 3e 63 61 6c 6c 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | file">call.zig</p><pre><code.cla |
| 7ca80 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| 7caa0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nst</span>.expect.=.<span.class= |
| 7cac0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | "tok-builtin">@import</span>(<sp |
| 7cae0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f | an.class="tok-str">"std&quo |
| 7cb00 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 | t;</span>).testing.expect;..<spa |
| 7cb20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | n.class="tok-kw">test</span>.<sp |
| 7cb40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 69 6e 6c 69 6e | an.class="tok-str">"noinlin |
| 7cb60 | 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | e.function.call"</span>.{.. |
| 7cb80 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 7cba0 | 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | n>.expect(<span.class="tok-built |
| 7cbc0 | 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e 28 2e 7b 7d 2c 20 61 64 64 2c 20 2e 7b 3c 73 70 | in">@call</span>(.{},.add,..{<sp |
| 7cbe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">3</span>,. |
| 7cc00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e | <span.class="tok-number">9</span |
| 7cc20 | 3e 7d 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | >}).==.<span.class="tok-number"> |
| 7cc40 | 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 12</span>);.}..<span.class="tok- |
| 7cc60 | 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 | kw">fn</span>.<span.class="tok-f |
| 7cc80 | 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n">add</span>(a:.<span.class="to |
| 7cca0 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 | k-type">i32</span>,.b:.<span.cla |
| 7ccc0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ss="tok-type">i32</span>).<span. |
| 7cce0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | class="tok-type">i32</span>.{... |
| 7cd00 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | ..<span.class="tok-kw">return</s |
| 7cd20 | 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | pan>.a.+.b;.}</code></pre><pre>< |
| 7cd40 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 61 | code.class="shell">$.zig.test.ca |
| 7cd60 | 6c 6c 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 6f 69 | ll.zig.Test.[1/1].test."noi |
| 7cd80 | 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 | nline.function.call"......A |
| 7cda0 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</code></pre> |
| 7cdc0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ........<p>.......<code.class="z |
| 7cde0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 | ig"><span.class="tok-builtin">@c |
| 7ce00 | 61 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6c 6c 6f 77 73 20 6d 6f 72 65 20 66 6c | all</span></code>.allows.more.fl |
| 7ce20 | 65 78 69 62 69 6c 69 74 79 20 74 68 61 6e 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e 20 63 | exibility.than.normal.function.c |
| 7ce40 | 61 6c 6c 20 73 79 6e 74 61 78 20 64 6f 65 73 2e 20 54 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 | all.syntax.does..The.......<code |
| 7ce60 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 43 61 6c 6c 4f 70 74 69 6f 6e 73 3c 2f 63 6f 64 65 3e 20 | .class="zig">CallOptions</code>. |
| 7ce80 | 73 74 72 75 63 74 20 69 73 20 72 65 70 72 6f 64 75 63 65 64 20 68 65 72 65 3a 0a 20 20 20 20 20 | struct.is.reproduced.here:...... |
| 7cea0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .</p>.......<pre><code.class="zi |
| 7cec0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | g"><span.class="tok-kw">pub</spa |
| 7cee0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>.<span.class="tok-kw">const</s |
| 7cf00 | 70 61 6e 3e 20 43 61 6c 6c 4f 70 74 69 6f 6e 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.CallOptions.=.<span.class=" |
| 7cf20 | 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6d 6f 64 69 | tok-kw">struct</span>.{.....modi |
| 7cf40 | 66 69 65 72 3a 20 4d 6f 64 69 66 69 65 72 20 3d 20 2e 61 75 74 6f 2c 0a 20 20 20 20 73 74 61 63 | fier:.Modifier.=..auto,.....stac |
| 7cf60 | 6b 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e | k:.?[]<span.class="tok-kw">align |
| 7cf80 | 3c 2f 73 70 61 6e 3e 28 73 74 64 2e 54 61 72 67 65 74 2e 73 74 61 63 6b 5f 61 6c 69 67 6e 29 20 | </span>(std.Target.stack_align). |
| 7cfa0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| 7cfc0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f | .=.<span.class="tok-null">null</ |
| 7cfe0 | 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>,......<span.class="tok-kw" |
| 7d000 | 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >pub</span>.<span.class="tok-kw" |
| 7d020 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4d 6f 64 69 66 69 65 72 20 3d 20 3c 73 70 61 6e 20 63 | >const</span>.Modifier.=.<span.c |
| 7d040 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | lass="tok-kw">enum</span>.{..... |
| 7d060 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | ....<span.class="tok-comment">// |
| 7d080 | 2f 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 73 79 | /.Equivalent.to.function.call.sy |
| 7d0a0 | 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 61 75 74 6f 2c 0a 0a 20 20 20 20 | ntax.</span>.........auto,...... |
| 7d0c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | ....<span.class="tok-comment">// |
| 7d0e0 | 2f 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 73 79 6e 63 20 6b 65 79 77 6f 72 64 20 75 73 | /.Equivalent.to.async.keyword.us |
| 7d100 | 65 64 20 77 69 74 68 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 73 79 6e 74 61 78 2e 3c 2f 73 | ed.with.function.call.syntax.</s |
| 7d120 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 61 73 79 6e 63 5f 6b 77 2c 0a 0a 20 20 20 20 20 20 20 20 | pan>.........async_kw,.......... |
| 7d140 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 50 72 | <span.class="tok-comment">///.Pr |
| 7d160 | 65 76 65 6e 74 73 20 74 61 69 6c 20 63 61 6c 6c 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 20 54 | events.tail.call.optimization..T |
| 7d180 | 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 20 72 65 74 75 72 6e 3c 2f | his.guarantees.that.the.return</ |
| 7d1a0 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | span>.........<span.class="tok-c |
| 7d1c0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 61 64 64 72 65 73 73 20 77 69 6c 6c 20 70 6f 69 6e 74 20 74 | omment">///.address.will.point.t |
| 7d1e0 | 6f 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2c 20 61 73 20 6f 70 70 6f 73 65 64 20 74 6f 20 74 68 | o.the.callsite,.as.opposed.to.th |
| 7d200 | 65 20 63 61 6c 6c 73 69 74 65 27 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | e.callsite's</span>.........<spa |
| 7d220 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 63 61 6c 6c 73 69 | n.class="tok-comment">///.callsi |
| 7d240 | 74 65 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 69 73 20 6f 74 68 65 72 77 69 73 65 20 72 65 71 | te..If.the.call.is.otherwise.req |
| 7d260 | 75 69 72 65 64 20 74 6f 20 62 65 20 74 61 69 6c 2d 63 61 6c 6c 65 64 3c 2f 73 70 61 6e 3e 0a 20 | uired.to.be.tail-called</span>.. |
| 7d280 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | .......<span.class="tok-comment" |
| 7d2a0 | 3e 2f 2f 2f 20 6f 72 20 69 6e 6c 69 6e 65 64 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 | >///.or.inlined,.a.compile.error |
| 7d2c0 | 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .is.emitted.instead.</span>..... |
| 7d2e0 | 20 20 20 20 6e 65 76 65 72 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ....never_tail,..........<span.c |
| 7d300 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 | lass="tok-comment">///.Guarantee |
| 7d320 | 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 69 6e 6c 69 | s.that.the.call.will.not.be.inli |
| 7d340 | 6e 65 64 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | ned..If.the.call.is</span>...... |
| 7d360 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f | ...<span.class="tok-comment">/// |
| 7d380 | 20 6f 74 68 65 72 77 69 73 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 | .otherwise.required.to.be.inline |
| 7d3a0 | 64 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e | d,.a.compile.error.is.emitted.in |
| 7d3c0 | 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 6e 65 76 65 72 5f 69 6e 6c 69 | stead.</span>.........never_inli |
| 7d3e0 | 6e 65 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | ne,..........<span.class="tok-co |
| 7d400 | 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 41 73 73 65 72 74 73 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 | mment">///.Asserts.that.the.func |
| 7d420 | 74 69 6f 6e 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 73 75 73 70 65 6e 64 2e 20 54 68 69 73 | tion.call.will.not.suspend..This |
| 7d440 | 20 61 6c 6c 6f 77 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | .allows.a</span>.........<span.c |
| 7d460 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6e 6f 6e 2d 61 73 79 6e 63 | lass="tok-comment">///.non-async |
| 7d480 | 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 63 61 6c 6c 20 61 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 | .function.to.call.an.async.funct |
| 7d4a0 | 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 6e 6f 5f 61 73 79 6e 63 2c 0a 0a 20 | ion.</span>.........no_async,... |
| 7d4c0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | .......<span.class="tok-comment" |
| 7d4e0 | 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 | >///.Guarantees.that.the.call.wi |
| 7d500 | 6c 6c 20 62 65 20 67 65 6e 65 72 61 74 65 64 20 77 69 74 68 20 74 61 69 6c 20 63 61 6c 6c 20 6f | ll.be.generated.with.tail.call.o |
| 7d520 | 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | ptimization.</span>.........<spa |
| 7d540 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 49 66 20 74 68 69 | n.class="tok-comment">///.If.thi |
| 7d560 | 73 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 | s.is.not.possible,.a.compile.err |
| 7d580 | 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | or.is.emitted.instead.</span>... |
| 7d5a0 | 20 20 20 20 20 20 61 6c 77 61 79 73 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | ......always_tail,..........<spa |
| 7d5c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e | n.class="tok-comment">///.Guaran |
| 7d5e0 | 74 65 65 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 6c 6c 20 69 6e 6c 69 6e 65 64 20 | tees.that.the.call.will.inlined. |
| 7d600 | 61 74 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | at.the.callsite.</span>......... |
| 7d620 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 49 66 | <span.class="tok-comment">///.If |
| 7d640 | 20 74 68 69 73 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2c 20 61 20 63 6f 6d 70 69 6c 65 | .this.is.not.possible,.a.compile |
| 7d660 | 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e | .error.is.emitted.instead.</span |
| 7d680 | 3e 0a 20 20 20 20 20 20 20 20 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 2c 0a 0a 20 20 20 20 20 20 | >.........always_inline,........ |
| 7d6a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 | ..<span.class="tok-comment">///. |
| 7d6c0 | 45 76 61 6c 75 61 74 65 73 20 74 68 65 20 63 61 6c 6c 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | Evaluates.the.call.at.compile-ti |
| 7d6e0 | 6d 65 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 63 61 6e 6e 6f 74 20 62 65 20 63 6f 6d 70 6c 65 | me..If.the.call.cannot.be.comple |
| 7d700 | 74 65 64 20 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ted.at</span>.........<span.clas |
| 7d720 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 | s="tok-comment">///.compile-time |
| 7d740 | 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 | ,.a.compile.error.is.emitted.ins |
| 7d760 | 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 5f 74 69 6d | tead.</span>.........compile_tim |
| 7d780 | 65 2c 0a 20 20 20 20 7d 3b 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | e,.....};.};</code></pre>....... |
| 7d7a0 | 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 44 65 66 69 6e 65 22 3e 3c 61 20 68 72 65 66 | ........<h2.id="cDefine"><a.href |
| 7d7c0 | 3d 22 23 74 6f 63 2d 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 20 3c 61 20 | ="#toc-cDefine">@cDefine</a>.<a. |
| 7d7e0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e c2 a7 3c 2f | class="hdr".href="#cDefine">..</ |
| 7d800 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | a></h2>........<pre><code.class= |
| 7d820 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | "zig"><span.class="tok-builtin"> |
| 7d840 | 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | @cDefine</span>(<span.class="tok |
| 7d860 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 | -kw">comptime</span>.name:.[]<sp |
| 7d880 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 | an.class="tok-type">u8</span>,.v |
| 7d8a0 | 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | alue)</code></pre>.......<p>.... |
| 7d8c0 | 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 | ...This.function.can.only.occur. |
| 7d8e0 | 69 6e 73 69 64 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | inside.<code.class="zig"><span.c |
| 7d900 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 | lass="tok-builtin">@cImport</spa |
| 7d920 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | n></code>........</p>.......<p>. |
| 7d940 | 20 20 20 20 20 20 54 68 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 | ......This.appends.<code>#define |
| 7d960 | 20 24 6e 61 6d 65 20 24 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 | .$name.$value</code>.to.the.<cod |
| 7d980 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 7d9a0 | 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 | uiltin">@cImport</span></code>.. |
| 7d9c0 | 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 | .....temporary.buffer........</p |
| 7d9e0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 64 65 66 69 6e 65 20 77 69 74 68 | >.......<p>.......To.define.with |
| 7da00 | 6f 75 74 20 61 20 76 61 6c 75 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f | out.a.value,.like.this:.......</ |
| 7da20 | 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 23 64 | p>.......<pre><code.class="c">#d |
| 7da40 | 65 66 69 6e 65 20 5f 47 4e 55 5f 53 4f 55 52 43 45 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | efine._GNU_SOURCE</code></pre>.. |
| 7da60 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 74 68 65 20 76 6f 69 64 20 76 61 6c 75 | .....<p>.......Use.the.void.valu |
| 7da80 | 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | e,.like.this:.......</p>.......< |
| 7daa0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 7dac0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@cDefine</span>( |
| 7dae0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 | <span.class="tok-str">"_GNU |
| 7db00 | 5f 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3c 2f 63 6f 64 65 3e | _SOURCE"</span>,.{})</code> |
| 7db20 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | </pre>.......<p>See.also:</p><ul |
| 7db40 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 | >.<li><a.href="#Import-from-C-He |
| 7db60 | 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 | ader-File">Import.from.C.Header. |
| 7db80 | 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 | File</a></li>.<li><a.href="#cInc |
| 7dba0 | 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | lude">@cInclude</a></li>.<li><a. |
| 7dbc0 | 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 | href="#cImport">@cImport</a></li |
| 7dbe0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c | >.<li><a.href="#cUndef">@cUndef< |
| 7dc00 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 | /a></li>.<li><a.href="#void">voi |
| 7dc20 | 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | d</a></li>.</ul>...............< |
| 7dc40 | 68 32 20 69 64 3d 22 63 49 6d 70 6f 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 49 | h2.id="cImport"><a.href="#toc-cI |
| 7dc60 | 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | mport">@cImport</a>.<a.class="hd |
| 7dc80 | 72 22 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | r".href="#cImport">..</a></h2>.. |
| 7dca0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 7dcc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c | an.class="tok-builtin">@cImport< |
| 7dce0 | 2f 73 70 61 6e 3e 28 65 78 70 72 65 73 73 69 6f 6e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>(expression).<span.class=" |
| 7dd00 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | tok-type">type</span></code></pr |
| 7dd20 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e | e>.......<p>.......This.function |
| 7dd40 | 20 70 61 72 73 65 73 20 43 20 63 6f 64 65 20 61 6e 64 20 69 6d 70 6f 72 74 73 20 74 68 65 20 66 | .parses.C.code.and.imports.the.f |
| 7dd60 | 75 6e 63 74 69 6f 6e 73 2c 20 74 79 70 65 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 0a 20 20 20 20 | unctions,.types,.variables,..... |
| 7dd80 | 20 20 61 6e 64 20 63 6f 6d 70 61 74 69 62 6c 65 20 6d 61 63 72 6f 20 64 65 66 69 6e 69 74 69 6f | ..and.compatible.macro.definitio |
| 7dda0 | 6e 73 20 69 6e 74 6f 20 61 20 6e 65 77 20 65 6d 70 74 79 20 73 74 72 75 63 74 20 74 79 70 65 2c | ns.into.a.new.empty.struct.type, |
| 7ddc0 | 20 61 6e 64 20 74 68 65 6e 0a 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 74 68 61 74 20 74 79 70 | .and.then.......returns.that.typ |
| 7dde0 | 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 | e........</p>.......<p>.......<c |
| 7de00 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 78 70 72 65 73 73 69 6f 6e 3c 2f 63 6f 64 65 | ode.class="zig">expression</code |
| 7de20 | 3e 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 | >.is.interpreted.at.compile.time |
| 7de40 | 2e 20 54 68 65 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 | ..The.builtin.functions......... |
| 7de60 | 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..<code.class="zig"><span.class= |
| 7de80 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 3c 2f | "tok-builtin">@cInclude</span></ |
| 7dea0 | 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | code>,.<code.class="zig"><span.c |
| 7dec0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 | lass="tok-builtin">@cDefine</spa |
| 7dee0 | 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | n></code>,.and.<code.class="zig" |
| 7df00 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 55 6e 64 | ><span.class="tok-builtin">@cUnd |
| 7df20 | 65 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 6f 72 6b 0a 20 20 20 20 20 20 77 69 74 68 | ef</span></code>.work.......with |
| 7df40 | 69 6e 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 61 70 70 65 6e 64 69 6e 67 20 74 6f | in.this.expression,.appending.to |
| 7df60 | 20 61 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 20 77 68 69 63 68 20 69 73 20 74 68 65 | .a.temporary.buffer.which.is.the |
| 7df80 | 6e 20 70 61 72 73 65 64 20 61 73 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | n.parsed.as.C.code........</p>.. |
| 7dfa0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 75 61 6c 6c 79 20 79 6f 75 20 73 68 6f 75 6c | .....<p>.......Usually.you.shoul |
| 7dfc0 | 64 20 6f 6e 6c 79 20 68 61 76 65 20 6f 6e 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | d.only.have.one.<code.class="zig |
| 7dfe0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d | "><span.class="tok-builtin">@cIm |
| 7e000 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 79 6f 75 72 20 65 6e 74 69 72 | port</span></code>.in.your.entir |
| 7e020 | 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 62 65 63 61 75 73 65 20 69 74 20 73 61 76 65 73 20 | e.application,.because.it.saves. |
| 7e040 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 66 72 6f 6d 20 69 6e 76 6f 6b 69 6e 67 | the.compiler.......from.invoking |
| 7e060 | 20 63 6c 61 6e 67 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 2c 20 61 6e 64 20 70 72 65 76 65 | .clang.multiple.times,.and.preve |
| 7e080 | 6e 74 73 20 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20 62 65 69 6e 67 20 | nts.inline.functions.from.being. |
| 7e0a0 | 64 75 70 6c 69 63 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | duplicated........</p>.......<p> |
| 7e0c0 | 0a 20 20 20 20 20 20 52 65 61 73 6f 6e 73 20 66 6f 72 20 68 61 76 69 6e 67 20 6d 75 6c 74 69 70 | .......Reasons.for.having.multip |
| 7e0e0 | 6c 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | le.<code.class="zig"><span.class |
| 7e100 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f | ="tok-builtin">@cImport</span></ |
| 7e120 | 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 6f 75 6c 64 20 62 65 3a 0a 20 20 20 20 | code>.expressions.would.be:..... |
| 7e140 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | ..</p>.......<ul>...........<li> |
| 7e160 | 54 6f 20 61 76 6f 69 64 20 61 20 73 79 6d 62 6f 6c 20 63 6f 6c 6c 69 73 69 6f 6e 2c 20 66 6f 72 | To.avoid.a.symbol.collision,.for |
| 7e180 | 20 65 78 61 6d 70 6c 65 20 69 66 20 66 6f 6f 2e 68 20 61 6e 64 20 62 61 72 2e 68 20 62 6f 74 68 | .example.if.foo.h.and.bar.h.both |
| 7e1a0 | 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 43 4f 4e 4e 45 43 54 49 4f 4e 5f 43 4f 55 4e 54 3c | .<code>#define.CONNECTION_COUNT< |
| 7e1c0 | 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 20 61 6e 61 6c 79 | /code></li>.........<li>To.analy |
| 7e1e0 | 7a 65 20 74 68 65 20 43 20 63 6f 64 65 20 77 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 70 72 65 | ze.the.C.code.with.different.pre |
| 7e200 | 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69 6e 65 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | processor.defines</li>.......</u |
| 7e220 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | l>.......<p>See.also:</p><ul>.<l |
| 7e240 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 | i><a.href="#Import-from-C-Header |
| 7e260 | 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 | -File">Import.from.C.Header.File |
| 7e280 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 | </a></li>.<li><a.href="#cInclude |
| 7e2a0 | 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | ">@cInclude</a></li>.<li><a.href |
| 7e2c0 | 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c | ="#cDefine">@cDefine</a></li>.<l |
| 7e2e0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c | i><a.href="#cUndef">@cUndef</a>< |
| 7e300 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | /li>.</ul>...............<h2.id= |
| 7e320 | 22 63 49 6e 63 6c 75 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 49 6e 63 6c 75 64 | "cInclude"><a.href="#toc-cInclud |
| 7e340 | 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | e">@cInclude</a>.<a.class="hdr". |
| 7e360 | 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | href="#cInclude">..</a></h2>.... |
| 7e380 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 7e3a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f | .class="tok-builtin">@cInclude</ |
| 7e3c0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | span>(<span.class="tok-kw">compt |
| 7e3e0 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 61 74 68 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ime</span>.path:.[]<span.class=" |
| 7e400 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | tok-type">u8</span>)</code></pre |
| 7e420 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 | >.......<p>.......This.function. |
| 7e440 | 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c 63 6f 64 65 20 63 6c 61 73 | can.only.occur.inside.<code.clas |
| 7e460 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 7e480 | 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | ">@cImport</span></code>........ |
| 7e4a0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 61 70 70 65 6e 64 | </p>.......<p>.......This.append |
| 7e4c0 | 73 20 3c 63 6f 64 65 3e 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 24 70 61 74 68 26 67 74 3b 5c 6e | s.<code>#include.<$path>\n |
| 7e4e0 | 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | </code>.to.the.<code.class="zig" |
| 7e500 | 3e 63 5f 69 6d 70 6f 72 74 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 | >c_import</code>.......temporary |
| 7e520 | 20 62 75 66 66 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | .buffer........</p>.......<p>See |
| 7e540 | 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 | .also:</p><ul>.<li><a.href="#Imp |
| 7e560 | 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 | ort-from-C-Header-File">Import.f |
| 7e580 | 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | rom.C.Header.File</a></li>.<li>< |
| 7e5a0 | 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f | a.href="#cImport">@cImport</a></ |
| 7e5c0 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 | li>.<li><a.href="#cDefine">@cDef |
| 7e5e0 | 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 | ine</a></li>.<li><a.href="#cUnde |
| 7e600 | 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | f">@cUndef</a></li>.</ul>....... |
| 7e620 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6c 7a 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .........<h2.id="clz"><a.href="# |
| 7e640 | 74 6f 63 2d 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | toc-clz">@clz</a>.<a.class="hdr" |
| 7e660 | 20 68 72 65 66 3d 22 23 63 6c 7a 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | .href="#clz">..</a></h2>........ |
| 7e680 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 7e6a0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e 28 3c 73 70 | ss="tok-builtin">@clz</span>(<sp |
| 7e6c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e | an.class="tok-kw">comptime</span |
| 7e6e0 | 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 | >.T:.<span.class="tok-type">type |
| 7e700 | 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 54 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | </span>,.integer:.T)</code></pre |
| 7e720 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 | >.......<p>.......This.function. |
| 7e740 | 63 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6d 6f 73 74 2d 73 69 67 6e 69 66 | counts.the.number.of.most-signif |
| 7e760 | 69 63 61 6e 74 20 28 6c 65 61 64 69 6e 67 20 69 6e 20 61 20 62 69 67 2d 45 6e 64 69 61 6e 20 73 | icant.(leading.in.a.big-Endian.s |
| 7e780 | 65 6e 73 65 29 20 7a 65 72 6f 65 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ense).zeroes.in.<code.class="zig |
| 7e7a0 | 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ">integer</code>........</p>.... |
| 7e7c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ...<p>.......If.<code.class="zig |
| 7e7e0 | 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 | ">integer</code>.is.known.at.<a. |
| 7e800 | 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c 0a 20 | href="#comptime">comptime</a>,.. |
| 7e820 | 20 20 20 20 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c | .....the.return.type.is.<code.cl |
| 7e840 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| 7e860 | 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | >comptime_int</span></code>..... |
| 7e880 | 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 | ...Otherwise,.the.return.type.is |
| 7e8a0 | 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 74 68 65 20 6d 69 | .an.unsigned.integer.with.the.mi |
| 7e8c0 | 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 61 74 20 | nimum.number.......of.bits.that. |
| 7e8e0 | 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 20 6f 66 20 74 | can.represent.the.bit.count.of.t |
| 7e900 | 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | he.integer.type........</p>..... |
| 7e920 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..<p>.......If.<code.class="zig" |
| 7e940 | 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 7a 65 72 6f 2c 20 3c 63 6f 64 65 20 63 | >integer</code>.is.zero,.<code.c |
| 7e960 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 7e980 | 74 69 6e 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 73 20 | tin">@clz</span></code>.returns. |
| 7e9a0 | 74 68 65 20 62 69 74 20 77 69 64 74 68 0a 20 20 20 20 20 20 6f 66 20 69 6e 74 65 67 65 72 20 74 | the.bit.width.......of.integer.t |
| 7e9c0 | 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 2e 0a | ype.<code.class="zig">T</code>.. |
| 7e9e0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 | ......</p>.......<p>See.also:</p |
| 7ea00 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 | ><ul>.<li><a.href="#ctz">@ctz</a |
| 7ea20 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 | ></li>.<li><a.href="#popCount">@ |
| 7ea40 | 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a | popCount</a></li>.</ul>......... |
| 7ea60 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 3c 61 | .......<h2.id="cmpxchgStrong"><a |
| 7ea80 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 | .href="#toc-cmpxchgStrong">@cmpx |
| 7eaa0 | 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | chgStrong</a>.<a.class="hdr".hre |
| 7eac0 | 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | f="#cmpxchgStrong">..</a></h2>.. |
| 7eae0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 7eb00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6d 70 78 63 68 67 53 | an.class="tok-builtin">@cmpxchgS |
| 7eb20 | 74 72 6f 6e 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | trong</span>(<span.class="tok-kw |
| 7eb40 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">comptime</span>.T:.<span.class |
| 7eb60 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 | ="tok-type">type</span>,.ptr:.*T |
| 7eb80 | 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 | ,.expected_value:.T,.new_value:. |
| 7eba0 | 54 2c 20 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 2c 20 66 | T,.success_order:.AtomicOrder,.f |
| 7ebc0 | 61 69 6c 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3f 54 3c 2f 63 6f 64 65 | ail_order:.AtomicOrder).?T</code |
| 7ebe0 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e | ></pre>.......<p>.......This.fun |
| 7ec00 | 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 73 20 61 20 73 74 72 6f 6e 67 20 61 74 6f 6d 69 63 20 63 | ction.performs.a.strong.atomic.c |
| 7ec20 | 6f 6d 70 61 72 65 20 65 78 63 68 61 6e 67 65 20 6f 70 65 72 61 74 69 6f 6e 2e 20 49 74 27 73 20 | ompare.exchange.operation..It's. |
| 7ec40 | 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 20 6f 66 20 74 68 69 73 20 63 6f 64 65 2c 0a 20 20 20 | the.equivalent.of.this.code,.... |
| 7ec60 | 20 20 20 65 78 63 65 70 74 20 61 74 6f 6d 69 63 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ...except.atomic:.......</p>.... |
| 7ec80 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 7eca0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | class="tok-kw">fn</span>.<span.c |
| 7ecc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 42 75 74 4e 6f | lass="tok-fn">cmpxchgStrongButNo |
| 7ece0 | 74 41 74 6f 6d 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | tAtomic</span>(<span.class="tok- |
| 7ed00 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 | kw">comptime</span>.T:.<span.cla |
| 7ed20 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 | ss="tok-type">type</span>,.ptr:. |
| 7ed40 | 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 | *T,.expected_value:.T,.new_value |
| 7ed60 | 3a 20 54 29 20 3f 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | :.T).?T.{.....<span.class="tok-k |
| 7ed80 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 20 3d 20 70 74 72 2e | w">const</span>.old_value.=.ptr. |
| 7eda0 | 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f | *;.....<span.class="tok-kw">if</ |
| 7edc0 | 73 70 61 6e 3e 20 28 6f 6c 64 5f 76 61 6c 75 65 20 3d 3d 20 65 78 70 65 63 74 65 64 5f 76 61 6c | span>.(old_value.==.expected_val |
| 7ede0 | 75 65 29 20 7b 0a 20 20 20 20 20 20 20 20 70 74 72 2e 2a 20 3d 20 6e 65 77 5f 76 61 6c 75 65 3b | ue).{.........ptr.*.=.new_value; |
| 7ee00 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | .........<span.class="tok-kw">re |
| 7ee20 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | turn</span>.<span.class="tok-nul |
| 7ee40 | 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 | l">null</span>;.....}.<span.clas |
| 7ee60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 | s="tok-kw">else</span>.{........ |
| 7ee80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 | .<span.class="tok-kw">return</sp |
| 7eea0 | 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | an>.old_value;.....}.}</code></p |
| 7eec0 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 61 72 65 20 75 | re>.......<p>.......If.you.are.u |
| 7eee0 | 73 69 6e 67 20 63 6d 70 78 63 68 67 20 69 6e 20 61 20 6c 6f 6f 70 2c 20 3c 61 20 68 72 65 66 3d | sing.cmpxchg.in.a.loop,.<a.href= |
| 7ef00 | 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 20 | "#cmpxchgWeak">@cmpxchgWeak</a>. |
| 7ef20 | 69 73 20 74 68 65 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 75 73 65 20 69 74 | is.the.better.choice,.because.it |
| 7ef40 | 20 63 61 6e 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 0a 20 20 20 20 20 20 6d 6f 72 65 20 65 | .can.be.implemented.......more.e |
| 7ef60 | 66 66 69 63 69 65 6e 74 6c 79 20 69 6e 20 6d 61 63 68 69 6e 65 20 69 6e 73 74 72 75 63 74 69 6f | fficiently.in.machine.instructio |
| 7ef80 | 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c | ns........</p>.......<p>.......< |
| 7efa0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 | code.class="zig">T</code>.must.b |
| 7efc0 | 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | e.a.pointer,.a.<code.class="zig" |
| 7efe0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 | ><span.class="tok-type">bool</sp |
| 7f000 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e | an></code>,.a.float,.......an.in |
| 7f020 | 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | teger.or.an.enum........</p>.... |
| 7f040 | 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ...<p><code.class="zig"><span.cl |
| 7f060 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 | ass="tok-builtin">@typeInfo</spa |
| 7f080 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 | n>(<span.class="tok-builtin">@Ty |
| 7f0a0 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d | peOf</span>(ptr)).Pointer.alignm |
| 7f0c0 | 65 6e 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ent</code>.must.be.<code.class=" |
| 7f0e0 | 7a 69 67 22 3e 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | zig">>=.<span.class="tok-buil |
| 7f100 | 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 54 29 2e 3c 2f 63 6f 64 65 3e 3c 2f | tin">@sizeOf</span>(T).</code></ |
| 7f120 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | p>.......<p>See.also:</p><ul>.<l |
| 7f140 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 | i><a.href="#Compile-Variables">C |
| 7f160 | 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | ompile.Variables</a></li>.<li><a |
| 7f180 | 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 63 6d 70 78 63 68 67 57 65 61 6b | .href="#cmpxchgWeak">cmpxchgWeak |
| 7f1a0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | </a></li>.</ul>...............<h |
| 7f1c0 | 32 20 69 64 3d 22 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | 2.id="cmpxchgWeak"><a.href="#toc |
| 7f1e0 | 2d 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 20 3c | -cmpxchgWeak">@cmpxchgWeak</a>.< |
| 7f200 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b | a.class="hdr".href="#cmpxchgWeak |
| 7f220 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 7f240 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 7f260 | 6c 74 69 6e 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ltin">@cmpxchgWeak</span>(<span. |
| 7f280 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 | class="tok-kw">comptime</span>.T |
| 7f2a0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 | :.<span.class="tok-type">type</s |
| 7f2c0 | 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 | pan>,.ptr:.*T,.expected_value:.T |
| 7f2e0 | 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 54 2c 20 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 | ,.new_value:.T,.success_order:.A |
| 7f300 | 74 6f 6d 69 63 4f 72 64 65 72 2c 20 66 61 69 6c 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 | tomicOrder,.fail_order:.AtomicOr |
| 7f320 | 64 65 72 29 20 3f 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | der).?T</code></pre>.......<p>.. |
| 7f340 | 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 73 20 61 20 77 65 | .....This.function.performs.a.we |
| 7f360 | 61 6b 20 61 74 6f 6d 69 63 20 63 6f 6d 70 61 72 65 20 65 78 63 68 61 6e 67 65 20 6f 70 65 72 61 | ak.atomic.compare.exchange.opera |
| 7f380 | 74 69 6f 6e 2e 20 49 74 27 73 20 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 20 6f 66 20 74 68 69 | tion..It's.the.equivalent.of.thi |
| 7f3a0 | 73 20 63 6f 64 65 2c 0a 20 20 20 20 20 20 65 78 63 65 70 74 20 61 74 6f 6d 69 63 3a 0a 20 20 20 | s.code,.......except.atomic:.... |
| 7f3c0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...</p>.......<pre><code.class=" |
| 7f3e0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | zig"><span.class="tok-kw">fn</sp |
| 7f400 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 6d 70 78 63 68 67 | an>.<span.class="tok-fn">cmpxchg |
| 7f420 | 57 65 61 6b 42 75 74 4e 6f 74 41 74 6f 6d 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | WeakButNotAtomic</span>(<span.cl |
| 7f440 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 | ass="tok-kw">comptime</span>.T:. |
| 7f460 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 | <span.class="tok-type">type</spa |
| 7f480 | 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 | n>,.ptr:.*T,.expected_value:.T,. |
| 7f4a0 | 6e 65 77 5f 76 61 6c 75 65 3a 20 54 29 20 3f 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | new_value:.T).?T.{.....<span.cla |
| 7f4c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c | ss="tok-kw">const</span>.old_val |
| 7f4e0 | 75 65 20 3d 20 70 74 72 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ue.=.ptr.*;.....<span.class="tok |
| 7f500 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 6c 64 5f 76 61 6c 75 65 20 3d 3d 20 65 78 70 | -kw">if</span>.(old_value.==.exp |
| 7f520 | 65 63 74 65 64 5f 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ected_value.<span.class="tok-kw" |
| 7f540 | 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 75 73 75 61 6c 6c 79 54 72 75 65 42 75 74 53 6f 6d 65 74 69 | >and</span>.usuallyTrueButSometi |
| 7f560 | 6d 65 73 46 61 6c 73 65 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 70 74 72 2e 2a 20 3d 20 6e 65 | mesFalse()).{.........ptr.*.=.ne |
| 7f580 | 77 5f 76 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w_value;.........<span.class="to |
| 7f5a0 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">return</span>.<span.class= |
| 7f5c0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 | "tok-null">null</span>;.....}.<s |
| 7f5e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b | pan.class="tok-kw">else</span>.{ |
| 7f600 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | .........<span.class="tok-kw">re |
| 7f620 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 7d 3c 2f | turn</span>.old_value;.....}.}</ |
| 7f640 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 | code></pre>.......<p>.......If.y |
| 7f660 | 6f 75 20 61 72 65 20 75 73 69 6e 67 20 63 6d 70 78 63 68 67 20 69 6e 20 61 20 6c 6f 6f 70 2c 20 | ou.are.using.cmpxchg.in.a.loop,. |
| 7f680 | 74 68 65 20 73 70 6f 72 61 64 69 63 20 66 61 69 6c 75 72 65 20 77 69 6c 6c 20 62 65 20 6e 6f 20 | the.sporadic.failure.will.be.no. |
| 7f6a0 | 70 72 6f 62 6c 65 6d 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 | problem,.and.<code.class="zig">c |
| 7f6c0 | 6d 70 78 63 68 67 57 65 61 6b 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 74 68 65 20 62 | mpxchgWeak</code>.......is.the.b |
| 7f6e0 | 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 75 73 65 20 69 74 20 63 61 6e 20 62 65 20 | etter.choice,.because.it.can.be. |
| 7f700 | 69 6d 70 6c 65 6d 65 6e 74 65 64 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 6c 79 20 69 6e 20 | implemented.more.efficiently.in. |
| 7f720 | 6d 61 63 68 69 6e 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 48 6f 77 65 | machine.instructions........Howe |
| 7f740 | 76 65 72 20 69 66 20 79 6f 75 20 6e 65 65 64 20 61 20 73 74 72 6f 6e 67 65 72 20 67 75 61 72 61 | ver.if.you.need.a.stronger.guara |
| 7f760 | 6e 74 65 65 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e | ntee,.use.<a.href="#cmpxchgStron |
| 7f780 | 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | g">@cmpxchgStrong</a>........</p |
| 7f7a0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.......<p>.......<code.class="z |
| 7f7c0 | 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 | ig">T</code>.must.be.a.pointer,. |
| 7f7e0 | 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | a.<code.class="zig"><span.class= |
| 7f800 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 | "tok-type">bool</span></code>,.a |
| 7f820 | 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 | .float,.......an.integer.or.an.e |
| 7f840 | 6e 75 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 | num........</p>.......<p><code.c |
| 7f860 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 7f880 | 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | tin">@typeInfo</span>(<span.clas |
| 7f8a0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 | s="tok-builtin">@TypeOf</span>(p |
| 7f8c0 | 74 72 29 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e 20 6d 75 | tr)).Pointer.alignment</code>.mu |
| 7f8e0 | 73 74 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 26 67 74 3b 3d 20 3c 73 | st.be.<code.class="zig">>=.<s |
| 7f900 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c | pan.class="tok-builtin">@sizeOf< |
| 7f920 | 2f 73 70 61 6e 3e 28 54 29 2e 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 | /span>(T).</code></p>.......<p>S |
| 7f940 | 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 | ee.also:</p><ul>.<li><a.href="#C |
| 7f960 | 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 | ompile-Variables">Compile.Variab |
| 7f980 | 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 | les</a></li>.<li><a.href="#cmpxc |
| 7f9a0 | 68 67 53 74 72 6f 6e 67 22 3e 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e | hgStrong">cmpxchgStrong</a></li> |
| 7f9c0 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6f | .</ul>................<h2.id="co |
| 7f9e0 | 6d 70 69 6c 65 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6d 70 69 6c | mpileError"><a.href="#toc-compil |
| 7fa00 | 65 45 72 72 6f 72 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 | eError">@compileError</a>.<a.cla |
| 7fa20 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e c2 a7 | ss="hdr".href="#compileError">.. |
| 7fa40 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | </a></h2>........<pre><code.clas |
| 7fa60 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 7fa80 | 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ">@compileError</span>(<span.cla |
| 7faa0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6d 73 67 3a | ss="tok-kw">comptime</span>.msg: |
| 7fac0 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | .[]<span.class="tok-type">u8</sp |
| 7fae0 | 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | an>)</code></pre>.......<p>..... |
| 7fb00 | 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 77 68 65 6e 20 73 65 6d 61 6e 74 69 63 61 6c | ..This.function,.when.semantical |
| 7fb20 | 6c 79 20 61 6e 61 6c 79 7a 65 64 2c 20 63 61 75 73 65 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 | ly.analyzed,.causes.a.compile.er |
| 7fb40 | 72 6f 72 20 77 69 74 68 20 74 68 65 0a 20 20 20 20 20 20 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 | ror.with.the.......message.<code |
| 7fb60 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 73 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c | .class="zig">msg</code>........< |
| 7fb80 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 73 65 | /p>.......<p>.......There.are.se |
| 7fba0 | 76 65 72 61 6c 20 77 61 79 73 20 74 68 61 74 20 63 6f 64 65 20 61 76 6f 69 64 73 20 62 65 69 6e | veral.ways.that.code.avoids.bein |
| 7fbc0 | 67 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 63 68 65 63 6b 65 64 2c 20 73 75 63 68 20 61 73 0a | g.semantically.checked,.such.as. |
| 7fbe0 | 20 20 20 20 20 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ......using.<code.class="zig"><s |
| 7fc00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | pan.class="tok-kw">if</span></co |
| 7fc20 | 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | de>.or.<code.class="zig"><span.c |
| 7fc40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">switch</span></cod |
| 7fc60 | 65 3e 20 77 69 74 68 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 73 2c 0a | e>.with.compile.time.constants,. |
| 7fc80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ..............and.<code.class="z |
| 7fca0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | ig"><span.class="tok-kw">comptim |
| 7fcc0 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 | e</span></code>.functions....... |
| 7fce0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6f 6d 70 | .</p>...............<h2.id="comp |
| 7fd00 | 69 6c 65 4c 6f 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6d 70 69 6c 65 4c 6f 67 | ileLog"><a.href="#toc-compileLog |
| 7fd20 | 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | ">@compileLog</a>.<a.class="hdr" |
| 7fd40 | 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 4c 6f 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | .href="#compileLog">..</a></h2>. |
| 7fd60 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 7fd80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 | pan.class="tok-builtin">@compile |
| 7fda0 | 4c 6f 67 3c 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 2e 2e 2e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | Log</span>(args:....)</code></pr |
| 7fdc0 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e | e>.......<p>.......This.function |
| 7fde0 | 20 70 72 69 6e 74 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 70 61 73 73 65 64 20 74 6f 20 | .prints.the.arguments.passed.to. |
| 7fe00 | 69 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | it.at.compile-time........</p>.. |
| 7fe20 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 70 72 65 76 65 6e 74 20 61 63 63 69 64 65 | .....<p>.......To.prevent.accide |
| 7fe40 | 6e 74 61 6c 6c 79 20 6c 65 61 76 69 6e 67 20 63 6f 6d 70 69 6c 65 20 6c 6f 67 20 73 74 61 74 65 | ntally.leaving.compile.log.state |
| 7fe60 | 6d 65 6e 74 73 20 69 6e 20 61 20 63 6f 64 65 62 61 73 65 2c 0a 20 20 20 20 20 20 61 20 63 6f 6d | ments.in.a.codebase,.......a.com |
| 7fe80 | 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 20 69 73 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 62 | pilation.error.is.added.to.the.b |
| 7fea0 | 75 69 6c 64 2c 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 0a 20 20 | uild,.pointing.to.the.compile... |
| 7fec0 | 20 20 20 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 2e 20 54 68 69 73 20 65 72 72 6f 72 20 70 72 | ....log.statement..This.error.pr |
| 7fee0 | 65 76 65 6e 74 73 20 63 6f 64 65 20 66 72 6f 6d 20 62 65 69 6e 67 20 67 65 6e 65 72 61 74 65 64 | events.code.from.being.generated |
| 7ff00 | 2c 20 62 75 74 0a 20 20 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6f 74 68 65 72 77 69 73 65 20 69 | ,.but.......does.not.otherwise.i |
| 7ff20 | 6e 74 65 72 66 65 72 65 20 77 69 74 68 20 61 6e 61 6c 79 73 69 73 2e 0a 20 20 20 20 20 20 3c 2f | nterfere.with.analysis........</ |
| 7ff40 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e | p>.......<p>.......This.function |
| 7ff60 | 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 6f 20 22 70 72 69 6e 74 66 20 64 65 62 75 67 | .can.be.used.to.do."printf.debug |
| 7ff80 | 67 69 6e 67 22 20 6f 6e 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 78 65 63 | ging".on.......compile-time.exec |
| 7ffa0 | 75 74 69 6e 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | uting.code........</p>.......<p. |
| 7ffc0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 7ffe0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 80000 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 | -kw">const</span>.print.=.<span. |
| 80020 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 | class="tok-builtin">@import</spa |
| 80040 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>(<span.class="tok-str">"s |
| 80060 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c | td"</span>).debug.print;..< |
| 80080 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 800a0 | 20 6e 75 6d 31 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .num1.=.blk:.{.....<span.class=" |
| 800c0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 31 3a 20 3c 73 70 61 6e 20 63 | tok-kw">var</span>.val1:.<span.c |
| 800e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">i32</span>.=.<sp |
| 80100 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 3b | an.class="tok-number">99</span>; |
| 80120 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .....<span.class="tok-builtin">@ |
| 80140 | 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | compileLog</span>(<span.class="t |
| 80160 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 | ok-str">"comptime.val1.=.&q |
| 80180 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 31 29 3b 0a 20 20 20 20 76 61 6c 31 20 3d 20 76 | uot;</span>,.val1);.....val1.=.v |
| 801a0 | 61 6c 31 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | al1.+.<span.class="tok-number">1 |
| 801c0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>;.....<span.class="tok-kw |
| 801e0 | 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 76 61 6c 31 3b 0a 7d 3b 0a 0a 3c 73 | ">break</span>.:blk.val1;.};..<s |
| 80200 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">test</span>.< |
| 80220 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 69 6e 26 | span.class="tok-str">"main& |
| 80240 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 80260 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 | tok-builtin">@compileLog</span>( |
| 80280 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 | <span.class="tok-str">"comp |
| 802a0 | 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 | time.in.main"</span>);..... |
| 802c0 | 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .print(<span.class="tok-str">&qu |
| 802e0 | 6f 74 3b 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e | ot;Runtime.in.main,.num1.=.{}.\n |
| 80300 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 31 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 | "</span>,..{num1});.}</code |
| 80320 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 80340 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 7c 20 2a 26 71 75 6f 74 3b 63 6f 6d | $.zig.test.test.zig.|.*"com |
| 80360 | 70 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 0a 7c 20 2a 26 71 75 6f 74 3b 63 6f 6d | ptime.in.main".|.*"com |
| 80380 | 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 3b 2c 20 39 39 0a 3c 73 70 61 6e 20 63 6c | ptime.val1.=.",.99.<span.cl |
| 803a0 | 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ass="t0_1">./docgen_tmp/test.zig |
| 803c0 | 3a 31 31 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 | :11:5:.</span><span.class="t31_1 |
| 803e0 | 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | ">error:.</span><span.class="t0_ |
| 80400 | 31 22 3e 66 6f 75 6e 64 20 63 6f 6d 70 69 6c 65 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 3c 2f | 1">found.compile.log.statement</ |
| 80420 | 73 70 61 6e 3e 0a 20 20 20 20 40 63 6f 6d 70 69 6c 65 4c 6f 67 28 26 71 75 6f 74 3b 63 6f 6d 70 | span>.....@compileLog("comp |
| 80440 | 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | time.in.main");.....<span.c |
| 80460 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| 80480 | 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 | s="t0_1">./docgen_tmp/test.zig:1 |
| 804a0 | 3a 33 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e | :35:.</span><span.class="t36_1"> |
| 804c0 | 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e | note:.</span><span.class="t0_1"> |
| 804e0 | 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 63 6f 6e 73 74 20 70 72 69 | referenced.here</span>.const.pri |
| 80500 | 6e 74 20 3d 20 40 69 6d 70 6f 72 74 28 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 29 2e 64 65 | nt.=.@import("std").de |
| 80520 | 62 75 67 2e 70 72 69 6e 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | bug.print;...................... |
| 80540 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| 80560 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 | >^</span>.<span.class="t0_1">./d |
| 80580 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 33 3a 35 3a 20 3c 2f 73 70 61 6e 3e | ocgen_tmp/test.zig:13:5:.</span> |
| 805a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | <span.class="t36_1">note:.</span |
| 805c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 | ><span.class="t0_1">referenced.h |
| 805e0 | 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 26 71 75 6f 74 3b 52 75 6e 74 69 | ere</span>.....print("Runti |
| 80600 | 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e 26 71 75 6f 74 3b 2c 20 | me.in.main,.num1.=.{}.\n",. |
| 80620 | 2e 7b 6e 75 6d 31 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | .{num1});.....<span.class="t32_1 |
| 80640 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f | ">^</span>.<span.class="t0_1">./ |
| 80660 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 35 3a 20 3c 2f 73 70 61 6e 3e | docgen_tmp/test.zig:5:5:.</span> |
| 80680 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 | <span.class="t31_1">error:.</spa |
| 806a0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 66 6f 75 6e 64 20 63 6f 6d 70 69 | n><span.class="t0_1">found.compi |
| 806c0 | 6c 65 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 6f 6d | le.log.statement</span>.....@com |
| 806e0 | 70 69 6c 65 4c 6f 67 28 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 | pileLog("comptime.val1.=.&q |
| 80700 | 75 6f 74 3b 2c 20 76 61 6c 31 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | uot;,.val1);.....<span.class="t3 |
| 80720 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | 2_1">^</span>.<span.class="t0_1" |
| 80740 | 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 33 3a 34 36 3a 20 3c 2f | >./docgen_tmp/test.zig:13:46:.</ |
| 80760 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c | span><span.class="t36_1">note:.< |
| 80780 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e | /span><span.class="t0_1">referen |
| 807a0 | 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 26 71 75 6f 74 3b | ced.here</span>.....print(" |
| 807c0 | 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e 26 71 75 | Runtime.in.main,.num1.=.{}.\n&qu |
| 807e0 | 6f 74 3b 2c 20 2e 7b 6e 75 6d 31 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ot;,..{num1});.................. |
| 80800 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ............................<spa |
| 80820 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e | n.class="t32_1">^</span>.</code> |
| 80840 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 77 69 6c 6c 20 6f 75 70 | </pre>........<p>.......will.oup |
| 80860 | 75 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | ut:.......</p>.......<p>.......I |
| 80880 | 66 20 61 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | f.all.<code.class="zig"><span.cl |
| 808a0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 | ass="tok-builtin">@compileLog</s |
| 808c0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 73 20 61 72 65 20 72 65 6d 6f 76 65 64 20 6f 72 | pan></code>.calls.are.removed.or |
| 808e0 | 0a 20 20 20 20 20 20 6e 6f 74 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 62 79 20 61 6e 61 6c 79 73 | .......not.encountered.by.analys |
| 80900 | 69 73 2c 20 74 68 65 0a 20 20 20 20 20 20 70 72 6f 67 72 61 6d 20 63 6f 6d 70 69 6c 65 73 20 73 | is,.the.......program.compiles.s |
| 80920 | 75 63 63 65 73 73 66 75 6c 6c 79 20 61 6e 64 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 65 78 | uccessfully.and.the.generated.ex |
| 80940 | 65 63 75 74 61 62 6c 65 20 70 72 69 6e 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ecutable.prints:.......</p>..... |
| 80960 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 80980 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 809a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c | ="tok-kw">const</span>.print.=.< |
| 809c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| 809e0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| 80a00 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e | uot;std"</span>).debug.prin |
| 80a20 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | t;..<span.class="tok-kw">const</ |
| 80a40 | 73 70 61 6e 3e 20 6e 75 6d 31 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | span>.num1.=.blk:.{.....<span.cl |
| 80a60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 31 3a 20 3c 73 | ass="tok-kw">var</span>.val1:.<s |
| 80a80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| 80aa0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 | =.<span.class="tok-number">99</s |
| 80ac0 | 70 61 6e 3e 3b 0a 20 20 20 20 76 61 6c 31 20 3d 20 76 61 6c 31 20 2b 20 3c 73 70 61 6e 20 63 6c | pan>;.....val1.=.val1.+.<span.cl |
| 80ae0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | ass="tok-number">1</span>;.....< |
| 80b00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e | span.class="tok-kw">break</span> |
| 80b20 | 20 3a 62 6c 6b 20 76 61 6c 31 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .:blk.val1;.};..<span.class="tok |
| 80b40 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 80b60 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | k-str">"main"</span>.{ |
| 80b80 | 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | .....print(<span.class="tok-str" |
| 80ba0 | 3e 26 71 75 6f 74 3b 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b | >"Runtime.in.main,.num1.=.{ |
| 80bc0 | 7d 2e 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 31 7d 29 3b 0a 7d 3c 2f | }.\n"</span>,..{num1});.}</ |
| 80be0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 80c00 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f | ll">$.zig.test.test.zig.Test.[1/ |
| 80c20 | 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 6d 61 69 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 52 75 6e | 1].test."main".....Run |
| 80c40 | 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 31 30 30 2e 0a 0a 41 6c 6c 20 31 | time.in.main,.num1.=.100...All.1 |
| 80c60 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | .tests.passed..</code></pre>.... |
| 80c80 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 74 7a 22 3e 3c 61 20 68 72 65 66 | ............<h2.id="ctz"><a.href |
| 80ca0 | 3d 22 23 74 6f 63 2d 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | ="#toc-ctz">@ctz</a>.<a.class="h |
| 80cc0 | 64 72 22 20 68 72 65 66 3d 22 23 63 74 7a 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | dr".href="#ctz">..</a></h2>..... |
| 80ce0 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 80d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 74 7a 3c 2f 73 70 61 6e 3e 28 | class="tok-builtin">@ctz</span>( |
| 80d20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 | <span.class="tok-kw">comptime</s |
| 80d40 | 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 | pan>.T:.<span.class="tok-type">t |
| 80d60 | 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 54 29 3c 2f 63 6f 64 65 3e 3c 2f | ype</span>,.integer:.T)</code></ |
| 80d80 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 | pre>.......<p>.......This.functi |
| 80da0 | 6f 6e 20 63 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6c 65 61 73 74 2d 73 69 | on.counts.the.number.of.least-si |
| 80dc0 | 67 6e 69 66 69 63 61 6e 74 20 28 74 72 61 69 6c 69 6e 67 20 69 6e 20 61 20 62 69 67 2d 45 6e 64 | gnificant.(trailing.in.a.big-End |
| 80de0 | 69 61 6e 20 73 65 6e 73 65 29 20 7a 65 72 6f 65 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ian.sense).zeroes.in.<code.class |
| 80e00 | 3d 22 7a 69 67 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | ="zig">integer</code>........</p |
| 80e20 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 | >.......<p>.......If.<code.class |
| 80e40 | 3d 22 7a 69 67 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 | ="zig">integer</code>.is.known.a |
| 80e60 | 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | t.<a.href="#comptime">comptime</ |
| 80e80 | 61 3e 2c 0a 20 20 20 20 20 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f | a>,.......the.return.type.is.<co |
| 80ea0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 80ec0 | 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | type">comptime_int</span></code> |
| 80ee0 | 2e 0a 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 | ........Otherwise,.the.return.ty |
| 80f00 | 70 65 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 74 | pe.is.an.unsigned.integer.with.t |
| 80f20 | 68 65 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 | he.minimum.number.......of.bits. |
| 80f40 | 74 68 61 74 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 | that.can.represent.the.bit.count |
| 80f60 | 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | .of.the.integer.type........</p> |
| 80f80 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .......<p>.......If.<code.class= |
| 80fa0 | 22 7a 69 67 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 7a 65 72 6f 2c 20 3c 63 | "zig">integer</code>.is.zero,.<c |
| 80fc0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 80fe0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 63 74 7a 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 | -builtin">@ctz</span></code>.ret |
| 81000 | 75 72 6e 73 0a 20 20 20 20 20 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 69 6e 74 65 | urns.......the.bit.width.of.inte |
| 81020 | 67 65 72 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f | ger.type.<code.class="zig">T</co |
| 81040 | 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | de>........</p>.......<p>See.als |
| 81060 | 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6c 7a 22 3e 40 63 | o:</p><ul>.<li><a.href="#clz">@c |
| 81080 | 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 6f 70 43 6f 75 | lz</a></li>.<li><a.href="#popCou |
| 810a0 | 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | nt">@popCount</a></li>.</ul>.... |
| 810c0 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 55 6e 64 65 66 22 3e 3c 61 20 68 | ............<h2.id="cUndef"><a.h |
| 810e0 | 72 65 66 3d 22 23 74 6f 63 2d 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 20 3c 61 | ref="#toc-cUndef">@cUndef</a>.<a |
| 81100 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e c2 a7 3c 2f | .class="hdr".href="#cUndef">..</ |
| 81120 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | a></h2>........<pre><code.class= |
| 81140 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | "zig"><span.class="tok-builtin"> |
| 81160 | 40 63 55 6e 64 65 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @cUndef</span>(<span.class="tok- |
| 81180 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 | kw">comptime</span>.name:.[]<spa |
| 811a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 | n.class="tok-type">u8</span>)</c |
| 811c0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 | ode></pre>.......<p>.......This. |
| 811e0 | 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c | function.can.only.occur.inside.< |
| 81200 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 81220 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | k-builtin">@cImport</span></code |
| 81240 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | >........</p>.......<p>.......Th |
| 81260 | 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f 64 65 3e 23 75 6e 64 65 66 20 24 6e 61 6d 65 3c 2f 63 | is.appends.<code>#undef.$name</c |
| 81280 | 6f 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ode>.to.the.<code.class="zig"><s |
| 812a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 | pan.class="tok-builtin">@cImport |
| 812c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 20 62 | </span></code>.......temporary.b |
| 812e0 | 75 66 66 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 | uffer........</p>.......<p>See.a |
| 81300 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 | lso:</p><ul>.<li><a.href="#Impor |
| 81320 | 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f | t-from-C-Header-File">Import.fro |
| 81340 | 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | m.C.Header.File</a></li>.<li><a. |
| 81360 | 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 | href="#cImport">@cImport</a></li |
| 81380 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e | >.<li><a.href="#cDefine">@cDefin |
| 813a0 | 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 | e</a></li>.<li><a.href="#cInclud |
| 813c0 | 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | e">@cInclude</a></li>.</ul>..... |
| 813e0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 64 69 76 45 78 61 63 74 22 3e 3c 61 20 | ...........<h2.id="divExact"><a. |
| 81400 | 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f | href="#toc-divExact">@divExact</ |
| 81420 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 | a>.<a.class="hdr".href="#divExac |
| 81440 | 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | t">..</a></h2>........<pre><code |
| 81460 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 81480 | 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f | iltin">@divExact</span>(numerato |
| 814a0 | 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f | r:.T,.denominator:.T).T</code></ |
| 814c0 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 63 74 20 64 69 76 69 73 | pre>.......<p>.......Exact.divis |
| 814e0 | 69 6f 6e 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 20 63 6c 61 | ion..Caller.guarantees.<code.cla |
| 81500 | 73 73 3d 22 7a 69 67 22 3e 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c | ss="zig">denominator.!=.<span.cl |
| 81520 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-number">0</span></code> |
| 81540 | 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .and...........<code.class="zig" |
| 81560 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 | ><span.class="tok-builtin">@divT |
| 81580 | 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 2c 20 64 65 6e 6f 6d 69 6e 61 74 | runc</span>(numerator,.denominat |
| 815a0 | 6f 72 29 20 2a 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 3d 3d 20 6e 75 6d 65 72 61 74 6f 72 3c 2f | or).*.denominator.==.numerator</ |
| 815c0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | code>........</p>.......<ul>.... |
| 815e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .......<li><code.class="zig"><sp |
| 81600 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 | an.class="tok-builtin">@divExact |
| 81620 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | </span>(<span.class="tok-number" |
| 81640 | 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >6</span>,.<span.class="tok-numb |
| 81660 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er">3</span>).==.<span.class="to |
| 81680 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | k-number">2</span></code></li>.. |
| 816a0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .........<li><code.class="zig">< |
| 816c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 | span.class="tok-builtin">@divExa |
| 816e0 | 63 74 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c | ct</span>(a,.b).*.b.==.a</code>< |
| 81700 | 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 | /li>.......</ul>.......<p>For.a. |
| 81720 | 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 20 70 6f 73 73 69 62 6c 65 | function.that.returns.a.possible |
| 81740 | 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .error.code,.use.<code.class="zi |
| 81760 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | g"><span.class="tok-builtin">@im |
| 81780 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | port</span>(<span.class="tok-str |
| 817a0 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 | ">"std"</span>).math.d |
| 817c0 | 69 76 45 78 61 63 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | ivExact</code>.</p>.......<p>See |
| 817e0 | 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 | .also:</p><ul>.<li><a.href="#div |
| 81800 | 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | Trunc">@divTrunc</a></li>.<li><a |
| 81820 | 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 3c | .href="#divFloor">@divFloor</a>< |
| 81840 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | /li>.</ul>...............<h2.id= |
| 81860 | 22 64 69 76 46 6c 6f 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 46 6c 6f 6f | "divFloor"><a.href="#toc-divFloo |
| 81880 | 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | r">@divFloor</a>.<a.class="hdr". |
| 818a0 | 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | href="#divFloor">..</a></h2>.... |
| 818c0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 818e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f | .class="tok-builtin">@divFloor</ |
| 81900 | 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a | span>(numerator:.T,.denominator: |
| 81920 | 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | .T).T</code></pre>.......<p>.... |
| 81940 | 20 20 20 46 6c 6f 6f 72 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 20 74 6f 77 61 | ...Floored.division..Rounds.towa |
| 81960 | 72 64 20 6e 65 67 61 74 69 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 46 6f 72 20 75 6e 73 69 67 6e | rd.negative.infinity..For.unsign |
| 81980 | 65 64 20 69 6e 74 65 67 65 72 73 20 69 74 20 69 73 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 | ed.integers.it.is.......the.same |
| 819a0 | 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 72 61 74 6f 72 20 | .as.<code.class="zig">numerator. |
| 819c0 | 2f 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 20 67 75 61 | /.denominator</code>..Caller.gua |
| 819e0 | 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 6e 6f 6d 69 | rantees.<code.class="zig">denomi |
| 81a00 | 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | nator.!=.<span.class="tok-number |
| 81a20 | 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 | ">0</span></code>.and........... |
| 81a40 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 28 3c 73 70 61 6e 20 63 6c | ....<code.class="zig">!(<span.cl |
| 81a60 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 | ass="tok-builtin">@typeInfo</spa |
| 81a80 | 6e 3e 28 54 29 20 3d 3d 20 2e 49 6e 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | n>(T).==..Int.<span.class="tok-k |
| 81aa0 | 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 54 2e 69 73 5f 73 69 67 6e 65 64 20 3c 73 70 61 6e 20 | w">and</span>.T.is_signed.<span. |
| 81ac0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 6e 75 6d 65 72 61 | class="tok-kw">and</span>.numera |
| 81ae0 | 74 6f 72 20 3d 3d 20 73 74 64 2e 6d 61 74 68 2e 6d 69 6e 49 6e 74 28 54 29 20 3c 73 70 61 6e 20 | tor.==.std.math.minInt(T).<span. |
| 81b00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 64 65 6e 6f 6d 69 | class="tok-kw">and</span>.denomi |
| 81b20 | 6e 61 74 6f 72 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | nator.==.-<span.class="tok-numbe |
| 81b40 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | r">1</span>)</code>........</p>. |
| 81b60 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 | ......<ul>...........<li><code.c |
| 81b80 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 81ba0 | 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 | tin">@divFloor</span>(-<span.cla |
| 81bc0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">5</span>,.<span. |
| 81be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 | class="tok-number">3</span>).==. |
| 81c00 | 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | -<span.class="tok-number">2</spa |
| 81c20 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f | n></code></li>...........<li><co |
| 81c40 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | de.class="zig">(<span.class="tok |
| 81c60 | 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 | -builtin">@divFloor</span>(a,.b) |
| 81c80 | 20 2a 20 62 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | .*.b).+.<span.class="tok-builtin |
| 81ca0 | 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c | ">@mod</span>(a,.b).==.a</code>< |
| 81cc0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 | /li>.......</ul>.......<p>For.a. |
| 81ce0 | 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 20 70 6f 73 73 69 62 6c 65 | function.that.returns.a.possible |
| 81d00 | 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .error.code,.use.<code.class="zi |
| 81d20 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | g"><span.class="tok-builtin">@im |
| 81d40 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | port</span>(<span.class="tok-str |
| 81d60 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 | ">"std"</span>).math.d |
| 81d80 | 69 76 46 6c 6f 6f 72 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | ivFloor</code>.</p>.......<p>See |
| 81da0 | 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 | .also:</p><ul>.<li><a.href="#div |
| 81dc0 | 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | Trunc">@divTrunc</a></li>.<li><a |
| 81de0 | 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 3c | .href="#divExact">@divExact</a>< |
| 81e00 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | /li>.</ul>...............<h2.id= |
| 81e20 | 22 64 69 76 54 72 75 6e 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 54 72 75 6e | "divTrunc"><a.href="#toc-divTrun |
| 81e40 | 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | c">@divTrunc</a>.<a.class="hdr". |
| 81e60 | 68 72 65 66 3d 22 23 64 69 76 54 72 75 6e 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | href="#divTrunc">..</a></h2>.... |
| 81e80 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 81ea0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f | .class="tok-builtin">@divTrunc</ |
| 81ec0 | 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a | span>(numerator:.T,.denominator: |
| 81ee0 | 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | .T).T</code></pre>.......<p>.... |
| 81f00 | 20 20 20 54 72 75 6e 63 61 74 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 20 74 6f | ...Truncated.division..Rounds.to |
| 81f20 | 77 61 72 64 20 7a 65 72 6f 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 | ward.zero..For.unsigned.integers |
| 81f40 | 20 69 74 20 69 73 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f 64 65 20 63 | .it.is.......the.same.as.<code.c |
| 81f60 | 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 72 61 74 6f 72 20 2f 20 64 65 6e 6f 6d 69 6e 61 74 | lass="zig">numerator./.denominat |
| 81f80 | 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c 63 6f | or</code>..Caller.guarantees.<co |
| 81fa0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 | de.class="zig">denominator.!=.<s |
| 81fc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-number">0</span>< |
| 81fe0 | 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | /code>.and...............<code.c |
| 82000 | 6c 61 73 73 3d 22 7a 69 67 22 3e 21 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | lass="zig">!(<span.class="tok-bu |
| 82020 | 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 20 3d 3d 20 2e 49 | iltin">@typeInfo</span>(T).==..I |
| 82040 | 6e 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 | nt.<span.class="tok-kw">and</spa |
| 82060 | 6e 3e 20 54 2e 69 73 5f 73 69 67 6e 65 64 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>.T.is_signed.<span.class="tok- |
| 82080 | 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 6e 75 6d 65 72 61 74 6f 72 20 3d 3d 20 73 74 64 2e | kw">and</span>.numerator.==.std. |
| 820a0 | 6d 61 74 68 2e 6d 69 6e 49 6e 74 28 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | math.minInt(T).<span.class="tok- |
| 820c0 | 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 3d 3d 20 2d 3c | kw">and</span>.denominator.==.-< |
| 820e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e | span.class="tok-number">1</span> |
| 82100 | 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a | )</code>........</p>.......<ul>. |
| 82120 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<li><code.class="zig"> |
| 82140 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 | <span.class="tok-builtin">@divTr |
| 82160 | 75 6e 63 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | unc</span>(-<span.class="tok-num |
| 82180 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">5</span>,.<span.class="tok- |
| 821a0 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 | number">3</span>).==.-<span.clas |
| 821c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | s="tok-number">1</span></code></ |
| 821e0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | li>...........<li><code.class="z |
| 82200 | 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | ig">(<span.class="tok-builtin">@ |
| 82220 | 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 29 20 2b 20 3c 73 70 | divTrunc</span>(a,.b).*.b).+.<sp |
| 82240 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c 2f 73 70 61 | an.class="tok-builtin">@rem</spa |
| 82260 | 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | n>(a,.b).==.a</code></li>....... |
| 82280 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 | </ul>.......<p>For.a.function.th |
| 822a0 | 61 74 20 72 65 74 75 72 6e 73 20 61 20 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 20 63 6f 64 65 | at.returns.a.possible.error.code |
| 822c0 | 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ,.use.<code.class="zig"><span.cl |
| 822e0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 82300 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 82320 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 54 72 75 6e 63 3c 2f 63 6f | "</span>).math.divTrunc</co |
| 82340 | 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c | de>.</p>.......<p>See.also:</p>< |
| 82360 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 | ul>.<li><a.href="#divFloor">@div |
| 82380 | 46 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 | Floor</a></li>.<li><a.href="#div |
| 823a0 | 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | Exact">@divExact</a></li>.</ul>. |
| 823c0 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 6d 62 65 64 46 69 6c 65 22 | ..............<h2.id="embedFile" |
| 823e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 | ><a.href="#toc-embedFile">@embed |
| 82400 | 46 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 | File</a>.<a.class="hdr".href="#e |
| 82420 | 6d 62 65 64 46 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | mbedFile">..</a></h2>........<pr |
| 82440 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 82460 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 73 70 61 6e 3e 28 | "tok-builtin">@embedFile</span>( |
| 82480 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 | <span.class="tok-kw">comptime</s |
| 824a0 | 70 61 6e 3e 20 70 61 74 68 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | pan>.path:.[]<span.class="tok-kw |
| 824c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">const</span>.<span.class="tok- |
| 824e0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">u8</span>).*<span.class="t |
| 82500 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 5b 58 3a 3c 73 70 61 6e 20 63 6c 61 | ok-kw">const</span>.[X:<span.cla |
| 82520 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 | ss="tok-number">0</span>]<span.c |
| 82540 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | lass="tok-type">u8</span></code> |
| 82560 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 | </pre>.......<p>.......This.func |
| 82580 | 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 | tion.returns.a.compile.time.cons |
| 825a0 | 74 61 6e 74 20 70 6f 69 6e 74 65 72 20 74 6f 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 2c | tant.pointer.to.null-terminated, |
| 825c0 | 0a 20 20 20 20 20 20 66 69 78 65 64 2d 73 69 7a 65 20 61 72 72 61 79 20 77 69 74 68 20 6c 65 6e | .......fixed-size.array.with.len |
| 825e0 | 67 74 68 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 62 79 74 65 20 63 6f 75 6e 74 20 6f 66 20 74 | gth.equal.to.the.byte.count.of.t |
| 82600 | 68 65 20 66 69 6c 65 20 67 69 76 65 6e 20 62 79 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | he.file.given.by.......<code.cla |
| 82620 | 73 73 3d 22 7a 69 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 63 6f 6e 74 65 6e | ss="zig">path</code>..The.conten |
| 82640 | 74 73 20 6f 66 20 74 68 65 20 61 72 72 61 79 20 61 72 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 | ts.of.the.array.are.the.contents |
| 82660 | 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 65 71 75 69 | .of.the.file........This.is.equi |
| 82680 | 76 61 6c 65 6e 74 20 74 6f 20 61 20 3c 61 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 | valent.to.a.<a.href="#String-Lit |
| 826a0 | 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 | erals-and-Unicode-Code-Point-Lit |
| 826c0 | 65 72 61 6c 73 22 3e 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 3c 2f 61 3e 0a 20 20 20 20 20 20 | erals">string.literal</a>....... |
| 826e0 | 77 69 74 68 20 74 68 65 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f | with.the.file.contents........</ |
| 82700 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | p>.......<p>.......<code.class=" |
| 82720 | 7a 69 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 20 69 73 20 61 62 73 6f 6c 75 74 65 20 6f 72 20 | zig">path</code>.is.absolute.or. |
| 82740 | 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 69 6c 65 2c 20 6a 75 | relative.to.the.current.file,.ju |
| 82760 | 73 74 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | st.like.<code.class="zig"><span. |
| 82780 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 | class="tok-builtin">@import</spa |
| 827a0 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 | n></code>........</p>.......<p>S |
| 827c0 | 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 | ee.also:</p><ul>.<li><a.href="#i |
| 827e0 | 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | mport">@import</a></li>.</ul>... |
| 82800 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 6e 75 6d 54 6f 49 6e 74 22 3e | .............<h2.id="enumToInt"> |
| 82820 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 6e 75 6d 54 6f 49 6e 74 22 3e 40 65 6e 75 6d 54 6f | <a.href="#toc-enumToInt">@enumTo |
| 82840 | 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 6e | Int</a>.<a.class="hdr".href="#en |
| 82860 | 75 6d 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | umToInt">..</a></h2>........<pre |
| 82880 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 828a0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 | tok-builtin">@enumToInt</span>(e |
| 828c0 | 6e 75 6d 5f 6f 72 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | num_or_tagged_union:.<span.class |
| 828e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ="tok-kw">anytype</span>).<span. |
| 82900 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | class="tok-kw">anytype</span></c |
| 82920 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 | ode></pre>.......<p>.......Conve |
| 82940 | 72 74 73 20 61 6e 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 20 69 6e 74 6f 20 69 74 | rts.an.enumeration.value.into.it |
| 82960 | 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 2e 20 57 68 65 6e 20 61 20 74 61 67 67 65 | s.integer.tag.type..When.a.tagge |
| 82980 | 64 20 75 6e 69 6f 6e 20 69 73 20 70 61 73 73 65 64 2c 0a 20 20 20 20 20 20 74 68 65 20 74 61 67 | d.union.is.passed,.......the.tag |
| 829a0 | 20 76 61 6c 75 65 20 69 73 20 75 73 65 64 20 61 73 20 74 68 65 20 65 6e 75 6d 65 72 61 74 69 6f | .value.is.used.as.the.enumeratio |
| 829c0 | 6e 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | n.value........</p>.......<p>... |
| 829e0 | 20 20 20 20 49 66 20 74 68 65 72 65 20 69 73 20 6f 6e 6c 79 20 6f 6e 65 20 70 6f 73 73 69 62 6c | ....If.there.is.only.one.possibl |
| 82a00 | 65 20 65 6e 75 6d 20 76 61 6c 75 65 2c 20 74 68 65 20 72 65 73 75 74 20 69 73 20 61 20 3c 63 6f | e.enum.value,.the.resut.is.a.<co |
| 82a20 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 82a40 | 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | type">comptime_int</span></code> |
| 82a60 | 0a 20 20 20 20 20 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 | .......known.at.<a.href="#compti |
| 82a80 | 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | me">comptime</a>........</p>.... |
| 82aa0 | 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 | ...<p>See.also:</p><ul>.<li><a.h |
| 82ac0 | 72 65 66 3d 22 23 69 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 3c | ref="#intToEnum">@intToEnum</a>< |
| 82ae0 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | /li>.</ul>................<h2.id |
| 82b00 | 3d 22 65 72 72 6f 72 4e 61 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 6f 72 | ="errorName"><a.href="#toc-error |
| 82b20 | 4e 61 6d 65 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | Name">@errorName</a>.<a.class="h |
| 82b40 | 64 72 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 4e 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | dr".href="#errorName">..</a></h2 |
| 82b60 | 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >........<pre><code.class="zig"> |
| 82b80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 | <span.class="tok-builtin">@error |
| 82ba0 | 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | Name</span>(err:.<span.class="to |
| 82bc0 | 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 6e | k-type">anyerror</span>).[]<span |
| 82be0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | .class="tok-kw">const</span>.<sp |
| 82c00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 | an.class="tok-type">u8</span></c |
| 82c20 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 | ode></pre>.......<p>.......This. |
| 82c40 | 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 | function.returns.the.string.repr |
| 82c60 | 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 2e 20 54 68 65 20 73 74 72 69 | esentation.of.an.error..The.stri |
| 82c80 | 6e 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 6f 66 20 3c 63 6f 64 65 | ng.representation.......of.<code |
| 82ca0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 82cc0 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 3c 2f 63 6f 64 65 3e 20 69 | ">error</span>.OutOfMem</code>.i |
| 82ce0 | 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | s.<code.class="zig"><span.class= |
| 82d00 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4f 75 74 4f 66 4d 65 6d 26 71 75 6f 74 3b 3c 2f | "tok-str">"OutOfMem"</ |
| 82d20 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | span></code>........</p>.......< |
| 82d40 | 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 63 61 6c 6c 73 20 74 | p>.......If.there.are.no.calls.t |
| 82d60 | 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | o.<code.class="zig"><span.class= |
| 82d80 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 3c | "tok-builtin">@errorName</span>< |
| 82da0 | 2f 63 6f 64 65 3e 20 69 6e 20 61 6e 20 65 6e 74 69 72 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c | /code>.in.an.entire.application, |
| 82dc0 | 0a 20 20 20 20 20 20 6f 72 20 61 6c 6c 20 63 61 6c 6c 73 20 68 61 76 65 20 61 20 63 6f 6d 70 69 | .......or.all.calls.have.a.compi |
| 82de0 | 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c | le-time.known.value.for.<code.cl |
| 82e00 | 61 73 73 3d 22 7a 69 67 22 3e 65 72 72 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 20 6e 6f 0a 20 20 | ass="zig">err</code>,.then.no... |
| 82e20 | 20 20 20 20 65 72 72 6f 72 20 6e 61 6d 65 20 74 61 62 6c 65 20 77 69 6c 6c 20 62 65 20 67 65 6e | ....error.name.table.will.be.gen |
| 82e40 | 65 72 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | erated........</p>.............. |
| 82e60 | 20 3c 68 32 20 69 64 3d 22 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 3c 61 20 68 72 | .<h2.id="errorReturnTrace"><a.hr |
| 82e80 | 65 66 3d 22 23 74 6f 63 2d 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 40 65 72 72 6f | ef="#toc-errorReturnTrace">@erro |
| 82ea0 | 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | rReturnTrace</a>.<a.class="hdr". |
| 82ec0 | 68 72 65 66 3d 22 23 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e c2 a7 3c 2f 61 3e 3c | href="#errorReturnTrace">..</a>< |
| 82ee0 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 82f00 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 | g"><span.class="tok-builtin">@er |
| 82f20 | 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3f 2a 62 75 69 6c 74 69 | rorReturnTrace</span>().?*builti |
| 82f40 | 6e 2e 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | n.StackTrace</code></pre>....... |
| 82f60 | 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 62 69 6e 61 72 79 20 69 73 20 62 75 69 6c 74 | <p>.......If.the.binary.is.built |
| 82f80 | 20 77 69 74 68 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 2c 20 61 6e 64 20 | .with.error.return.tracing,.and. |
| 82fa0 | 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 69 6e 76 6f 6b 65 64 20 69 6e 20 61 0a 20 20 | this.function.is.invoked.in.a... |
| 82fc0 | 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 63 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 | ....function.that.calls.a.functi |
| 82fe0 | 6f 6e 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 | on.with.an.error.or.error.union. |
| 83000 | 72 65 74 75 72 6e 20 74 79 70 65 2c 20 72 65 74 75 72 6e 73 20 61 0a 20 20 20 20 20 20 73 74 61 | return.type,.returns.a.......sta |
| 83020 | 63 6b 20 74 72 61 63 65 20 6f 62 6a 65 63 74 2e 20 4f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 | ck.trace.object..Otherwise.retur |
| 83040 | 6e 73 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 2e 0a 20 20 20 | ns.<a.href="#null">null</a>..... |
| 83060 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 72 | ...</p>...............<h2.id="er |
| 83080 | 72 6f 72 54 6f 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 6f 72 54 6f 49 | rorToInt"><a.href="#toc-errorToI |
| 830a0 | 6e 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | nt">@errorToInt</a>.<a.class="hd |
| 830c0 | 72 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | r".href="#errorToInt">..</a></h2 |
| 830e0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >........<pre><code.class="zig"> |
| 83100 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 | <span.class="tok-builtin">@error |
| 83120 | 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ToInt</span>(err:.<span.class="t |
| 83140 | 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 73 74 64 2e 6d 65 74 61 2e | ok-kw">anytype</span>).std.meta. |
| 83160 | 49 6e 74 28 2e 75 6e 73 69 67 6e 65 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | Int(.unsigned,.<span.class="tok- |
| 83180 | 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | builtin">@sizeOf</span>(<span.cl |
| 831a0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 20 | ass="tok-type">anyerror</span>). |
| 831c0 | 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 | *.<span.class="tok-number">8</sp |
| 831e0 | 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | an>)</code></pre>.......<p>..... |
| 83200 | 20 20 53 75 70 70 6f 72 74 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 79 70 65 73 3a 0a | ..Supports.the.following.types:. |
| 83220 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | ......</p>.......<ul>........... |
| 83240 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 | <li><a.href="#The-Global-Error-S |
| 83260 | 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f 72 20 53 65 74 3c 2f 61 3e 3c 2f 6c 69 | et">The.Global.Error.Set</a></li |
| 83280 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d | >...........<li><a.href="#Error- |
| 832a0 | 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 | Set-Type">Error.Set.Type</a></li |
| 832c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d | >...........<li><a.href="#Error- |
| 832e0 | 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e | Union-Type">Error.Union.Type</a> |
| 83300 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | </li>.......</ul>.......<p>..... |
| 83320 | 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 65 72 72 6f 72 20 74 6f 20 74 68 65 20 69 6e 74 65 67 | ..Converts.an.error.to.the.integ |
| 83340 | 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 2e 0a 20 | er.representation.of.an.error... |
| 83360 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 | .....</p>.......<p>.......It.is. |
| 83380 | 67 65 6e 65 72 61 6c 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 61 76 6f 69 64 20 74 | generally.recommended.to.avoid.t |
| 833a0 | 68 69 73 0a 20 20 20 20 20 20 63 61 73 74 2c 20 61 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 | his.......cast,.as.the.integer.r |
| 833c0 | 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 69 73 20 6e 6f 74 | epresentation.of.an.error.is.not |
| 833e0 | 20 73 74 61 62 6c 65 20 61 63 72 6f 73 73 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 68 61 6e 67 | .stable.across.source.code.chang |
| 83400 | 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | es........</p>.......<p>See.also |
| 83420 | 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 72 72 | :</p><ul>.<li><a.href="#intToErr |
| 83440 | 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | or">@intToError</a></li>.</ul>.. |
| 83460 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 72 72 53 65 74 43 61 73 74 | ..............<h2.id="errSetCast |
| 83480 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 53 65 74 43 61 73 74 22 3e 40 65 72 72 | "><a.href="#toc-errSetCast">@err |
| 834a0 | 53 65 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | SetCast</a>.<a.class="hdr".href= |
| 834c0 | 22 23 65 72 72 53 65 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | "#errSetCast">..</a></h2>....... |
| 834e0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 83500 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 73 | ass="tok-builtin">@errSetCast</s |
| 83520 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | pan>(<span.class="tok-kw">compti |
| 83540 | 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 44 65 73 74 54 79 70 65 2c 20 76 61 6c 75 65 3a 20 3c 73 | me</span>.T:.DestType,.value:.<s |
| 83560 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e | pan.class="tok-kw">anytype</span |
| 83580 | 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | >).DestType</code></pre>.......< |
| 835a0 | 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 65 72 72 6f 72 20 76 61 6c 75 65 | p>.......Converts.an.error.value |
| 835c0 | 20 66 72 6f 6d 20 6f 6e 65 20 65 72 72 6f 72 20 73 65 74 20 74 6f 20 61 6e 6f 74 68 65 72 20 65 | .from.one.error.set.to.another.e |
| 835e0 | 72 72 6f 72 20 73 65 74 2e 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 | rror.set..Attempting.to.convert. |
| 83600 | 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 77 68 69 63 68 20 69 73 20 6e 6f 74 20 69 6e 20 74 | an.error.......which.is.not.in.t |
| 83620 | 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 20 72 65 73 75 6c 74 73 | he.destination.error.set.results |
| 83640 | 20 69 6e 20 73 61 66 65 74 79 2d 70 72 6f 74 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 | .in.safety-protected.<a.href="#U |
| 83660 | 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 | ndefined-Behavior">Undefined.Beh |
| 83680 | 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 | avior</a>........</p>........... |
| 836a0 | 20 20 20 20 3c 68 32 20 69 64 3d 22 65 78 70 6f 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ....<h2.id="export"><a.href="#to |
| 836c0 | 63 2d 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | c-export">@export</a>.<a.class=" |
| 836e0 | 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | hdr".href="#export">..</a></h2>. |
| 83700 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 83720 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 78 70 6f 72 74 3c | pan.class="tok-builtin">@export< |
| 83740 | 2f 73 70 61 6e 3e 28 69 64 65 6e 74 69 66 69 65 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>(identifier,.<span.class=" |
| 83760 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 73 3a | tok-kw">comptime</span>.options: |
| 83780 | 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 45 78 70 6f 72 74 4f 70 74 69 6f 6e 73 29 20 3c 73 70 61 | .std.builtin.ExportOptions).<spa |
| 837a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-type">void</span></ |
| 837c0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 72 65 61 | code></pre>.......<p>.......Crea |
| 837e0 | 74 65 73 20 61 20 73 79 6d 62 6f 6c 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 6f 62 6a 65 63 | tes.a.symbol.in.the.output.objec |
| 83800 | 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | t.file........</p>.......<p>.... |
| 83820 | 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 66 | ...This.function.can.be.called.f |
| 83840 | 72 6f 6d 20 61 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 | rom.a.<a.href="#comptime">compti |
| 83860 | 6d 65 3c 2f 61 3e 20 62 6c 6f 63 6b 20 74 6f 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 65 78 | me</a>.block.to.conditionally.ex |
| 83880 | 70 6f 72 74 20 73 79 6d 62 6f 6c 73 2e 0a 20 20 20 20 20 20 57 68 65 6e 20 3c 63 6f 64 65 20 63 | port.symbols........When.<code.c |
| 838a0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 69 64 65 6e 74 69 66 69 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 | lass="zig">identifier</code>.is. |
| 838c0 | 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 43 20 63 61 6c 6c 69 6e 67 20 63 6f | a.function.with.the.C.calling.co |
| 838e0 | 6e 76 65 6e 74 69 6f 6e 20 61 6e 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | nvention.and.......<code.class=" |
| 83900 | 7a 69 67 22 3e 6f 70 74 69 6f 6e 73 2e 6c 69 6e 6b 61 67 65 3c 2f 63 6f 64 65 3e 20 69 73 20 3c | zig">options.linkage</code>.is.< |
| 83920 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 53 74 72 6f 6e 67 3c 2f 63 6f 64 65 3e 2c 20 | code.class="zig">Strong</code>,. |
| 83940 | 74 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 0a 20 20 20 20 20 20 74 68 65 20 | this.is.equivalent.to.......the. |
| 83960 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 83980 | 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 | ok-kw">export</span></code>.keyw |
| 839a0 | 6f 72 64 20 75 73 65 64 20 6f 6e 20 61 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f | ord.used.on.a.function:.......</ |
| 839c0 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 839e0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 83a00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e | n.class="tok-kw">comptime</span> |
| 83a20 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | .{.....<span.class="tok-builtin" |
| 83a40 | 3e 40 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 69 6e 74 65 72 6e 61 6c 4e 61 6d 65 2c 20 2e 7b | >@export</span>(internalName,..{ |
| 83a60 | 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ..name.=.<span.class="tok-str">& |
| 83a80 | 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 6c 69 6e 6b 61 67 65 20 | quot;foo"</span>,..linkage. |
| 83aa0 | 3d 20 2e 53 74 72 6f 6e 67 20 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | =..Strong.});.}..<span.class="to |
| 83ac0 | 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | k-kw">fn</span>.<span.class="tok |
| 83ae0 | 2d 66 6e 22 3e 69 6e 74 65 72 6e 61 6c 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e | -fn">internalName</span>().<span |
| 83b00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 | .class="tok-kw">callconv</span>( |
| 83b20 | 2e 43 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | .C).<span.class="tok-type">void< |
| 83b40 | 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | /span>.{}</code></pre><pre><code |
| 83b60 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 | .class="shell">$.zig.build-obj.t |
| 83b80 | 65 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 | est.zig</code></pre>........<p>T |
| 83ba0 | 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | his.is.equivalent.to:</p>....... |
| 83bc0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 83be0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 83c00 | 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">export</span>.<span.clas |
| 83c20 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | s="tok-kw">fn</span>.<span.class |
| 83c40 | 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-fn">foo</span>().<span.cla |
| 83c60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f | ss="tok-type">void</span>.{}</co |
| 83c80 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 83ca0 | 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 | ">$.zig.build-obj.test.zig</code |
| 83cc0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 65 76 65 6e | ></pre>........<p>Note.that.even |
| 83ce0 | 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .when.using.<code.class="zig"><s |
| 83d00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">export</span> |
| 83d20 | 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 40 26 71 75 6f | </code>,.<code.class="zig">@&quo |
| 83d40 | 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 63 61 6e 0a 20 20 | t;foo"</code>.syntax.can... |
| 83d60 | 20 20 20 20 62 65 20 75 73 65 64 20 74 6f 20 63 68 6f 6f 73 65 20 61 6e 79 20 73 74 72 69 6e 67 | ....be.used.to.choose.any.string |
| 83d80 | 20 66 6f 72 20 74 68 65 20 73 79 6d 62 6f 6c 20 6e 61 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | .for.the.symbol.name:</p>....... |
| 83da0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 83dc0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 83de0 | 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">export</span>.<span.clas |
| 83e00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | s="tok-kw">fn</span>.<span.class |
| 83e20 | 3d 22 74 6f 6b 2d 66 6e 22 3e 40 26 71 75 6f 74 3b 41 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 | ="tok-fn">@"A.function.name |
| 83e40 | 20 74 68 61 74 20 69 73 20 61 20 63 6f 6d 70 6c 65 74 65 20 73 65 6e 74 65 6e 63 65 2e 26 71 75 | .that.is.a.complete.sentence.&qu |
| 83e60 | 6f 74 3b 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ot;</span>().<span.class="tok-ty |
| 83e80 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | pe">void</span>.{}</code></pre>< |
| 83ea0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 | pre><code.class="shell">$.zig.bu |
| 83ec0 | 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | ild-obj.test.zig</code></pre>... |
| 83ee0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 | .....<p>.......When.looking.at.t |
| 83f00 | 68 65 20 72 65 73 75 6c 74 69 6e 67 20 6f 62 6a 65 63 74 2c 20 79 6f 75 20 63 61 6e 20 73 65 65 | he.resulting.object,.you.can.see |
| 83f20 | 20 74 68 65 20 73 79 6d 62 6f 6c 20 69 73 20 75 73 65 64 20 76 65 72 62 61 74 69 6d 3a 0a 20 20 | .the.symbol.is.used.verbatim:... |
| 83f40 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 30 30 30 30 30 30 | ....</p>.......<pre><code>000000 |
| 83f60 | 30 30 30 30 30 30 30 31 66 30 20 54 20 41 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 74 68 61 | 00000001f0.T.A.function.name.tha |
| 83f80 | 74 20 69 73 20 61 20 63 6f 6d 70 6c 65 74 65 20 73 65 6e 74 65 6e 63 65 2e 3c 2f 63 6f 64 65 3e | t.is.a.complete.sentence.</code> |
| 83fa0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | </pre>.......<p>See.also:</p><ul |
| 83fc0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 | >.<li><a.href="#Exporting-a-C-Li |
| 83fe0 | 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e | brary">Exporting.a.C.Library</a> |
| 84000 | 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 | </li>.</ul>................<h2.i |
| 84020 | 64 3d 22 65 78 74 65 72 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 72 6e 22 | d="extern"><a.href="#toc-extern" |
| 84040 | 3e 40 65 78 74 65 72 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | >@extern</a>.<a.class="hdr".href |
| 84060 | 3d 22 23 65 78 74 65 72 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | ="#extern">..</a></h2>........<p |
| 84080 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 840a0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 28 54 3a | ="tok-builtin">@extern</span>(T: |
| 840c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 | .<span.class="tok-type">type</sp |
| 840e0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | an>,.<span.class="tok-kw">compti |
| 84100 | 6d 65 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 73 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 45 | me</span>.options:.std.builtin.E |
| 84120 | 78 74 65 72 6e 4f 70 74 69 6f 6e 73 29 20 2a 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | xternOptions).*T</code></pre>... |
| 84140 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 72 65 61 74 65 73 20 61 20 72 65 66 65 72 65 6e 63 | ....<p>.......Creates.a.referenc |
| 84160 | 65 20 74 6f 20 61 6e 20 65 78 74 65 72 6e 61 6c 20 73 79 6d 62 6f 6c 20 69 6e 20 74 68 65 20 6f | e.to.an.external.symbol.in.the.o |
| 84180 | 75 74 70 75 74 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | utput.object.file........</p>... |
| 841a0 | 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 | ....<p>See.also:</p><ul>.<li><a. |
| 841c0 | 68 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a | href="#export">@export</a></li>. |
| 841e0 | 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 65 6e | </ul>................<h2.id="fen |
| 84200 | 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c | ce"><a.href="#toc-fence">@fence< |
| 84220 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 | /a>.<a.class="hdr".href="#fence" |
| 84240 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | >..</a></h2>........<pre><code.c |
| 84260 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 84280 | 74 69 6e 22 3e 40 66 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 | tin">@fence</span>(order:.Atomic |
| 842a0 | 4f 72 64 65 72 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | Order)</code></pre>.......<p>... |
| 842c0 | 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 65 6e 63 65 3c | ....The.<code.class="zig">fence< |
| 842e0 | 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 75 73 65 64 20 74 6f 20 69 6e 74 72 6f | /code>.function.is.used.to.intro |
| 84300 | 64 75 63 65 20 68 61 70 70 65 6e 73 2d 62 65 66 6f 72 65 20 65 64 67 65 73 20 62 65 74 77 65 65 | duce.happens-before.edges.betwee |
| 84320 | 6e 20 6f 70 65 72 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | n.operations........</p>.......< |
| 84340 | 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 41 74 6f 6d 69 | p>.......<code.class="zig">Atomi |
| 84360 | 63 4f 72 64 65 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 | cOrder</code>.can.be.found.with. |
| 84380 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 843a0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-builtin">@import</span>(<span |
| 843c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b | .class="tok-str">"std" |
| 843e0 | 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f | </span>).builtin.AtomicOrder</co |
| 84400 | 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | de>........</p>.......<p>See.als |
| 84420 | 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 | o:</p><ul>.<li><a.href="#Compile |
| 84440 | 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 | -Variables">Compile.Variables</a |
| 84460 | 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 | ></li>.</ul>................<h2. |
| 84480 | 69 64 3d 22 66 69 65 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 69 65 6c 64 22 3e | id="field"><a.href="#toc-field"> |
| 844a0 | 40 66 69 65 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | @field</a>.<a.class="hdr".href=" |
| 844c0 | 23 66 69 65 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | #field">..</a></h2>........<pre> |
| 844e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 84500 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 6c 68 73 3a 20 3c | ok-builtin">@field</span>(lhs:.< |
| 84520 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 | span.class="tok-kw">anytype</spa |
| 84540 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | n>,.<span.class="tok-kw">comptim |
| 84560 | 65 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | e</span>.field_name:.[]<span.cla |
| 84580 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ss="tok-kw">const</span>.<span.c |
| 845a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 28 66 69 65 6c | lass="tok-type">u8</span>).(fiel |
| 845c0 | 64 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 50 65 72 66 6f 72 6d | d)</code></pre>.......<p>Perform |
| 845e0 | 73 20 66 69 65 6c 64 20 61 63 63 65 73 73 20 62 79 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 | s.field.access.by.a.compile-time |
| 84600 | 20 73 74 72 69 6e 67 2e 20 57 6f 72 6b 73 20 6f 6e 20 62 6f 74 68 20 66 69 65 6c 64 73 20 61 6e | .string..Works.on.both.fields.an |
| 84620 | 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | d.declarations........</p>...... |
| 84640 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 84660 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 84680 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 | ="tok-kw">const</span>.std.=.<sp |
| 846a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f | an.class="tok-builtin">@import</ |
| 846c0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>(<span.class="tok-str">&quo |
| 846e0 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | t;std"</span>);..<span.clas |
| 84700 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 | s="tok-kw">const</span>.Point.=. |
| 84720 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 | <span.class="tok-kw">struct</spa |
| 84740 | 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | n>.{.....x:.<span.class="tok-typ |
| 84760 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | e">u32</span>,.....y:.<span.clas |
| 84780 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 | s="tok-type">u32</span>,......<s |
| 847a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 | pan.class="tok-kw">pub</span>.<s |
| 847c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 7a 3a | pan.class="tok-kw">var</span>.z: |
| 847e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 | .<span.class="tok-type">u32</spa |
| 84800 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | n>.=.<span.class="tok-number">1< |
| 84820 | 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | /span>;.};..<span.class="tok-kw" |
| 84840 | 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >test</span>.<span.class="tok-st |
| 84860 | 72 22 3e 26 71 75 6f 74 3b 66 69 65 6c 64 20 61 63 63 65 73 73 20 62 79 20 73 74 72 69 6e 67 26 | r">"field.access.by.string& |
| 84880 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 848a0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 | tok-kw">const</span>.expect.=.st |
| 848c0 | 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | d.testing.expect;.....<span.clas |
| 848e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 50 6f 69 6e 74 7b | s="tok-kw">var</span>.p.=.Point{ |
| 84900 | 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | ..x.=.<span.class="tok-number">0 |
| 84920 | 3c 2f 73 70 61 6e 3e 2c 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | </span>,..y.=.<span.class="tok-n |
| 84940 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | umber">0</span>.};......<span.cl |
| 84960 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 | ass="tok-builtin">@field</span>( |
| 84980 | 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 | p,.<span.class="tok-str">"x |
| 849a0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | "</span>).=.<span.class="to |
| 849c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | k-number">4</span>;.....<span.cl |
| 849e0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 | ass="tok-builtin">@field</span>( |
| 84a00 | 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 79 | p,.<span.class="tok-str">"y |
| 84a20 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | "</span>).=.<span.class="to |
| 84a40 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 | k-builtin">@field</span>(p,.<spa |
| 84a60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 26 71 75 6f 74 3b 3c | n.class="tok-str">"x"< |
| 84a80 | 2f 73 70 61 6e 3e 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | /span>).+.<span.class="tok-numbe |
| 84aa0 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r">1</span>;......<span.class="t |
| 84ac0 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 | ok-kw">try</span>.expect(<span.c |
| 84ae0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e | lass="tok-builtin">@field</span> |
| 84b00 | 28 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | (p,.<span.class="tok-str">" |
| 84b20 | 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | x"</span>).==.<span.class=" |
| 84b40 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-number">4</span>);.....<span |
| 84b60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 84b80 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 | t(<span.class="tok-builtin">@fie |
| 84ba0 | 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ld</span>(p,.<span.class="tok-st |
| 84bc0 | 72 22 3e 26 71 75 6f 74 3b 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 | r">"y"</span>).==.<spa |
| 84be0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">5</span>);. |
| 84c00 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 | }..<span.class="tok-kw">test</sp |
| 84c20 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>.<span.class="tok-str">" |
| 84c40 | 64 65 63 6c 20 61 63 63 65 73 73 20 62 79 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 | decl.access.by.string"</spa |
| 84c60 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | n>.{.....<span.class="tok-kw">co |
| 84c80 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e | nst</span>.expect.=.std.testing. |
| 84ca0 | 65 78 70 65 63 74 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | expect;......<span.class="tok-kw |
| 84cc0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">try</span>.expect(<span.class= |
| 84ce0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 50 6f 69 6e | "tok-builtin">@field</span>(Poin |
| 84d00 | 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a | t,.<span.class="tok-str">"z |
| 84d20 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | "</span>).==.<span.class="t |
| 84d40 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | ok-number">1</span>);......<span |
| 84d60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 | .class="tok-builtin">@field</spa |
| 84d80 | 6e 3e 28 50 6f 69 6e 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | n>(Point,.<span.class="tok-str"> |
| 84da0 | 26 71 75 6f 74 3b 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c | "z"</span>).=.<span.cl |
| 84dc0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | ass="tok-number">2</span>;.....< |
| 84de0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 | span.class="tok-kw">try</span>.e |
| 84e00 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | xpect(<span.class="tok-builtin"> |
| 84e20 | 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 50 6f 69 6e 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | @field</span>(Point,.<span.class |
| 84e40 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | ="tok-str">"z"</span>) |
| 84e60 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | .==.<span.class="tok-number">2</ |
| 84e80 | 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | span>);.}</code></pre><pre><code |
| 84ea0 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a | .class="shell">$.zig.test.test.z |
| 84ec0 | 69 67 0a 54 65 73 74 20 5b 31 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 66 69 65 6c 64 20 61 | ig.Test.[1/2].test."field.a |
| 84ee0 | 63 63 65 73 73 20 62 79 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 54 65 73 74 20 5b | ccess.by.string".....Test.[ |
| 84f00 | 32 2f 32 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 64 65 63 6c 20 61 63 63 65 73 73 20 62 79 20 73 | 2/2].test."decl.access.by.s |
| 84f20 | 74 72 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 | tring"......All.2.tests.pas |
| 84f40 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 | sed..</code></pre>.............. |
| 84f60 | 20 20 20 3c 68 32 20 69 64 3d 22 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 3c 61 20 68 72 | ...<h2.id="fieldParentPtr"><a.hr |
| 84f80 | 65 66 3d 22 23 74 6f 63 2d 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 40 66 69 65 6c 64 50 | ef="#toc-fieldParentPtr">@fieldP |
| 84fa0 | 61 72 65 6e 74 50 74 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | arentPtr</a>.<a.class="hdr".href |
| 84fc0 | 3d 22 23 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | ="#fieldParentPtr">..</a></h2>.. |
| 84fe0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 85000 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 50 61 72 | an.class="tok-builtin">@fieldPar |
| 85020 | 65 6e 74 50 74 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | entPtr</span>(<span.class="tok-k |
| 85040 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 50 61 72 65 6e 74 54 79 70 65 3a 20 3c | w">comptime</span>.ParentType:.< |
| 85060 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e | span.class="tok-type">type</span |
| 85080 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | >,.<span.class="tok-kw">comptime |
| 850a0 | 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | </span>.field_name:.[]<span.clas |
| 850c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | s="tok-kw">const</span>.<span.cl |
| 850e0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 69 | ass="tok-type">u8</span>,.....fi |
| 85100 | 65 6c 64 5f 70 74 72 3a 20 2a 54 29 20 2a 50 61 72 65 6e 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c | eld_ptr:.*T).*ParentType</code>< |
| 85120 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 47 69 76 65 6e 20 61 20 70 6f | /pre>.......<p>.......Given.a.po |
| 85140 | 69 6e 74 65 72 20 74 6f 20 61 20 66 69 65 6c 64 2c 20 72 65 74 75 72 6e 73 20 74 68 65 20 62 61 | inter.to.a.field,.returns.the.ba |
| 85160 | 73 65 20 70 6f 69 6e 74 65 72 20 6f 66 20 61 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f | se.pointer.of.a.struct........</ |
| 85180 | 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 6c 6f 61 74 43 61 | p>...............<h2.id="floatCa |
| 851a0 | 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c | st"><a.href="#toc-floatCast">@fl |
| 851c0 | 6f 61 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | oatCast</a>.<a.class="hdr".href= |
| 851e0 | 22 23 66 6c 6f 61 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | "#floatCast">..</a></h2>........ |
| 85200 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 85220 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 73 70 61 | ss="tok-builtin">@floatCast</spa |
| 85240 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | n>(<span.class="tok-kw">comptime |
| 85260 | 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.DestType:.<span.class="t |
| 85280 | 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 3a 20 3c 73 70 | ok-type">type</span>,.value:.<sp |
| 852a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e | an.class="tok-kw">anytype</span> |
| 852c0 | 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | ).DestType</code></pre>.......<p |
| 852e0 | 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 20 66 72 6f 6d 20 6f 6e 65 20 66 6c 6f 61 74 20 74 | >.......Convert.from.one.float.t |
| 85300 | 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2e 20 54 68 69 73 20 63 61 73 74 20 69 73 20 73 61 66 | ype.to.another..This.cast.is.saf |
| 85320 | 65 2c 20 62 75 74 20 6d 61 79 20 63 61 75 73 65 20 74 68 65 0a 20 20 20 20 20 20 6e 75 6d 65 72 | e,.but.may.cause.the.......numer |
| 85340 | 69 63 20 76 61 6c 75 65 20 74 6f 20 6c 6f 73 65 20 70 72 65 63 69 73 69 6f 6e 2e 0a 20 20 20 20 | ic.value.to.lose.precision...... |
| 85360 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 6c 6f | ..</p>...............<h2.id="flo |
| 85380 | 61 74 54 6f 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6c 6f 61 74 54 6f 49 6e | atToInt"><a.href="#toc-floatToIn |
| 853a0 | 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | t">@floatToInt</a>.<a.class="hdr |
| 853c0 | 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | ".href="#floatToInt">..</a></h2> |
| 853e0 | 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| 85400 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 6c 6f 61 74 54 | span.class="tok-builtin">@floatT |
| 85420 | 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | oInt</span>(<span.class="tok-kw" |
| 85440 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e | >comptime</span>.DestType:.<span |
| 85460 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 66 | .class="tok-type">type</span>,.f |
| 85480 | 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 | loat:.<span.class="tok-kw">anyty |
| 854a0 | 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | pe</span>).DestType</code></pre> |
| 854c0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 74 68 65 20 69 6e | .......<p>.......Converts.the.in |
| 854e0 | 74 65 67 65 72 20 70 61 72 74 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e | teger.part.of.a.floating.point.n |
| 85500 | 75 6d 62 65 72 20 74 6f 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2e 0a 20 | umber.to.the.destination.type... |
| 85520 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 | .....</p>.......<p>.......If.the |
| 85540 | 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 6f 66 20 74 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f | .integer.part.of.the.floating.po |
| 85560 | 69 6e 74 20 6e 75 6d 62 65 72 20 63 61 6e 6e 6f 74 20 66 69 74 20 69 6e 20 74 68 65 20 64 65 73 | int.number.cannot.fit.in.the.des |
| 85580 | 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2c 0a 20 20 20 20 20 20 69 74 20 69 6e 76 6f 6b 65 73 20 | tination.type,.......it.invokes. |
| 855a0 | 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e | safety-checked.<a.href="#Undefin |
| 855c0 | 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c | ed-Behavior">Undefined.Behavior< |
| 855e0 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | /a>........</p>.......<p>See.als |
| 85600 | 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 46 6c | o:</p><ul>.<li><a.href="#intToFl |
| 85620 | 6f 61 74 22 3e 40 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | oat">@intToFloat</a></li>.</ul>. |
| 85640 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 72 61 6d 65 22 3e 3c 61 | ...............<h2.id="frame"><a |
| 85660 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 72 61 6d 65 22 3e 40 66 72 61 6d 65 3c 2f 61 3e 20 3c 61 | .href="#toc-frame">@frame</a>.<a |
| 85680 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 72 61 6d 65 22 3e c2 a7 3c 2f 61 | .class="hdr".href="#frame">..</a |
| 856a0 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ></h2>........<pre><code.class=" |
| 856c0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 856e0 | 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | frame</span>().*<span.class="tok |
| 85700 | 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 66 75 6e 63 29 3c 2f 63 | -builtin">@Frame</span>(func)</c |
| 85720 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 | ode></pre>.......<p>.......This. |
| 85740 | 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 | function.returns.a.pointer.to.th |
| 85760 | 65 20 66 72 61 6d 65 20 66 6f 72 20 61 20 67 69 76 65 6e 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 | e.frame.for.a.given.function..Th |
| 85780 | 69 73 20 74 79 70 65 0a 20 20 20 20 20 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 54 | is.type.......can.be.<a.href="#T |
| 857a0 | 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 3c 63 6f | ype-Coercion">coerced</a>.to.<co |
| 857c0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 857e0 | 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 2d 26 67 74 3b 54 3c 2f 63 6f 64 65 3e | kw">anyframe</span>->T</code> |
| 85800 | 20 61 6e 64 0a 20 20 20 20 20 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .and.......to.<code.class="zig"> |
| 85820 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 | <span.class="tok-kw">anyframe</s |
| 85840 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 77 68 65 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | pan></code>,.where.<code.class=" |
| 85860 | 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 | zig">T</code>.is.the.return.type |
| 85880 | 0a 20 20 20 20 20 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 73 63 6f 70 65 2e | .......of.the.function.in.scope. |
| 858a0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 | .......</p>.......<p>.......This |
| 858c0 | 20 66 75 6e 63 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 6d 61 72 6b 20 61 20 73 75 73 70 65 6e | .function.does.not.mark.a.suspen |
| 858e0 | 73 69 6f 6e 20 70 6f 69 6e 74 2c 20 62 75 74 20 69 74 20 64 6f 65 73 20 63 61 75 73 65 20 74 68 | sion.point,.but.it.does.cause.th |
| 85900 | 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 73 63 6f 70 65 0a 20 20 20 20 20 20 74 6f 20 62 65 63 | e.function.in.scope.......to.bec |
| 85920 | 6f 6d 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 | ome.an.<a.href="#Async-Functions |
| 85940 | 22 3e 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ">async.function</a>........</p> |
| 85960 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 72 61 6d 65 22 3e 3c 61 | ...............<h2.id="Frame"><a |
| 85980 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 72 61 6d 65 22 3e 40 46 72 61 6d 65 3c 2f 61 3e 20 3c 61 | .href="#toc-Frame">@Frame</a>.<a |
| 859a0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 72 61 6d 65 22 3e c2 a7 3c 2f 61 | .class="hdr".href="#Frame">..</a |
| 859c0 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ></h2>........<pre><code.class=" |
| 859e0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 85a00 | 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 66 75 6e 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | Frame</span>(func:.<span.class=" |
| 85a20 | 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | tok-kw">anytype</span>).<span.cl |
| 85a40 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-type">type</span></code |
| 85a60 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e | ></pre>.......<p>.......This.fun |
| 85a80 | 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 66 72 61 6d 65 20 74 79 70 65 20 6f 66 20 | ction.returns.the.frame.type.of. |
| 85aa0 | 61 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 77 6f 72 6b 73 20 66 6f 72 20 3c 61 20 68 72 | a.function..This.works.for.<a.hr |
| 85ac0 | 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 | ef="#Async-Functions">Async.Func |
| 85ae0 | 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 20 20 20 20 61 73 20 77 65 6c 6c 20 61 73 20 61 6e 79 20 66 | tions</a>.......as.well.as.any.f |
| 85b00 | 75 6e 63 74 69 6f 6e 20 77 69 74 68 6f 75 74 20 61 20 73 70 65 63 69 66 69 63 20 63 61 6c 6c 69 | unction.without.a.specific.calli |
| 85b20 | 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ng.convention........</p>....... |
| 85b40 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 74 79 70 65 20 69 73 20 73 75 69 74 61 62 6c 65 20 | <p>.......This.type.is.suitable. |
| 85b60 | 74 6f 20 62 65 20 75 73 65 64 20 61 73 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 6f 66 | to.be.used.as.the.return.type.of |
| 85b80 | 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 69 74 22 3e 61 73 79 6e | .<a.href="#Async-and-Await">asyn |
| 85ba0 | 63 3c 2f 61 3e 20 77 68 69 63 68 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 6f 6e 65 20 74 6f 2c | c</a>.which.......allows.one.to, |
| 85bc0 | 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20 68 65 61 70 2d 61 6c 6c 6f 63 61 74 65 20 61 6e 20 61 | .for.example,.heap-allocate.an.a |
| 85be0 | 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | sync.function.frame:.......</p>. |
| 85c00 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| 85c20 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 85c40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d | lass="tok-kw">const</span>.std.= |
| 85c60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f | .<span.class="tok-builtin">@impo |
| 85c80 | 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | rt</span>(<span.class="tok-str"> |
| 85ca0 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 | "std"</span>);..<span. |
| 85cc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">test</span>.<span |
| 85ce0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 61 70 20 61 6c 6c 6f | .class="tok-str">"heap.allo |
| 85d00 | 63 61 74 65 64 20 66 72 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | cated.frame"</span>.{.....< |
| 85d20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| 85d40 | 20 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | .frame.=.<span.class="tok-kw">tr |
| 85d60 | 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 68 65 61 70 2e 70 61 67 65 5f 61 6c 6c 6f 63 61 74 6f 72 | y</span>.std.heap.page_allocator |
| 85d80 | 2e 63 72 65 61 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | .create(<span.class="tok-builtin |
| 85da0 | 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 66 75 6e 63 29 29 3b 0a 20 20 20 20 66 72 61 6d | ">@Frame</span>(func));.....fram |
| 85dc0 | 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 | e.*.=.<span.class="tok-kw">async |
| 85de0 | 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.func();.}..<span.class=" |
| 85e00 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 85e20 | 6f 6b 2d 66 6e 22 3e 66 75 6e 63 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-fn">func</span>().<span.class |
| 85e40 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ="tok-type">void</span>.{.....<s |
| 85e60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e | pan.class="tok-kw">suspend</span |
| 85e80 | 3e 20 7b 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | >.{}.}</code></pre><pre><code.cl |
| 85ea0 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 85ec0 | 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 68 65 61 70 20 61 6c 6c 6f 63 | Test.[1/1].test."heap.alloc |
| 85ee0 | 61 74 65 64 20 66 72 61 6d 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 | ated.frame"......All.1.test |
| 85f00 | 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a | s.passed..</code></pre>......... |
| 85f20 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e 3c 61 20 | .......<h2.id="frameAddress"><a. |
| 85f40 | 68 72 65 66 3d 22 23 74 6f 63 2d 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e 40 66 72 61 6d 65 41 | href="#toc-frameAddress">@frameA |
| 85f60 | 64 64 72 65 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | ddress</a>.<a.class="hdr".href=" |
| 85f80 | 23 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | #frameAddress">..</a></h2>...... |
| 85fa0 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 85fc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 41 64 64 72 65 73 73 | lass="tok-builtin">@frameAddress |
| 85fe0 | 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | </span>().<span.class="tok-type" |
| 86000 | 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | >usize</span></code></pre>...... |
| 86020 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 | .<p>.......This.function.returns |
| 86040 | 20 74 68 65 20 62 61 73 65 20 70 6f 69 6e 74 65 72 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 | .the.base.pointer.of.the.current |
| 86060 | 20 73 74 61 63 6b 20 66 72 61 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .stack.frame........</p>.......< |
| 86080 | 70 3e 0a 20 20 20 20 20 20 54 68 65 20 69 6d 70 6c 69 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 69 | p>.......The.implications.of.thi |
| 860a0 | 73 20 61 72 65 20 74 61 72 67 65 74 20 73 70 65 63 69 66 69 63 20 61 6e 64 20 6e 6f 74 20 63 6f | s.are.target.specific.and.not.co |
| 860c0 | 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 20 61 6c 6c 0a 20 20 20 20 20 20 70 6c 61 74 66 6f | nsistent.across.all.......platfo |
| 860e0 | 72 6d 73 2e 20 54 68 65 20 66 72 61 6d 65 20 61 64 64 72 65 73 73 20 6d 61 79 20 6e 6f 74 20 62 | rms..The.frame.address.may.not.b |
| 86100 | 65 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 72 65 6c 65 61 73 65 20 6d 6f 64 65 20 64 75 65 20 | e.available.in.release.mode.due. |
| 86120 | 74 6f 0a 20 20 20 20 20 20 61 67 67 72 65 73 73 69 76 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e | to.......aggressive.optimization |
| 86140 | 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | s........</p>.......<p>.......Th |
| 86160 | 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e | is.function.is.only.valid.within |
| 86180 | 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .function.scope........</p>..... |
| 861a0 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 72 61 6d 65 53 69 7a 65 22 3e 3c 61 20 | ..........<h2.id="frameSize"><a. |
| 861c0 | 68 72 65 66 3d 22 23 74 6f 63 2d 66 72 61 6d 65 53 69 7a 65 22 3e 40 66 72 61 6d 65 53 69 7a 65 | href="#toc-frameSize">@frameSize |
| 861e0 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 72 61 6d 65 | </a>.<a.class="hdr".href="#frame |
| 86200 | 53 69 7a 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | Size">..</a></h2>........<pre><c |
| 86220 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 86240 | 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 | -builtin">@frameSize</span>().<s |
| 86260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e | pan.class="tok-type">usize</span |
| 86280 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | ></code></pre>.......<p>.......T |
| 862a0 | 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | his.is.the.same.as.<code.class=" |
| 862c0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 862e0 | 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | sizeOf</span>(<span.class="tok-b |
| 86300 | 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 66 75 6e 63 29 29 3c 2f 63 6f | uiltin">@Frame</span>(func))</co |
| 86320 | 64 65 3e 2c 20 77 68 65 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 75 6e | de>,.where.<code.class="zig">fun |
| 86340 | 63 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 6d 61 79 20 62 65 20 72 75 6e 74 69 6d 65 2d 6b 6e | c</code>.......may.be.runtime-kn |
| 86360 | 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | own........</p>.......<p>....... |
| 86380 | 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 74 79 70 69 63 61 6c 6c 79 20 75 73 65 64 20 | This.function.is.typically.used. |
| 863a0 | 69 6e 20 63 6f 6e 6a 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 61 73 | in.conjunction.with.<a.href="#as |
| 863c0 | 79 6e 63 43 61 6c 6c 22 3e 40 61 73 79 6e 63 43 61 6c 6c 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c | yncCall">@asyncCall</a>........< |
| 863e0 | 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 68 61 73 44 65 63 | /p>...............<h2.id="hasDec |
| 86400 | 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 68 61 73 44 65 63 6c 22 3e 40 68 61 73 44 65 | l"><a.href="#toc-hasDecl">@hasDe |
| 86420 | 63 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 68 61 73 | cl</a>.<a.class="hdr".href="#has |
| 86440 | 44 65 63 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | Decl">..</a></h2>........<pre><c |
| 86460 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 86480 | 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | -builtin">@hasDecl</span>(<span. |
| 864a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 43 | class="tok-kw">comptime</span>.C |
| 864c0 | 6f 6e 74 61 69 6e 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ontainer:.<span.class="tok-type" |
| 864e0 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >type</span>,.<span.class="tok-k |
| 86500 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e | w">comptime</span>.name:.[]<span |
| 86520 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | .class="tok-kw">const</span>.<sp |
| 86540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c | an.class="tok-type">u8</span>).< |
| 86560 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e | span.class="tok-type">bool</span |
| 86580 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 | ></code></pre>.......<p>.......R |
| 865a0 | 65 74 75 72 6e 73 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 61 20 3c 61 20 68 72 65 66 3d | eturns.whether.or.not.a.<a.href= |
| 865c0 | 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 | "#struct">struct</a>,.<a.href="# |
| 865e0 | 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 | enum">enum</a>,.or.<a.href="#uni |
| 86600 | 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 68 61 73 20 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 0a | on">union</a>.has.a.declaration. |
| 86620 | 20 20 20 20 20 20 6d 61 74 63 68 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ......matching.<code.class="zig" |
| 86640 | 3e 6e 61 6d 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | >name</code>........</p>.......< |
| 86660 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 86680 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 866a0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.std.=.<span. |
| 866c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 | class="tok-builtin">@import</spa |
| 866e0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>(<span.class="tok-str">"s |
| 86700 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | td"</span>);.<span.class="t |
| 86720 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 | ok-kw">const</span>.expect.=.std |
| 86740 | 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .testing.expect;..<span.class="t |
| 86760 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.Foo.=.<span. |
| 86780 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | class="tok-kw">struct</span>.{.. |
| 867a0 | 20 20 20 6e 6f 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ...nope:.<span.class="tok-type"> |
| 867c0 | 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | i32</span>,......<span.class="to |
| 867e0 | 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | k-kw">pub</span>.<span.class="to |
| 86800 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 6c 61 68 20 3d 20 3c 73 70 61 6e 20 63 6c | k-kw">var</span>.blah.=.<span.cl |
| 86820 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 78 78 26 71 75 6f 74 3b 3c 2f 73 | ass="tok-str">"xxx"</s |
| 86840 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>;.....<span.class="tok-kw">c |
| 86860 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | onst</span>.hi.=.<span.class="to |
| 86880 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c | k-number">1</span>;.};..<span.cl |
| 868a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">test</span>.<span.c |
| 868c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 68 61 73 44 65 63 6c 26 71 75 | lass="tok-str">"@hasDecl&qu |
| 868e0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ot;</span>.{.....<span.class="to |
| 86900 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | k-kw">try</span>.expect(<span.cl |
| 86920 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 44 65 63 6c 3c 2f 73 70 61 6e | ass="tok-builtin">@hasDecl</span |
| 86940 | 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | >(Foo,.<span.class="tok-str">&qu |
| 86960 | 6f 74 3b 62 6c 61 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 | ot;blah"</span>));......<sp |
| 86980 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 76 65 6e 20 74 | an.class="tok-comment">//.Even.t |
| 869a0 | 68 6f 75 67 68 20 60 68 69 60 20 69 73 20 70 72 69 76 61 74 65 2c 20 40 68 61 73 44 65 63 6c 20 | hough.`hi`.is.private,.@hasDecl. |
| 869c0 | 72 65 74 75 72 6e 73 20 74 72 75 65 20 62 65 63 61 75 73 65 20 74 68 69 73 20 74 65 73 74 20 69 | returns.true.because.this.test.i |
| 869e0 | 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | s</span>.....<span.class="tok-co |
| 86a00 | 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 20 74 68 65 20 73 61 6d 65 20 66 69 6c 65 20 73 63 6f 70 65 | mment">//.in.the.same.file.scope |
| 86a20 | 20 61 73 20 46 6f 6f 2e 20 49 74 20 77 6f 75 6c 64 20 72 65 74 75 72 6e 20 66 61 6c 73 65 20 69 | .as.Foo..It.would.return.false.i |
| 86a40 | 66 20 46 6f 6f 20 77 61 73 20 64 65 63 6c 61 72 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | f.Foo.was.declared</span>.....<s |
| 86a60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 20 61 20 | pan.class="tok-comment">//.in.a. |
| 86a80 | 64 69 66 66 65 72 65 6e 74 20 66 69 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | different.file.</span>.....<span |
| 86aa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | .class="tok-kw">try</span>.expec |
| 86ac0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 | t(<span.class="tok-builtin">@has |
| 86ae0 | 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | Decl</span>(Foo,.<span.class="to |
| 86b00 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a | k-str">"hi"</span>));. |
| 86b20 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | .....<span.class="tok-comment">/ |
| 86b40 | 2f 20 40 68 61 73 44 65 63 6c 20 69 73 20 66 6f 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 3b 20 | /.@hasDecl.is.for.declarations;. |
| 86b60 | 6e 6f 74 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | not.fields.</span>.....<span.cla |
| 86b80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 3c | ss="tok-kw">try</span>.expect(!< |
| 86ba0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 44 65 63 | span.class="tok-builtin">@hasDec |
| 86bc0 | 6c 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | l</span>(Foo,.<span.class="tok-s |
| 86be0 | 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 | tr">"nope"</span>));.. |
| 86c00 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 86c20 | 6e 3e 20 65 78 70 65 63 74 28 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | n>.expect(!<span.class="tok-buil |
| 86c40 | 74 69 6e 22 3e 40 68 61 73 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 | tin">@hasDecl</span>(Foo,.<span. |
| 86c60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 70 65 31 32 33 34 26 71 | class="tok-str">"nope1234&q |
| 86c80 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | uot;</span>));.}</code></pre><pr |
| 86ca0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 86cc0 | 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b | .test.zig.Test.[1/1].test." |
| 86ce0 | 40 68 61 73 44 65 63 6c 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | @hasDecl"......All.1.tests. |
| 86d00 | 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | passed..</code></pre>........<p> |
| 86d20 | 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | See.also:</p><ul>.<li><a.href="# |
| 86d40 | 68 61 73 46 69 65 6c 64 22 3e 40 68 61 73 46 69 65 6c 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | hasField">@hasField</a></li>.</u |
| 86d60 | 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 68 61 73 46 69 65 | l>................<h2.id="hasFie |
| 86d80 | 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 68 61 73 46 69 65 6c 64 22 3e 40 68 61 73 | ld"><a.href="#toc-hasField">@has |
| 86da0 | 46 69 65 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | Field</a>.<a.class="hdr".href="# |
| 86dc0 | 68 61 73 46 69 65 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | hasField">..</a></h2>........<pr |
| 86de0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 86e00 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 46 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 3c | "tok-builtin">@hasField</span>(< |
| 86e20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 | span.class="tok-kw">comptime</sp |
| 86e40 | 61 6e 3e 20 43 6f 6e 74 61 69 6e 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.Container:.<span.class="tok- |
| 86e60 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">type</span>,.<span.class=" |
| 86e80 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 3a 20 5b 5d | tok-kw">comptime</span>.name:.[] |
| 86ea0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| 86ec0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >.<span.class="tok-type">u8</spa |
| 86ee0 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c | n>).<span.class="tok-type">bool< |
| 86f00 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 52 65 74 | /span></code></pre>.......<p>Ret |
| 86f20 | 75 72 6e 73 20 77 68 65 74 68 65 72 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 20 6f 66 20 61 | urns.whether.the.field.name.of.a |
| 86f40 | 20 73 74 72 75 63 74 2c 20 75 6e 69 6f 6e 2c 20 6f 72 20 65 6e 75 6d 20 65 78 69 73 74 73 2e 3c | .struct,.union,.or.enum.exists.< |
| 86f60 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 | /p>.......<p>.......The.result.i |
| 86f80 | 73 20 61 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 0a 20 20 20 20 20 | s.a.compile.time.constant....... |
| 86fa0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 64 6f 65 73 20 6e 6f | .</p>.......<p>.......It.does.no |
| 86fc0 | 74 20 69 6e 63 6c 75 64 65 20 66 75 6e 63 74 69 6f 6e 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 20 | t.include.functions,.variables,. |
| 86fe0 | 6f 72 20 63 6f 6e 73 74 61 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | or.constants........</p>.......< |
| 87000 | 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | p>See.also:</p><ul>.<li><a.href= |
| 87020 | 22 23 68 61 73 44 65 63 6c 22 3e 40 68 61 73 44 65 63 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | "#hasDecl">@hasDecl</a></li>.</u |
| 87040 | 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6d 70 6f 72 74 | l>................<h2.id="import |
| 87060 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c | "><a.href="#toc-import">@import< |
| 87080 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 | /a>.<a.class="hdr".href="#import |
| 870a0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 870c0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 870e0 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| 87100 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 61 74 68 3a 20 | ="tok-kw">comptime</span>.path:. |
| 87120 | 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | []<span.class="tok-type">u8</spa |
| 87140 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c | n>).<span.class="tok-type">type< |
| 87160 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | /span></code></pre>.......<p>... |
| 87180 | 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 73 20 61 20 7a 69 67 20 66 69 | ....This.function.finds.a.zig.fi |
| 871a0 | 6c 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | le.corresponding.to.<code.class= |
| 871c0 | 22 7a 69 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 64 64 73 20 69 74 20 74 6f | "zig">path</code>.and.adds.it.to |
| 871e0 | 20 74 68 65 20 62 75 69 6c 64 2c 0a 20 20 20 20 20 20 69 66 20 69 74 20 69 73 20 6e 6f 74 20 61 | .the.build,.......if.it.is.not.a |
| 87200 | 6c 72 65 61 64 79 20 61 64 64 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | lready.added........</p>.......< |
| 87220 | 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20 61 72 65 20 69 6d | p>.......Zig.source.files.are.im |
| 87240 | 70 6c 69 63 69 74 6c 79 20 73 74 72 75 63 74 73 2c 20 77 69 74 68 20 61 20 6e 61 6d 65 20 65 71 | plicitly.structs,.with.a.name.eq |
| 87260 | 75 61 6c 20 74 6f 20 74 68 65 20 66 69 6c 65 27 73 20 62 61 73 65 6e 61 6d 65 20 77 69 74 68 20 | ual.to.the.file's.basename.with. |
| 87280 | 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 0a 20 20 20 20 20 20 74 72 75 6e 63 61 74 65 64 2e 20 3c | the.extension.......truncated..< |
| 872a0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 872c0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | k-builtin">@import</span></code> |
| 872e0 | 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 74 72 75 63 74 20 74 79 70 65 20 63 6f 72 72 65 73 70 | .returns.the.struct.type.corresp |
| 87300 | 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | onding.to.the.file........</p>.. |
| 87320 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 20 77 68 69 63 | .....<p>.......Declarations.whic |
| 87340 | 68 20 68 61 76 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | h.have.the.<code.class="zig"><sp |
| 87360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | an.class="tok-kw">pub</span></co |
| 87380 | 64 65 3e 20 6b 65 79 77 6f 72 64 20 6d 61 79 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 66 72 | de>.keyword.may.be.referenced.fr |
| 873a0 | 6f 6d 20 61 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 73 6f 75 72 63 65 20 66 69 6c 65 | om.a.different.......source.file |
| 873c0 | 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 20 74 68 65 79 20 61 72 65 20 64 65 63 6c 61 72 65 64 20 | .than.the.one.they.are.declared. |
| 873e0 | 69 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c | in........</p>.......<p>.......< |
| 87400 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 20 63 61 6e | code.class="zig">path</code>.can |
| 87420 | 20 62 65 20 61 20 72 65 6c 61 74 69 76 65 20 70 61 74 68 20 6f 72 20 69 74 20 63 61 6e 20 62 65 | .be.a.relative.path.or.it.can.be |
| 87440 | 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 70 61 63 6b 61 67 65 2e 0a 20 20 20 20 20 20 49 66 | .the.name.of.a.package........If |
| 87460 | 20 69 74 20 69 73 20 61 20 72 65 6c 61 74 69 76 65 20 70 61 74 68 2c 20 69 74 20 69 73 20 72 65 | .it.is.a.relative.path,.it.is.re |
| 87480 | 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 66 69 6c 65 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 | lative.to.the.file.that.contains |
| 874a0 | 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .the.<code.class="zig"><span.cla |
| 874c0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c | ss="tok-builtin">@import</span>< |
| 874e0 | 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a 20 20 20 20 | /code>.......function.call...... |
| 87500 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 6f 6c 6c 6f | ..</p>.......<p>.......The.follo |
| 87520 | 77 69 6e 67 20 70 61 63 6b 61 67 65 73 20 61 72 65 20 61 6c 77 61 79 73 20 61 76 61 69 6c 61 62 | wing.packages.are.always.availab |
| 87540 | 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | le:.......</p>.......<ul>....... |
| 87560 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<li><code.class="zig"><span. |
| 87580 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 | class="tok-builtin">@import</spa |
| 875a0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>(<span.class="tok-str">"s |
| 875c0 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 2d 20 5a 69 67 20 53 74 | td"</span>)</code>.-.Zig.St |
| 875e0 | 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | andard.Library</li>...........<l |
| 87600 | 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | i><code.class="zig"><span.class= |
| 87620 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | "tok-builtin">@import</span>(<sp |
| 87640 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e | an.class="tok-str">"builtin |
| 87660 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 2d 20 54 61 72 67 65 74 2d 73 | "</span>)</code>.-.Target-s |
| 87680 | 70 65 63 69 66 69 63 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | pecific.information............. |
| 876a0 | 20 20 54 68 65 20 63 6f 6d 6d 61 6e 64 20 3c 63 6f 64 65 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 | ..The.command.<code>zig.build-ex |
| 876c0 | 65 20 2d 2d 73 68 6f 77 2d 62 75 69 6c 74 69 6e 3c 2f 63 6f 64 65 3e 20 6f 75 74 70 75 74 73 20 | e.--show-builtin</code>.outputs. |
| 876e0 | 74 68 65 20 73 6f 75 72 63 65 20 74 6f 20 73 74 64 6f 75 74 20 66 6f 72 20 72 65 66 65 72 65 6e | the.source.to.stdout.for.referen |
| 87700 | 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | ce............</li>.......</ul>. |
| 87720 | 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c | ......<p>See.also:</p><ul>.<li>< |
| 87740 | 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 | a.href="#Compile-Variables">Comp |
| 87760 | 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | ile.Variables</a></li>.<li><a.hr |
| 87780 | 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 61 3e 3c 2f | ef="#embedFile">@embedFile</a></ |
| 877a0 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | li>.</ul>................<h2.id= |
| 877c0 | 22 69 6e 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 43 61 73 74 22 | "intCast"><a.href="#toc-intCast" |
| 877e0 | 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | >@intCast</a>.<a.class="hdr".hre |
| 87800 | 66 3d 22 23 69 6e 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | f="#intCast">..</a></h2>........ |
| 87820 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 87840 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e | ss="tok-builtin">@intCast</span> |
| 87860 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| 87880 | 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.DestType:.<span.class="tok |
| 878a0 | 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 | -type">type</span>,.int:.<span.c |
| 878c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 | lass="tok-kw">anytype</span>).De |
| 878e0 | 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | stType</code></pre>.......<p>... |
| 87900 | 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 6e 6f 74 68 | ....Converts.an.integer.to.anoth |
| 87920 | 65 72 20 69 6e 74 65 67 65 72 20 77 68 69 6c 65 20 6b 65 65 70 69 6e 67 20 74 68 65 20 73 61 6d | er.integer.while.keeping.the.sam |
| 87940 | 65 20 6e 75 6d 65 72 69 63 61 6c 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 41 74 74 65 6d 70 74 | e.numerical.value........Attempt |
| 87960 | 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 20 6e 75 6d 62 65 72 20 77 68 69 63 68 20 69 73 | ing.to.convert.a.number.which.is |
| 87980 | 20 6f 75 74 20 6f 66 20 72 61 6e 67 65 20 6f 66 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e | .out.of.range.of.the.destination |
| 879a0 | 20 74 79 70 65 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 70 72 | .type.results.in.......safety-pr |
| 879c0 | 6f 74 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 | otected.<a.href="#Undefined-Beha |
| 879e0 | 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 | vior">Undefined.Behavior</a>.... |
| 87a00 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 | ....</p>.......<p>.......If.<cod |
| 87a20 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 | e.class="zig">T</code>.is.<code. |
| 87a40 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | class="zig"><span.class="tok-typ |
| 87a60 | 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 | e">comptime_int</span></code>,.. |
| 87a80 | 20 20 20 20 20 74 68 65 6e 20 74 68 69 73 20 69 73 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 65 | .....then.this.is.semantically.e |
| 87aa0 | 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 | quivalent.to.<a.href="#Type-Coer |
| 87ac0 | 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c | cion">Type.Coercion</a>........< |
| 87ae0 | 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 45 | /p>...............<h2.id="intToE |
| 87b00 | 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 | num"><a.href="#toc-intToEnum">@i |
| 87b20 | 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | ntToEnum</a>.<a.class="hdr".href |
| 87b40 | 3d 22 23 69 6e 74 54 6f 45 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | ="#intToEnum">..</a></h2>....... |
| 87b60 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 87b80 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 73 70 | ass="tok-builtin">@intToEnum</sp |
| 87ba0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | an>(<span.class="tok-kw">comptim |
| 87bc0 | 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e</span>.DestType:.<span.class=" |
| 87be0 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 5f 76 61 6c 75 65 | tok-type">type</span>,.int_value |
| 87c00 | 3a 20 73 74 64 2e 6d 65 74 61 2e 54 61 67 28 44 65 73 74 54 79 70 65 29 29 20 44 65 73 74 54 79 | :.std.meta.Tag(DestType)).DestTy |
| 87c20 | 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | pe</code></pre>.......<p>....... |
| 87c40 | 43 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 69 6e 74 6f 20 61 6e 20 3c 61 20 68 | Converts.an.integer.into.an.<a.h |
| 87c60 | 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 20 76 61 6c 75 65 2e 0a 20 20 20 20 | ref="#enum">enum</a>.value...... |
| 87c80 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 74 74 65 6d 70 74 69 6e | ..</p>.......<p>.......Attemptin |
| 87ca0 | 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 77 68 69 63 68 20 72 65 | g.to.convert.an.integer.which.re |
| 87cc0 | 70 72 65 73 65 6e 74 73 20 6e 6f 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 63 68 6f 73 65 6e 20 | presents.no.value.in.the.chosen. |
| 87ce0 | 65 6e 75 6d 20 74 79 70 65 20 69 6e 76 6f 6b 65 73 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 63 | enum.type.invokes.......safety-c |
| 87d00 | 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 | hecked.<a.href="#Undefined-Behav |
| 87d20 | 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 | ior">Undefined.Behavior</a>..... |
| 87d40 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 | ...</p>.......<p>See.also:</p><u |
| 87d60 | 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 54 6f 49 6e 74 22 3e 40 65 6e 75 | l>.<li><a.href="#enumToInt">@enu |
| 87d80 | 6d 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 | mToInt</a></li>.</ul>........... |
| 87da0 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 | .....<h2.id="intToError"><a.href |
| 87dc0 | 3d 22 23 74 6f 63 2d 69 6e 74 54 6f 45 72 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f | ="#toc-intToError">@intToError</ |
| 87de0 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 72 | a>.<a.class="hdr".href="#intToEr |
| 87e00 | 72 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ror">..</a></h2>........<pre><co |
| 87e20 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 87e40 | 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 | builtin">@intToError</span>(valu |
| 87e60 | 65 3a 20 73 74 64 2e 6d 65 74 61 2e 49 6e 74 28 2e 75 6e 73 69 67 6e 65 64 2c 20 3c 73 70 61 6e | e:.std.meta.Int(.unsigned,.<span |
| 87e80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 | .class="tok-builtin">@sizeOf</sp |
| 87ea0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 | an>(<span.class="tok-type">anyer |
| 87ec0 | 72 6f 72 3c 2f 73 70 61 6e 3e 29 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ror</span>).*.<span.class="tok-n |
| 87ee0 | 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | umber">8</span>)).<span.class="t |
| 87f00 | 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ok-type">anyerror</span></code>< |
| 87f20 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 66 | /pre>.......<p>.......Converts.f |
| 87f40 | 72 6f 6d 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f | rom.the.integer.representation.o |
| 87f60 | 66 20 61 6e 20 65 72 72 6f 72 20 69 6e 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 54 68 65 2d 47 6c | f.an.error.into.<a.href="#The-Gl |
| 87f80 | 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f 72 | obal-Error-Set">The.Global.Error |
| 87fa0 | 20 53 65 74 3c 2f 61 3e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .Set</a>.type........</p>....... |
| 87fc0 | 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 72 65 63 6f 6d 6d | <p>.......It.is.generally.recomm |
| 87fe0 | 65 6e 64 65 64 20 74 6f 20 61 76 6f 69 64 20 74 68 69 73 0a 20 20 20 20 20 20 63 61 73 74 2c 20 | ended.to.avoid.this.......cast,. |
| 88000 | 61 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 | as.the.integer.representation.of |
| 88020 | 20 61 6e 20 65 72 72 6f 72 20 69 73 20 6e 6f 74 20 73 74 61 62 6c 65 20 61 63 72 6f 73 73 20 73 | .an.error.is.not.stable.across.s |
| 88040 | 6f 75 72 63 65 20 63 6f 64 65 20 63 68 61 6e 67 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ource.code.changes........</p>.. |
| 88060 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e | .....<p>.......Attempting.to.con |
| 88080 | 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 63 6f | vert.an.integer.that.does.not.co |
| 880a0 | 72 72 65 73 70 6f 6e 64 20 74 6f 20 61 6e 79 20 65 72 72 6f 72 20 72 65 73 75 6c 74 73 20 69 6e | rrespond.to.any.error.results.in |
| 880c0 | 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 70 72 6f 74 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d | .......safety-protected.<a.href= |
| 880e0 | 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 | "#Undefined-Behavior">Undefined. |
| 88100 | 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | Behavior</a>........</p>.......< |
| 88120 | 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | p>See.also:</p><ul>.<li><a.href= |
| 88140 | 22 23 65 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c | "#errorToInt">@errorToInt</a></l |
| 88160 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | i>.</ul>................<h2.id=" |
| 88180 | 69 6e 74 54 6f 46 6c 6f 61 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 54 6f 46 | intToFloat"><a.href="#toc-intToF |
| 881a0 | 6c 6f 61 74 22 3e 40 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | loat">@intToFloat</a>.<a.class=" |
| 881c0 | 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 46 6c 6f 61 74 22 3e c2 a7 3c 2f 61 3e 3c 2f | hdr".href="#intToFloat">..</a></ |
| 881e0 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | h2>........<pre><code.class="zig |
| 88200 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 | "><span.class="tok-builtin">@int |
| 88220 | 54 6f 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ToFloat</span>(<span.class="tok- |
| 88240 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 | kw">comptime</span>.DestType:.<s |
| 88260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e | pan.class="tok-type">type</span> |
| 88280 | 2c 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 | ,.int:.<span.class="tok-kw">anyt |
| 882a0 | 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ype</span>).DestType</code></pre |
| 882c0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e | >.......<p>.......Converts.an.in |
| 882e0 | 74 65 67 65 72 20 74 6f 20 74 68 65 20 63 6c 6f 73 65 73 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f | teger.to.the.closest.floating.po |
| 88300 | 69 6e 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2e 20 54 6f 20 63 6f 6e 76 65 72 74 20 74 | int.representation..To.convert.t |
| 88320 | 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 66 6c 6f 61 | he.other.way,.use.<a.href="#floa |
| 88340 | 74 54 6f 49 6e 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f 61 3e 2e 20 54 68 69 73 20 63 61 | tToInt">@floatToInt</a>..This.ca |
| 88360 | 73 74 20 69 73 20 61 6c 77 61 79 73 20 73 61 66 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | st.is.always.safe........</p>... |
| 88380 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 50 74 72 22 3e 3c 61 | ............<h2.id="intToPtr"><a |
| 883a0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c | .href="#toc-intToPtr">@intToPtr< |
| 883c0 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 | /a>.<a.class="hdr".href="#intToP |
| 883e0 | 74 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | tr">..</a></h2>........<pre><cod |
| 88400 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 88420 | 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | uiltin">@intToPtr</span>(<span.c |
| 88440 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 | lass="tok-kw">comptime</span>.De |
| 88460 | 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 | stType:.<span.class="tok-type">t |
| 88480 | 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 64 64 72 65 73 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ype</span>,.address:.<span.class |
| 884a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 | ="tok-type">usize</span>).DestTy |
| 884c0 | 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | pe</code></pre>.......<p>....... |
| 884e0 | 43 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 3c 61 20 68 72 65 66 | Converts.an.integer.to.a.<a.href |
| 88500 | 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 20 54 6f 20 63 6f 6e | ="#Pointers">pointer</a>..To.con |
| 88520 | 76 65 72 74 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d | vert.the.other.way,.use.<a.href= |
| 88540 | 22 23 70 74 72 54 6f 49 6e 74 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 61 3e 2e 0a 20 20 20 20 20 | "#ptrToInt">@ptrToInt</a>....... |
| 88560 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 64 65 73 | .</p>.......<p>.......If.the.des |
| 88580 | 74 69 6e 61 74 69 6f 6e 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 64 6f 65 73 20 6e 6f 74 20 61 | tination.pointer.type.does.not.a |
| 885a0 | 6c 6c 6f 77 20 61 64 64 72 65 73 73 20 7a 65 72 6f 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 | llow.address.zero.and.<code.clas |
| 885c0 | 73 3d 22 7a 69 67 22 3e 61 64 64 72 65 73 73 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 | s="zig">address</code>.......is. |
| 885e0 | 7a 65 72 6f 2c 20 74 68 69 73 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 | zero,.this.invokes.safety-checke |
| 88600 | 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e | d.<a.href="#Undefined-Behavior"> |
| 88620 | 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f | Undefined.Behavior</a>........</ |
| 88640 | 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 65 6d 63 70 79 22 | p>...............<h2.id="memcpy" |
| 88660 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 65 6d 63 70 79 22 3e 40 6d 65 6d 63 70 79 3c 2f | ><a.href="#toc-memcpy">@memcpy</ |
| 88680 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 65 6d 63 70 79 22 | a>.<a.class="hdr".href="#memcpy" |
| 886a0 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | >..</a></h2>........<pre><code.c |
| 886c0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 886e0 | 74 69 6e 22 3e 40 6d 65 6d 63 70 79 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@memcpy</span>(<span.class= |
| 88700 | 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 61 6c 69 61 73 3c 2f 73 70 61 6e 3e 20 64 65 73 74 3a 20 5b 2a | "tok-kw">noalias</span>.dest:.[* |
| 88720 | 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | ]<span.class="tok-type">u8</span |
| 88740 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 61 6c 69 61 73 3c | >,.<span.class="tok-kw">noalias< |
| 88760 | 2f 73 70 61 6e 3e 20 73 6f 75 72 63 65 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.source:.[*]<span.class="t |
| 88780 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-kw">const</span>.<span.class= |
| 887a0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 5f 63 6f 75 6e 74 | "tok-type">u8</span>,.byte_count |
| 887c0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f | :.<span.class="tok-type">usize</ |
| 887e0 | 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | span>)</code></pre>.......<p>... |
| 88800 | 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 69 65 73 20 62 79 74 65 73 20 66 | ....This.function.copies.bytes.f |
| 88820 | 72 6f 6d 20 6f 6e 65 20 72 65 67 69 6f 6e 20 6f 66 20 6d 65 6d 6f 72 79 20 74 6f 20 61 6e 6f 74 | rom.one.region.of.memory.to.anot |
| 88840 | 68 65 72 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 73 74 3c 2f 63 6f 64 | her..<code.class="zig">dest</cod |
| 88860 | 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | e>.and...........<code.class="zi |
| 88880 | 67 22 3e 73 6f 75 72 63 65 3c 2f 63 6f 64 65 3e 20 61 72 65 20 62 6f 74 68 20 70 6f 69 6e 74 65 | g">source</code>.are.both.pointe |
| 888a0 | 72 73 20 61 6e 64 20 6d 75 73 74 20 6e 6f 74 20 6f 76 65 72 6c 61 70 2e 0a 20 20 20 20 20 20 3c | rs.and.must.not.overlap........< |
| 888c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f | /p>.......<p>.......This.functio |
| 888e0 | 6e 20 69 73 20 61 20 6c 6f 77 20 6c 65 76 65 6c 20 69 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 | n.is.a.low.level.intrinsic.with. |
| 88900 | 6e 6f 20 73 61 66 65 74 79 20 6d 65 63 68 61 6e 69 73 6d 73 2e 20 4d 6f 73 74 20 63 6f 64 65 0a | no.safety.mechanisms..Most.code. |
| 88920 | 20 20 20 20 20 20 73 68 6f 75 6c 64 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 | ......should.not.use.this.functi |
| 88940 | 6f 6e 2c 20 69 6e 73 74 65 61 64 20 75 73 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 | on,.instead.using.something.like |
| 88960 | 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | .this:.......</p>.......<pre><co |
| 88980 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 889a0 | 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 73 6f 75 72 63 65 5b 3c 73 70 61 6e 20 63 6c 61 | kw">for</span>.(source[<span.cla |
| 889c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 62 79 74 65 5f 63 | ss="tok-number">0</span>..byte_c |
| 889e0 | 6f 75 6e 74 5d 29 20 7c 62 2c 20 69 7c 20 64 65 73 74 5b 69 5d 20 3d 20 62 3b 3c 2f 63 6f 64 65 | ount]).|b,.i|.dest[i].=.b;</code |
| 88a00 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 | ></pre>.......<p>.......The.opti |
| 88a20 | 6d 69 7a 65 72 20 69 73 20 69 6e 74 65 6c 6c 69 67 65 6e 74 20 65 6e 6f 75 67 68 20 74 6f 20 74 | mizer.is.intelligent.enough.to.t |
| 88a40 | 75 72 6e 20 74 68 65 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 20 69 6e 74 6f 20 61 20 6d 65 6d | urn.the.above.snippet.into.a.mem |
| 88a60 | 63 70 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 72 65 20 69 | cpy........</p>.......<p>There.i |
| 88a80 | 73 20 61 6c 73 6f 20 61 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 66 75 6e 63 74 69 | s.also.a.standard.library.functi |
| 88aa0 | 6f 6e 20 66 6f 72 20 74 68 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | on.for.this:</p>.......<pre><cod |
| 88ac0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 88ae0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.mem.=.<span.clas |
| 88b00 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| 88b20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| 88b40 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 6d 65 6d 2e 63 6f 70 79 28 3c 73 70 61 6e | uot;</span>).mem;.mem.copy(<span |
| 88b60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 64 65 73 | .class="tok-type">u8</span>,.des |
| 88b80 | 74 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 | t[<span.class="tok-number">0</sp |
| 88ba0 | 61 6e 3e 2e 2e 62 79 74 65 5f 63 6f 75 6e 74 5d 2c 20 73 6f 75 72 63 65 5b 3c 73 70 61 6e 20 63 | an>..byte_count],.source[<span.c |
| 88bc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 62 79 74 65 | lass="tok-number">0</span>..byte |
| 88be0 | 5f 63 6f 75 6e 74 5d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 | _count]);</code></pre>.......... |
| 88c00 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 65 6d 73 65 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .....<h2.id="memset"><a.href="#t |
| 88c20 | 6f 63 2d 6d 65 6d 73 65 74 22 3e 40 6d 65 6d 73 65 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | oc-memset">@memset</a>.<a.class= |
| 88c40 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 65 6d 73 65 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | "hdr".href="#memset">..</a></h2> |
| 88c60 | 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| 88c80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 73 65 74 | span.class="tok-builtin">@memset |
| 88ca0 | 3c 2f 73 70 61 6e 3e 28 64 65 73 74 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>(dest:.[*]<span.class="to |
| 88cc0 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | k-type">u8</span>,.c:.<span.clas |
| 88ce0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 5f 63 6f 75 | s="tok-type">u8</span>,.byte_cou |
| 88d00 | 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | nt:.<span.class="tok-type">usize |
| 88d20 | 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | </span>)</code></pre>.......<p>. |
| 88d40 | 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 73 20 61 20 72 65 67 69 6f | ......This.function.sets.a.regio |
| 88d60 | 6e 20 6f 66 20 6d 65 6d 6f 72 79 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | n.of.memory.to.<code.class="zig" |
| 88d80 | 3e 63 3c 2f 63 6f 64 65 3e 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 73 | >c</code>..<code.class="zig">des |
| 88da0 | 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 | t</code>.is.a.pointer........</p |
| 88dc0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 | >.......<p>.......This.function. |
| 88de0 | 69 73 20 61 20 6c 6f 77 20 6c 65 76 65 6c 20 69 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 6e 6f | is.a.low.level.intrinsic.with.no |
| 88e00 | 20 73 61 66 65 74 79 20 6d 65 63 68 61 6e 69 73 6d 73 2e 20 4d 6f 73 74 0a 20 20 20 20 20 20 63 | .safety.mechanisms..Most.......c |
| 88e20 | 6f 64 65 20 73 68 6f 75 6c 64 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e | ode.should.not.use.this.function |
| 88e40 | 2c 20 69 6e 73 74 65 61 64 20 75 73 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 74 | ,.instead.using.something.like.t |
| 88e60 | 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | his:.......</p>.......<pre><code |
| 88e80 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 88ea0 | 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 64 65 73 74 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">for</span>.(dest[<span.class=" |
| 88ec0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 62 79 74 65 5f 63 6f 75 6e 74 | tok-number">0</span>..byte_count |
| 88ee0 | 5d 29 20 7c 2a 62 7c 20 62 2e 2a 20 3d 20 63 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | ]).|*b|.b.*.=.c;</code></pre>... |
| 88f00 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 69 73 20 69 | ....<p>.......The.optimizer.is.i |
| 88f20 | 6e 74 65 6c 6c 69 67 65 6e 74 20 65 6e 6f 75 67 68 20 74 6f 20 74 75 72 6e 20 74 68 65 20 61 62 | ntelligent.enough.to.turn.the.ab |
| 88f40 | 6f 76 65 20 73 6e 69 70 70 65 74 20 69 6e 74 6f 20 61 20 6d 65 6d 73 65 74 2e 0a 20 20 20 20 20 | ove.snippet.into.a.memset....... |
| 88f60 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 61 20 73 | .</p>.......<p>There.is.also.a.s |
| 88f80 | 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 74 68 69 | tandard.library.function.for.thi |
| 88fa0 | 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | s:</p>.......<pre><code.class="z |
| 88fc0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 88fe0 | 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>.mem.=.<span.class="tok-bui |
| 89000 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| 89020 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ="tok-str">"std"</span |
| 89040 | 3e 29 2e 6d 65 6d 3b 0a 6d 65 6d 2e 73 65 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >).mem;.mem.set(<span.class="tok |
| 89060 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 64 65 73 74 2c 20 63 29 3b 3c 2f 63 6f 64 | -type">u8</span>,.dest,.c);</cod |
| 89080 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 | e></pre>...............<h2.id="w |
| 890a0 | 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 61 73 | asmMemorySize"><a.href="#toc-was |
| 890c0 | 6d 4d 65 6d 6f 72 79 53 69 7a 65 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 61 3e | mMemorySize">@wasmMemorySize</a> |
| 890e0 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 | .<a.class="hdr".href="#wasmMemor |
| 89100 | 79 53 69 7a 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | ySize">..</a></h2>........<pre>< |
| 89120 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 89140 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 73 70 61 6e | k-builtin">@wasmMemorySize</span |
| 89160 | 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | >(index:.<span.class="tok-type"> |
| 89180 | 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | u32</span>).<span.class="tok-typ |
| 891a0 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | e">u32</span></code></pre>...... |
| 891c0 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 | .<p>.......This.function.returns |
| 891e0 | 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 57 61 73 6d 20 6d 65 6d 6f 72 79 20 69 64 65 | .the.size.of.the.Wasm.memory.ide |
| 89200 | 6e 74 69 66 69 65 64 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 69 6e 64 | ntified.by.<code.class="zig">ind |
| 89220 | 65 78 3c 2f 63 6f 64 65 3e 20 61 73 0a 20 20 20 20 20 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 76 | ex</code>.as.......an.unsigned.v |
| 89240 | 61 6c 75 65 20 69 6e 20 75 6e 69 74 73 20 6f 66 20 57 61 73 6d 20 70 61 67 65 73 2e 20 4e 6f 74 | alue.in.units.of.Wasm.pages..Not |
| 89260 | 65 20 74 68 61 74 20 65 61 63 68 20 57 61 73 6d 20 70 61 67 65 20 69 73 20 36 34 4b 42 20 69 6e | e.that.each.Wasm.page.is.64KB.in |
| 89280 | 20 73 69 7a 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | .size........</p>.......<p>..... |
| 892a0 | 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 6c 6f 77 20 6c 65 76 65 6c 20 69 | ..This.function.is.a.low.level.i |
| 892c0 | 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 6e 6f 20 73 61 66 65 74 79 20 6d 65 63 68 61 6e 69 73 | ntrinsic.with.no.safety.mechanis |
| 892e0 | 6d 73 20 75 73 75 61 6c 6c 79 20 75 73 65 66 75 6c 20 66 6f 72 20 61 6c 6c 6f 63 61 74 6f 72 0a | ms.usually.useful.for.allocator. |
| 89300 | 20 20 20 20 20 20 64 65 73 69 67 6e 65 72 73 20 74 61 72 67 65 74 69 6e 67 20 57 61 73 6d 2e 20 | ......designers.targeting.Wasm.. |
| 89320 | 53 6f 20 75 6e 6c 65 73 73 20 79 6f 75 20 61 72 65 20 77 72 69 74 69 6e 67 20 61 20 6e 65 77 20 | So.unless.you.are.writing.a.new. |
| 89340 | 61 6c 6c 6f 63 61 74 6f 72 20 66 72 6f 6d 20 73 63 72 61 74 63 68 2c 20 79 6f 75 20 73 68 6f 75 | allocator.from.scratch,.you.shou |
| 89360 | 6c 64 20 75 73 65 0a 20 20 20 20 20 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 3c 63 6f 64 | ld.use.......something.like.<cod |
| 89380 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 893a0 | 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | uiltin">@import</span>(<span.cla |
| 893c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 | ss="tok-str">"std"</sp |
| 893e0 | 61 6e 3e 29 2e 68 65 61 70 2e 57 61 73 6d 50 61 67 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 | an>).heap.WasmPageAllocator</cod |
| 89400 | 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | e>........</p>.......<p>See.also |
| 89420 | 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f | :</p><ul>.<li><a.href="#wasmMemo |
| 89440 | 72 79 47 72 6f 77 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e | ryGrow">@wasmMemoryGrow</a></li> |
| 89460 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 61 | .</ul>................<h2.id="wa |
| 89480 | 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 61 73 6d | smMemoryGrow"><a.href="#toc-wasm |
| 894a0 | 4d 65 6d 6f 72 79 47 72 6f 77 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 61 3e 20 | MemoryGrow">@wasmMemoryGrow</a>. |
| 894c0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 | <a.class="hdr".href="#wasmMemory |
| 894e0 | 47 72 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | Grow">..</a></h2>........<pre><c |
| 89500 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 89520 | 2d 62 75 69 6c 74 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 73 70 61 6e 3e | -builtin">@wasmMemoryGrow</span> |
| 89540 | 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | (index:.<span.class="tok-type">u |
| 89560 | 33 32 3c 2f 73 70 61 6e 3e 2c 20 64 65 6c 74 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 32</span>,.delta:.<span.class="t |
| 89580 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u32</span>).<span.class |
| 895a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 | ="tok-type">i32</span></code></p |
| 895c0 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f | re>.......<p>.......This.functio |
| 895e0 | 6e 20 69 6e 63 72 65 61 73 65 73 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 57 61 73 6d | n.increases.the.size.of.the.Wasm |
| 89600 | 20 6d 65 6d 6f 72 79 20 69 64 65 6e 74 69 66 69 65 64 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 | .memory.identified.by.<code.clas |
| 89620 | 73 3d 22 7a 69 67 22 3e 69 6e 64 65 78 3c 2f 63 6f 64 65 3e 20 62 79 0a 20 20 20 20 20 20 3c 63 | s="zig">index</code>.by.......<c |
| 89640 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 6c 74 61 3c 2f 63 6f 64 65 3e 20 69 6e 20 | ode.class="zig">delta</code>.in. |
| 89660 | 75 6e 69 74 73 20 6f 66 20 75 6e 73 69 67 6e 65 64 20 6e 75 6d 62 65 72 20 6f 66 20 57 61 73 6d | units.of.unsigned.number.of.Wasm |
| 89680 | 20 70 61 67 65 73 2e 20 4e 6f 74 65 20 74 68 61 74 20 65 61 63 68 20 57 61 73 6d 20 70 61 67 65 | .pages..Note.that.each.Wasm.page |
| 896a0 | 0a 20 20 20 20 20 20 69 73 20 36 34 4b 42 20 69 6e 20 73 69 7a 65 2e 20 4f 6e 20 73 75 63 63 65 | .......is.64KB.in.size..On.succe |
| 896c0 | 73 73 2c 20 72 65 74 75 72 6e 73 20 70 72 65 76 69 6f 75 73 20 6d 65 6d 6f 72 79 20 73 69 7a 65 | ss,.returns.previous.memory.size |
| 896e0 | 3b 20 6f 6e 20 66 61 69 6c 75 72 65 2c 20 69 66 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 | ;.on.failure,.if.the.allocation. |
| 89700 | 66 61 69 6c 73 2c 0a 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 2d 31 2e 0a 20 20 20 20 20 20 3c | fails,.......returns.-1........< |
| 89720 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f | /p>.......<p>.......This.functio |
| 89740 | 6e 20 69 73 20 61 20 6c 6f 77 20 6c 65 76 65 6c 20 69 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 | n.is.a.low.level.intrinsic.with. |
| 89760 | 6e 6f 20 73 61 66 65 74 79 20 6d 65 63 68 61 6e 69 73 6d 73 20 75 73 75 61 6c 6c 79 20 75 73 65 | no.safety.mechanisms.usually.use |
| 89780 | 66 75 6c 20 66 6f 72 20 61 6c 6c 6f 63 61 74 6f 72 0a 20 20 20 20 20 20 64 65 73 69 67 6e 65 72 | ful.for.allocator.......designer |
| 897a0 | 73 20 74 61 72 67 65 74 69 6e 67 20 57 61 73 6d 2e 20 53 6f 20 75 6e 6c 65 73 73 20 79 6f 75 20 | s.targeting.Wasm..So.unless.you. |
| 897c0 | 61 72 65 20 77 72 69 74 69 6e 67 20 61 20 6e 65 77 20 61 6c 6c 6f 63 61 74 6f 72 20 66 72 6f 6d | are.writing.a.new.allocator.from |
| 897e0 | 20 73 63 72 61 74 63 68 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 75 73 65 0a 20 20 20 20 20 20 73 | .scratch,.you.should.use.......s |
| 89800 | 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | omething.like.<code.class="zig"> |
| 89820 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 | <span.class="tok-builtin">@impor |
| 89840 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>(<span.class="tok-str">& |
| 89860 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 68 65 61 70 2e 57 61 73 6d | quot;std"</span>).heap.Wasm |
| 89880 | 50 61 67 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | PageAllocator</code>........</p> |
| 898a0 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c | .......<p.class="file">test.zig< |
| 898c0 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 898e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 | class="tok-kw">const</span>.std. |
| 89900 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 | =.<span.class="tok-builtin">@imp |
| 89920 | 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ort</span>(<span.class="tok-str" |
| 89940 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 | >"std"</span>);.<span. |
| 89960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 74 69 | class="tok-kw">const</span>.nati |
| 89980 | 76 65 5f 61 72 63 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ve_arch.=.<span.class="tok-built |
| 899a0 | 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in">@import</span>(<span.class=" |
| 899c0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 | tok-str">"builtin"</sp |
| 899e0 | 61 6e 3e 29 2e 74 61 72 67 65 74 2e 63 70 75 2e 61 72 63 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | an>).target.cpu.arch;.<span.clas |
| 89a00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d | s="tok-kw">const</span>.expect.= |
| 89a20 | 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | .std.testing.expect;..<span.clas |
| 89a40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">test</span>.<span.cla |
| 89a60 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 | ss="tok-str">"@wasmMemoryGr |
| 89a80 | 6f 77 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ow"</span>.{.....<span.clas |
| 89aa0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6e 61 74 69 76 65 5f 61 72 63 | s="tok-kw">if</span>.(native_arc |
| 89ac0 | 68 20 21 3d 20 2e 77 61 73 6d 33 32 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | h.!=..wasm32).<span.class="tok-k |
| 89ae0 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">return</span>.<span.class="to |
| 89b00 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 6b 69 70 5a 69 67 54 65 73 74 3b 0a | k-kw">error</span>.SkipZigTest;. |
| 89b20 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | .....<span.class="tok-kw">var</s |
| 89b40 | 70 61 6e 3e 20 70 72 65 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | pan>.prev.=.<span.class="tok-bui |
| 89b60 | 6c 74 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 | ltin">@wasmMemorySize</span>(<sp |
| 89b80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-number">0</span>); |
| 89ba0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 89bc0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 70 72 65 76 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>.expect(prev.==.<span.class= |
| 89be0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 73 | "tok-builtin">@wasmMemoryGrow</s |
| 89c00 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | pan>(<span.class="tok-number">0< |
| 89c20 | 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | /span>,.<span.class="tok-number" |
| 89c40 | 3e 31 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >1</span>));.....<span.class="to |
| 89c60 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 72 65 76 20 2b 20 3c | k-kw">try</span>.expect(prev.+.< |
| 89c80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e | span.class="tok-number">1</span> |
| 89ca0 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 77 | .==.<span.class="tok-builtin">@w |
| 89cc0 | 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | asmMemorySize</span>(<span.class |
| 89ce0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 | ="tok-number">0</span>));.}</cod |
| 89d00 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 89d20 | 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 | >$.zig.test.test.zig.Test.[1/1]. |
| 89d40 | 74 65 73 74 20 26 71 75 6f 74 3b 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 26 71 75 6f 74 3b | test."@wasmMemoryGrow" |
| 89d60 | 2e 2e 2e 20 0a 54 65 73 74 20 5b 32 2f 31 5d 20 0a 74 65 73 74 20 26 71 75 6f 74 3b 40 77 61 73 | .....Test.[2/1]..test."@was |
| 89d80 | 6d 4d 65 6d 6f 72 79 47 72 6f 77 26 71 75 6f 74 3b 2e 2e 2e 20 53 4b 49 50 0a 0a 30 20 70 61 73 | mMemoryGrow"....SKIP..0.pas |
| 89da0 | 73 65 64 3b 20 31 20 73 6b 69 70 70 65 64 3b 20 30 20 66 61 69 6c 65 64 2e 0a 3c 2f 63 6f 64 65 | sed;.1.skipped;.0.failed..</code |
| 89dc0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c | ></pre>........<p>See.also:</p>< |
| 89de0 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 | ul>.<li><a.href="#wasmMemorySize |
| 89e00 | 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | ">@wasmMemorySize</a></li>.</ul> |
| 89e20 | 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 6f 64 22 3e 3c 61 20 | ................<h2.id="mod"><a. |
| 89e40 | 68 72 65 66 3d 22 23 74 6f 63 2d 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | href="#toc-mod">@mod</a>.<a.clas |
| 89e60 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | s="hdr".href="#mod">..</a></h2>. |
| 89e80 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 89ea0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 | pan.class="tok-builtin">@mod</sp |
| 89ec0 | 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a 20 54 | an>(numerator:.T,.denominator:.T |
| 89ee0 | 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ).T</code></pre>.......<p>...... |
| 89f00 | 20 4d 6f 64 75 6c 75 73 20 64 69 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 | .Modulus.division..For.unsigned. |
| 89f20 | 69 6e 74 65 67 65 72 73 20 74 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 0a 20 20 20 | integers.this.is.the.same.as.... |
| 89f40 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 72 61 74 6f 72 20 25 | ...<code.class="zig">numerator.% |
| 89f60 | 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 | .denominator</code>..Caller.guar |
| 89f80 | 61 6e 74 65 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 6e 6f 6d 69 6e | antees.<code.class="zig">denomin |
| 89fa0 | 61 74 6f 72 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ator.>.<span.class="tok-numbe |
| 89fc0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | r">0</span></code>........</p>.. |
| 89fe0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c | .....<ul>...........<li><code.cl |
| 8a000 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 8a020 | 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | in">@mod</span>(-<span.class="to |
| 8a040 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-number">5</span>,.<span.class= |
| 8a060 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 | "tok-number">3</span>).==.<span. |
| 8a080 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-number">1</span></cod |
| 8a0a0 | 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | e></li>...........<li><code.clas |
| 8a0c0 | 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | s="zig">(<span.class="tok-builti |
| 8a0e0 | 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 29 20 2b | n">@divFloor</span>(a,.b).*.b).+ |
| 8a100 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c | .<span.class="tok-builtin">@mod< |
| 8a120 | 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 | /span>(a,.b).==.a</code></li>... |
| 8a140 | 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 6f | ....</ul>.......<p>For.a.functio |
| 8a160 | 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 73 65 | n.that.returns.an.error.code,.se |
| 8a180 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e.<code.class="zig"><span.class= |
| 8a1a0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | "tok-builtin">@import</span>(<sp |
| 8a1c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f | an.class="tok-str">"std&quo |
| 8a1e0 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 6d 6f 64 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a | t;</span>).math.mod</code>.</p>. |
| 8a200 | 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c | ......<p>See.also:</p><ul>.<li>< |
| 8a220 | 61 20 68 72 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | a.href="#rem">@rem</a></li>.</ul |
| 8a240 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 75 6c 57 69 74 68 | >................<h2.id="mulWith |
| 8a260 | 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 75 6c 57 69 74 68 4f | Overflow"><a.href="#toc-mulWithO |
| 8a280 | 76 65 72 66 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 | verflow">@mulWithOverflow</a>.<a |
| 8a2a0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 | .class="hdr".href="#mulWithOverf |
| 8a2c0 | 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | low">..</a></h2>........<pre><co |
| 8a2e0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 8a300 | 62 75 69 6c 74 69 6e 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e | builtin">@mulWithOverflow</span> |
| 8a320 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| 8a340 | 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.T:.<span.class="tok-type"> |
| 8a360 | 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c 20 72 65 73 75 6c 74 3a | type</span>,.a:.T,.b:.T,.result: |
| 8a380 | 20 2a 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c | .*T).<span.class="tok-type">bool |
| 8a3a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | </span></code></pre>.......<p>.. |
| 8a3c0 | 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .....Performs.<code.class="zig"> |
| 8a3e0 | 72 65 73 75 6c 74 2e 2a 20 3d 20 61 20 2a 20 62 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 6f 76 65 72 | result.*.=.a.*.b</code>..If.over |
| 8a400 | 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 | flow.or.underflow.occurs,....... |
| 8a420 | 20 20 20 20 73 74 6f 72 65 73 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 20 69 | ....stores.the.overflowed.bits.i |
| 8a440 | 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 3c 2f 63 6f 64 65 | n.<code.class="zig">result</code |
| 8a460 | 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >.and.returns.<code.class="zig"> |
| 8a480 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 | <span.class="tok-null">true</spa |
| 8a4a0 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 | n></code>....................If. |
| 8a4c0 | 6e 6f 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c | no.overflow.or.underflow.occurs, |
| 8a4e0 | 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .returns.<code.class="zig"><span |
| 8a500 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f | .class="tok-null">false</span></ |
| 8a520 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | code>........</p>............... |
| 8a540 | 3c 68 32 20 69 64 3d 22 70 61 6e 69 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 61 6e | <h2.id="panic"><a.href="#toc-pan |
| 8a560 | 69 63 22 3e 40 70 61 6e 69 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | ic">@panic</a>.<a.class="hdr".hr |
| 8a580 | 65 66 3d 22 23 70 61 6e 69 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | ef="#panic">..</a></h2>........< |
| 8a5a0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 8a5c0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 6d 65 | s="tok-builtin">@panic</span>(me |
| 8a5e0 | 73 73 61 67 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ssage:.[]<span.class="tok-kw">co |
| 8a600 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | nst</span>.<span.class="tok-type |
| 8a620 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ">u8</span>).<span.class="tok-ty |
| 8a640 | 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | pe">noreturn</span></code></pre> |
| 8a660 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 74 68 65 20 70 61 6e | .......<p>.......Invokes.the.pan |
| 8a680 | 69 63 20 68 61 6e 64 6c 65 72 20 66 75 6e 63 74 69 6f 6e 2e 20 42 79 20 64 65 66 61 75 6c 74 20 | ic.handler.function..By.default. |
| 8a6a0 | 74 68 65 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 | the.panic.handler.function...... |
| 8a6c0 | 20 63 61 6c 6c 73 20 74 68 65 20 70 75 62 6c 69 63 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .calls.the.public.<code.class="z |
| 8a6e0 | 69 67 22 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 65 78 70 6f 73 65 | ig">panic</code>.function.expose |
| 8a700 | 64 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 2c 20 6f 72 0a 20 20 | d.in.the.root.source.file,.or... |
| 8a720 | 20 20 20 20 69 66 20 74 68 65 72 65 20 69 73 20 6e 6f 74 20 6f 6e 65 20 73 70 65 63 69 66 69 65 | ....if.there.is.not.one.specifie |
| 8a740 | 64 2c 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 62 75 69 | d,.the.<code.class="zig">std.bui |
| 8a760 | 6c 74 69 6e 2e 64 65 66 61 75 6c 74 5f 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 | ltin.default_panic</code>....... |
| 8a780 | 66 75 6e 63 74 69 6f 6e 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | function.from.<code.class="zig"> |
| 8a7a0 | 73 74 64 2f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f | std/builtin.zig</code>........</ |
| 8a7c0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 47 65 6e 65 72 61 6c 6c 79 20 69 74 20 69 73 20 62 65 74 74 | p>.......<p>Generally.it.is.bett |
| 8a7e0 | 65 72 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | er.to.use.<code.class="zig"><spa |
| 8a800 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| 8a820 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| 8a840 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 61 6e 69 63 3c 2f | ;std"</span>).debug.panic</ |
| 8a860 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 3c 63 6f 64 65 20 | code>............However,.<code. |
| 8a880 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 8a8a0 | 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 | ltin">@panic</span></code>.can.b |
| 8a8c0 | 65 20 75 73 65 66 75 6c 20 66 6f 72 20 32 20 73 63 65 6e 61 72 69 6f 73 3a 0a 20 20 20 20 20 20 | e.useful.for.2.scenarios:....... |
| 8a8e0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 72 6f 6d | </p>.......<ul>.........<li>From |
| 8a900 | 20 6c 69 62 72 61 72 79 20 63 6f 64 65 2c 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 70 72 6f 67 72 | .library.code,.calling.the.progr |
| 8a920 | 61 6d 6d 65 72 27 73 20 70 61 6e 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 66 20 74 68 65 79 20 65 | ammer's.panic.function.if.they.e |
| 8a940 | 78 70 6f 73 65 64 20 6f 6e 65 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 | xposed.one.in.the.root.source.fi |
| 8a960 | 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 57 68 65 6e 20 6d 69 78 69 6e 67 | le.</li>.........<li>When.mixing |
| 8a980 | 20 43 20 61 6e 64 20 5a 69 67 20 63 6f 64 65 2c 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 63 61 6e | .C.and.Zig.code,.calling.the.can |
| 8a9a0 | 6f 6e 69 63 61 6c 20 70 61 6e 69 63 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 61 63 72 6f | onical.panic.implementation.acro |
| 8a9c0 | 73 73 20 6d 75 6c 74 69 70 6c 65 20 2e 6f 20 66 69 6c 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ss.multiple..o.files.</li>...... |
| 8a9e0 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | .</ul>.......<p>See.also:</p><ul |
| 8aa00 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 | >.<li><a.href="#Root-Source-File |
| 8aa20 | 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | ">Root.Source.File</a></li>.</ul |
| 8aa40 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 6f 70 43 6f 75 6e | >................<h2.id="popCoun |
| 8aa60 | 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 | t"><a.href="#toc-popCount">@popC |
| 8aa80 | 6f 75 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 | ount</a>.<a.class="hdr".href="#p |
| 8aaa0 | 6f 70 43 6f 75 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | opCount">..</a></h2>........<pre |
| 8aac0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 8aae0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 | tok-builtin">@popCount</span>(<s |
| 8ab00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 | pan.class="tok-kw">comptime</spa |
| 8ab20 | 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | n>.T:.<span.class="tok-type">typ |
| 8ab40 | 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 54 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | e</span>,.integer:.T)</code></pr |
| 8ab60 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 43 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 | e>.......<p>Counts.the.number.of |
| 8ab80 | 20 62 69 74 73 20 73 65 74 20 69 6e 20 61 6e 20 69 6e 74 65 67 65 72 2e 3c 2f 70 3e 0a 20 20 20 | .bits.set.in.an.integer.</p>.... |
| 8aba0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ...<p>.......If.<code.class="zig |
| 8abc0 | 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 | ">integer</code>.is.known.at.<a. |
| 8abe0 | 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c 0a 20 | href="#comptime">comptime</a>,.. |
| 8ac00 | 20 20 20 20 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c | .....the.return.type.is.<code.cl |
| 8ac20 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| 8ac40 | 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | >comptime_int</span></code>..... |
| 8ac60 | 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 | ...Otherwise,.the.return.type.is |
| 8ac80 | 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 74 68 65 20 6d 69 | .an.unsigned.integer.with.the.mi |
| 8aca0 | 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 61 74 20 | nimum.number.......of.bits.that. |
| 8acc0 | 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 20 6f 66 20 74 | can.represent.the.bit.count.of.t |
| 8ace0 | 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | he.integer.type........</p>..... |
| 8ad00 | 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | ..<p>See.also:</p><ul>.<li><a.hr |
| 8ad20 | 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | ef="#ctz">@ctz</a></li>.<li><a.h |
| 8ad40 | 72 65 66 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | ref="#clz">@clz</a></li>.</ul>.. |
| 8ad60 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 74 72 43 61 73 74 22 3e 3c | ..............<h2.id="ptrCast">< |
| 8ad80 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f | a.href="#toc-ptrCast">@ptrCast</ |
| 8ada0 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 | a>.<a.class="hdr".href="#ptrCast |
| 8adc0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 8ade0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 8ae00 | 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | ltin">@ptrCast</span>(<span.clas |
| 8ae20 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 | s="tok-kw">comptime</span>.DestT |
| 8ae40 | 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 | ype:.<span.class="tok-type">type |
| 8ae60 | 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>,.value:.<span.class="tok |
| 8ae80 | 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 | -kw">anytype</span>).DestType</c |
| 8aea0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 | ode></pre>.......<p>.......Conve |
| 8aec0 | 72 74 73 20 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 20 70 | rts.a.pointer.of.one.type.to.a.p |
| 8aee0 | 6f 69 6e 74 65 72 20 6f 66 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f | ointer.of.another.type........</ |
| 8af00 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 | p>.......<p>.......<a.href="#Opt |
| 8af20 | 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 | ional-Pointers">Optional.Pointer |
| 8af40 | 73 3c 2f 61 3e 20 61 72 65 20 61 6c 6c 6f 77 65 64 2e 20 43 61 73 74 69 6e 67 20 61 6e 20 6f 70 | s</a>.are.allowed..Casting.an.op |
| 8af60 | 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 20 77 68 69 63 68 20 69 73 20 3c 61 20 68 72 65 66 3d | tional.pointer.which.is.<a.href= |
| 8af80 | 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 0a 20 20 20 20 20 20 74 6f 20 61 20 6e 6f 6e 2d | "#null">null</a>.......to.a.non- |
| 8afa0 | 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d | optional.pointer.invokes.safety- |
| 8afc0 | 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 | checked.<a.href="#Undefined-Beha |
| 8afe0 | 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 | vior">Undefined.Behavior</a>.... |
| 8b000 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 | ....</p>...............<h2.id="p |
| 8b020 | 74 72 54 6f 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 74 72 54 6f 49 6e 74 22 | trToInt"><a.href="#toc-ptrToInt" |
| 8b040 | 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | >@ptrToInt</a>.<a.class="hdr".hr |
| 8b060 | 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | ef="#ptrToInt">..</a></h2>...... |
| 8b080 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 8b0a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 | lass="tok-builtin">@ptrToInt</sp |
| 8b0c0 | 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>(value:.<span.class="tok-kw"> |
| 8b0e0 | 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | anytype</span>).<span.class="tok |
| 8b100 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | -type">usize</span></code></pre> |
| 8b120 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 3c 63 6f 64 65 20 | .......<p>.......Converts.<code. |
| 8b140 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 61 20 3c 63 | class="zig">value</code>.to.a.<c |
| 8b160 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 8b180 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 | -type">usize</span></code>.which |
| 8b1a0 | 20 69 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 20 | .is.the.address.of.the.pointer.. |
| 8b1c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 63 | <code.class="zig">value</code>.c |
| 8b1e0 | 61 6e 20 62 65 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 74 79 70 65 73 3a 0a 20 20 20 20 20 20 | an.be.one.of.these.types:....... |
| 8b200 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 | </p>.......<ul>...........<li><c |
| 8b220 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 54 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | ode.class="zig">*T</code></li>.. |
| 8b240 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f | .........<li><code.class="zig">? |
| 8b260 | 2a 54 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f | *T</code></li>...........<li><co |
| 8b280 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 8b2a0 | 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | kw">fn</span>()</code></li>..... |
| 8b2c0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 3c 73 70 | ......<li><code.class="zig">?<sp |
| 8b2e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 | an.class="tok-kw">fn</span>()</c |
| 8b300 | 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 54 | ode></li>.......</ul>.......<p>T |
| 8b320 | 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 | o.convert.the.other.way,.use.<a. |
| 8b340 | 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 3c 2f | href="#intToPtr">@intToPtr</a></ |
| 8b360 | 70 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 72 65 6d 22 3e 3c | p>................<h2.id="rem">< |
| 8b380 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 20 3c 61 20 63 6c | a.href="#toc-rem">@rem</a>.<a.cl |
| 8b3a0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 65 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | ass="hdr".href="#rem">..</a></h2 |
| 8b3c0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >........<pre><code.class="zig"> |
| 8b3e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c 2f | <span.class="tok-builtin">@rem</ |
| 8b400 | 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a | span>(numerator:.T,.denominator: |
| 8b420 | 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | .T).T</code></pre>.......<p>.... |
| 8b440 | 20 20 20 52 65 6d 61 69 6e 64 65 72 20 64 69 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e 73 69 67 | ...Remainder.division..For.unsig |
| 8b460 | 6e 65 64 20 69 6e 74 65 67 65 72 73 20 74 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 | ned.integers.this.is.the.same.as |
| 8b480 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 72 61 74 | .......<code.class="zig">numerat |
| 8b4a0 | 6f 72 20 25 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 20 | or.%.denominator</code>..Caller. |
| 8b4c0 | 67 75 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 6e | guarantees.<code.class="zig">den |
| 8b4e0 | 6f 6d 69 6e 61 74 6f 72 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ominator.>.<span.class="tok-n |
| 8b500 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f | umber">0</span></code>........</ |
| 8b520 | 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 | p>.......<ul>...........<li><cod |
| 8b540 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 8b560 | 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 | uiltin">@rem</span>(-<span.class |
| 8b580 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">5</span>,.<span.cl |
| 8b5a0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c | ass="tok-number">3</span>).==.-< |
| 8b5c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e | span.class="tok-number">2</span> |
| 8b5e0 | 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 | </code></li>...........<li><code |
| 8b600 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | .class="zig">(<span.class="tok-b |
| 8b620 | 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a | uiltin">@divTrunc</span>(a,.b).* |
| 8b640 | 20 62 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | .b).+.<span.class="tok-builtin"> |
| 8b660 | 40 72 65 6d 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c | @rem</span>(a,.b).==.a</code></l |
| 8b680 | 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 | i>.......</ul>.......<p>For.a.fu |
| 8b6a0 | 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 | nction.that.returns.an.error.cod |
| 8b6c0 | 65 2c 20 73 65 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | e,.see.<code.class="zig"><span.c |
| 8b6e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e | lass="tok-builtin">@import</span |
| 8b700 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 | >(<span.class="tok-str">"st |
| 8b720 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 72 65 6d 3c 2f 63 6f 64 65 3e 2e | d"</span>).math.rem</code>. |
| 8b740 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a | </p>.......<p>See.also:</p><ul>. |
| 8b760 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 3c 2f 6c 69 3e | <li><a.href="#mod">@mod</a></li> |
| 8b780 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 72 65 | .</ul>................<h2.id="re |
| 8b7a0 | 74 75 72 6e 41 64 64 72 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 74 75 72 | turnAddress"><a.href="#toc-retur |
| 8b7c0 | 6e 41 64 64 72 65 73 73 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 61 3e 20 3c 61 20 | nAddress">@returnAddress</a>.<a. |
| 8b7e0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 65 74 75 72 6e 41 64 64 72 65 73 73 | class="hdr".href="#returnAddress |
| 8b800 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 8b820 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 8b840 | 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 | ltin">@returnAddress</span>().<s |
| 8b860 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e | pan.class="tok-type">usize</span |
| 8b880 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | ></code></pre>.......<p>.......T |
| 8b8a0 | 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 61 64 64 72 65 73 73 | his.function.returns.the.address |
| 8b8c0 | 20 6f 66 20 74 68 65 20 6e 65 78 74 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 69 6e 73 74 72 75 | .of.the.next.machine.code.instru |
| 8b8e0 | 63 74 69 6f 6e 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 0a 20 20 20 20 | ction.that.will.be.executed..... |
| 8b900 | 20 20 77 68 65 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 | ..when.the.current.function.retu |
| 8b920 | 72 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | rns........</p>.......<p>....... |
| 8b940 | 54 68 65 20 69 6d 70 6c 69 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 69 73 20 61 72 65 20 74 61 72 | The.implications.of.this.are.tar |
| 8b960 | 67 65 74 20 73 70 65 63 69 66 69 63 20 61 6e 64 20 6e 6f 74 20 63 6f 6e 73 69 73 74 65 6e 74 20 | get.specific.and.not.consistent. |
| 8b980 | 61 63 72 6f 73 73 0a 20 20 20 20 20 20 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 20 20 20 20 | across.......all.platforms...... |
| 8b9a0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 | ..</p>.......<p>.......This.func |
| 8b9c0 | 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 | tion.is.only.valid.within.functi |
| 8b9e0 | 6f 6e 20 73 63 6f 70 65 2e 20 49 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 73 20 69 | on.scope..If.the.function.gets.i |
| 8ba00 | 6e 6c 69 6e 65 64 20 69 6e 74 6f 0a 20 20 20 20 20 20 61 20 63 61 6c 6c 69 6e 67 20 66 75 6e 63 | nlined.into.......a.calling.func |
| 8ba20 | 74 69 6f 6e 2c 20 74 68 65 20 72 65 74 75 72 6e 65 64 20 61 64 64 72 65 73 73 20 77 69 6c 6c 20 | tion,.the.returned.address.will. |
| 8ba40 | 61 70 70 6c 79 20 74 6f 20 74 68 65 20 63 61 6c 6c 69 6e 67 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 | apply.to.the.calling.function... |
| 8ba60 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 | .....</p>..............<h2.id="s |
| 8ba80 | 65 74 41 6c 69 67 6e 53 74 61 63 6b 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 41 | etAlignStack"><a.href="#toc-setA |
| 8baa0 | 6c 69 67 6e 53 74 61 63 6b 22 3e 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 61 3e 20 3c 61 | lignStack">@setAlignStack</a>.<a |
| 8bac0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 41 6c 69 67 6e 53 74 61 63 | .class="hdr".href="#setAlignStac |
| 8bae0 | 6b 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | k">..</a></h2>........<pre><code |
| 8bb00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 8bb20 | 69 6c 74 69 6e 22 3e 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 73 70 61 6e 3e 28 3c 73 70 | iltin">@setAlignStack</span>(<sp |
| 8bb40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e | an.class="tok-kw">comptime</span |
| 8bb60 | 3e 20 61 6c 69 67 6e 6d 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | >.alignment:.<span.class="tok-ty |
| 8bb80 | 70 65 22 3e 75 32 39 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | pe">u29</span>)</code></pre>.... |
| 8bba0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 6e 73 75 72 65 73 20 74 68 61 74 20 61 20 66 75 6e 63 | ...<p>.......Ensures.that.a.func |
| 8bbc0 | 74 69 6f 6e 20 77 69 6c 6c 20 68 61 76 65 20 61 20 73 74 61 63 6b 20 61 6c 69 67 6e 6d 65 6e 74 | tion.will.have.a.stack.alignment |
| 8bbe0 | 20 6f 66 20 61 74 20 6c 65 61 73 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 | .of.at.least.<code.class="zig">a |
| 8bc00 | 6c 69 67 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e 20 62 79 74 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | lignment</code>.bytes........</p |
| 8bc20 | 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 43 6f 6c 64 22 | >...............<h2.id="setCold" |
| 8bc40 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 43 6f 6c 64 22 3e 40 73 65 74 43 6f 6c 64 | ><a.href="#toc-setCold">@setCold |
| 8bc60 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 43 6f | </a>.<a.class="hdr".href="#setCo |
| 8bc80 | 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ld">..</a></h2>........<pre><cod |
| 8bca0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 8bcc0 | 75 69 6c 74 69 6e 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 73 70 61 6e 3e 28 69 73 5f 63 6f 6c 64 3a | uiltin">@setCold</span>(is_cold: |
| 8bce0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 | .<span.class="tok-type">bool</sp |
| 8bd00 | 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | an>)</code></pre>.......<p>..... |
| 8bd20 | 20 20 54 65 6c 6c 73 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 74 68 61 74 20 61 20 66 75 6e | ..Tells.the.optimizer.that.a.fun |
| 8bd40 | 63 74 69 6f 6e 20 69 73 20 72 61 72 65 6c 79 20 63 61 6c 6c 65 64 2e 0a 20 20 20 20 20 20 3c 2f | ction.is.rarely.called........</ |
| 8bd60 | 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 45 76 61 6c | p>...............<h2.id="setEval |
| 8bd80 | 42 72 61 6e 63 68 51 75 6f 74 61 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 45 76 | BranchQuota"><a.href="#toc-setEv |
| 8bda0 | 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f | alBranchQuota">@setEvalBranchQuo |
| 8bdc0 | 74 61 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 | ta</a>.<a.class="hdr".href="#set |
| 8bde0 | 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | EvalBranchQuota">..</a></h2>.... |
| 8be00 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 8be20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 | .class="tok-builtin">@setEvalBra |
| 8be40 | 6e 63 68 51 75 6f 74 61 3c 2f 73 70 61 6e 3e 28 6e 65 77 5f 71 75 6f 74 61 3a 20 3c 73 70 61 6e | nchQuota</span>(new_quota:.<span |
| 8be60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3c 2f 63 | .class="tok-type">u32</span>)</c |
| 8be80 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 68 61 6e 67 | ode></pre>.......<p>.......Chang |
| 8bea0 | 65 73 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 61 63 6b 77 61 72 | es.the.maximum.number.of.backwar |
| 8bec0 | 64 73 20 62 72 61 6e 63 68 65 73 20 74 68 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f | ds.branches.that.compile-time.co |
| 8bee0 | 64 65 0a 20 20 20 20 20 20 65 78 65 63 75 74 69 6f 6e 20 63 61 6e 20 75 73 65 20 62 65 66 6f 72 | de.......execution.can.use.befor |
| 8bf00 | 65 20 67 69 76 69 6e 67 20 75 70 20 61 6e 64 20 6d 61 6b 69 6e 67 20 61 20 63 6f 6d 70 69 6c 65 | e.giving.up.and.making.a.compile |
| 8bf20 | 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | .error........</p>.......<p>.... |
| 8bf40 | 20 20 20 49 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 65 77 5f | ...If.the.<code.class="zig">new_ |
| 8bf60 | 71 75 6f 74 61 3c 2f 63 6f 64 65 3e 20 69 73 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 | quota</code>.is.smaller.than.the |
| 8bf80 | 20 64 65 66 61 75 6c 74 20 71 75 6f 74 61 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .default.quota.(<code.class="zig |
| 8bfa0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 30 3c | "><span.class="tok-number">1000< |
| 8bfc0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 6f 72 0a 20 20 20 20 20 20 61 20 70 72 65 76 69 6f | /span></code>).or.......a.previo |
| 8bfe0 | 75 73 6c 79 20 65 78 70 6c 69 63 69 74 6c 79 20 73 65 74 20 71 75 6f 74 61 2c 20 69 74 20 69 73 | usly.explicitly.set.quota,.it.is |
| 8c000 | 20 69 67 6e 6f 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | .ignored........</p>.......<p>.. |
| 8c020 | 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .....Example:.......</p>.......< |
| 8c040 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 8c060 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 8c080 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| 8c0a0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | tok-str">"foo"</span>. |
| 8c0c0 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | {.....<span.class="tok-kw">compt |
| 8c0e0 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ime</span>.{.........<span.class |
| 8c100 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-kw">var</span>.i.=.<span.c |
| 8c120 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">0</span>;..... |
| 8c140 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f | ....<span.class="tok-kw">while</ |
| 8c160 | 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | span>.(i.<.<span.class="tok-n |
| 8c180 | 75 6d 62 65 72 22 3e 31 30 30 31 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 | umber">1001</span>).:.(i.+=.<spa |
| 8c1a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b | n.class="tok-number">1</span>).{ |
| 8c1c0 | 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | }.....}.}</code></pre><pre><code |
| 8c1e0 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a | .class="shell">$.zig.test.test.z |
| 8c200 | 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 | ig.<span.class="t0_1">./docgen_t |
| 8c220 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | mp/test.zig:4:9:.</span><span.cl |
| 8c240 | 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ass="t31_1">error:.</span><span. |
| 8c260 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 76 61 6c 75 61 74 69 6f 6e 20 65 78 63 65 65 64 65 64 | class="t0_1">evaluation.exceeded |
| 8c280 | 20 31 30 30 30 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e 63 68 65 73 3c 2f 73 70 61 6e 3e 0a | .1000.backwards.branches</span>. |
| 8c2a0 | 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 69 20 26 6c 74 3b 20 31 30 30 31 29 20 3a 20 28 69 | ........while.(i.<.1001).:.(i |
| 8c2c0 | 20 2b 3d 20 31 29 20 7b 7d 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .+=.1).{}.........<span.class="t |
| 8c2e0 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | 32_1">^</span>.<span.class="t0_1 |
| 8c300 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 3a 31 32 3a 20 3c 2f | ">./docgen_tmp/test.zig:1:12:.</ |
| 8c320 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c | span><span.class="t36_1">note:.< |
| 8c340 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e | /span><span.class="t0_1">referen |
| 8c360 | 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b 66 6f 6f 26 71 | ced.here</span>.test."foo&q |
| 8c380 | 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;.{............<span.class="t |
| 8c3a0 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | 32_1">^</span>.</code></pre>.... |
| 8c3c0 | 20 20 20 20 3c 70 3e 4e 6f 77 20 77 65 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ....<p>Now.we.use.<code.class="z |
| 8c3e0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 | ig"><span.class="tok-builtin">@s |
| 8c400 | 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a | etEvalBranchQuota</span></code>: |
| 8c420 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 8c440 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 8c460 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">test</span>.< |
| 8c480 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 | span.class="tok-str">"foo&q |
| 8c4a0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>.{.....<span.class="t |
| 8c4c0 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 | ok-kw">comptime</span>.{........ |
| 8c4e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 | .<span.class="tok-builtin">@setE |
| 8c500 | 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | valBranchQuota</span>(<span.clas |
| 8c520 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | s="tok-number">1001</span>);.... |
| 8c540 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | .....<span.class="tok-kw">var</s |
| 8c560 | 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | pan>.i.=.<span.class="tok-number |
| 8c580 | 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">0</span>;.........<span.class= |
| 8c5a0 | 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 | "tok-kw">while</span>.(i.<.<s |
| 8c5c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 31 3c 2f 73 70 61 | pan.class="tok-number">1001</spa |
| 8c5e0 | 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | n>).:.(i.+=.<span.class="tok-num |
| 8c600 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e | ber">1</span>).{}.....}.}</code> |
| 8c620 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 8c640 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 | .zig.test.test.zig.Test.[1/1].te |
| 8c660 | 73 74 20 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 | st."foo"......All.1.te |
| 8c680 | 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 0a 20 20 20 20 | sts.passed..</code></pre>....... |
| 8c6a0 | 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | ..<p>See.also:</p><ul>.<li><a.hr |
| 8c6c0 | 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e | ef="#comptime">comptime</a></li> |
| 8c6e0 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 | .</ul>................<h2.id="se |
| 8c700 | 74 46 6c 6f 61 74 4d 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 46 6c 6f | tFloatMode"><a.href="#toc-setFlo |
| 8c720 | 61 74 4d 6f 64 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 | atMode">@setFloatMode</a>.<a.cla |
| 8c740 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 3e c2 a7 | ss="hdr".href="#setFloatMode">.. |
| 8c760 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | </a></h2>........<pre><code.clas |
| 8c780 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 8c7a0 | 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 73 70 61 6e 3e 28 6d 6f 64 65 3a 20 3c 73 70 | ">@setFloatMode</span>(mode:.<sp |
| 8c7c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f | an.class="tok-builtin">@import</ |
| 8c7e0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>(<span.class="tok-str">&quo |
| 8c800 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 74 69 6e 2e 46 6c 6f 61 | t;std"</span>).builtin.Floa |
| 8c820 | 74 4d 6f 64 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | tMode)</code></pre>.......<p>... |
| 8c840 | 20 20 20 20 53 65 74 73 20 74 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6d 6f 64 65 | ....Sets.the.floating.point.mode |
| 8c860 | 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 2e 20 50 6f 73 73 69 62 6c 65 20 | .of.the.current.scope..Possible. |
| 8c880 | 76 61 6c 75 65 73 20 61 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 | values.are:.......</p>.......<pr |
| 8c8a0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 8c8c0 | 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">pub</span>.<span.class= |
| 8c8e0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6c 6f 61 74 4d 6f 64 65 20 | "tok-kw">const</span>.FloatMode. |
| 8c900 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 | =.<span.class="tok-kw">enum</spa |
| 8c920 | 6e 3e 20 7b 0a 20 20 20 20 53 74 72 69 63 74 2c 0a 20 20 20 20 4f 70 74 69 6d 69 7a 65 64 2c 0a | n>.{.....Strict,.....Optimized,. |
| 8c940 | 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | };</code></pre>.......<ul>...... |
| 8c960 | 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ...<li>.............<code.class= |
| 8c980 | 22 7a 69 67 22 3e 53 74 72 69 63 74 3c 2f 63 6f 64 65 3e 20 28 64 65 66 61 75 6c 74 29 20 2d 20 | "zig">Strict</code>.(default).-. |
| 8c9a0 | 46 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 66 6f 6c 6c 6f 77 | Floating.point.operations.follow |
| 8c9c0 | 20 73 74 72 69 63 74 20 49 45 45 45 20 63 6f 6d 70 6c 69 61 6e 63 65 2e 0a 20 20 20 20 20 20 20 | .strict.IEEE.compliance......... |
| 8c9e0 | 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .</li>.........<li>............. |
| 8ca00 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 | <code.class="zig">Optimized</cod |
| 8ca20 | 65 3e 20 2d 20 46 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 6d | e>.-.Floating.point.operations.m |
| 8ca40 | 61 79 20 64 6f 20 61 6c 6c 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 20 20 20 20 | ay.do.all.of.the.following:..... |
| 8ca60 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 73 73 75 6d | ......<ul>.............<li>Assum |
| 8ca80 | 65 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 72 65 73 75 6c 74 20 61 72 65 20 6e | e.the.arguments.and.result.are.n |
| 8caa0 | 6f 74 20 4e 61 4e 2e 20 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 72 65 20 72 65 71 75 69 72 | ot.NaN..Optimizations.are.requir |
| 8cac0 | 65 64 20 74 6f 20 72 65 74 61 69 6e 20 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 6f 76 | ed.to.retain.defined.behavior.ov |
| 8cae0 | 65 72 20 4e 61 4e 73 2c 20 62 75 74 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 72 65 | er.NaNs,.but.the.value.of.the.re |
| 8cb00 | 73 75 6c 74 20 69 73 20 75 6e 64 65 66 69 6e 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | sult.is.undefined.</li>......... |
| 8cb20 | 20 20 20 20 3c 6c 69 3e 41 73 73 75 6d 65 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 | ....<li>Assume.the.arguments.and |
| 8cb40 | 20 72 65 73 75 6c 74 20 61 72 65 20 6e 6f 74 20 2b 2f 2d 49 6e 66 2e 20 4f 70 74 69 6d 69 7a 61 | .result.are.not.+/-Inf..Optimiza |
| 8cb60 | 74 69 6f 6e 73 20 61 72 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 74 61 69 6e 20 64 65 66 | tions.are.required.to.retain.def |
| 8cb80 | 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 6f 76 65 72 20 2b 2f 2d 49 6e 66 2c 20 62 75 74 20 74 | ined.behavior.over.+/-Inf,.but.t |
| 8cba0 | 68 65 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 75 6e 64 65 66 69 | he.value.of.the.result.is.undefi |
| 8cbc0 | 6e 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 72 65 61 74 20 | ned.</li>.............<li>Treat. |
| 8cbe0 | 74 68 65 20 73 69 67 6e 20 6f 66 20 61 20 7a 65 72 6f 20 61 72 67 75 6d 65 6e 74 20 6f 72 20 72 | the.sign.of.a.zero.argument.or.r |
| 8cc00 | 65 73 75 6c 74 20 61 73 20 69 6e 73 69 67 6e 69 66 69 63 61 6e 74 2e 3c 2f 6c 69 3e 0a 20 20 20 | esult.as.insignificant.</li>.... |
| 8cc20 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 74 68 65 20 72 65 63 69 70 72 6f 63 61 6c 20 | .........<li>Use.the.reciprocal. |
| 8cc40 | 6f 66 20 61 6e 20 61 72 67 75 6d 65 6e 74 20 72 61 74 68 65 72 20 74 68 61 6e 20 70 65 72 66 6f | of.an.argument.rather.than.perfo |
| 8cc60 | 72 6d 20 64 69 76 69 73 69 6f 6e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | rm.division.</li>.............<l |
| 8cc80 | 69 3e 50 65 72 66 6f 72 6d 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 63 6f 6e 74 72 61 63 | i>Perform.floating-point.contrac |
| 8cca0 | 74 69 6f 6e 20 28 65 2e 67 2e 20 66 75 73 69 6e 67 20 61 20 6d 75 6c 74 69 70 6c 79 20 66 6f 6c | tion.(e.g..fusing.a.multiply.fol |
| 8ccc0 | 6c 6f 77 65 64 20 62 79 20 61 6e 20 61 64 64 69 74 69 6f 6e 20 69 6e 74 6f 20 61 20 66 75 73 65 | lowed.by.an.addition.into.a.fuse |
| 8cce0 | 64 20 6d 75 6c 74 69 70 6c 79 2d 61 6e 64 2d 61 64 64 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | d.multiply-and-add).</li>....... |
| 8cd00 | 20 20 20 20 20 20 3c 6c 69 3e 50 65 72 66 6f 72 6d 20 61 6c 67 65 62 72 61 69 63 61 6c 6c 79 20 | ......<li>Perform.algebraically. |
| 8cd20 | 65 71 75 69 76 61 6c 65 6e 74 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 73 20 74 68 61 74 20 | equivalent.transformations.that. |
| 8cd40 | 6d 61 79 20 63 68 61 6e 67 65 20 72 65 73 75 6c 74 73 20 69 6e 20 66 6c 6f 61 74 69 6e 67 20 70 | may.change.results.in.floating.p |
| 8cd60 | 6f 69 6e 74 20 28 65 2e 67 2e 20 72 65 61 73 73 6f 63 69 61 74 65 29 2e 3c 2f 6c 69 3e 0a 20 20 | oint.(e.g..reassociate).</li>... |
| 8cd80 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 54 68 69 73 20 69 73 20 | ........</ul>...........This.is. |
| 8cda0 | 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 63 6f 64 65 3e 2d 66 66 61 73 74 2d 6d 61 74 68 3c | equivalent.to.<code>-ffast-math< |
| 8cdc0 | 2f 63 6f 64 65 3e 20 69 6e 20 47 43 43 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 | /code>.in.GCC..........</li>.... |
| 8cde0 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 6c 6f | ...</ul>.......<p>.......The.flo |
| 8ce00 | 61 74 69 6e 67 20 70 6f 69 6e 74 20 6d 6f 64 65 20 69 73 20 69 6e 68 65 72 69 74 65 64 20 62 79 | ating.point.mode.is.inherited.by |
| 8ce20 | 20 63 68 69 6c 64 20 73 63 6f 70 65 73 2c 20 61 6e 64 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 | .child.scopes,.and.can.be.overri |
| 8ce40 | 64 64 65 6e 20 69 6e 20 61 6e 79 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e | dden.in.any.scope........You.can |
| 8ce60 | 20 73 65 74 20 74 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6d 6f 64 65 20 69 6e 20 | .set.the.floating.point.mode.in. |
| 8ce80 | 61 20 73 74 72 75 63 74 20 6f 72 20 6d 6f 64 75 6c 65 20 73 63 6f 70 65 20 62 79 20 75 73 69 6e | a.struct.or.module.scope.by.usin |
| 8cea0 | 67 20 61 20 63 6f 6d 70 74 69 6d 65 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | g.a.comptime.block........</p>.. |
| 8cec0 | 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 | .....<p>See.also:</p><ul>.<li><a |
| 8cee0 | 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e | .href="#Floating-Point-Operation |
| 8cf00 | 73 22 3e 46 6c 6f 61 74 69 6e 67 20 50 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e | s">Floating.Point.Operations</a> |
| 8cf20 | 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 | </li>.</ul>................<h2.i |
| 8cf40 | 64 3d 22 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | d="setRuntimeSafety"><a.href="#t |
| 8cf60 | 6f 63 2d 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 | oc-setRuntimeSafety">@setRuntime |
| 8cf80 | 53 61 66 65 74 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | Safety</a>.<a.class="hdr".href=" |
| 8cfa0 | 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | #setRuntimeSafety">..</a></h2>.. |
| 8cfc0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 8cfe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 52 75 6e 74 69 | an.class="tok-builtin">@setRunti |
| 8d000 | 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 73 61 66 65 74 79 5f 6f 6e 3a 20 3c 73 70 61 6e | meSafety</span>(safety_on:.<span |
| 8d020 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c | .class="tok-type">bool</span>).< |
| 8d040 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e | span.class="tok-type">void</span |
| 8d060 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 | ></code></pre>.......<p>.......S |
| 8d080 | 65 74 73 20 77 68 65 74 68 65 72 20 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 20 63 68 65 63 6b | ets.whether.runtime.safety.check |
| 8d0a0 | 73 20 61 72 65 20 65 6e 61 62 6c 65 64 20 66 6f 72 20 74 68 65 20 73 63 6f 70 65 20 74 68 61 74 | s.are.enabled.for.the.scope.that |
| 8d0c0 | 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a 20 20 20 | .contains.the.function.call..... |
| 8d0e0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ...</p>.......<p.class="file">te |
| 8d100 | 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | st.zig</p><pre><code.class="zig" |
| 8d120 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e | ><span.class="tok-kw">test</span |
| 8d140 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 73 | >.<span.class="tok-str">"@s |
| 8d160 | 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | etRuntimeSafety"</span>.{.. |
| 8d180 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ...<span.class="tok-comment">//. |
| 8d1a0 | 54 68 65 20 62 75 69 6c 74 69 6e 20 61 70 70 6c 69 65 73 20 74 6f 20 74 68 65 20 73 63 6f 70 65 | The.builtin.applies.to.the.scope |
| 8d1c0 | 20 74 68 61 74 20 69 74 20 69 73 20 63 61 6c 6c 65 64 20 69 6e 2e 20 53 6f 20 68 65 72 65 2c 20 | .that.it.is.called.in..So.here,. |
| 8d1e0 | 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | integer.overflow</span>.....<spa |
| 8d200 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 6c 6c 20 6e 6f | n.class="tok-comment">//.will.no |
| 8d220 | 74 20 62 65 20 63 61 75 67 68 74 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 20 61 6e 64 20 52 | t.be.caught.in.ReleaseFast.and.R |
| 8d240 | 65 6c 65 61 73 65 53 6d 61 6c 6c 20 6d 6f 64 65 73 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | eleaseSmall.modes:</span>.....<s |
| 8d260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 72 20 78 | pan.class="tok-comment">//.var.x |
| 8d280 | 3a 20 75 38 20 3d 20 32 35 35 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | :.u8.=.255;</span>.....<span.cla |
| 8d2a0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 75 | ss="tok-comment">//.x.+=.1;.//.u |
| 8d2c0 | 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 | ndefined.behavior.in.ReleaseFast |
| 8d2e0 | 2f 52 65 6c 65 61 73 65 53 6d 61 6c 6c 20 6d 6f 64 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | /ReleaseSmall.modes.</span>..... |
| 8d300 | 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | {.........<span.class="tok-comme |
| 8d320 | 6e 74 22 3e 2f 2f 20 48 6f 77 65 76 65 72 20 74 68 69 73 20 62 6c 6f 63 6b 20 68 61 73 20 73 61 | nt">//.However.this.block.has.sa |
| 8d340 | 66 65 74 79 20 65 6e 61 62 6c 65 64 2c 20 73 6f 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 68 | fety.enabled,.so.safety.checks.h |
| 8d360 | 61 70 70 65 6e 20 68 65 72 65 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | appen.here,</span>.........<span |
| 8d380 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 65 6e 20 69 6e 20 | .class="tok-comment">//.even.in. |
| 8d3a0 | 52 65 6c 65 61 73 65 46 61 73 74 20 61 6e 64 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 20 6d 6f 64 | ReleaseFast.and.ReleaseSmall.mod |
| 8d3c0 | 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | es.</span>.........<span.class=" |
| 8d3e0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f | tok-builtin">@setRuntimeSafety</ |
| 8d400 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 | span>(<span.class="tok-null">tru |
| 8d420 | 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e</span>);.........<span.class=" |
| 8d440 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.x:.<span.clas |
| 8d460 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | s="tok-type">u8</span>.=.<span.c |
| 8d480 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | lass="tok-number">255</span>;... |
| 8d4a0 | 20 20 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ......x.+=.<span.class="tok-numb |
| 8d4c0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 | er">1</span>;..........{........ |
| 8d4e0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | .....<span.class="tok-comment">/ |
| 8d500 | 2f 20 54 68 65 20 76 61 6c 75 65 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 61 74 | /.The.value.can.be.overridden.at |
| 8d520 | 20 61 6e 79 20 73 63 6f 70 65 2e 20 53 6f 20 68 65 72 65 20 69 6e 74 65 67 65 72 20 6f 76 65 72 | .any.scope..So.here.integer.over |
| 8d540 | 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | flow</span>.............<span.cl |
| 8d560 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 6f 75 6c 64 20 6e 6f 74 20 62 | ass="tok-comment">//.would.not.b |
| 8d580 | 65 20 63 61 75 67 68 74 20 69 6e 20 61 6e 79 20 62 75 69 6c 64 20 6d 6f 64 65 2e 3c 2f 73 70 61 | e.caught.in.any.build.mode.</spa |
| 8d5a0 | 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>.............<span.class="tok- |
| 8d5c0 | 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e | builtin">@setRuntimeSafety</span |
| 8d5e0 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | >(<span.class="tok-null">false</ |
| 8d600 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>);.............<span.class= |
| 8d620 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 72 20 78 3a 20 75 38 20 3d 20 32 35 35 | "tok-comment">//.var.x:.u8.=.255 |
| 8d640 | 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ;</span>.............<span.class |
| 8d660 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 75 6e 64 | ="tok-comment">//.x.+=.1;.//.und |
| 8d680 | 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 69 6e 20 61 6c 6c 20 62 75 69 6c 64 20 6d 6f 64 | efined.behavior.in.all.build.mod |
| 8d6a0 | 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f | es.</span>.........}.....}.}</co |
| 8d6c0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 8d6e0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 20 2d 4f 52 65 6c 65 61 73 65 46 | ">$.zig.test.test.zig.-OReleaseF |
| 8d700 | 61 73 74 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 40 73 65 74 52 75 | ast.Test.[1/1].test."@setRu |
| 8d720 | 6e 74 69 6d 65 53 61 66 65 74 79 26 71 75 6f 74 3b 2e 2e 2e 20 0a 74 68 72 65 61 64 20 31 36 30 | ntimeSafety".....thread.160 |
| 8d740 | 38 35 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 0a 65 72 72 6f 72 | 85.panic:.integer.overflow.error |
| 8d760 | 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 | :.the.following.test.command.cra |
| 8d780 | 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 35 66 37 | shed:.docgen_tmp/zig-cache/o/5f7 |
| 8d7a0 | 37 32 62 61 33 34 62 36 37 33 33 37 63 30 36 37 65 35 36 33 30 39 39 30 65 66 32 34 65 2f 74 65 | 72ba34b67337c067e5630990ef24e/te |
| 8d7c0 | 73 74 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 62 75 69 6c | st./home/andy/Downloads/zig/buil |
| 8d7e0 | 64 2d 72 65 6c 65 61 73 65 2f 7a 69 67 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | d-release/zig.</code></pre>..... |
| 8d800 | 20 20 20 3c 70 3e 4e 6f 74 65 3a 20 69 74 20 69 73 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 | ...<p>Note:.it.is.<a.href="https |
| 8d820 | 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 | ://github.com/ziglang/zig/issues |
| 8d840 | 2f 39 37 38 22 3e 70 6c 61 6e 6e 65 64 3c 2f 61 3e 20 74 6f 20 72 65 70 6c 61 63 65 0a 20 20 20 | /978">planned</a>.to.replace.... |
| 8d860 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...<code.class="zig"><span.class |
| 8d880 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 | ="tok-builtin">@setRuntimeSafety |
| 8d8a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 3c 63 6f 64 65 3e 40 6f 70 74 69 6d | </span></code>.with.<code>@optim |
| 8d8c0 | 69 7a 65 46 6f 72 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | izeFor</code></p>............... |
| 8d8e0 | 20 3c 68 32 20 69 64 3d 22 73 68 6c 45 78 61 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | .<h2.id="shlExact"><a.href="#toc |
| 8d900 | 2d 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | -shlExact">@shlExact</a>.<a.clas |
| 8d920 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e c2 a7 3c 2f 61 3e 3c | s="hdr".href="#shlExact">..</a>< |
| 8d940 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 8d960 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 | g"><span.class="tok-builtin">@sh |
| 8d980 | 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 54 2c 20 73 68 69 66 74 5f 61 6d | lExact</span>(value:.T,.shift_am |
| 8d9a0 | 74 3a 20 4c 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | t:.Log2T).T</code></pre>.......< |
| 8d9c0 | 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 6c 65 66 74 20 73 68 69 66 74 | p>.......Performs.the.left.shift |
| 8d9e0 | 20 6f 70 65 72 61 74 69 6f 6e 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 26 6c | .operation.(<code.class="zig">&l |
| 8da00 | 74 3b 26 6c 74 3b 3c 2f 63 6f 64 65 3e 29 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 | t;<</code>)..Caller.guarantee |
| 8da20 | 73 0a 20 20 20 20 20 20 74 68 61 74 20 74 68 65 20 73 68 69 66 74 20 77 69 6c 6c 20 6e 6f 74 20 | s.......that.the.shift.will.not. |
| 8da40 | 73 68 69 66 74 20 61 6e 79 20 31 20 62 69 74 73 20 6f 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | shift.any.1.bits.out........</p> |
| 8da60 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f | .......<p>.......The.type.of.<co |
| 8da80 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 | de.class="zig">shift_amt</code>. |
| 8daa0 | 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 3c 63 6f 64 | is.an.unsigned.integer.with.<cod |
| 8dac0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 6f 67 32 28 54 2e 62 69 74 5f 63 6f 75 6e 74 29 3c | e.class="zig">log2(T.bit_count)< |
| 8dae0 | 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 68 69 73 20 | /code>.bits................This. |
| 8db00 | 69 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 | is.because.<code.class="zig">shi |
| 8db20 | 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 54 2e 62 69 74 5f 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 20 | ft_amt.>=.T.bit_count</code>. |
| 8db40 | 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 | is.undefined.behavior........</p |
| 8db60 | 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 | >.......<p>See.also:</p><ul>.<li |
| 8db80 | 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f | ><a.href="#shrExact">@shrExact</ |
| 8dba0 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 | a></li>.<li><a.href="#shlWithOve |
| 8dbc0 | 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e | rflow">@shlWithOverflow</a></li> |
| 8dbe0 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 68 | .</ul>................<h2.id="sh |
| 8dc00 | 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 68 6c | lWithOverflow"><a.href="#toc-shl |
| 8dc20 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f | WithOverflow">@shlWithOverflow</ |
| 8dc40 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 | a>.<a.class="hdr".href="#shlWith |
| 8dc60 | 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | Overflow">..</a></h2>........<pr |
| 8dc80 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 8dca0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f | "tok-builtin">@shlWithOverflow</ |
| 8dcc0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | span>(<span.class="tok-kw">compt |
| 8dce0 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ime</span>.T:.<span.class="tok-t |
| 8dd00 | 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 73 68 69 66 74 5f 61 6d | ype">type</span>,.a:.T,.shift_am |
| 8dd20 | 74 3a 20 4c 6f 67 32 54 2c 20 72 65 73 75 6c 74 3a 20 2a 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 | t:.Log2T,.result:.*T).<span.clas |
| 8dd40 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | s="tok-type">bool</span></code>< |
| 8dd60 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c | /pre>.......<p>.......Performs.< |
| 8dd80 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 2e 2a 20 3d 20 61 20 26 6c | code.class="zig">result.*.=.a.&l |
| 8dda0 | 74 3b 26 6c 74 3b 20 62 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 | t;<.b</code>..If.overflow.or. |
| 8ddc0 | 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | underflow.occurs,............... |
| 8dde0 | 20 20 20 73 74 6f 72 65 73 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 20 69 6e | ...stores.the.overflowed.bits.in |
| 8de00 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 3c 2f 63 6f 64 65 3e | .<code.class="zig">result</code> |
| 8de20 | 20 61 6e 64 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .and.returns.<code.class="zig">< |
| 8de40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e | span.class="tok-null">true</span |
| 8de60 | 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ></code>........................ |
| 8de80 | 20 20 20 49 66 20 6e 6f 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f | ...If.no.overflow.or.underflow.o |
| 8dea0 | 63 63 75 72 73 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ccurs,.returns.<code.class="zig" |
| 8dec0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | ><span.class="tok-null">false</s |
| 8dee0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | pan></code>........</p>.......<p |
| 8df00 | 3e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | >.......The.type.of.<code.class= |
| 8df20 | 22 7a 69 67 22 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 | "zig">shift_amt</code>.is.an.uns |
| 8df40 | 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | igned.integer.with.<code.class=" |
| 8df60 | 7a 69 67 22 3e 6c 6f 67 32 28 54 2e 62 69 74 5f 63 6f 75 6e 74 29 3c 2f 63 6f 64 65 3e 20 62 69 | zig">log2(T.bit_count)</code>.bi |
| 8df80 | 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 65 63 61 75 73 | ts................This.is.becaus |
| 8dfa0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 | e.<code.class="zig">shift_amt.&g |
| 8dfc0 | 74 3b 3d 20 54 2e 62 69 74 5f 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 64 65 66 69 | t;=.T.bit_count</code>.is.undefi |
| 8dfe0 | 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ned.behavior........</p>.......< |
| 8e000 | 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | p>See.also:</p><ul>.<li><a.href= |
| 8e020 | 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | "#shlExact">@shlExact</a></li>.< |
| 8e040 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 | li><a.href="#shrExact">@shrExact |
| 8e060 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c | </a></li>.</ul>................< |
| 8e080 | 68 32 20 69 64 3d 22 73 68 72 45 78 61 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 | h2.id="shrExact"><a.href="#toc-s |
| 8e0a0 | 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | hrExact">@shrExact</a>.<a.class= |
| 8e0c0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | "hdr".href="#shrExact">..</a></h |
| 8e0e0 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 8e100 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 | ><span.class="tok-builtin">@shrE |
| 8e120 | 78 61 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 54 2c 20 73 68 69 66 74 5f 61 6d 74 3a | xact</span>(value:.T,.shift_amt: |
| 8e140 | 20 4c 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | .Log2T).T</code></pre>.......<p> |
| 8e160 | 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 72 69 67 68 74 20 73 68 69 66 74 20 | .......Performs.the.right.shift. |
| 8e180 | 6f 70 65 72 61 74 69 6f 6e 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 26 67 74 | operation.(<code.class="zig">> |
| 8e1a0 | 3b 26 67 74 3b 3c 2f 63 6f 64 65 3e 29 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 | ;></code>)..Caller.guarantees |
| 8e1c0 | 0a 20 20 20 20 20 20 74 68 61 74 20 74 68 65 20 73 68 69 66 74 20 77 69 6c 6c 20 6e 6f 74 20 73 | .......that.the.shift.will.not.s |
| 8e1e0 | 68 69 66 74 20 61 6e 79 20 31 20 62 69 74 73 20 6f 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | hift.any.1.bits.out........</p>. |
| 8e200 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 | ......<p>.......The.type.of.<cod |
| 8e220 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 | e.class="zig">shift_amt</code>.i |
| 8e240 | 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 3c 63 6f 64 65 | s.an.unsigned.integer.with.<code |
| 8e260 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 6f 67 32 28 54 2e 62 69 74 5f 63 6f 75 6e 74 29 3c 2f | .class="zig">log2(T.bit_count)</ |
| 8e280 | 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 68 69 73 20 69 | code>.bits................This.i |
| 8e2a0 | 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 | s.because.<code.class="zig">shif |
| 8e2c0 | 74 5f 61 6d 74 20 26 67 74 3b 3d 20 54 2e 62 69 74 5f 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 20 69 | t_amt.>=.T.bit_count</code>.i |
| 8e2e0 | 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | s.undefined.behavior........</p> |
| 8e300 | 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e | .......<p>See.also:</p><ul>.<li> |
| 8e320 | 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 | <a.href="#shlExact">@shlExact</a |
| 8e340 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 | ></li>.<li><a.href="#shlWithOver |
| 8e360 | 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a | flow">@shlWithOverflow</a></li>. |
| 8e380 | 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 68 75 | </ul>................<h2.id="shu |
| 8e3a0 | 66 66 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 68 75 66 66 6c 65 22 3e 40 73 68 | ffle"><a.href="#toc-shuffle">@sh |
| 8e3c0 | 75 66 66 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | uffle</a>.<a.class="hdr".href="# |
| 8e3e0 | 73 68 75 66 66 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | shuffle">..</a></h2>........<pre |
| 8e400 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 8e420 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 75 66 66 6c 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 | tok-builtin">@shuffle</span>(<sp |
| 8e440 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e | an.class="tok-kw">comptime</span |
| 8e460 | 3e 20 45 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 | >.E:.<span.class="tok-type">type |
| 8e480 | 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 73 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 61 5f 6c 65 | </span>,.a:.std.meta.Vector(a_le |
| 8e4a0 | 6e 2c 20 45 29 2c 20 62 3a 20 73 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 62 5f 6c 65 6e 2c | n,.E),.b:.std.meta.Vector(b_len, |
| 8e4c0 | 20 45 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | .E),.<span.class="tok-kw">compti |
| 8e4e0 | 6d 65 3c 2f 73 70 61 6e 3e 20 6d 61 73 6b 3a 20 73 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 | me</span>.mask:.std.meta.Vector( |
| 8e500 | 6d 61 73 6b 5f 6c 65 6e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | mask_len,.<span.class="tok-type" |
| 8e520 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 20 73 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 6d 61 | >i32</span>)).std.meta.Vector(ma |
| 8e540 | 73 6b 5f 6c 65 6e 2c 20 45 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | sk_len,.E)</code></pre>.......<p |
| 8e560 | 3e 0a 20 20 20 20 20 20 43 6f 6e 73 74 72 75 63 74 73 20 61 20 6e 65 77 20 3c 61 20 68 72 65 66 | >.......Constructs.a.new.<a.href |
| 8e580 | 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 20 62 79 20 73 65 6c 65 63 74 | ="#Vectors">vector</a>.by.select |
| 8e5a0 | 69 6e 67 20 65 6c 65 6d 65 6e 74 73 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ing.elements.from.<code.class="z |
| 8e5c0 | 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | ig">a</code>.and.......<code.cla |
| 8e5e0 | 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 62 61 73 65 64 20 6f 6e 20 3c 63 6f 64 65 | ss="zig">b</code>.based.on.<code |
| 8e600 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | .class="zig">mask</code>........ |
| 8e620 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 61 63 68 20 65 6c 65 6d 65 6e | </p>.......<p>.......Each.elemen |
| 8e640 | 74 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 73 6b 3c 2f 63 6f 64 | t.in.<code.class="zig">mask</cod |
| 8e660 | 65 3e 20 73 65 6c 65 63 74 73 20 61 6e 20 65 6c 65 6d 65 6e 74 20 66 72 6f 6d 20 65 69 74 68 65 | e>.selects.an.element.from.eithe |
| 8e680 | 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 0a | r.<code.class="zig">a</code>.or. |
| 8e6a0 | 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e | ......<code.class="zig">b</code> |
| 8e6c0 | 2e 20 50 6f 73 69 74 69 76 65 20 6e 75 6d 62 65 72 73 20 73 65 6c 65 63 74 20 66 72 6f 6d 20 3c | ..Positive.numbers.select.from.< |
| 8e6e0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 73 74 61 72 74 69 | code.class="zig">a</code>.starti |
| 8e700 | 6e 67 20 61 74 20 30 2e 0a 20 20 20 20 20 20 4e 65 67 61 74 69 76 65 20 76 61 6c 75 65 73 20 73 | ng.at.0........Negative.values.s |
| 8e720 | 65 6c 65 63 74 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f | elect.from.<code.class="zig">b</ |
| 8e740 | 63 6f 64 65 3e 2c 20 73 74 61 72 74 69 6e 67 20 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | code>,.starting.at.<code.class=" |
| 8e760 | 7a 69 67 22 3e 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | zig">-<span.class="tok-number">1 |
| 8e780 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 67 6f 69 6e 67 20 64 6f 77 6e 2e 0a 20 | </span></code>.and.going.down... |
| 8e7a0 | 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 74 68 | .....It.is.recommended.to.use.th |
| 8e7c0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 7e 3c 2f 63 6f 64 65 3e 20 6f 70 65 | e.<code.class="zig">~</code>.ope |
| 8e7e0 | 72 61 74 6f 72 20 66 72 6f 6d 20 69 6e 64 65 78 65 73 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c | rator.from.indexes.from.<code.cl |
| 8e800 | 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 73 6f 20 74 68 61 74 | ass="zig">b</code>.......so.that |
| 8e820 | 20 62 6f 74 68 20 69 6e 64 65 78 65 73 20 63 61 6e 20 73 74 61 72 74 20 66 72 6f 6d 20 3c 63 6f | .both.indexes.can.start.from.<co |
| 8e840 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 8e860 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 28 69 2e 65 2e 20 3c 63 | number">0</span></code>.(i.e..<c |
| 8e880 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 7e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ode.class="zig">~<span.class="to |
| 8e8a0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | k-builtin">@as</span>(<span.clas |
| 8e8c0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-type">i32</span>,.<span.c |
| 8e8e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 | lass="tok-number">0</span>)</cod |
| 8e900 | 65 3e 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c | e>.is.......<code.class="zig">-< |
| 8e920 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e | span.class="tok-number">1</span> |
| 8e940 | 3c 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | </code>)........</p>.......<p>.. |
| 8e960 | 20 20 20 20 20 46 6f 72 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f 66 20 3c 63 6f 64 65 20 63 | .....For.each.element.of.<code.c |
| 8e980 | 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 2c 20 69 66 20 69 74 20 6f 72 | lass="zig">mask</code>,.if.it.or |
| 8e9a0 | 20 74 68 65 20 73 65 6c 65 63 74 65 64 20 76 61 6c 75 65 20 66 72 6f 6d 0a 20 20 20 20 20 20 3c | .the.selected.value.from.......< |
| 8e9c0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f | code.class="zig">a</code>.or.<co |
| 8e9e0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 | de.class="zig">b</code>.is.<code |
| 8ea00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .class="zig"><span.class="tok-nu |
| 8ea20 | 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 | ll">undefined</span></code>,.... |
| 8ea40 | 20 20 20 74 68 65 6e 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 65 6c 65 6d 65 6e 74 20 69 73 | ...then.the.resulting.element.is |
| 8ea60 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 8ea80 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | tok-null">undefined</span></code |
| 8eaa0 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 | >........</p>.......<p>.......<c |
| 8eac0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 5f 6c 65 6e 3c 2f 63 6f 64 65 3e 20 61 6e 64 | ode.class="zig">a_len</code>.and |
| 8eae0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 5f 6c 65 6e 3c 2f 63 6f 64 65 3e 20 | .<code.class="zig">b_len</code>. |
| 8eb00 | 6d 61 79 20 64 69 66 66 65 72 20 69 6e 20 6c 65 6e 67 74 68 2e 20 4f 75 74 2d 6f 66 2d 62 6f 75 | may.differ.in.length..Out-of-bou |
| 8eb20 | 6e 64 73 20 65 6c 65 6d 65 6e 74 0a 20 20 20 20 20 20 69 6e 64 65 78 65 73 20 69 6e 20 3c 63 6f | nds.element.......indexes.in.<co |
| 8eb40 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c | de.class="zig">mask</code>.resul |
| 8eb60 | 74 20 69 6e 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | t.in.compile.errors........</p>. |
| 8eb80 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ......<p>.......If.<code.class=" |
| 8eba0 | 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | zig">a</code>.or.<code.class="zi |
| 8ebc0 | 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | g">b</code>.is.<code.class="zig" |
| 8ebe0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 | ><span.class="tok-null">undefine |
| 8ec00 | 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 69 74 0a 20 20 20 20 20 20 69 73 20 65 71 75 | d</span></code>,.it.......is.equ |
| 8ec20 | 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 76 65 63 74 6f 72 20 6f 66 20 61 6c 6c 20 3c 63 6f 64 65 | ivalent.to.a.vector.of.all.<code |
| 8ec40 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .class="zig"><span.class="tok-nu |
| 8ec60 | 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 | ll">undefined</span></code>.with |
| 8ec80 | 20 74 68 65 20 73 61 6d 65 20 6c 65 6e 67 74 68 20 61 73 20 74 68 65 20 6f 74 68 65 72 20 76 65 | .the.same.length.as.the.other.ve |
| 8eca0 | 63 74 6f 72 2e 0a 20 20 20 20 20 20 49 66 20 62 6f 74 68 20 76 65 63 74 6f 72 73 20 61 72 65 20 | ctor........If.both.vectors.are. |
| 8ecc0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 8ece0 | 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ok-null">undefined</span></code> |
| 8ed00 | 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ,.<code.class="zig"><span.class= |
| 8ed20 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 75 66 66 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | "tok-builtin">@shuffle</span></c |
| 8ed40 | 6f 64 65 3e 20 72 65 74 75 72 6e 73 0a 20 20 20 20 20 20 61 20 76 65 63 74 6f 72 20 77 69 74 68 | ode>.returns.......a.vector.with |
| 8ed60 | 20 61 6c 6c 20 65 6c 65 6d 65 6e 74 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .all.elements.<code.class="zig"> |
| 8ed80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 | <span.class="tok-null">undefined |
| 8eda0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | </span></code>........</p>...... |
| 8edc0 | 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 45 3c 2f | .<p>.......<code.class="zig">E</ |
| 8ede0 | 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 | code>.must.be.an.<a.href="#Integ |
| 8ee00 | 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 | ers">integer</a>,.<a.href="#Floa |
| 8ee20 | 74 73 22 3e 66 6c 6f 61 74 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 | ts">float</a>,.......<a.href="#P |
| 8ee40 | 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2c 20 6f 72 20 3c 63 6f 64 65 20 63 | ointers">pointer</a>,.or.<code.c |
| 8ee60 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | lass="zig"><span.class="tok-type |
| 8ee80 | 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 6d 61 73 6b 20 6d | ">bool</span></code>..The.mask.m |
| 8eea0 | 61 79 20 62 65 20 61 6e 79 20 76 65 63 74 6f 72 20 6c 65 6e 67 74 68 2c 20 61 6e 64 20 69 74 73 | ay.be.any.vector.length,.and.its |
| 8eec0 | 0a 20 20 20 20 20 20 6c 65 6e 67 74 68 20 64 65 74 65 72 6d 69 6e 65 73 20 74 68 65 20 72 65 73 | .......length.determines.the.res |
| 8eee0 | 75 6c 74 20 6c 65 6e 67 74 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | ult.length........</p>.......<p> |
| 8ef00 | 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | See.also:</p><ul>.<li><a.href="# |
| 8ef20 | 53 49 4d 44 22 3e 53 49 4d 44 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | SIMD">SIMD</a></li>.</ul>....... |
| 8ef40 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 69 7a 65 4f 66 22 3e 3c 61 20 68 72 65 66 | .........<h2.id="sizeOf"><a.href |
| 8ef60 | 3d 22 23 74 6f 63 2d 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c | ="#toc-sizeOf">@sizeOf</a>.<a.cl |
| 8ef80 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e c2 a7 3c 2f 61 3e 3c | ass="hdr".href="#sizeOf">..</a>< |
| 8efa0 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 8efc0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 | g"><span.class="tok-builtin">@si |
| 8efe0 | 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | zeOf</span>(<span.class="tok-kw" |
| 8f000 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >comptime</span>.T:.<span.class= |
| 8f020 | 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | "tok-type">type</span>).<span.cl |
| 8f040 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 | ass="tok-type">comptime_int</spa |
| 8f060 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | n></code></pre>.......<p>....... |
| 8f080 | 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 | This.function.returns.the.number |
| 8f0a0 | 20 6f 66 20 62 79 74 65 73 20 69 74 20 74 61 6b 65 73 20 74 6f 20 73 74 6f 72 65 20 3c 63 6f 64 | .of.bytes.it.takes.to.store.<cod |
| 8f0c0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 69 6e 20 6d 65 6d 6f 72 79 | e.class="zig">T</code>.in.memory |
| 8f0e0 | 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 74 61 72 67 65 74 2d 73 | ........The.result.is.a.target-s |
| 8f100 | 70 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 0a 20 | pecific.compile.time.constant... |
| 8f120 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 73 | .....</p>.......<p>.......This.s |
| 8f140 | 69 7a 65 20 6d 61 79 20 63 6f 6e 74 61 69 6e 20 70 61 64 64 69 6e 67 20 62 79 74 65 73 2e 20 49 | ize.may.contain.padding.bytes..I |
| 8f160 | 66 20 74 68 65 72 65 20 77 65 72 65 20 74 77 6f 20 63 6f 6e 73 65 63 75 74 69 76 65 20 54 20 69 | f.there.were.two.consecutive.T.i |
| 8f180 | 6e 20 6d 65 6d 6f 72 79 2c 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 20 74 68 65 20 6f 66 66 73 | n.memory,.this.would.be.the.offs |
| 8f1a0 | 65 74 0a 20 20 20 20 20 20 69 6e 20 62 79 74 65 73 20 62 65 74 77 65 65 6e 20 65 6c 65 6d 65 6e | et.......in.bytes.between.elemen |
| 8f1c0 | 74 20 61 74 20 69 6e 64 65 78 20 30 20 61 6e 64 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 61 74 20 | t.at.index.0.and.the.element.at. |
| 8f1e0 | 69 6e 64 65 78 20 31 2e 20 46 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 | index.1..For.<a.href="#Integers" |
| 8f200 | 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 63 6f 6e 73 69 64 65 72 20 77 68 65 | >integer</a>,.......consider.whe |
| 8f220 | 74 68 65 72 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ther.you.want.to.use.<code.class |
| 8f240 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 8f260 | 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 54 29 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 | >@sizeOf</span>(T)</code>.or.... |
| 8f280 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...<code.class="zig"><span.class |
| 8f2a0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 | ="tok-builtin">@typeInfo</span>( |
| 8f2c0 | 54 29 2e 49 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | T).Int.bits</code>........</p>.. |
| 8f2e0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 65 61 | .....<p>.......This.function.mea |
| 8f300 | 73 75 72 65 73 20 74 68 65 20 73 69 7a 65 20 61 74 20 72 75 6e 74 69 6d 65 2e 20 46 6f 72 20 74 | sures.the.size.at.runtime..For.t |
| 8f320 | 79 70 65 73 20 74 68 61 74 20 61 72 65 20 64 69 73 61 6c 6c 6f 77 65 64 20 61 74 20 72 75 6e 74 | ypes.that.are.disallowed.at.runt |
| 8f340 | 69 6d 65 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ime,.such.as.......<code.class=" |
| 8f360 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 | zig"><span.class="tok-type">comp |
| 8f380 | 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 | time_int</span></code>.and.<code |
| 8f3a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .class="zig"><span.class="tok-ty |
| 8f3c0 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 72 65 73 75 | pe">type</span></code>,.the.resu |
| 8f3e0 | 6c 74 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | lt.is.<code.class="zig"><span.cl |
| 8f400 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-number">0</span></code> |
| 8f420 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c | ........</p>.......<p>See.also:< |
| 8f440 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 69 74 53 69 7a 65 4f 66 22 | /p><ul>.<li><a.href="#bitSizeOf" |
| 8f460 | 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | >@bitSizeOf</a></li>.<li><a.href |
| 8f480 | 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a | ="#typeInfo">@typeInfo</a></li>. |
| 8f4a0 | 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 70 6c | </ul>................<h2.id="spl |
| 8f4c0 | 61 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 70 6c 61 74 22 3e 40 73 70 6c 61 74 3c | at"><a.href="#toc-splat">@splat< |
| 8f4e0 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 70 6c 61 74 22 | /a>.<a.class="hdr".href="#splat" |
| 8f500 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | >..</a></h2>........<pre><code.c |
| 8f520 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 8f540 | 74 69 6e 22 3e 40 73 70 6c 61 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tin">@splat</span>(<span.class=" |
| 8f560 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6c 65 6e 3a 20 3c 73 70 | tok-kw">comptime</span>.len:.<sp |
| 8f580 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-type">u32</span>,. |
| 8f5a0 | 73 63 61 6c 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 | scalar:.<span.class="tok-kw">any |
| 8f5c0 | 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 73 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 6c 65 6e | type</span>).std.meta.Vector(len |
| 8f5e0 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | ,.<span.class="tok-builtin">@Typ |
| 8f600 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 73 63 61 6c 61 72 29 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | eOf</span>(scalar))</code></pre> |
| 8f620 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 72 6f 64 75 63 65 73 20 61 20 76 65 63 74 | .......<p>.......Produces.a.vect |
| 8f640 | 6f 72 20 6f 66 20 6c 65 6e 67 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c | or.of.length.<code.class="zig">l |
| 8f660 | 65 6e 3c 2f 63 6f 64 65 3e 20 77 68 65 72 65 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 69 73 20 | en</code>.where.each.element.is. |
| 8f680 | 74 68 65 20 76 61 6c 75 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | the.value.......<code.class="zig |
| 8f6a0 | 22 3e 73 63 61 6c 61 72 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ">scalar</code>:.......</p>..... |
| 8f6c0 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 8f6e0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 8f700 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 | ="tok-kw">const</span>.std.=.<sp |
| 8f720 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f | an.class="tok-builtin">@import</ |
| 8f740 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>(<span.class="tok-str">&quo |
| 8f760 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | t;std"</span>);.<span.class |
| 8f780 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 | ="tok-kw">const</span>.expect.=. |
| 8f7a0 | 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | std.testing.expect;..<span.class |
| 8f7c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ="tok-kw">test</span>.<span.clas |
| 8f7e0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 65 63 74 6f 72 20 40 73 70 6c 61 74 26 | s="tok-str">"vector.@splat& |
| 8f800 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 8f820 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 63 61 6c 61 72 3a 20 3c 73 70 | tok-kw">const</span>.scalar:.<sp |
| 8f840 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-type">u32</span>.= |
| 8f860 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 | .<span.class="tok-number">5</spa |
| 8f880 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | n>;.....<span.class="tok-kw">con |
| 8f8a0 | 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st</span>.result.=.<span.class=" |
| 8f8c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 70 6c 61 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | tok-builtin">@splat</span>(<span |
| 8f8e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 73 63 | .class="tok-number">4</span>,.sc |
| 8f900 | 61 6c 61 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | alar);.....<span.class="tok-kw"> |
| 8f920 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | comptime</span>.<span.class="tok |
| 8f940 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 | -kw">try</span>.expect(<span.cla |
| 8f960 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@TypeOf</span>( |
| 8f980 | 72 65 73 75 6c 74 29 20 3d 3d 20 73 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 3c 73 70 61 6e | result).==.std.meta.Vector(<span |
| 8f9a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">4</span>,.<s |
| 8f9c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-type">u32</span>) |
| 8f9e0 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | );.....<span.class="tok-kw">try< |
| 8fa00 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 | /span>.expect(std.mem.eql(<span. |
| 8fa20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d | class="tok-type">u32</span>,.&am |
| 8fa40 | 70 3b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c | p;<span.class="tok-builtin">@as< |
| 8fa60 | 2f 73 70 61 6e 3e 28 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | /span>([<span.class="tok-number" |
| 8fa80 | 3e 34 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | >4</span>]<span.class="tok-type" |
| 8faa0 | 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 | >u32</span>,.result),.&[_]<s |
| 8fac0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b | pan.class="tok-type">u32</span>{ |
| 8fae0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 | .<span.class="tok-number">5</spa |
| 8fb00 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f | n>,.<span.class="tok-number">5</ |
| 8fb20 | 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | span>,.<span.class="tok-number"> |
| 8fb40 | 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 5</span>,.<span.class="tok-numbe |
| 8fb60 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | r">5</span>.}));.}</code></pre>< |
| 8fb80 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| 8fba0 | 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f | st.test.zig.Test.[1/1].test.&quo |
| 8fbc0 | 74 3b 76 65 63 74 6f 72 20 40 73 70 6c 61 74 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 | t;vector.@splat"......All.1 |
| 8fbe0 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | .tests.passed..</code></pre>.... |
| 8fc00 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ....<p>.......<code.class="zig"> |
| 8fc20 | 73 63 61 6c 61 72 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 | scalar</code>.must.be.an.<a.href |
| 8fc40 | 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 | ="#Integers">integer</a>,.<a.hre |
| 8fc60 | 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 2c 0a 20 | f="#Primitive-Types">bool</a>,.. |
| 8fc80 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 66 6c 6f 61 74 3c 2f 61 3e | .....<a.href="#Floats">float</a> |
| 8fca0 | 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 | ,.or.<a.href="#Pointers">pointer |
| 8fcc0 | 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c | </a>........</p>.......<p>See.al |
| 8fce0 | 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 | so:</p><ul>.<li><a.href="#Vector |
| 8fd00 | 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | s">Vectors</a></li>.<li><a.href= |
| 8fd20 | 22 23 73 68 75 66 66 6c 65 22 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | "#shuffle">@shuffle</a></li>.</u |
| 8fd40 | 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 72 65 64 75 63 65 | l>................<h2.id="reduce |
| 8fd60 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 64 75 63 65 22 3e 40 72 65 64 75 63 65 3c | "><a.href="#toc-reduce">@reduce< |
| 8fd80 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 65 64 75 63 65 | /a>.<a.class="hdr".href="#reduce |
| 8fda0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 8fdc0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 8fde0 | 6c 74 69 6e 22 3e 40 72 65 64 75 63 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@reduce</span>(<span.class |
| 8fe00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6f 70 3a 20 73 74 | ="tok-kw">comptime</span>.op:.st |
| 8fe20 | 64 2e 62 75 69 6c 74 69 6e 2e 52 65 64 75 63 65 4f 70 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e | d.builtin.ReduceOp,.value:.<span |
| 8fe40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 | .class="tok-kw">anytype</span>). |
| 8fe60 | 73 74 64 2e 6d 65 74 61 2e 43 68 69 6c 64 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | std.meta.Child(value)</code></pr |
| 8fe80 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 72 61 6e 73 66 6f 72 6d 73 20 61 20 | e>.......<p>.......Transforms.a. |
| 8fea0 | 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 20 69 6e | <a.href="#Vectors">vector</a>.in |
| 8fec0 | 74 6f 20 61 20 73 63 61 6c 61 72 20 76 61 6c 75 65 20 62 79 20 70 65 72 66 6f 72 6d 69 6e 67 20 | to.a.scalar.value.by.performing. |
| 8fee0 | 61 0a 20 20 20 20 20 20 73 65 71 75 65 6e 74 69 61 6c 20 68 6f 72 69 7a 6f 6e 74 61 6c 20 72 65 | a.......sequential.horizontal.re |
| 8ff00 | 64 75 63 74 69 6f 6e 20 6f 66 20 69 74 73 20 65 6c 65 6d 65 6e 74 73 20 75 73 69 6e 67 20 74 68 | duction.of.its.elements.using.th |
| 8ff20 | 65 20 73 70 65 63 69 66 69 65 64 20 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 | e.specified.operator.<code.class |
| 8ff40 | 3d 22 7a 69 67 22 3e 6f 70 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ="zig">op</code>........</p>.... |
| 8ff60 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 20 65 76 65 72 79 20 6f 70 65 72 61 74 6f 72 20 | ...<p>.......Not.every.operator. |
| 8ff80 | 69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 65 76 65 72 79 20 76 65 63 74 6f 72 20 65 6c | is.available.for.every.vector.el |
| 8ffa0 | 65 6d 65 6e 74 20 74 79 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c | ement.type:.......</p>.......<ul |
| 8ffc0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | >...........<li><code.class="zig |
| 8ffe0 | 22 3e 2e 41 6e 64 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ">.And</code>,.<code.class="zig" |
| 90000 | 3e 2e 4f 72 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | >.Or</code>,.............<code.c |
| 90020 | 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 58 6f 72 3c 2f 63 6f 64 65 3e 20 61 72 65 20 61 76 61 69 6c | lass="zig">.Xor</code>.are.avail |
| 90040 | 61 62 6c 65 20 66 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | able.for.............<code.class |
| 90060 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f | ="zig"><span.class="tok-type">bo |
| 90080 | 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 65 63 74 6f 72 73 2c 3c 2f 6c 69 3e 0a 20 | ol</span></code>.vectors,</li>.. |
| 900a0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e | .........<li><code.class="zig">. |
| 900c0 | 4d 69 6e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 4d | Min</code>,.<code.class="zig">.M |
| 900e0 | 61 78 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | ax</code>,.............<code.cla |
| 90100 | 73 73 3d 22 7a 69 67 22 3e 2e 41 64 64 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 | ss="zig">.Add</code>,.<code.clas |
| 90120 | 73 3d 22 7a 69 67 22 3e 2e 4d 75 6c 3c 2f 63 6f 64 65 3e 20 61 72 65 0a 20 20 20 20 20 20 20 20 | s="zig">.Mul</code>.are......... |
| 90140 | 20 20 20 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 | ....available.for.<a.href="#Floa |
| 90160 | 74 73 22 3e 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 3c 2f 61 3e 20 76 65 63 74 6f 72 73 2c 3c | ts">floating.point</a>.vectors,< |
| 90180 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 76 65 72 79 20 6f 70 65 72 61 74 6f | /li>...........<li>Every.operato |
| 901a0 | 72 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 | r.is.available.for.<a.href="#Int |
| 901c0 | 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 76 65 63 74 6f 72 73 2e 0a 20 20 20 20 | egers">integer</a>.vectors...... |
| 901e0 | 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 | ..</ul>.......<p>.......Note.tha |
| 90200 | 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 41 64 64 3c 2f 63 6f 64 65 3e 20 | t.<code.class="zig">.Add</code>. |
| 90220 | 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 4d 75 6c 3c 2f 63 6f 64 65 | and.<code.class="zig">.Mul</code |
| 90240 | 3e 0a 20 20 20 20 20 20 72 65 64 75 63 74 69 6f 6e 73 20 6f 6e 20 69 6e 74 65 67 72 61 6c 20 74 | >.......reductions.on.integral.t |
| 90260 | 79 70 65 73 20 61 72 65 20 77 72 61 70 70 69 6e 67 3b 20 77 68 65 6e 20 61 70 70 6c 69 65 64 20 | ypes.are.wrapping;.when.applied. |
| 90280 | 6f 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 0a 20 20 20 20 20 20 74 79 70 65 73 20 74 68 | on.floating.point.......types.th |
| 902a0 | 65 20 6f 70 65 72 61 74 69 6f 6e 20 61 73 73 6f 63 69 61 74 69 76 69 74 79 20 69 73 20 70 72 65 | e.operation.associativity.is.pre |
| 902c0 | 73 65 72 76 65 64 2c 20 75 6e 6c 65 73 73 20 74 68 65 20 66 6c 6f 61 74 20 6d 6f 64 65 20 69 73 | served,.unless.the.float.mode.is |
| 902e0 | 0a 20 20 20 20 20 20 73 65 74 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .......set.to.<code.class="zig"> |
| 90300 | 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | Optimized</code>........</p>.... |
| 90320 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 90340 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 90360 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 | s="tok-kw">const</span>.std.=.<s |
| 90380 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c | pan.class="tok-builtin">@import< |
| 903a0 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>(<span.class="tok-str">&qu |
| 903c0 | 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ot;std"</span>);.<span.clas |
| 903e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d | s="tok-kw">const</span>.expect.= |
| 90400 | 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | .std.testing.expect;..<span.clas |
| 90420 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">test</span>.<span.cla |
| 90440 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 65 63 74 6f 72 20 40 72 65 64 75 63 | ss="tok-str">"vector.@reduc |
| 90460 | 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e"</span>.{.....<span.class |
| 90480 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 73 74 | ="tok-kw">const</span>.value:.st |
| 904a0 | 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | d.meta.Vector(<span.class="tok-n |
| 904c0 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">4</span>,.<span.class="to |
| 904e0 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 | k-type">i32</span>).=.[_]<span.c |
| 90500 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 | lass="tok-type">i32</span>{.<spa |
| 90520 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2d | n.class="tok-number">1</span>,.- |
| 90540 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e | <span.class="tok-number">1</span |
| 90560 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | >,.<span.class="tok-number">1</s |
| 90580 | 70 61 6e 3e 2c 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pan>,.-<span.class="tok-number"> |
| 905a0 | 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 1</span>.};.....<span.class="tok |
| 905c0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 76 61 6c 75 65 | -kw">const</span>.result.=.value |
| 905e0 | 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | .>.<span.class="tok-builtin"> |
| 90600 | 40 73 70 6c 61 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | @splat</span>(<span.class="tok-n |
| 90620 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">4</span>,.<span.class="to |
| 90640 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | k-builtin">@as</span>(<span.clas |
| 90660 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-type">i32</span>,.<span.c |
| 90680 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 | lass="tok-number">0</span>));... |
| 906a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 | ..<span.class="tok-comment">//.r |
| 906c0 | 65 73 75 6c 74 20 69 73 20 7b 20 74 72 75 65 2c 20 66 61 6c 73 65 2c 20 74 72 75 65 2c 20 66 61 | esult.is.{.true,.false,.true,.fa |
| 906e0 | 6c 73 65 20 7d 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | lse.};</span>.....<span.class="t |
| 90700 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">comptime</span>.<span.cla |
| 90720 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 | ss="tok-kw">try</span>.expect(<s |
| 90740 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c | pan.class="tok-builtin">@TypeOf< |
| 90760 | 2f 73 70 61 6e 3e 28 72 65 73 75 6c 74 29 20 3d 3d 20 73 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f | /span>(result).==.std.meta.Vecto |
| 90780 | 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 | r(<span.class="tok-number">4</sp |
| 907a0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c | an>,.<span.class="tok-type">bool |
| 907c0 | 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>));.....<span.class="tok- |
| 907e0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 73 5f 61 6c 6c 5f 74 72 75 65 20 3d 20 3c | kw">const</span>.is_all_true.=.< |
| 90800 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 64 75 63 65 | span.class="tok-builtin">@reduce |
| 90820 | 3c 2f 73 70 61 6e 3e 28 2e 41 6e 64 2c 20 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e | </span>(.And,.result);.....<span |
| 90840 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 | .class="tok-kw">comptime</span>. |
| 90860 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| 90880 | 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | expect(<span.class="tok-builtin" |
| 908a0 | 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 69 73 5f 61 6c 6c 5f 74 72 75 65 29 20 3d 3d 20 | >@TypeOf</span>(is_all_true).==. |
| 908c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 | <span.class="tok-type">bool</spa |
| 908e0 | 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>);.....<span.class="tok-kw">tr |
| 90900 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 73 5f 61 6c 6c 5f 74 72 75 65 20 3d 3d 20 3c | y</span>.expect(is_all_true.==.< |
| 90920 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 | span.class="tok-null">false</spa |
| 90940 | 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | n>);.}</code></pre><pre><code.cl |
| 90960 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 90980 | 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 76 65 63 74 6f 72 20 40 72 65 | Test.[1/1].test."vector.@re |
| 909a0 | 64 75 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | duce"......All.1.tests.pass |
| 909c0 | 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 | ed..</code></pre>........<p>See. |
| 909e0 | 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 | also:</p><ul>.<li><a.href="#Vect |
| 90a00 | 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | ors">Vectors</a></li>.<li><a.hre |
| 90a20 | 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c | f="#setFloatMode">@setFloatMode< |
| 90a40 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 | /a></li>.</ul>................<h |
| 90a60 | 32 20 69 64 3d 22 73 72 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 72 63 22 3e 40 73 | 2.id="src"><a.href="#toc-src">@s |
| 90a80 | 72 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 72 63 | rc</a>.<a.class="hdr".href="#src |
| 90aa0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 90ac0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 90ae0 | 6c 74 69 6e 22 3e 40 73 72 63 3c 2f 73 70 61 6e 3e 28 29 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e | ltin">@src</span>().std.builtin. |
| 90b00 | 53 6f 75 72 63 65 4c 6f 63 61 74 69 6f 6e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | SourceLocation</code></pre>..... |
| 90b20 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 | ..<p>.......Returns.a.<code.clas |
| 90b40 | 73 3d 22 7a 69 67 22 3e 53 6f 75 72 63 65 4c 6f 63 61 74 69 6f 6e 3c 2f 63 6f 64 65 3e 20 73 74 | s="zig">SourceLocation</code>.st |
| 90b60 | 72 75 63 74 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 | ruct.representing.the.function's |
| 90b80 | 20 6e 61 6d 65 20 61 6e 64 20 6c 6f 63 61 74 69 6f 6e 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 | .name.and.location.in.the.source |
| 90ba0 | 20 63 6f 64 65 2e 20 54 68 69 73 20 6d 75 73 74 20 62 65 20 63 61 6c 6c 65 64 20 69 6e 20 61 20 | .code..This.must.be.called.in.a. |
| 90bc0 | 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | function........</p>.......<p.cl |
| 90be0 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| 90c00 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 90c20 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.std.=.<span.clas |
| 90c40 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| 90c60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| 90c80 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | uot;</span>);.<span.class="tok-k |
| 90ca0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 | w">const</span>.expect.=.std.tes |
| 90cc0 | 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ting.expect;..<span.class="tok-k |
| 90ce0 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | w">test</span>.<span.class="tok- |
| 90d00 | 73 74 72 22 3e 26 71 75 6f 74 3b 40 73 72 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | str">"@src"</span>.{.. |
| 90d20 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | ...<span.class="tok-kw">try</spa |
| 90d40 | 6e 3e 20 64 6f 54 68 65 54 65 73 74 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.doTheTest();.}..<span.class=" |
| 90d60 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 90d80 | 6f 6b 2d 66 6e 22 3e 64 6f 54 68 65 54 65 73 74 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e | ok-fn">doTheTest</span>().!<span |
| 90da0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-type">void</span>.{. |
| 90dc0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| 90de0 | 73 70 61 6e 3e 20 73 72 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>.src.=.<span.class="tok-bui |
| 90e00 | 6c 74 69 6e 22 3e 40 73 72 63 3c 2f 73 70 61 6e 3e 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | ltin">@src</span>();......<span. |
| 90e20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | class="tok-kw">try</span>.expect |
| 90e40 | 28 73 72 63 2e 6c 69 6e 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | (src.line.==.<span.class="tok-nu |
| 90e60 | 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mber">9</span>);.....<span.class |
| 90e80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 72 63 2e | ="tok-kw">try</span>.expect(src. |
| 90ea0 | 63 6f 6c 75 6d 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | column.==.<span.class="tok-numbe |
| 90ec0 | 72 22 3e 31 37 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">17</span>);.....<span.class=" |
| 90ee0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 | tok-kw">try</span>.expect(std.me |
| 90f00 | 6d 2e 65 6e 64 73 57 69 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | m.endsWith(<span.class="tok-type |
| 90f20 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 72 63 2e 66 6e 5f 6e 61 6d 65 2c 20 3c 73 70 61 6e 20 | ">u8</span>,.src.fn_name,.<span. |
| 90f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 54 68 65 54 65 73 74 26 | class="tok-str">"doTheTest& |
| 90f60 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | quot;</span>));.....<span.class= |
| 90f80 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d | "tok-kw">try</span>.expect(std.m |
| 90fa0 | 65 6d 2e 65 6e 64 73 57 69 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | em.endsWith(<span.class="tok-typ |
| 90fc0 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 72 63 2e 66 69 6c 65 2c 20 3c 73 70 61 6e 20 63 6c | e">u8</span>,.src.file,.<span.cl |
| 90fe0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 2e 7a 69 67 26 71 75 6f | ass="tok-str">"test.zig&quo |
| 91000 | 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | t;</span>));.}</code></pre><pre> |
| 91020 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 | <code.class="shell">$.zig.test.t |
| 91040 | 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 40 73 | est.zig.Test.[1/1].test."@s |
| 91060 | 72 63 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | rc"......All.1.tests.passed |
| 91080 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | ..</code></pre>...............<h |
| 910a0 | 32 20 69 64 3d 22 73 71 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 71 72 74 22 3e | 2.id="sqrt"><a.href="#toc-sqrt"> |
| 910c0 | 40 73 71 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | @sqrt</a>.<a.class="hdr".href="# |
| 910e0 | 73 71 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | sqrt">..</a></h2>........<pre><c |
| 91100 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 91120 | 2d 62 75 69 6c 74 69 6e 22 3e 40 73 71 72 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 | -builtin">@sqrt</span>(value:.<s |
| 91140 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e | pan.class="tok-kw">anytype</span |
| 91160 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 | >).<span.class="tok-builtin">@Ty |
| 91180 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | peOf</span>(value)</code></pre>. |
| 911a0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 73 71 75 | ......<p>.......Performs.the.squ |
| 911c0 | 61 72 65 20 72 6f 6f 74 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d | are.root.of.a.floating.point.num |
| 911e0 | 62 65 72 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 | ber..Uses.a.dedicated.hardware.i |
| 91200 | 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e | nstruction.......when.available. |
| 91220 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 | .......</p>.......<p>.......Supp |
| 91240 | 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 | orts.<a.href="#Floats">Floats</a |
| 91260 | 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 | >.and.<a.href="#Vectors">Vectors |
| 91280 | 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 | </a>.of.floats,.with.the.caveat. |
| 912a0 | 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 | that.......<a.href="https://gith |
| 912c0 | 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e | ub.com/ziglang/zig/issues/4026"> |
| 912e0 | 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 | some.float.operations.are.not.ye |
| 91300 | 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 | t.implemented.for.all.float.type |
| 91320 | 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | s</a>........</p>..............< |
| 91340 | 68 32 20 69 64 3d 22 73 69 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 69 6e 22 3e 40 | h2.id="sin"><a.href="#toc-sin">@ |
| 91360 | 73 69 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 69 | sin</a>.<a.class="hdr".href="#si |
| 91380 | 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | n">..</a></h2>........<pre><code |
| 913a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 913c0 | 69 6c 74 69 6e 22 3e 40 73 69 6e 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 | iltin">@sin</span>(value:.<span. |
| 913e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c | class="tok-kw">anytype</span>).< |
| 91400 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 | span.class="tok-builtin">@TypeOf |
| 91420 | 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | </span>(value)</code></pre>..... |
| 91440 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 69 6e 65 20 74 72 69 67 6f 6d 65 74 72 69 63 20 66 75 6e | ..<p>.......Sine.trigometric.fun |
| 91460 | 63 74 69 6f 6e 20 6f 6e 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 | ction.on.a.floating.point.number |
| 91480 | 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 | ..Uses.a.dedicated.hardware.inst |
| 914a0 | 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 | ruction.......when.available.... |
| 914c0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 | ....</p>.......<p>.......Support |
| 914e0 | 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 | s.<a.href="#Floats">Floats</a>.a |
| 91500 | 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 | nd.<a.href="#Vectors">Vectors</a |
| 91520 | 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 | >.of.floats,.with.the.caveat.tha |
| 91540 | 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e | t.......<a.href="https://github. |
| 91560 | 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d | com/ziglang/zig/issues/4026">som |
| 91580 | 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 | e.float.operations.are.not.yet.i |
| 915a0 | 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f | mplemented.for.all.float.types</ |
| 915c0 | 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 | a>........</p>..............<h2. |
| 915e0 | 69 64 3d 22 63 6f 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 73 22 3e 40 63 6f 73 | id="cos"><a.href="#toc-cos">@cos |
| 91600 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 73 22 3e | </a>.<a.class="hdr".href="#cos"> |
| 91620 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..</a></h2>........<pre><code.cl |
| 91640 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 91660 | 69 6e 22 3e 40 63 6f 73 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | in">@cos</span>(value:.<span.cla |
| 91680 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ss="tok-kw">anytype</span>).<spa |
| 916a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| 916c0 | 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | pan>(value)</code></pre>.......< |
| 916e0 | 70 3e 0a 20 20 20 20 20 20 43 6f 73 69 6e 65 20 74 72 69 67 6f 6d 65 74 72 69 63 20 66 75 6e 63 | p>.......Cosine.trigometric.func |
| 91700 | 74 69 6f 6e 20 6f 6e 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e | tion.on.a.floating.point.number. |
| 91720 | 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 | .Uses.a.dedicated.hardware.instr |
| 91740 | 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 | uction.......when.available..... |
| 91760 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 | ...</p>.......<p>.......Supports |
| 91780 | 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e | .<a.href="#Floats">Floats</a>.an |
| 917a0 | 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e | d.<a.href="#Vectors">Vectors</a> |
| 917c0 | 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 | .of.floats,.with.the.caveat.that |
| 917e0 | 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 | .......<a.href="https://github.c |
| 91800 | 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 | om/ziglang/zig/issues/4026">some |
| 91820 | 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d | .float.operations.are.not.yet.im |
| 91840 | 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 | plemented.for.all.float.types</a |
| 91860 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 | >........</p>..............<h2.i |
| 91880 | 64 3d 22 65 78 70 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 22 3e 40 65 78 70 3c | d="exp"><a.href="#toc-exp">@exp< |
| 918a0 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 22 3e c2 | /a>.<a.class="hdr".href="#exp">. |
| 918c0 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .</a></h2>........<pre><code.cla |
| 918e0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ss="zig"><span.class="tok-builti |
| 91900 | 6e 22 3e 40 65 78 70 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | n">@exp</span>(value:.<span.clas |
| 91920 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e | s="tok-kw">anytype</span>).<span |
| 91940 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 | .class="tok-builtin">@TypeOf</sp |
| 91960 | 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | an>(value)</code></pre>.......<p |
| 91980 | 3e 0a 20 20 20 20 20 20 42 61 73 65 2d 65 20 65 78 70 6f 6e 65 6e 74 69 61 6c 20 66 75 6e 63 74 | >.......Base-e.exponential.funct |
| 919a0 | 69 6f 6e 20 6f 6e 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 | ion.on.a.floating.point.number.. |
| 919c0 | 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 | Uses.a.dedicated.hardware.instru |
| 919e0 | 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 | ction.......when.available...... |
| 91a00 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 | ..</p>.......<p>.......Supports. |
| 91a20 | 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 | <a.href="#Floats">Floats</a>.and |
| 91a40 | 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 | .<a.href="#Vectors">Vectors</a>. |
| 91a60 | 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a | of.floats,.with.the.caveat.that. |
| 91a80 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f | ......<a.href="https://github.co |
| 91aa0 | 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 | m/ziglang/zig/issues/4026">some. |
| 91ac0 | 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 | float.operations.are.not.yet.imp |
| 91ae0 | 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e | lemented.for.all.float.types</a> |
| 91b00 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | ........</p>..............<h2.id |
| 91b20 | 3d 22 65 78 70 32 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 32 22 3e 40 65 78 70 | ="exp2"><a.href="#toc-exp2">@exp |
| 91b40 | 32 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 32 | 2</a>.<a.class="hdr".href="#exp2 |
| 91b60 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 91b80 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 91ba0 | 6c 74 69 6e 22 3e 40 65 78 70 32 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 | ltin">@exp2</span>(value:.<span. |
| 91bc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c | class="tok-kw">anytype</span>).< |
| 91be0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 | span.class="tok-builtin">@TypeOf |
| 91c00 | 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | </span>(value)</code></pre>..... |
| 91c20 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 61 73 65 2d 32 20 65 78 70 6f 6e 65 6e 74 69 61 6c 20 66 | ..<p>.......Base-2.exponential.f |
| 91c40 | 75 6e 63 74 69 6f 6e 20 6f 6e 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 | unction.on.a.floating.point.numb |
| 91c60 | 65 72 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e | er..Uses.a.dedicated.hardware.in |
| 91c80 | 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a | struction.......when.available.. |
| 91ca0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f | ......</p>.......<p>.......Suppo |
| 91cc0 | 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e | rts.<a.href="#Floats">Floats</a> |
| 91ce0 | 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c | .and.<a.href="#Vectors">Vectors< |
| 91d00 | 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 | /a>.of.floats,.with.the.caveat.t |
| 91d20 | 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 | hat.......<a.href="https://githu |
| 91d40 | 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 | b.com/ziglang/zig/issues/4026">s |
| 91d60 | 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 | ome.float.operations.are.not.yet |
| 91d80 | 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 | .implemented.for.all.float.types |
| 91da0 | 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | </a>........</p>..............<h |
| 91dc0 | 32 20 69 64 3d 22 6c 6f 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6c 6f 67 22 3e 40 6c | 2.id="log"><a.href="#toc-log">@l |
| 91de0 | 6f 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6c 6f 67 | og</a>.<a.class="hdr".href="#log |
| 91e00 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 91e20 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 91e40 | 6c 74 69 6e 22 3e 40 6c 6f 67 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 | ltin">@log</span>(value:.<span.c |
| 91e60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 | lass="tok-kw">anytype</span>).<s |
| 91e80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c | pan.class="tok-builtin">@TypeOf< |
| 91ea0 | 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | /span>(value)</code></pre>...... |
| 91ec0 | 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 6e 61 74 75 72 61 6c 20 6c | .<p>.......Returns.the.natural.l |
| 91ee0 | 6f 67 61 72 69 74 68 6d 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d | ogarithm.of.a.floating.point.num |
| 91f00 | 62 65 72 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 | ber..Uses.a.dedicated.hardware.i |
| 91f20 | 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e | nstruction.......when.available. |
| 91f40 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 | .......</p>.......<p>.......Supp |
| 91f60 | 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 | orts.<a.href="#Floats">Floats</a |
| 91f80 | 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 | >.and.<a.href="#Vectors">Vectors |
| 91fa0 | 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 | </a>.of.floats,.with.the.caveat. |
| 91fc0 | 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 | that.......<a.href="https://gith |
| 91fe0 | 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e | ub.com/ziglang/zig/issues/4026"> |
| 92000 | 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 | some.float.operations.are.not.ye |
| 92020 | 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 | t.implemented.for.all.float.type |
| 92040 | 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | s</a>........</p>..............< |
| 92060 | 68 32 20 69 64 3d 22 6c 6f 67 32 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6c 6f 67 32 22 | h2.id="log2"><a.href="#toc-log2" |
| 92080 | 3e 40 6c 6f 67 32 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | >@log2</a>.<a.class="hdr".href=" |
| 920a0 | 23 6c 6f 67 32 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | #log2">..</a></h2>........<pre>< |
| 920c0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 920e0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6c 6f 67 32 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c | k-builtin">@log2</span>(value:.< |
| 92100 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 | span.class="tok-kw">anytype</spa |
| 92120 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 | n>).<span.class="tok-builtin">@T |
| 92140 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ypeOf</span>(value)</code></pre> |
| 92160 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 6c 6f 67 | .......<p>.......Returns.the.log |
| 92180 | 61 72 69 74 68 6d 20 74 6f 20 74 68 65 20 62 61 73 65 20 32 20 6f 66 20 61 20 66 6c 6f 61 74 69 | arithm.to.the.base.2.of.a.floati |
| 921a0 | 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 | ng.point.number..Uses.a.dedicate |
| 921c0 | 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 | d.hardware.instruction.......whe |
| 921e0 | 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | n.available........</p>.......<p |
| 92200 | 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | >.......Supports.<a.href="#Float |
| 92220 | 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 | s">Floats</a>.and.<a.href="#Vect |
| 92240 | 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 | ors">Vectors</a>.of.floats,.with |
| 92260 | 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 | .the.caveat.that.......<a.href=" |
| 92280 | 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 | https://github.com/ziglang/zig/i |
| 922a0 | 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e | ssues/4026">some.float.operation |
| 922c0 | 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c | s.are.not.yet.implemented.for.al |
| 922e0 | 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | l.float.types</a>........</p>... |
| 92300 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6c 6f 67 31 30 22 3e 3c 61 20 68 72 65 | ...........<h2.id="log10"><a.hre |
| 92320 | 66 3d 22 23 74 6f 63 2d 6c 6f 67 31 30 22 3e 40 6c 6f 67 31 30 3c 2f 61 3e 20 3c 61 20 63 6c 61 | f="#toc-log10">@log10</a>.<a.cla |
| 92340 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6c 6f 67 31 30 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ss="hdr".href="#log10">..</a></h |
| 92360 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 92380 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6c 6f 67 31 | ><span.class="tok-builtin">@log1 |
| 923a0 | 30 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 0</span>(value:.<span.class="tok |
| 923c0 | 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -kw">anytype</span>).<span.class |
| 923e0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 | ="tok-builtin">@TypeOf</span>(va |
| 92400 | 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | lue)</code></pre>.......<p>..... |
| 92420 | 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 6c 6f 67 61 72 69 74 68 6d 20 74 6f 20 74 68 65 20 62 | ..Returns.the.logarithm.to.the.b |
| 92440 | 61 73 65 20 31 30 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 | ase.10.of.a.floating.point.numbe |
| 92460 | 72 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 | r..Uses.a.dedicated.hardware.ins |
| 92480 | 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 | truction.......when.available... |
| 924a0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 | .....</p>.......<p>.......Suppor |
| 924c0 | 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 | ts.<a.href="#Floats">Floats</a>. |
| 924e0 | 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f | and.<a.href="#Vectors">Vectors</ |
| 92500 | 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 | a>.of.floats,.with.the.caveat.th |
| 92520 | 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 | at.......<a.href="https://github |
| 92540 | 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f | .com/ziglang/zig/issues/4026">so |
| 92560 | 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 | me.float.operations.are.not.yet. |
| 92580 | 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c | implemented.for.all.float.types< |
| 925a0 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 | /a>........</p>..............<h2 |
| 925c0 | 20 69 64 3d 22 66 61 62 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 61 62 73 22 3e 40 | .id="fabs"><a.href="#toc-fabs">@ |
| 925e0 | 66 61 62 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 | fabs</a>.<a.class="hdr".href="#f |
| 92600 | 61 62 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | abs">..</a></h2>........<pre><co |
| 92620 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 92640 | 62 75 69 6c 74 69 6e 22 3e 40 66 61 62 73 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 | builtin">@fabs</span>(value:.<sp |
| 92660 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e | an.class="tok-kw">anytype</span> |
| 92680 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | ).<span.class="tok-builtin">@Typ |
| 926a0 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | eOf</span>(value)</code></pre>.. |
| 926c0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 61 62 73 6f 6c | .....<p>.......Returns.the.absol |
| 926e0 | 75 74 65 20 76 61 6c 75 65 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 | ute.value.of.a.floating.point.nu |
| 92700 | 6d 62 65 72 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 | mber..Uses.a.dedicated.hardware. |
| 92720 | 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 | instruction.......when.available |
| 92740 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 | ........</p>.......<p>.......Sup |
| 92760 | 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f | ports.<a.href="#Floats">Floats</ |
| 92780 | 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 | a>.and.<a.href="#Vectors">Vector |
| 927a0 | 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 | s</a>.of.floats,.with.the.caveat |
| 927c0 | 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 | .that.......<a.href="https://git |
| 927e0 | 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 | hub.com/ziglang/zig/issues/4026" |
| 92800 | 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 | >some.float.operations.are.not.y |
| 92820 | 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 | et.implemented.for.all.float.typ |
| 92840 | 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | es</a>........</p>.............. |
| 92860 | 3c 68 32 20 69 64 3d 22 66 6c 6f 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6c 6f | <h2.id="floor"><a.href="#toc-flo |
| 92880 | 6f 72 22 3e 40 66 6c 6f 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | or">@floor</a>.<a.class="hdr".hr |
| 928a0 | 65 66 3d 22 23 66 6c 6f 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | ef="#floor">..</a></h2>........< |
| 928c0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 928e0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 76 61 | s="tok-builtin">@floor</span>(va |
| 92900 | 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 | lue:.<span.class="tok-kw">anytyp |
| 92920 | 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | e</span>).<span.class="tok-built |
| 92940 | 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e | in">@TypeOf</span>(value)</code> |
| 92960 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 | </pre>.......<p>.......Returns.t |
| 92980 | 68 65 20 6c 61 72 67 65 73 74 20 69 6e 74 65 67 72 61 6c 20 76 61 6c 75 65 20 6e 6f 74 20 67 72 | he.largest.integral.value.not.gr |
| 929a0 | 65 61 74 65 72 20 74 68 61 6e 20 74 68 65 20 67 69 76 65 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f | eater.than.the.given.floating.po |
| 929c0 | 69 6e 74 20 6e 75 6d 62 65 72 2e 0a 20 20 20 20 20 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 | int.number........Uses.a.dedicat |
| 929e0 | 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 | ed.hardware.instruction.when.ava |
| 92a00 | 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ilable........</p>.......<p>.... |
| 92a20 | 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c | ...Supports.<a.href="#Floats">Fl |
| 92a40 | 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e | oats</a>.and.<a.href="#Vectors"> |
| 92a60 | 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 | Vectors</a>.of.floats,.with.the. |
| 92a80 | 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 | caveat.that.......<a.href="https |
| 92aa0 | 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 | ://github.com/ziglang/zig/issues |
| 92ac0 | 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 | /4026">some.float.operations.are |
| 92ae0 | 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f | .not.yet.implemented.for.all.flo |
| 92b00 | 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | at.types</a>........</p>........ |
| 92b20 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 65 69 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ......<h2.id="ceil"><a.href="#to |
| 92b40 | 63 2d 63 65 69 6c 22 3e 40 63 65 69 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | c-ceil">@ceil</a>.<a.class="hdr" |
| 92b60 | 20 68 72 65 66 3d 22 23 63 65 69 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | .href="#ceil">..</a></h2>....... |
| 92b80 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 92ba0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 65 69 6c 3c 2f 73 70 61 6e 3e 28 76 | ass="tok-builtin">@ceil</span>(v |
| 92bc0 | 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 | alue:.<span.class="tok-kw">anyty |
| 92be0 | 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | pe</span>).<span.class="tok-buil |
| 92c00 | 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 | tin">@TypeOf</span>(value)</code |
| 92c20 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 | ></pre>.......<p>.......Returns. |
| 92c40 | 74 68 65 20 6c 61 72 67 65 73 74 20 69 6e 74 65 67 72 61 6c 20 76 61 6c 75 65 20 6e 6f 74 20 6c | the.largest.integral.value.not.l |
| 92c60 | 65 73 73 20 74 68 61 6e 20 74 68 65 20 67 69 76 65 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e | ess.than.the.given.floating.poin |
| 92c80 | 74 20 6e 75 6d 62 65 72 2e 0a 20 20 20 20 20 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 | t.number........Uses.a.dedicated |
| 92ca0 | 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 69 6c | .hardware.instruction.when.avail |
| 92cc0 | 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | able........</p>.......<p>...... |
| 92ce0 | 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 | .Supports.<a.href="#Floats">Floa |
| 92d00 | 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 | ts</a>.and.<a.href="#Vectors">Ve |
| 92d20 | 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 | ctors</a>.of.floats,.with.the.ca |
| 92d40 | 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f | veat.that.......<a.href="https:/ |
| 92d60 | 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 | /github.com/ziglang/zig/issues/4 |
| 92d80 | 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e | 026">some.float.operations.are.n |
| 92da0 | 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 | ot.yet.implemented.for.all.float |
| 92dc0 | 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 | .types</a>........</p>.......... |
| 92de0 | 20 20 20 20 3c 68 32 20 69 64 3d 22 74 72 75 6e 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ....<h2.id="trunc"><a.href="#toc |
| 92e00 | 2d 74 72 75 6e 63 22 3e 40 74 72 75 6e 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | -trunc">@trunc</a>.<a.class="hdr |
| 92e20 | 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | ".href="#trunc">..</a></h2>..... |
| 92e40 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 92e60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 3c 2f 73 70 61 6e | class="tok-builtin">@trunc</span |
| 92e80 | 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e | >(value:.<span.class="tok-kw">an |
| 92ea0 | 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | ytype</span>).<span.class="tok-b |
| 92ec0 | 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 | uiltin">@TypeOf</span>(value)</c |
| 92ee0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 6f 75 6e 64 | ode></pre>.......<p>.......Round |
| 92f00 | 73 20 74 68 65 20 67 69 76 65 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 | s.the.given.floating.point.numbe |
| 92f20 | 72 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 74 6f 77 61 72 64 73 20 7a 65 72 6f 2e 0a 20 | r.to.an.integer,.towards.zero... |
| 92f40 | 20 20 20 20 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 | .....Uses.a.dedicated.hardware.i |
| 92f60 | 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 | nstruction.when.available....... |
| 92f80 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c | .</p>.......<p>.......Supports.< |
| 92fa0 | 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 | a.href="#Floats">Floats</a>.and. |
| 92fc0 | 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f | <a.href="#Vectors">Vectors</a>.o |
| 92fe0 | 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 | f.floats,.with.the.caveat.that.. |
| 93000 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d | .....<a.href="https://github.com |
| 93020 | 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 | /ziglang/zig/issues/4026">some.f |
| 93040 | 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c | loat.operations.are.not.yet.impl |
| 93060 | 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e | emented.for.all.float.types</a>. |
| 93080 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | .......</p>..............<h2.id= |
| 930a0 | 22 72 6f 75 6e 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 6f 75 6e 64 22 3e 40 72 6f | "round"><a.href="#toc-round">@ro |
| 930c0 | 75 6e 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 6f | und</a>.<a.class="hdr".href="#ro |
| 930e0 | 75 6e 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | und">..</a></h2>........<pre><co |
| 93100 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 93120 | 62 75 69 6c 74 69 6e 22 3e 40 72 6f 75 6e 64 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 | builtin">@round</span>(value:.<s |
| 93140 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e | pan.class="tok-kw">anytype</span |
| 93160 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 | >).<span.class="tok-builtin">@Ty |
| 93180 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | peOf</span>(value)</code></pre>. |
| 931a0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 6f 75 6e 64 73 20 74 68 65 20 67 69 76 65 6e | ......<p>.......Rounds.the.given |
| 931c0 | 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 20 74 6f 20 61 6e 20 69 6e 74 | .floating.point.number.to.an.int |
| 931e0 | 65 67 65 72 2c 20 61 77 61 79 20 66 72 6f 6d 20 7a 65 72 6f 2e 20 55 73 65 73 20 61 20 64 65 64 | eger,.away.from.zero..Uses.a.ded |
| 93200 | 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 | icated.hardware.instruction..... |
| 93220 | 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ..when.available........</p>.... |
| 93240 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 | ...<p>.......Supports.<a.href="# |
| 93260 | 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 | Floats">Floats</a>.and.<a.href=" |
| 93280 | 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c | #Vectors">Vectors</a>.of.floats, |
| 932a0 | 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 | .with.the.caveat.that.......<a.h |
| 932c0 | 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f | ref="https://github.com/ziglang/ |
| 932e0 | 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 | zig/issues/4026">some.float.oper |
| 93300 | 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 | ations.are.not.yet.implemented.f |
| 93320 | 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f | or.all.float.types</a>........</ |
| 93340 | 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 75 62 57 69 74 68 | p>...............<h2.id="subWith |
| 93360 | 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 75 62 57 69 74 68 4f | Overflow"><a.href="#toc-subWithO |
| 93380 | 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 | verflow">@subWithOverflow</a>.<a |
| 933a0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 | .class="hdr".href="#subWithOverf |
| 933c0 | 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | low">..</a></h2>........<pre><co |
| 933e0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 93400 | 62 75 69 6c 74 69 6e 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e | builtin">@subWithOverflow</span> |
| 93420 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| 93440 | 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.T:.<span.class="tok-type"> |
| 93460 | 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c 20 72 65 73 75 6c 74 3a | type</span>,.a:.T,.b:.T,.result: |
| 93480 | 20 2a 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c | .*T).<span.class="tok-type">bool |
| 934a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | </span></code></pre>.......<p>.. |
| 934c0 | 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .....Performs.<code.class="zig"> |
| 934e0 | 72 65 73 75 6c 74 2e 2a 20 3d 20 61 20 2d 20 62 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 6f 76 65 72 | result.*.=.a.-.b</code>..If.over |
| 93500 | 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 | flow.or.underflow.occurs,....... |
| 93520 | 20 20 20 20 73 74 6f 72 65 73 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 20 69 | ....stores.the.overflowed.bits.i |
| 93540 | 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 3c 2f 63 6f 64 65 | n.<code.class="zig">result</code |
| 93560 | 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >.and.returns.<code.class="zig"> |
| 93580 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 | <span.class="tok-null">true</spa |
| 935a0 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 | n></code>....................If. |
| 935c0 | 6e 6f 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c | no.overflow.or.underflow.occurs, |
| 935e0 | 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .returns.<code.class="zig"><span |
| 93600 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f | .class="tok-null">false</span></ |
| 93620 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | code>........</p>............... |
| 93640 | 3c 68 32 20 69 64 3d 22 74 61 67 4e 61 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 | <h2.id="tagName"><a.href="#toc-t |
| 93660 | 61 67 4e 61 6d 65 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | agName">@tagName</a>.<a.class="h |
| 93680 | 64 72 22 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | dr".href="#tagName">..</a></h2>. |
| 936a0 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 936c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 | pan.class="tok-builtin">@tagName |
| 936e0 | 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>(value:.<span.class="tok- |
| 93700 | 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | kw">anytype</span>).[]<span.clas |
| 93720 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | s="tok-kw">const</span>.<span.cl |
| 93740 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ass="tok-type">u8</span></code>< |
| 93760 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 | /pre>.......<p>.......Converts.a |
| 93780 | 6e 20 65 6e 75 6d 20 76 61 6c 75 65 20 6f 72 20 75 6e 69 6f 6e 20 76 61 6c 75 65 20 74 6f 20 61 | n.enum.value.or.union.value.to.a |
| 937a0 | 20 73 6c 69 63 65 20 6f 66 20 62 79 74 65 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 | .slice.of.bytes.representing.the |
| 937c0 | 20 6e 61 6d 65 2e 3c 2f 70 3e 3c 70 3e 49 66 20 74 68 65 20 65 6e 75 6d 20 69 73 20 6e 6f 6e 2d | .name.</p><p>If.the.enum.is.non- |
| 937e0 | 65 78 68 61 75 73 74 69 76 65 20 61 6e 64 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 20 64 6f 65 | exhaustive.and.the.tag.value.doe |
| 93800 | 73 20 6e 6f 74 20 6d 61 70 20 74 6f 20 61 20 6e 61 6d 65 2c 20 69 74 20 69 6e 76 6f 6b 65 73 20 | s.not.map.to.a.name,.it.invokes. |
| 93820 | 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e | safety-checked.<a.href="#Undefin |
| 93840 | 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c | ed-Behavior">Undefined.Behavior< |
| 93860 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 | /a>........</p>...............<h |
| 93880 | 32 20 69 64 3d 22 54 68 69 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 69 73 22 3e | 2.id="This"><a.href="#toc-This"> |
| 938a0 | 40 54 68 69 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | @This</a>.<a.class="hdr".href="# |
| 938c0 | 54 68 69 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | This">..</a></h2>........<pre><c |
| 938e0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 93900 | 2d 62 75 69 6c 74 69 6e 22 3e 40 54 68 69 73 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 | -builtin">@This</span>().<span.c |
| 93920 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-type">type</span></cod |
| 93940 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 | e></pre>.......<p>.......Returns |
| 93960 | 20 74 68 65 20 69 6e 6e 65 72 6d 6f 73 74 20 73 74 72 75 63 74 2c 20 65 6e 75 6d 2c 20 6f 72 20 | .the.innermost.struct,.enum,.or. |
| 93980 | 75 6e 69 6f 6e 20 74 68 61 74 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 69 73 | union.that.this.function.call.is |
| 939a0 | 20 69 6e 73 69 64 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 63 61 6e 20 62 65 20 75 73 65 66 75 | .inside........This.can.be.usefu |
| 939c0 | 6c 20 66 6f 72 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 74 68 61 74 20 6e | l.for.an.anonymous.struct.that.n |
| 939e0 | 65 65 64 73 20 74 6f 20 72 65 66 65 72 20 74 6f 20 69 74 73 65 6c 66 3a 0a 20 20 20 20 20 20 3c | eeds.to.refer.to.itself:.......< |
| 93a00 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 93a20 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 93a40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 | an.class="tok-kw">const</span>.s |
| 93a60 | 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | td.=.<span.class="tok-builtin">@ |
| 93a80 | 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | import</span>(<span.class="tok-s |
| 93aa0 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 | tr">"std"</span>);.<sp |
| 93ac0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 | an.class="tok-kw">const</span>.e |
| 93ae0 | 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 | xpect.=.std.testing.expect;..<sp |
| 93b00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">test</span>.<s |
| 93b20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 54 68 69 73 28 | pan.class="tok-str">"@This( |
| 93b40 | 29 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | )"</span>.{.....<span.class |
| 93b60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d | ="tok-kw">var</span>.items.=.[_] |
| 93b80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">i32</span |
| 93ba0 | 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | >{.<span.class="tok-number">1</s |
| 93bc0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | pan>,.<span.class="tok-number">2 |
| 93be0 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>,.<span.class="tok-number |
| 93c00 | 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">3</span>,.<span.class="tok-num |
| 93c20 | 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ber">4</span>.};.....<span.class |
| 93c40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 4c 69 | ="tok-kw">const</span>.list.=.Li |
| 93c60 | 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | st(<span.class="tok-type">i32</s |
| 93c80 | 70 61 6e 3e 29 7b 20 2e 69 74 65 6d 73 20 3d 20 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 | pan>){..items.=.items[<span.clas |
| 93ca0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 20 7d 3b 0a 20 20 | s="tok-number">0</span>..].};... |
| 93cc0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ..<span.class="tok-kw">try</span |
| 93ce0 | 3e 20 65 78 70 65 63 74 28 6c 69 73 74 2e 6c 65 6e 67 74 68 28 29 20 3d 3d 20 3c 73 70 61 6e 20 | >.expect(list.length().==.<span. |
| 93d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a | class="tok-number">4</span>);.}. |
| 93d20 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">fn</span>. |
| 93d40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e 3e | <span.class="tok-fn">List</span> |
| 93d60 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| 93d80 | 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.T:.<span.class="tok-type"> |
| 93da0 | 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | type</span>).<span.class="tok-ty |
| 93dc0 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | pe">type</span>.{.....<span.clas |
| 93de0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">return</span>.<span.c |
| 93e00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | lass="tok-kw">struct</span>.{... |
| 93e20 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | ......<span.class="tok-kw">const |
| 93e40 | 3c 2f 73 70 61 6e 3e 20 53 65 6c 66 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.Self.=.<span.class="tok- |
| 93e60 | 62 75 69 6c 74 69 6e 22 3e 40 54 68 69 73 3c 2f 73 70 61 6e 3e 28 29 3b 0a 0a 20 20 20 20 20 20 | builtin">@This</span>();........ |
| 93e80 | 20 20 69 74 65 6d 73 3a 20 5b 5d 54 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ..items:.[]T,..........<span.cla |
| 93ea0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ss="tok-kw">fn</span>.<span.clas |
| 93ec0 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 53 | s="tok-fn">length</span>(self:.S |
| 93ee0 | 65 6c 66 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a | elf).<span.class="tok-type">usiz |
| 93f00 | 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | e</span>.{.............<span.cla |
| 93f20 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 69 | ss="tok-kw">return</span>.self.i |
| 93f40 | 74 65 6d 73 2e 6c 65 6e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f | tems.len;.........}.....};.}</co |
| 93f60 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 93f80 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d | ">$.zig.test.test.zig.Test.[1/1] |
| 93fa0 | 20 74 65 73 74 20 26 71 75 6f 74 3b 40 54 68 69 73 28 29 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 | .test."@This()"......A |
| 93fc0 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</code></pre> |
| 93fe0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 | ........<p>.......When.<code.cla |
| 94000 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ss="zig"><span.class="tok-builti |
| 94020 | 6e 22 3e 40 54 68 69 73 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 20 69 73 20 75 73 65 64 | n">@This</span>()</code>.is.used |
| 94040 | 20 61 74 20 66 69 6c 65 20 73 63 6f 70 65 2c 20 69 74 20 72 65 74 75 72 6e 73 20 61 20 72 65 66 | .at.file.scope,.it.returns.a.ref |
| 94060 | 65 72 65 6e 63 65 20 74 6f 20 74 68 65 0a 20 20 20 20 20 20 73 74 72 75 63 74 20 74 68 61 74 20 | erence.to.the.......struct.that. |
| 94080 | 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 69 6c 65 2e | corresponds.to.the.current.file. |
| 940a0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | .......</p>...............<h2.id |
| 940c0 | 3d 22 74 72 75 6e 63 61 74 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 75 6e 63 61 | ="truncate"><a.href="#toc-trunca |
| 940e0 | 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | te">@truncate</a>.<a.class="hdr" |
| 94100 | 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | .href="#truncate">..</a></h2>... |
| 94120 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| 94140 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c | n.class="tok-builtin">@truncate< |
| 94160 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | /span>(<span.class="tok-kw">comp |
| 94180 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | time</span>.T:.<span.class="tok- |
| 941a0 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 3c 73 70 61 | type">type</span>,.integer:.<spa |
| 941c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 | n.class="tok-kw">anytype</span>) |
| 941e0 | 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | .T</code></pre>.......<p>....... |
| 94200 | 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 74 72 75 6e 63 61 74 65 73 20 62 69 74 73 20 66 72 6f | This.function.truncates.bits.fro |
| 94220 | 6d 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 2c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 | m.an.integer.type,.resulting.in. |
| 94240 | 61 20 73 6d 61 6c 6c 65 72 0a 20 20 20 20 20 20 6f 72 20 73 61 6d 65 2d 73 69 7a 65 64 20 69 6e | a.smaller.......or.same-sized.in |
| 94260 | 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | teger.type........</p>.......<p> |
| 94280 | 0a 20 20 20 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 72 6f 64 75 63 65 73 20 73 61 | .......The.following.produces.sa |
| 942a0 | 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 | fety-checked.<a.href="#Undefined |
| 942c0 | 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 | -Behavior">Undefined.Behavior</a |
| 942e0 | 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | >:.......</p>.......<p.class="fi |
| 94300 | 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | le">test.zig</p><pre><code.class |
| 94320 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | ="zig"><span.class="tok-kw">test |
| 94340 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>.<span.class="tok-str">&q |
| 94360 | 75 6f 74 3b 69 6e 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 26 71 75 6f 74 3b 3c 2f 73 70 | uot;integer.cast.panic"</sp |
| 94380 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>.{.....<span.class="tok-kw">v |
| 943a0 | 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ar</span>.a:.<span.class="tok-ty |
| 943c0 | 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pe">u16</span>.=.<span.class="to |
| 943e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 61 62 63 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | k-number">0xabcd</span>;.....<sp |
| 94400 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 | an.class="tok-kw">var</span>.b:. |
| 94420 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| 94440 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e | .=.<span.class="tok-builtin">@in |
| 94460 | 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | tCast</span>(<span.class="tok-ty |
| 94480 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | pe">u8</span>,.a);.}</code></pre |
| 944a0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 944c0 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 | test.test.zig.Test.[1/1].test.&q |
| 944e0 | 75 6f 74 3b 69 6e 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 26 71 75 6f 74 3b 2e 2e 2e 20 | uot;integer.cast.panic".... |
| 94500 | 0a 74 68 72 65 61 64 20 31 36 32 37 35 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 63 61 73 | .thread.16275.panic:.integer.cas |
| 94520 | 74 20 74 72 75 6e 63 61 74 65 64 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 | t.truncated.bits.<span.class="t1 |
| 94540 | 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 | _0">/home/andy/Downloads/zig/doc |
| 94560 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | gen_tmp/test.zig:3:17</span>:.<s |
| 94580 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 37 31 35 20 69 6e 20 74 65 73 | pan.class="t2_0">0x206715.in.tes |
| 945a0 | 74 20 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 26 71 75 6f 74 3b | t."integer.cast.panic" |
| 945c0 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 62 3a 20 75 38 20 3d 20 40 | .(test)</span>.....var.b:.u8.=.@ |
| 945e0 | 69 6e 74 43 61 73 74 28 75 38 2c 20 61 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | intCast(u8,.a);................. |
| 94600 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 94620 | 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c | an.class="t1_0">/home/andy/Downl |
| 94640 | 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 5f 72 75 | oads/zig/lib/std/special/test_ru |
| 94660 | 6e 6e 65 72 2e 7a 69 67 3a 37 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | nner.zig:76:28</span>:.<span.cla |
| 94680 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 63 66 66 61 20 69 6e 20 73 74 64 2e 73 70 65 63 69 61 | ss="t2_0">0x22cffa.in.std.specia |
| 946a0 | 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 20 65 | l.main.(test)</span>.........}.e |
| 946c0 | 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | lse.test_fn.func();............. |
| 946e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| 94700 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f | 1">^</span>.<span.class="t1_0">/ |
| 94720 | 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | home/andy/Downloads/zig/lib/std/ |
| 94740 | 73 74 61 72 74 2e 7a 69 67 3a 34 37 31 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | start.zig:471:37</span>:.<span.c |
| 94760 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 35 35 35 61 20 69 6e 20 73 74 64 2e 73 74 61 72 | lass="t2_0">0x22555a.in.std.star |
| 94780 | 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | t.callMain.(test)</span>........ |
| 947a0 | 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 | .....const.result.=.root.main(). |
| 947c0 | 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | catch.|err|.{................... |
| 947e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..................<span.class="t |
| 94800 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 | 32_1">^</span>.<span.class="t1_0 |
| 94820 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 | ">/home/andy/Downloads/zig/lib/s |
| 94840 | 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | td/start.zig:413:12</span>:.<spa |
| 94860 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 39 33 64 65 20 69 6e 20 73 74 64 2e 73 | n.class="t2_0">0x2093de.in.std.s |
| 94880 | 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 | tart.callMainWithArgs.(test)</sp |
| 948a0 | 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 | an>.....return.@call(.{..modifie |
| 948c0 | 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 | r.=..always_inline.},.callMain,. |
| 948e0 | 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | .{});............<span.class="t3 |
| 94900 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 | 2_1">^</span>.<span.class="t1_0" |
| 94920 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 | >/home/andy/Downloads/zig/lib/st |
| 94940 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | d/start.zig:332:17</span>:.<span |
| 94960 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 34 30 36 20 69 6e 20 73 74 64 2e 73 74 | .class="t2_0">0x208406.in.std.st |
| 94980 | 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c | art.posixCallMainAndExit.(test)< |
| 949a0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 | /span>.....std.os.exit(@call(.{. |
| 949c0 | 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 | .modifier.=..always_inline.},.ca |
| 949e0 | 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 | llMainWithArgs,..{.argc,.argv,.e |
| 94a00 | 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | nvp.}));.................<span.c |
| 94a20 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| 94a40 | 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 | s="t1_0">/home/andy/Downloads/zi |
| 94a60 | 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e | g/lib/std/start.zig:245:5</span> |
| 94a80 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 32 31 32 20 69 6e | :.<span.class="t2_0">0x208212.in |
| 94aa0 | 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | .std.start._start.(test)</span>. |
| 94ac0 | 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f | ....@call(.{..modifier.=..never_ |
| 94ae0 | 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 | inline.},.posixCallMainAndExit,. |
| 94b00 | 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | .{});.....<span.class="t32_1">^< |
| 94b20 | 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 | /span>.error:.the.following.test |
| 94b40 | 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 | .command.crashed:.docgen_tmp/zig |
| 94b60 | 2d 63 61 63 68 65 2f 6f 2f 33 33 33 61 38 37 34 31 38 31 36 37 30 32 64 61 66 64 30 66 66 39 39 | -cache/o/333a8741816702dafd0ff99 |
| 94b80 | 61 66 33 38 30 65 62 62 31 2f 74 65 73 74 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f | af380ebb1/test./home/andy/Downlo |
| 94ba0 | 61 64 73 2f 7a 69 67 2f 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2f 7a 69 67 0a 3c 2f 63 6f 64 65 | ads/zig/build-release/zig.</code |
| 94bc0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 | ></pre>........<p>.......However |
| 94be0 | 20 74 68 69 73 20 69 73 20 77 65 6c 6c 20 64 65 66 69 6e 65 64 20 61 6e 64 20 77 6f 72 6b 69 6e | .this.is.well.defined.and.workin |
| 94c00 | 67 20 63 6f 64 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | g.code:.......</p>.......<p.clas |
| 94c20 | 73 3d 22 66 69 6c 65 22 3e 74 72 75 6e 63 61 74 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | s="file">truncate.zig</p><pre><c |
| 94c40 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 94c60 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.std.=.<span.cl |
| 94c80 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 94ca0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 94cc0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | "</span>);.<span.class="tok |
| 94ce0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 | -kw">const</span>.expect.=.std.t |
| 94d00 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | esting.expect;..<span.class="tok |
| 94d20 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| 94d40 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 74 72 75 6e 63 61 74 69 6f 6e 26 | k-str">"integer.truncation& |
| 94d60 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| 94d80 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.a:.<span.clas |
| 94da0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 | s="tok-type">u16</span>.=.<span. |
| 94dc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 61 62 63 64 3c 2f 73 70 61 6e 3e | class="tok-number">0xabcd</span> |
| 94de0 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | ;.....<span.class="tok-kw">var</ |
| 94e00 | 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.b:.<span.class="tok-type"> |
| 94e20 | 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | u8</span>.=.<span.class="tok-bui |
| 94e40 | 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ltin">@truncate</span>(<span.cla |
| 94e60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 61 29 3b 0a 20 20 20 | ss="tok-type">u8</span>,.a);.... |
| 94e80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 94ea0 | 20 65 78 70 65 63 74 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .expect(b.==.<span.class="tok-nu |
| 94ec0 | 6d 62 65 72 22 3e 30 78 63 64 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | mber">0xcd</span>);.}</code></pr |
| 94ee0 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 94f00 | 20 74 65 73 74 20 74 72 75 6e 63 61 74 65 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 | .test.truncate.zig.Test.[1/1].te |
| 94f20 | 73 74 20 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 74 72 75 6e 63 61 74 69 6f 6e 26 71 75 6f 74 | st."integer.truncation" |
| 94f40 | 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | ;......All.1.tests.passed..</cod |
| 94f60 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 | e></pre>........<p>.......This.f |
| 94f80 | 75 6e 63 74 69 6f 6e 20 61 6c 77 61 79 73 20 74 72 75 6e 63 61 74 65 73 20 74 68 65 20 73 69 67 | unction.always.truncates.the.sig |
| 94fa0 | 6e 69 66 69 63 61 6e 74 20 62 69 74 73 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 2c 20 72 65 | nificant.bits.of.the.integer,.re |
| 94fc0 | 67 61 72 64 6c 65 73 73 0a 20 20 20 20 20 20 6f 66 20 65 6e 64 69 61 6e 6e 65 73 73 20 6f 6e 20 | gardless.......of.endianness.on. |
| 94fe0 | 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | the.target.platform........</p>. |
| 95000 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 79 70 65 22 3e 3c 61 20 68 | ..............<h2.id="Type"><a.h |
| 95020 | 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 22 3e 40 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ref="#toc-Type">@Type</a>.<a.cla |
| 95040 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | ss="hdr".href="#Type">..</a></h2 |
| 95060 | 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >........<pre><code.class="zig"> |
| 95080 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 3c | <span.class="tok-builtin">@Type< |
| 950a0 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | /span>(<span.class="tok-kw">comp |
| 950c0 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 69 6e 66 6f 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 54 79 | time</span>.info:.std.builtin.Ty |
| 950e0 | 70 65 49 6e 66 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 | peInfo).<span.class="tok-type">t |
| 95100 | 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | ype</span></code></pre>.......<p |
| 95120 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 74 68 65 20 69 6e 76 | >.......This.function.is.the.inv |
| 95140 | 65 72 73 65 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 | erse.of.<a.href="#typeInfo">@typ |
| 95160 | 65 49 6e 66 6f 3c 2f 61 3e 2e 20 49 74 20 72 65 69 66 69 65 73 20 74 79 70 65 20 69 6e 66 6f 72 | eInfo</a>..It.reifies.type.infor |
| 95180 | 6d 61 74 69 6f 6e 0a 20 20 20 20 20 20 69 6e 74 6f 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | mation.......into.a.<code.class= |
| 951a0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | "zig"><span.class="tok-type">typ |
| 951c0 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | e</span></code>........</p>..... |
| 951e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 | ..<p>.......It.is.available.for. |
| 95200 | 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 79 70 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | the.following.types:.......</p>. |
| 95220 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 | ......<ul>...........<li><code.c |
| 95240 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | lass="zig"><span.class="tok-type |
| 95260 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ">type</span></code></li>....... |
| 95280 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<li><code.class="zig"><span. |
| 952a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e | class="tok-type">noreturn</span> |
| 952c0 | 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 | </code></li>...........<li><code |
| 952e0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .class="zig"><span.class="tok-ty |
| 95300 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | pe">void</span></code></li>..... |
| 95320 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<li><code.class="zig"><spa |
| 95340 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-type">bool</span></ |
| 95360 | 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | code></li>...........<li><a.href |
| 95380 | 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 2d 20 54 68 65 20 | ="#Integers">Integers</a>.-.The. |
| 953a0 | 6d 61 78 69 6d 75 6d 20 62 69 74 20 63 6f 75 6e 74 20 66 6f 72 20 61 6e 20 69 6e 74 65 67 65 72 | maximum.bit.count.for.an.integer |
| 953c0 | 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .type.is.<code.class="zig"><span |
| 953e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 35 35 33 35 3c 2f 73 70 61 6e 3e | .class="tok-number">65535</span> |
| 95400 | 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | </code>.</li>...........<li><a.h |
| 95420 | 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ref="#Floats">Floats</a></li>... |
| 95440 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e | ........<li><a.href="#Pointers"> |
| 95460 | 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | Pointers</a></li>...........<li> |
| 95480 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 954a0 | 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ok-type">comptime_int</span></co |
| 954c0 | 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 | de></li>...........<li><code.cla |
| 954e0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| 95500 | 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 | comptime_float</span></code></li |
| 95520 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | >...........<li><code.class="zig |
| 95540 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | "><span.class="tok-builtin">@Typ |
| 95560 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | eOf</span>(<span.class="tok-null |
| 95580 | 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a | ">undefined</span>)</code></li>. |
| 955a0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<li><code.class="zig"> |
| 955c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f | <span.class="tok-builtin">@TypeO |
| 955e0 | 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | f</span>(<span.class="tok-null"> |
| 95600 | 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | null</span>)</code></li>........ |
| 95620 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c | ...<li><a.href="#Arrays">Arrays< |
| 95640 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | /a></li>...........<li><a.href=" |
| 95660 | 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | #Optionals">Optionals</a></li>.. |
| 95680 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 | .........<li><a.href="#Error-Set |
| 956a0 | 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | -Type">Error.Set.Type</a></li>.. |
| 956c0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 | .........<li><a.href="#Error-Uni |
| 956e0 | 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c | on-Type">Error.Union.Type</a></l |
| 95700 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f | i>...........<li><a.href="#Vecto |
| 95720 | 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | rs">Vectors</a></li>...........< |
| 95740 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 3c | li><a.href="#opaque">opaque</a>< |
| 95760 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 72 61 | /li>...........<li><a.href="#Fra |
| 95780 | 6d 65 22 3e 40 46 72 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | me">@Frame</a></li>...........<l |
| 957a0 | 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | i><code.class="zig"><span.class= |
| 957c0 | 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | "tok-kw">anyframe</span></code>< |
| 957e0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 74 72 | /li>...........<li><a.href="#str |
| 95800 | 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | uct">struct</a></li>...........< |
| 95820 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e | li><a.href="#enum">enum</a></li> |
| 95840 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 | ...........<li><a.href="#Enum-Li |
| 95860 | 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | terals">Enum.Literals</a></li>.. |
| 95880 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e | .........<li><a.href="#union">un |
| 958a0 | 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c | ion</a></li>.......</ul>.......< |
| 958c0 | 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 74 68 65 73 65 20 74 79 70 65 73 2c 20 3c 63 6f 64 65 20 | p>.......For.these.types,.<code. |
| 958e0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 95900 | 6c 74 69 6e 22 3e 40 54 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 6e 6f 74 | ltin">@Type</span></code>.is.not |
| 95920 | 20 61 76 61 69 6c 61 62 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c | .available:.......</p>.......<ul |
| 95940 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 | >...........<li><a.href="#Functi |
| 95960 | 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ons">Functions</a></li>......... |
| 95980 | 20 20 3c 6c 69 3e 42 6f 75 6e 64 46 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | ..<li>BoundFn</li>.......</ul>.. |
| 959a0 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 79 70 65 49 6e 66 6f 22 3e 3c 61 | ............<h2.id="typeInfo"><a |
| 959c0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c | .href="#toc-typeInfo">@typeInfo< |
| 959e0 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e | /a>.<a.class="hdr".href="#typeIn |
| 95a00 | 66 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | fo">..</a></h2>........<pre><cod |
| 95a20 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 95a40 | 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | uiltin">@typeInfo</span>(<span.c |
| 95a60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a | lass="tok-kw">comptime</span>.T: |
| 95a80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 | .<span.class="tok-type">type</sp |
| 95aa0 | 61 6e 3e 29 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 54 79 70 65 49 6e 66 6f 3c 2f 63 6f 64 65 3e | an>).std.builtin.TypeInfo</code> |
| 95ac0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 72 6f 76 69 64 65 73 20 | </pre>.......<p>.......Provides. |
| 95ae0 | 74 79 70 65 20 72 65 66 6c 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | type.reflection........</p>..... |
| 95b00 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 | ..<p>.......For.<a.href="#struct |
| 95b20 | 22 3e 73 74 72 75 63 74 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e | ">structs</a>,.<a.href="#union"> |
| 95b40 | 75 6e 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d | unions</a>,.<a.href="#enum">enum |
| 95b60 | 73 3c 2f 61 3e 2c 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 | s</a>,.and.......<a.href="#Error |
| 95b80 | 2d 53 65 74 2d 54 79 70 65 22 3e 65 72 72 6f 72 20 73 65 74 73 3c 2f 61 3e 2c 20 74 68 65 20 66 | -Set-Type">error.sets</a>,.the.f |
| 95ba0 | 69 65 6c 64 73 20 61 72 65 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 69 6e 20 74 68 | ields.are.guaranteed.to.be.in.th |
| 95bc0 | 65 20 73 61 6d 65 0a 20 20 20 20 20 20 6f 72 64 65 72 20 61 73 20 64 65 63 6c 61 72 65 64 2e 20 | e.same.......order.as.declared.. |
| 95be0 | 46 6f 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2c 20 74 68 65 20 6f 72 64 65 72 20 69 73 20 75 | For.declarations,.the.order.is.u |
| 95c00 | 6e 73 70 65 63 69 66 69 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | nspecified........</p>.......... |
| 95c20 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 79 70 65 4e 61 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 | .....<h2.id="typeName"><a.href=" |
| 95c40 | 23 74 6f 63 2d 74 79 70 65 4e 61 6d 65 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 61 3e 20 3c 61 20 | #toc-typeName">@typeName</a>.<a. |
| 95c60 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 79 70 65 4e 61 6d 65 22 3e c2 a7 3c | class="hdr".href="#typeName">..< |
| 95c80 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | /a></h2>........<pre><code.class |
| 95ca0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 95cc0 | 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >@typeName</span>(T:.<span.class |
| 95ce0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 5b 4e 5d 3c 73 70 61 | ="tok-type">type</span>).[N]<spa |
| 95d00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | n.class="tok-type">u8</span></co |
| 95d20 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 | de></pre>.......<p>.......This.f |
| 95d40 | 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 | unction.returns.the.string.repre |
| 95d60 | 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 20 74 79 70 65 2c 20 61 73 0a 20 20 20 20 20 20 61 6e | sentation.of.a.type,.as.......an |
| 95d80 | 20 61 72 72 61 79 2e 20 49 74 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 73 74 | .array..It.is.equivalent.to.a.st |
| 95da0 | 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 6f 66 20 74 68 65 20 74 79 70 65 20 6e 61 6d 65 2e 0a 20 | ring.literal.of.the.type.name... |
| 95dc0 | 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | .....</p>................<h2.id= |
| 95de0 | 22 54 79 70 65 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 4f 66 22 3e 40 | "TypeOf"><a.href="#toc-TypeOf">@ |
| 95e00 | 54 79 70 65 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | TypeOf</a>.<a.class="hdr".href=" |
| 95e20 | 23 54 79 70 65 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | #TypeOf">..</a></h2>........<pre |
| 95e40 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 95e60 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 2e 2e 2e 29 | tok-builtin">@TypeOf</span>(...) |
| 95e80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 | .<span.class="tok-type">type</sp |
| 95ea0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | an></code></pre>.......<p>...... |
| 95ec0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 95ee0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | tok-builtin">@TypeOf</span></cod |
| 95f00 | 65 3e 20 69 73 20 61 20 73 70 65 63 69 61 6c 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e | e>.is.a.special.builtin.function |
| 95f20 | 20 74 68 61 74 20 74 61 6b 65 73 20 61 6e 79 20 28 6e 6f 6e 7a 65 72 6f 29 20 6e 75 6d 62 65 72 | .that.takes.any.(nonzero).number |
| 95f40 | 20 6f 66 20 65 78 70 72 65 73 73 69 6f 6e 73 0a 20 20 20 20 20 20 61 73 20 70 61 72 61 6d 65 74 | .of.expressions.......as.paramet |
| 95f60 | 65 72 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 | ers.and.returns.the.type.of.the. |
| 95f80 | 72 65 73 75 6c 74 2c 20 75 73 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 | result,.using.<a.href="#Peer-Typ |
| 95fa0 | 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 | e-Resolution">Peer.Type.Resoluti |
| 95fc0 | 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | on</a>........</p>.......<p>.... |
| 95fe0 | 20 20 20 54 68 65 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 65 76 61 6c 75 61 74 65 64 | ...The.expressions.are.evaluated |
| 96000 | 2c 20 68 6f 77 65 76 65 72 20 74 68 65 79 20 61 72 65 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f | ,.however.they.are.guaranteed.to |
| 96020 | 20 68 61 76 65 20 6e 6f 20 3c 65 6d 3e 72 75 6e 74 69 6d 65 3c 2f 65 6d 3e 20 73 69 64 65 2d 65 | .have.no.<em>runtime</em>.side-e |
| 96040 | 66 66 65 63 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | ffects:.......</p>.......<p.clas |
| 96060 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 96080 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 960a0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >const</span>.std.=.<span.class= |
| 960c0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | "tok-builtin">@import</span>(<sp |
| 960e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f | an.class="tok-str">"std&quo |
| 96100 | 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | t;</span>);.<span.class="tok-kw" |
| 96120 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 | >const</span>.expect.=.std.testi |
| 96140 | 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ng.expect;..<span.class="tok-kw" |
| 96160 | 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >test</span>.<span.class="tok-st |
| 96180 | 72 22 3e 26 71 75 6f 74 3b 6e 6f 20 72 75 6e 74 69 6d 65 20 73 69 64 65 20 65 66 66 65 63 74 73 | r">"no.runtime.side.effects |
| 961a0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>.{.....<span.class= |
| 961c0 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 3a 20 3c 73 70 61 6e 20 | "tok-kw">var</span>.data:.<span. |
| 961e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | class="tok-type">i32</span>.=.<s |
| 96200 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">0</span>; |
| 96220 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| 96240 | 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | /span>.T.=.<span.class="tok-buil |
| 96260 | 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 28 3c 73 70 61 6e 20 63 6c | tin">@TypeOf</span>(foo(<span.cl |
| 96280 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b | ass="tok-type">i32</span>,.& |
| 962a0 | 64 61 74 61 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | data));.....<span.class="tok-kw" |
| 962c0 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >comptime</span>.<span.class="to |
| 962e0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 54 20 3d 3d 20 3c 73 70 | k-kw">try</span>.expect(T.==.<sp |
| 96300 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-type">i32</span>); |
| 96320 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| 96340 | 70 61 6e 3e 20 65 78 70 65 63 74 28 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>.expect(data.==.<span.class= |
| 96360 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | "tok-number">0</span>);.}..<span |
| 96380 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | .class="tok-kw">fn</span>.<span. |
| 963a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | class="tok-fn">foo</span>(<span. |
| 963c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 | class="tok-kw">comptime</span>.T |
| 963e0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 | :.<span.class="tok-type">type</s |
| 96400 | 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 29 20 54 20 7b 0a 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 | pan>,.ptr:.*T).T.{.....ptr.*.+=. |
| 96420 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e | <span.class="tok-number">1</span |
| 96440 | 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | >;.....<span.class="tok-kw">retu |
| 96460 | 72 6e 3c 2f 73 70 61 6e 3e 20 70 74 72 2e 2a 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | rn</span>.ptr.*;.}</code></pre>< |
| 96480 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| 964a0 | 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f | st.test.zig.Test.[1/1].test.&quo |
| 964c0 | 74 3b 6e 6f 20 72 75 6e 74 69 6d 65 20 73 69 64 65 20 65 66 66 65 63 74 73 26 71 75 6f 74 3b 2e | t;no.runtime.side.effects". |
| 964e0 | 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e | .....All.1.tests.passed..</code> |
| 96500 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 75 6e | </pre>................<h2.id="un |
| 96520 | 69 6f 6e 49 6e 69 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 69 6f 6e 49 6e 69 74 | ionInit"><a.href="#toc-unionInit |
| 96540 | 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | ">@unionInit</a>.<a.class="hdr". |
| 96560 | 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | href="#unionInit">..</a></h2>... |
| 96580 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| 965a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 | n.class="tok-builtin">@unionInit |
| 965c0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | </span>(<span.class="tok-kw">com |
| 965e0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 55 6e 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ptime</span>.Union:.<span.class= |
| 96600 | 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | "tok-type">type</span>,.<span.cl |
| 96620 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 61 63 74 | ass="tok-kw">comptime</span>.act |
| 96640 | 69 76 65 5f 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ive_field_name:.[]<span.class="t |
| 96660 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-kw">const</span>.<span.class= |
| 96680 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 69 6e 69 74 5f 65 78 70 72 29 | "tok-type">u8</span>,.init_expr) |
| 966a0 | 20 55 6e 69 6f 6e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | .Union</code></pre>.......<p>... |
| 966c0 | 20 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 20 61 73 20 3c 61 | ....This.is.the.same.thing.as.<a |
| 966e0 | 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 69 6e 69 74 69 61 6c | .href="#union">union</a>.initial |
| 96700 | 69 7a 61 74 69 6f 6e 20 73 79 6e 74 61 78 2c 20 65 78 63 65 70 74 20 74 68 61 74 20 74 68 65 20 | ization.syntax,.except.that.the. |
| 96720 | 66 69 65 6c 64 20 6e 61 6d 65 20 69 73 20 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 | field.name.is.a.......<a.href="# |
| 96740 | 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c | comptime">comptime</a>-known.val |
| 96760 | 75 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 74 6f 6b | ue.rather.than.an.identifier.tok |
| 96780 | 65 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c | en........</p>.......<p>.......< |
| 967a0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 967c0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | k-builtin">@unionInit</span></co |
| 967e0 | 64 65 3e 20 66 6f 72 77 61 72 64 73 20 69 74 73 20 3c 61 20 68 72 65 66 3d 22 23 52 65 73 75 6c | de>.forwards.its.<a.href="#Resul |
| 96800 | 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 72 65 73 75 6c 74 20 6c 6f 63 | t-Location-Semantics">result.loc |
| 96820 | 61 74 69 6f 6e 3c 2f 61 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 69 | ation</a>.to.<code.class="zig">i |
| 96840 | 6e 69 74 5f 65 78 70 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | nit_expr</code>........</p>..... |
| 96860 | 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 42 75 69 6c 64 2d 4d | .................<h1.id="Build-M |
| 96880 | 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 64 2d 4d 6f 64 65 22 3e 42 | ode"><a.href="#toc-Build-Mode">B |
| 968a0 | 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | uild.Mode</a>.<a.class="hdr".hre |
| 968c0 | 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 | f="#Build-Mode">..</a></h1>..... |
| 968e0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 66 6f 75 72 20 62 75 69 6c 64 20 | ...<p>.......Zig.has.four.build. |
| 96900 | 6d 6f 64 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | modes:.......</p>.......<ul>.... |
| 96920 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c | .....<li><a.href="#Debug">Debug< |
| 96940 | 2f 61 3e 20 28 64 65 66 61 75 6c 74 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | /a>.(default)</li>.........<li>< |
| 96960 | 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 | a.href="#ReleaseFast">ReleaseFas |
| 96980 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | t</a></li>.........<li><a.href=" |
| 969a0 | 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 3c 2f 6c | #ReleaseSafe">ReleaseSafe</a></l |
| 969c0 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 | i>.........<li><a.href="#Release |
| 969e0 | 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | Small">ReleaseSmall</a></li>.... |
| 96a00 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 61 64 64 20 | ...</ul>.......<p>.......To.add. |
| 96a20 | 73 74 61 6e 64 61 72 64 20 62 75 69 6c 64 20 6f 70 74 69 6f 6e 73 20 74 6f 20 61 20 3c 63 6f 64 | standard.build.options.to.a.<cod |
| 96a40 | 65 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 66 69 6c 65 3a 0a 20 20 20 20 20 20 3c | e>build.zig</code>.file:.......< |
| 96a60 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | /p>.......<pre><code.class="zig" |
| 96a80 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | ><span.class="tok-kw">const</spa |
| 96aa0 | 6e 3e 20 42 75 69 6c 64 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | n>.Builder.=.<span.class="tok-bu |
| 96ac0 | 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | iltin">@import</span>(<span.clas |
| 96ae0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 | s="tok-str">"std"</spa |
| 96b00 | 6e 3e 29 2e 62 75 69 6c 64 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>).build.Builder;..<span.class= |
| 96b20 | 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">pub</span>.<span.class= |
| 96b40 | 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "tok-kw">fn</span>.<span.class=" |
| 96b60 | 74 6f 6b 2d 66 6e 22 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 | tok-fn">build</span>(b:.*Builder |
| 96b80 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | ).<span.class="tok-type">void</s |
| 96ba0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 96bc0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 64 64 45 78 65 63 75 74 61 62 | const</span>.exe.=.b.addExecutab |
| 96be0 | 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 | le(<span.class="tok-str">"e |
| 96c00 | 78 61 6d 70 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | xample"</span>,.<span.class |
| 96c20 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 61 6d 70 6c 65 2e 7a 69 67 26 71 75 6f | ="tok-str">"example.zig&quo |
| 96c40 | 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 73 65 74 42 75 69 6c 64 4d 6f 64 65 | t;</span>);.....exe.setBuildMode |
| 96c60 | 28 62 2e 73 74 61 6e 64 61 72 64 52 65 6c 65 61 73 65 4f 70 74 69 6f 6e 73 28 29 29 3b 0a 20 20 | (b.standardReleaseOptions());... |
| 96c80 | 20 20 62 2e 64 65 66 61 75 6c 74 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 65 | ..b.default_step.dependOn(&e |
| 96ca0 | 78 65 2e 73 74 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | xe.step);.}</code></pre>.......< |
| 96cc0 | 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 65 73 65 20 6f 70 74 69 6f | p>.......This.causes.these.optio |
| 96ce0 | 6e 73 20 74 6f 20 62 65 20 61 76 61 69 6c 61 62 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ns.to.be.available:.......</p>.. |
| 96d00 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 20 20 | .....<pre><code.class="shell">.. |
| 96d20 | 2d 44 72 65 6c 65 61 73 65 2d 73 61 66 65 3d 5b 62 6f 6f 6c 5d 20 6f 70 74 69 6d 69 7a 61 74 69 | -Drelease-safe=[bool].optimizati |
| 96d40 | 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 20 6f 6e 0a 20 20 2d 44 72 65 6c 65 61 73 65 | ons.on.and.safety.on...-Drelease |
| 96d60 | 2d 66 61 73 74 3d 5b 62 6f 6f 6c 5d 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e | -fast=[bool].optimizations.on.an |
| 96d80 | 64 20 73 61 66 65 74 79 20 6f 66 66 0a 20 20 2d 44 72 65 6c 65 61 73 65 2d 73 6d 61 6c 6c 3d 5b | d.safety.off...-Drelease-small=[ |
| 96da0 | 62 6f 6f 6c 5d 20 73 69 7a 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 | bool].size.optimizations.on.and. |
| 96dc0 | 73 61 66 65 74 79 20 6f 66 66 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 68 | safety.off</code></pre>.......<h |
| 96de0 | 32 20 69 64 3d 22 44 65 62 75 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 62 75 67 | 2.id="Debug"><a.href="#toc-Debug |
| 96e00 | 22 3e 44 65 62 75 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | ">Debug</a>.<a.class="hdr".href= |
| 96e20 | 22 23 44 65 62 75 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | "#Debug">..</a></h2>........<pre |
| 96e40 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 | ><code.class="shell">$.zig.build |
| 96e60 | 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | -exe.example.zig</code></pre>... |
| 96e80 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 73 74 20 63 6f 6d 70 69 6c | ....<ul>.........<li>Fast.compil |
| 96ea0 | 61 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 | ation.speed</li>.........<li>Saf |
| 96ec0 | 65 74 79 20 63 68 65 63 6b 73 20 65 6e 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ety.checks.enabled</li>......... |
| 96ee0 | 3c 6c 69 3e 53 6c 6f 77 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 3c 2f 6c 69 | <li>Slow.runtime.performance</li |
| 96f00 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c | >.........<li>Large.binary.size< |
| 96f20 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4e 6f 20 72 65 70 72 6f 64 75 63 69 62 6c 65 | /li>.........<li>No.reproducible |
| 96f40 | 20 62 75 69 6c 64 20 72 65 71 75 69 72 65 6d 65 6e 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f | .build.requirement</li>.......</ |
| 96f60 | 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 6c 65 61 73 65 | ul>..............<h2.id="Release |
| 96f80 | 46 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6c 65 61 73 65 46 61 73 74 22 | Fast"><a.href="#toc-ReleaseFast" |
| 96fa0 | 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | >ReleaseFast</a>.<a.class="hdr". |
| 96fc0 | 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | href="#ReleaseFast">..</a></h2>. |
| 96fe0 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | .......<pre><code.class="shell"> |
| 97000 | 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 20 2d 4f 20 52 | $.zig.build-exe.example.zig.-O.R |
| 97020 | 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 75 | eleaseFast</code></pre>.......<u |
| 97040 | 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 73 74 20 72 75 6e 74 69 6d 65 20 70 65 72 66 | l>.........<li>Fast.runtime.perf |
| 97060 | 6f 72 6d 61 6e 63 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 | ormance</li>.........<li>Safety. |
| 97080 | 63 68 65 63 6b 73 20 64 69 73 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | checks.disabled</li>.........<li |
| 970a0 | 3e 53 6c 6f 77 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 | >Slow.compilation.speed</li>.... |
| 970c0 | 20 20 20 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a | .....<li>Large.binary.size</li>. |
| 970e0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f | ........<li>Reproducible.build</ |
| 97100 | 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 | li>.......</ul>..............<h2 |
| 97120 | 20 69 64 3d 22 52 65 6c 65 61 73 65 53 61 66 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | .id="ReleaseSafe"><a.href="#toc- |
| 97140 | 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 20 3c 61 20 | ReleaseSafe">ReleaseSafe</a>.<a. |
| 97160 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e | class="hdr".href="#ReleaseSafe"> |
| 97180 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..</a></h2>........<pre><code.cl |
| 971a0 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 78 61 6d | ass="shell">$.zig.build-exe.exam |
| 971c0 | 70 6c 65 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 63 6f 64 65 3e 3c 2f 70 | ple.zig.-O.ReleaseSafe</code></p |
| 971e0 | 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 65 64 69 75 | re>.......<ul>.........<li>Mediu |
| 97200 | 6d 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 | m.runtime.performance</li>...... |
| 97220 | 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 65 6e 61 62 6c 65 64 3c 2f 6c 69 | ...<li>Safety.checks.enabled</li |
| 97240 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 | >.........<li>Slow.compilation.s |
| 97260 | 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 | peed</li>.........<li>Large.bina |
| 97280 | 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 70 72 6f 64 75 | ry.size</li>.........<li>Reprodu |
| 972a0 | 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | cible.build</li>.......</ul>.... |
| 972c0 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e | ..........<h2.id="ReleaseSmall"> |
| 972e0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 | <a.href="#toc-ReleaseSmall">Rele |
| 97300 | 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | aseSmall</a>.<a.class="hdr".href |
| 97320 | 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | ="#ReleaseSmall">..</a></h2>.... |
| 97340 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | ....<pre><code.class="shell">$.z |
| 97360 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 | ig.build-exe.example.zig.-O.Rele |
| 97380 | 61 73 65 53 6d 61 6c 6c 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | aseSmall</code></pre>.......<ul> |
| 973a0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 65 64 69 75 6d 20 72 75 6e 74 69 6d 65 20 70 65 72 66 | .........<li>Medium.runtime.perf |
| 973c0 | 6f 72 6d 61 6e 63 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 | ormance</li>.........<li>Safety. |
| 973e0 | 63 68 65 63 6b 73 20 64 69 73 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | checks.disabled</li>.........<li |
| 97400 | 3e 53 6c 6f 77 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 | >Slow.compilation.speed</li>.... |
| 97420 | 20 20 20 20 20 3c 6c 69 3e 53 6d 61 6c 6c 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a | .....<li>Small.binary.size</li>. |
| 97440 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f | ........<li>Reproducible.build</ |
| 97460 | 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e | li>.......</ul>..............<p> |
| 97480 | 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | See.also:</p><ul>.<li><a.href="# |
| 974a0 | 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 | Compile-Variables">Compile.Varia |
| 974c0 | 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d | bles</a></li>.<li><a.href="#Zig- |
| 974e0 | 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f | Build-System">Zig.Build.System</ |
| 97500 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d | a></li>.<li><a.href="#Undefined- |
| 97520 | 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e | Behavior">Undefined.Behavior</a> |
| 97540 | 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 | </li>.</ul>................<h1.i |
| 97560 | 64 3d 22 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e 3c 61 20 68 72 | d="Single-Threaded-Builds"><a.hr |
| 97580 | 65 66 3d 22 23 74 6f 63 2d 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 | ef="#toc-Single-Threaded-Builds" |
| 975a0 | 3e 53 69 6e 67 6c 65 20 54 68 72 65 61 64 65 64 20 42 75 69 6c 64 73 3c 2f 61 3e 20 3c 61 20 63 | >Single.Threaded.Builds</a>.<a.c |
| 975c0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 | lass="hdr".href="#Single-Threade |
| 975e0 | 64 2d 42 75 69 6c 64 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | d-Builds">..</a></h1>........<p> |
| 97600 | 5a 69 67 20 68 61 73 20 61 20 63 6f 6d 70 69 6c 65 20 6f 70 74 69 6f 6e 20 3c 63 6f 64 65 3e 2d | Zig.has.a.compile.option.<code>- |
| 97620 | 2d 73 69 6e 67 6c 65 2d 74 68 72 65 61 64 65 64 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 68 61 | -single-threaded</code>.which.ha |
| 97640 | 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 66 66 65 63 74 73 3a 3c 2f 70 3e 0a 20 20 20 | s.the.following.effects:</p>.... |
| 97660 | 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 3c 61 20 68 72 65 66 3d | ...<ul>.........<li>All.<a.href= |
| 97680 | 22 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 54 68 72 65 61 64 | "#Thread-Local-Variables">Thread |
| 976a0 | 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 61 72 65 20 74 72 65 61 74 65 64 | .Local.Variables</a>.are.treated |
| 976c0 | 20 61 73 20 72 65 67 75 6c 61 72 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d | .as.regular.<a.href="#Container- |
| 976e0 | 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6e 74 61 69 6e 65 72 20 4c 65 76 65 6c | Level-Variables">Container.Level |
| 97700 | 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | .Variables</a>.</li>.........<li |
| 97720 | 3e 54 68 65 20 6f 76 65 72 68 65 61 64 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 | >The.overhead.of.<a.href="#Async |
| 97740 | 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 | -Functions">Async.Functions</a>. |
| 97760 | 62 65 63 6f 6d 65 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 63 | becomes.equivalent.to.function.c |
| 97780 | 61 6c 6c 20 6f 76 65 72 68 65 61 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 | all.overhead.</li>.........<li>T |
| 977a0 | 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | he.<code.class="zig"><span.class |
| 977c0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@import</span>(<s |
| 977e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 | pan.class="tok-str">"builti |
| 97800 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 73 69 6e 67 6c 65 5f 74 68 72 65 61 64 65 64 3c | n"</span>).single_threaded< |
| 97820 | 2f 63 6f 64 65 3e 20 62 65 63 6f 6d 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | /code>.becomes.<code.class="zig" |
| 97840 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 | ><span.class="tok-null">true</sp |
| 97860 | 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 74 68 65 72 65 66 6f | an></code>...........and.therefo |
| 97880 | 72 65 20 76 61 72 69 6f 75 73 20 75 73 65 72 6c 61 6e 64 20 41 50 49 73 20 77 68 69 63 68 20 72 | re.various.userland.APIs.which.r |
| 978a0 | 65 61 64 20 74 68 69 73 20 76 61 72 69 61 62 6c 65 20 62 65 63 6f 6d 65 20 6d 6f 72 65 20 65 66 | ead.this.variable.become.more.ef |
| 978c0 | 66 69 63 69 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 3c | ficient............For.example.< |
| 978e0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 4d 75 74 65 78 3c 2f 63 6f 64 65 | code.class="zig">std.Mutex</code |
| 97900 | 3e 20 62 65 63 6f 6d 65 73 0a 20 20 20 20 20 20 20 20 20 20 61 6e 20 65 6d 70 74 79 20 64 61 74 | >.becomes...........an.empty.dat |
| 97920 | 61 20 73 74 72 75 63 74 75 72 65 20 61 6e 64 20 61 6c 6c 20 6f 66 20 69 74 73 20 66 75 6e 63 74 | a.structure.and.all.of.its.funct |
| 97940 | 69 6f 6e 73 20 62 65 63 6f 6d 65 20 6e 6f 2d 6f 70 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c | ions.become.no-ops.</li>.......< |
| 97960 | 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 55 6e 64 65 66 | /ul>...............<h1.id="Undef |
| 97980 | 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 55 6e 64 | ined-Behavior"><a.href="#toc-Und |
| 979a0 | 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 | efined-Behavior">Undefined.Behav |
| 979c0 | 69 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 55 6e | ior</a>.<a.class="hdr".href="#Un |
| 979e0 | 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 | defined-Behavior">..</a></h1>... |
| 97a00 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 6d 61 6e 79 20 69 6e 73 74 | .....<p>.......Zig.has.many.inst |
| 97a20 | 61 6e 63 65 73 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 20 49 66 20 | ances.of.undefined.behavior..If. |
| 97a40 | 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 69 73 0a 20 20 20 20 20 20 64 65 74 65 | undefined.behavior.is.......dete |
| 97a60 | 63 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 5a 69 67 20 65 6d 69 74 73 20 | cted.at.compile-time,.Zig.emits. |
| 97a80 | 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 61 6e 64 20 72 65 66 75 73 65 73 20 74 6f 20 63 | a.compile.error.and.refuses.to.c |
| 97aa0 | 6f 6e 74 69 6e 75 65 2e 0a 20 20 20 20 20 20 4d 6f 73 74 20 75 6e 64 65 66 69 6e 65 64 20 62 65 | ontinue........Most.undefined.be |
| 97ac0 | 68 61 76 69 6f 72 20 74 68 61 74 20 63 61 6e 6e 6f 74 20 62 65 20 64 65 74 65 63 74 65 64 20 61 | havior.that.cannot.be.detected.a |
| 97ae0 | 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 61 6e 20 62 65 20 64 65 74 65 63 74 65 64 0a 20 | t.compile-time.can.be.detected.. |
| 97b00 | 20 20 20 20 20 61 74 20 72 75 6e 74 69 6d 65 2e 20 49 6e 20 74 68 65 73 65 20 63 61 73 65 73 2c | .....at.runtime..In.these.cases, |
| 97b20 | 20 5a 69 67 20 68 61 73 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 2e 20 53 61 66 65 74 79 20 63 | .Zig.has.safety.checks..Safety.c |
| 97b40 | 68 65 63 6b 73 20 63 61 6e 20 62 65 20 64 69 73 61 62 6c 65 64 0a 20 20 20 20 20 20 6f 6e 20 61 | hecks.can.be.disabled.......on.a |
| 97b60 | 20 70 65 72 2d 62 6c 6f 63 6b 20 62 61 73 69 73 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 | .per-block.basis.with.<a.href="# |
| 97b80 | 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 | setRuntimeSafety">@setRuntimeSaf |
| 97ba0 | 65 74 79 3c 2f 61 3e 2e 20 54 68 65 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 | ety</a>..The.<a.href="#ReleaseFa |
| 97bc0 | 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 0a 20 20 20 20 20 20 61 6e 64 20 3c 61 | st">ReleaseFast</a>.......and.<a |
| 97be0 | 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 | .href="#ReleaseSmall">ReleaseSma |
| 97c00 | 6c 6c 3c 2f 61 3e 20 62 75 69 6c 64 20 6d 6f 64 65 73 20 64 69 73 61 62 6c 65 20 61 6c 6c 20 73 | ll</a>.build.modes.disable.all.s |
| 97c20 | 61 66 65 74 79 20 63 68 65 63 6b 73 20 28 65 78 63 65 70 74 20 77 68 65 72 65 20 6f 76 65 72 72 | afety.checks.(except.where.overr |
| 97c40 | 69 64 64 65 6e 0a 20 20 20 20 20 20 62 79 20 3c 61 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 | idden.......by.<a.href="#setRunt |
| 97c60 | 69 6d 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e | imeSafety">@setRuntimeSafety</a> |
| 97c80 | 29 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 61 63 69 6c 69 74 61 74 65 20 6f 70 74 69 6d 69 7a | ).in.order.to.facilitate.optimiz |
| 97ca0 | 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ations........</p>.......<p>.... |
| 97cc0 | 20 20 20 57 68 65 6e 20 61 20 73 61 66 65 74 79 20 63 68 65 63 6b 20 66 61 69 6c 73 2c 20 5a 69 | ...When.a.safety.check.fails,.Zi |
| 97ce0 | 67 20 63 72 61 73 68 65 73 20 77 69 74 68 20 61 20 73 74 61 63 6b 20 74 72 61 63 65 2c 20 6c 69 | g.crashes.with.a.stack.trace,.li |
| 97d00 | 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | ke.this:.......</p>.......<p.cla |
| 97d20 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 97d40 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 97d60 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 97d80 | 74 72 22 3e 26 71 75 6f 74 3b 73 61 66 65 74 79 20 63 68 65 63 6b 26 71 75 6f 74 3b 3c 2f 73 70 | tr">"safety.check"</sp |
| 97da0 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 | an>.{.....<span.class="tok-kw">u |
| 97dc0 | 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | nreachable</span>;.}</code></pre |
| 97de0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 97e00 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 | test.test.zig.Test.[1/1].test.&q |
| 97e20 | 75 6f 74 3b 73 61 66 65 74 79 20 63 68 65 63 6b 26 71 75 6f 74 3b 2e 2e 2e 20 0a 74 68 72 65 61 | uot;safety.check".....threa |
| 97e40 | 64 20 31 36 34 32 35 20 70 61 6e 69 63 3a 20 72 65 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 | d.16425.panic:.reached.unreachab |
| 97e60 | 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 | le.code.<span.class="t1_0">/home |
| 97e80 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | /andy/Downloads/zig/docgen_tmp/t |
| 97ea0 | 65 73 74 2e 7a 69 67 3a 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | est.zig:2:5</span>:.<span.class= |
| 97ec0 | 22 74 32 5f 30 22 3e 30 78 32 30 36 36 65 61 20 69 6e 20 74 65 73 74 20 26 71 75 6f 74 3b 73 61 | "t2_0">0x2066ea.in.test."sa |
| 97ee0 | 66 65 74 79 20 63 68 65 63 6b 26 71 75 6f 74 3b 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | fety.check".(test)</span>.. |
| 97f00 | 20 20 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ...unreachable;.....<span.class= |
| 97f20 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 | "t32_1">^</span>.<span.class="t1 |
| 97f40 | 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 | _0">/home/andy/Downloads/zig/lib |
| 97f60 | 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 37 36 3a | /std/special/test_runner.zig:76: |
| 97f80 | 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 | 28</span>:.<span.class="t2_0">0x |
| 97fa0 | 32 32 63 66 63 61 20 69 6e 20 73 74 64 2e 73 70 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 | 22cfca.in.std.special.main.(test |
| 97fc0 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e | )</span>.........}.else.test_fn. |
| 97fe0 | 66 75 6e 63 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | func();......................... |
| 98000 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 98020 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | <span.class="t1_0">/home/andy/Do |
| 98040 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 37 | wnloads/zig/lib/std/start.zig:47 |
| 98060 | 31 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e | 1:37</span>:.<span.class="t2_0"> |
| 98080 | 30 78 32 32 35 35 32 61 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 | 0x22552a.in.std.start.callMain.( |
| 980a0 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 | test)</span>.............const.r |
| 980c0 | 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 | esult.=.root.main().catch.|err|. |
| 980e0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | {............................... |
| 98100 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 98120 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | n>.<span.class="t1_0">/home/andy |
| 98140 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | /Downloads/zig/lib/std/start.zig |
| 98160 | 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | :413:12</span>:.<span.class="t2_ |
| 98180 | 30 22 3e 30 78 32 30 39 33 61 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 | 0">0x2093ae.in.std.start.callMai |
| 981a0 | 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 | nWithArgs.(test)</span>.....retu |
| 981c0 | 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f | rn.@call(.{..modifier.=..always_ |
| 981e0 | 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 | inline.},.callMain,..{});....... |
| 98200 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e | .....<span.class="t32_1">^</span |
| 98220 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | >.<span.class="t1_0">/home/andy/ |
| 98240 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | Downloads/zig/lib/std/start.zig: |
| 98260 | 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | 332:17</span>:.<span.class="t2_0 |
| 98280 | 22 3e 30 78 32 30 38 33 64 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c | ">0x2083d6.in.std.start.posixCal |
| 982a0 | 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 | lMainAndExit.(test)</span>.....s |
| 982c0 | 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 | td.os.exit(@call(.{..modifier.=. |
| 982e0 | 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 | .always_inline.},.callMainWithAr |
| 98300 | 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 | gs,..{.argc,.argv,.envp.}));.... |
| 98320 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| 98340 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f | >^</span>.<span.class="t1_0">/ho |
| 98360 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | me/andy/Downloads/zig/lib/std/st |
| 98380 | 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | art.zig:245:5</span>:.<span.clas |
| 983a0 | 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 38 31 65 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f | s="t2_0">0x2081e2.in.std.start._ |
| 983c0 | 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b | start.(test)</span>.....@call(.{ |
| 983e0 | 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f | ..modifier.=..never_inline.},.po |
| 98400 | 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 | sixCallMainAndExit,..{});.....<s |
| 98420 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 | pan.class="t32_1">^</span>.error |
| 98440 | 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 | :.the.following.test.command.cra |
| 98460 | 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 33 33 33 | shed:.docgen_tmp/zig-cache/o/333 |
| 98480 | 61 38 37 34 31 38 31 36 37 30 32 64 61 66 64 30 66 66 39 39 61 66 33 38 30 65 62 62 31 2f 74 65 | a8741816702dafd0ff99af380ebb1/te |
| 984a0 | 73 74 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 62 75 69 6c | st./home/andy/Downloads/zig/buil |
| 984c0 | 64 2d 72 65 6c 65 61 73 65 2f 7a 69 67 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | d-release/zig.</code></pre>..... |
| 984e0 | 20 20 20 3c 68 32 20 69 64 3d 22 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d | ...<h2.id="Reaching-Unreachable- |
| 98500 | 43 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 61 63 68 69 6e 67 2d 55 6e 72 | Code"><a.href="#toc-Reaching-Unr |
| 98520 | 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e 52 65 61 63 68 69 6e 67 20 55 6e 72 65 61 63 68 61 | eachable-Code">Reaching.Unreacha |
| 98540 | 62 6c 65 20 43 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | ble.Code</a>.<a.class="hdr".href |
| 98560 | 3d 22 23 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e c2 a7 | ="#Reaching-Unreachable-Code">.. |
| 98580 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 | </a></h2>........<p>At.compile-t |
| 985a0 | 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ime:</p>.......<p.class="file">t |
| 985c0 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 985e0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | "><span.class="tok-kw">comptime< |
| 98600 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>.{.....assert(<span.class= |
| 98620 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 | "tok-null">false</span>);.}.<spa |
| 98640 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| 98660 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 73 73 65 72 74 3c 2f 73 70 61 6e 3e 28 6f 6b | .class="tok-fn">assert</span>(ok |
| 98680 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 | :.<span.class="tok-type">bool</s |
| 986a0 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 | pan>).<span.class="tok-type">voi |
| 986c0 | 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | d</span>.{.....<span.class="tok- |
| 986e0 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 6f 6b 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | kw">if</span>.(!ok).<span.class= |
| 98700 | 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 | "tok-kw">unreachable</span>;.<sp |
| 98720 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 | an.class="tok-comment">//.assert |
| 98740 | 69 6f 6e 20 66 61 69 6c 75 72 65 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ion.failure</span>.}</code></pre |
| 98760 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 98780 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | test.test.zig.<span.class="t0_1" |
| 987a0 | 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 34 3a 20 3c 2f 73 | >./docgen_tmp/test.zig:5:14:.</s |
| 987c0 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c | pan><span.class="t31_1">error:.< |
| 987e0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 61 63 68 65 64 | /span><span.class="t0_1">reached |
| 98800 | 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 | .unreachable.code</span>.....if. |
| 98820 | 28 21 6f 6b 29 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 20 2f 2f 20 61 73 73 65 72 74 69 6f 6e 20 | (!ok).unreachable;.//.assertion. |
| 98840 | 66 61 69 6c 75 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | failure..............<span.class |
| 98860 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 98880 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 31 3a | 0_1">./docgen_tmp/test.zig:2:11: |
| 988a0 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 | .</span><span.class="t36_1">note |
| 988c0 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c | :.</span><span.class="t0_1">call |
| 988e0 | 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 | ed.from.here</span>.....assert(f |
| 98900 | 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | alse);...........<span.class="t3 |
| 98920 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | 2_1">^</span>.<span.class="t0_1" |
| 98940 | 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 3a 31 30 3a 20 3c 2f 73 | >./docgen_tmp/test.zig:1:10:.</s |
| 98960 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f | pan><span.class="t36_1">note:.</ |
| 98980 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 | span><span.class="t0_1">called.f |
| 989a0 | 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 63 6f 6d 70 74 69 6d 65 20 7b 0a 20 20 20 20 20 | rom.here</span>.comptime.{...... |
| 989c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 989e0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 | .<span.class="t0_1">./docgen_tmp |
| 98a00 | 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | /test.zig:2:11:.</span><span.cla |
| 98a20 | 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | ss="t36_1">note:.</span><span.cl |
| 98a40 | 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e | ass="t0_1">referenced.here</span |
| 98a60 | 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 3c | >.....assert(false);...........< |
| 98a80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f | span.class="t32_1">^</span>.</co |
| 98aa0 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c | de></pre>........<p>At.runtime:< |
| 98ac0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 98ae0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 98b00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 | an.class="tok-kw">const</span>.s |
| 98b20 | 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | td.=.<span.class="tok-builtin">@ |
| 98b40 | 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | import</span>(<span.class="tok-s |
| 98b60 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 | tr">"std"</span>);..<s |
| 98b80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 | pan.class="tok-kw">pub</span>.<s |
| 98ba0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 | pan.class="tok-kw">fn</span>.<sp |
| 98bc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 | an.class="tok-fn">main</span>(). |
| 98be0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 | <span.class="tok-type">void</spa |
| 98c00 | 6e 3e 20 7b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 3c 73 70 61 6e 20 | n>.{.....std.debug.assert(<span. |
| 98c20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a | class="tok-null">false</span>);. |
| 98c40 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 98c60 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a | shell">$.zig.build-exe.test.zig. |
| 98c80 | 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 36 34 39 31 20 70 61 6e 69 63 3a 20 72 65 61 | $../test.thread.16491.panic:.rea |
| 98ca0 | 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 | ched.unreachable.code.<span.clas |
| 98cc0 | 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 | s="t1_0">/home/andy/Downloads/zi |
| 98ce0 | 67 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 32 32 36 3a 31 34 3c 2f 73 70 61 6e | g/lib/std/debug.zig:226:14</span |
| 98d00 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 32 63 62 20 69 | >:.<span.class="t2_0">0x2042cb.i |
| 98d20 | 6e 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | n.std.debug.assert.(test)</span> |
| 98d40 | 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 20 2f 2f 20 61 73 | .....if.(!ok).unreachable;.//.as |
| 98d60 | 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | sertion.failure..............<sp |
| 98d80 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| 98da0 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| 98dc0 | 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 32 31 3c 2f | s/zig/docgen_tmp/test.zig:4:21</ |
| 98de0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 39 65 | span>:.<span.class="t2_0">0x229e |
| 98e00 | 65 61 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 | ea.in.main.(test)</span>.....std |
| 98e20 | 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | .debug.assert(false);........... |
| 98e40 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 98e60 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f | /span>.<span.class="t1_0">/home/ |
| 98e80 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | andy/Downloads/zig/lib/std/start |
| 98ea0 | 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .zig:461:22</span>:.<span.class= |
| 98ec0 | 22 74 32 5f 30 22 3e 30 78 32 32 32 32 63 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c | "t2_0">0x2222cc.in.std.start.cal |
| 98ee0 | 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | lMain.(test)</span>............. |
| 98f00 | 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | root.main();.................... |
| 98f20 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 98f40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 | span.class="t1_0">/home/andy/Dow |
| 98f60 | 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 | nloads/zig/lib/std/start.zig:413 |
| 98f80 | 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 | :12</span>:.<span.class="t2_0">0 |
| 98fa0 | 78 32 30 36 31 35 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 | x20615e.in.std.start.callMainWit |
| 98fc0 | 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 | hArgs.(test)</span>.....return.@ |
| 98fe0 | 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 | call(.{..modifier.=..always_inli |
| 99000 | 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | ne.},.callMain,..{});........... |
| 99020 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .<span.class="t32_1">^</span>.<s |
| 99040 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e | pan.class="t1_0">/home/andy/Down |
| 99060 | 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a | loads/zig/lib/std/start.zig:332: |
| 99080 | 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 | 17</span>:.<span.class="t2_0">0x |
| 990a0 | 32 30 35 31 38 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 | 205186.in.std.start.posixCallMai |
| 990c0 | 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f | nAndExit.(test)</span>.....std.o |
| 990e0 | 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 | s.exit(@call(.{..modifier.=..alw |
| 99100 | 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 | ays_inline.},.callMainWithArgs,. |
| 99120 | 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 | .{.argc,.argv,.envp.}));........ |
| 99140 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 99160 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 | span>.<span.class="t1_0">/home/a |
| 99180 | 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e | ndy/Downloads/zig/lib/std/start. |
| 991a0 | 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig:245:5</span>:.<span.class="t |
| 991c0 | 32 5f 30 22 3e 30 78 32 30 34 66 39 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 | 2_0">0x204f92.in.std.start._star |
| 991e0 | 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f | t.(test)</span>.....@call(.{..mo |
| 99200 | 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 | difier.=..never_inline.},.posixC |
| 99220 | 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | allMainAndExit,..{});.....<span. |
| 99240 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 | class="t32_1">^</span>.(process. |
| 99260 | 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | terminated.by.signal)</code></pr |
| 99280 | 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 64 65 78 2d 6f | e>...............<h2.id="Index-o |
| 992a0 | 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 64 65 | ut-of-Bounds"><a.href="#toc-Inde |
| 992c0 | 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e 49 6e 64 65 78 20 6f 75 74 20 6f 66 20 42 6f | x-out-of-Bounds">Index.out.of.Bo |
| 992e0 | 75 6e 64 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 | unds</a>.<a.class="hdr".href="#I |
| 99300 | 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | ndex-out-of-Bounds">..</a></h2>. |
| 99320 | 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 | .......<p>At.compile-time:</p>.. |
| 99340 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 99360 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 99380 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ass="tok-kw">comptime</span>.{.. |
| 993a0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| 993c0 | 70 61 6e 3e 20 61 72 72 61 79 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | pan>.array:.[<span.class="tok-nu |
| 993e0 | 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | mber">5</span>]<span.class="tok- |
| 99400 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">u8</span>.=.<span.class="t |
| 99420 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ok-str">"hello"</span> |
| 99440 | 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | .*;.....<span.class="tok-kw">con |
| 99460 | 73 74 3c 2f 73 70 61 6e 3e 20 67 61 72 62 61 67 65 20 3d 20 61 72 72 61 79 5b 3c 73 70 61 6e 20 | st</span>.garbage.=.array[<span. |
| 99480 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c | class="tok-number">5</span>];.}< |
| 994a0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 994c0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 | ell">$.zig.test.test.zig.<span.c |
| 994e0 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 99500 | 67 3a 33 3a 32 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f | g:3:26:.</span><span.class="t31_ |
| 99520 | 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 | 1">error:.</span><span.class="t0 |
| 99540 | 5f 31 22 3e 69 6e 64 65 78 20 35 20 6f 75 74 73 69 64 65 20 61 72 72 61 79 20 6f 66 20 73 69 7a | _1">index.5.outside.array.of.siz |
| 99560 | 65 20 35 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 67 61 72 62 61 67 65 20 3d 20 61 | e.5</span>.....const.garbage.=.a |
| 99580 | 72 72 61 79 5b 35 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rray[5];........................ |
| 995a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 995c0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d | /code></pre>........<p>At.runtim |
| 995e0 | 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | e:</p>.......<p.class="file">tes |
| 99600 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 99620 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">pub</span>. |
| 99640 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c | <span.class="tok-kw">fn</span>.< |
| 99660 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 | span.class="tok-fn">main</span>( |
| 99680 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | ).<span.class="tok-type">void</s |
| 996a0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 996c0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | var</span>.x.=.foo(<span.class=" |
| 996e0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | tok-str">"hello"</span |
| 99700 | 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | >);.}..<span.class="tok-kw">fn</ |
| 99720 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f | span>.<span.class="tok-fn">foo</ |
| 99740 | 73 70 61 6e 3e 28 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>(x:.[]<span.class="tok-kw"> |
| 99760 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | const</span>.<span.class="tok-ty |
| 99780 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>).<span.class="tok- |
| 997a0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | type">u8</span>.{.....<span.clas |
| 997c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 5b 3c 73 70 61 6e | s="tok-kw">return</span>.x[<span |
| 997e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d | .class="tok-number">5</span>];.} |
| 99800 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </code></pre><pre><code.class="s |
| 99820 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 | hell">$.zig.build-exe.test.zig.$ |
| 99840 | 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 36 35 35 33 20 70 61 6e 69 63 3a 20 69 6e 64 65 | ../test.thread.16553.panic:.inde |
| 99860 | 78 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f | x.out.of.bounds.<span.class="t1_ |
| 99880 | 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 | 0">/home/andy/Downloads/zig/docg |
| 998a0 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 31 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | en_tmp/test.zig:6:13</span>:.<sp |
| 998c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 31 31 37 39 20 69 6e 20 66 6f 6f 20 | an.class="t2_0">0x231179.in.foo. |
| 998e0 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 78 5b 35 5d 3b 0a 20 | (test)</span>.....return.x[5];.. |
| 99900 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 99920 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 | </span>.<span.class="t1_0">/home |
| 99940 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | /andy/Downloads/zig/docgen_tmp/t |
| 99960 | 65 73 74 2e 7a 69 67 3a 32 3a 31 36 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:2:16</span>:.<span.class |
| 99980 | 3d 22 74 32 5f 30 22 3e 30 78 32 32 39 66 30 36 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c | ="t2_0">0x229f06.in.main.(test)< |
| 999a0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 78 20 3d 20 66 6f 6f 28 26 71 75 6f 74 3b 68 65 6c | /span>.....var.x.=.foo("hel |
| 999c0 | 6c 6f 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | lo");................<span. |
| 999e0 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | class="t32_1">^</span>.<span.cla |
| 99a00 | 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a | ss="t1_0">/home/andy/Downloads/z |
| 99a20 | 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 | ig/lib/std/start.zig:461:22</spa |
| 99a40 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 32 64 63 20 | n>:.<span.class="t2_0">0x2222dc. |
| 99a60 | 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 | in.std.start.callMain.(test)</sp |
| 99a80 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 | an>.............root.main();.... |
| 99aa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..................<span.class="t |
| 99ac0 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 | 32_1">^</span>.<span.class="t1_0 |
| 99ae0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 | ">/home/andy/Downloads/zig/lib/s |
| 99b00 | 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | td/start.zig:413:12</span>:.<spa |
| 99b20 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 31 36 65 20 69 6e 20 73 74 64 2e 73 | n.class="t2_0">0x20616e.in.std.s |
| 99b40 | 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 | tart.callMainWithArgs.(test)</sp |
| 99b60 | 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 | an>.....return.@call(.{..modifie |
| 99b80 | 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 | r.=..always_inline.},.callMain,. |
| 99ba0 | 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | .{});............<span.class="t3 |
| 99bc0 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 | 2_1">^</span>.<span.class="t1_0" |
| 99be0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 | >/home/andy/Downloads/zig/lib/st |
| 99c00 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | d/start.zig:332:17</span>:.<span |
| 99c20 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 39 36 20 69 6e 20 73 74 64 2e 73 74 | .class="t2_0">0x205196.in.std.st |
| 99c40 | 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c | art.posixCallMainAndExit.(test)< |
| 99c60 | 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 | /span>.....std.os.exit(@call(.{. |
| 99c80 | 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 | .modifier.=..always_inline.},.ca |
| 99ca0 | 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 | llMainWithArgs,..{.argc,.argv,.e |
| 99cc0 | 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | nvp.}));.................<span.c |
| 99ce0 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| 99d00 | 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 | s="t1_0">/home/andy/Downloads/zi |
| 99d20 | 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e | g/lib/std/start.zig:245:5</span> |
| 99d40 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 66 61 32 20 69 6e | :.<span.class="t2_0">0x204fa2.in |
| 99d60 | 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | .std.start._start.(test)</span>. |
| 99d80 | 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f | ....@call(.{..modifier.=..never_ |
| 99da0 | 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 | inline.},.posixCallMainAndExit,. |
| 99dc0 | 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | .{});.....<span.class="t32_1">^< |
| 99de0 | 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 | /span>.(process.terminated.by.si |
| 99e00 | 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | gnal)</code></pre>.............. |
| 99e20 | 20 3c 68 32 20 69 64 3d 22 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f | .<h2.id="Cast-Negative-Number-to |
| 99e40 | 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | -Unsigned-Integer"><a.href="#toc |
| 99e60 | 2d 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f 2d 55 6e 73 69 67 6e 65 | -Cast-Negative-Number-to-Unsigne |
| 99e80 | 64 2d 49 6e 74 65 67 65 72 22 3e 43 61 73 74 20 4e 65 67 61 74 69 76 65 20 4e 75 6d 62 65 72 20 | d-Integer">Cast.Negative.Number. |
| 99ea0 | 74 6f 20 55 6e 73 69 67 6e 65 64 20 49 6e 74 65 67 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | to.Unsigned.Integer</a>.<a.class |
| 99ec0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 | ="hdr".href="#Cast-Negative-Numb |
| 99ee0 | 65 72 2d 74 6f 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f | er-to-Unsigned-Integer">..</a></ |
| 99f00 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f | h2>........<p>At.compile-time:</ |
| 99f20 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 99f40 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 99f60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e | n.class="tok-kw">comptime</span> |
| 99f80 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | .{.....<span.class="tok-kw">cons |
| 99fa0 | 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t</span>.value:.<span.class="tok |
| 99fc0 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 | -type">i32</span>.=.-<span.class |
| 99fe0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | ="tok-number">1</span>;.....<spa |
| 9a000 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e | n.class="tok-kw">const</span>.un |
| 9a020 | 73 69 67 6e 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | signed.=.<span.class="tok-builti |
| 9a040 | 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n">@intCast</span>(<span.class=" |
| 9a060 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 29 3b 0a 7d 3c | tok-type">u32</span>,.value);.}< |
| 9a080 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 9a0a0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 | ell">$.zig.test.test.zig.<span.c |
| 9a0c0 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 9a0e0 | 67 3a 33 3a 32 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f | g:3:22:.</span><span.class="t31_ |
| 9a100 | 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 | 1">error:.</span><span.class="t0 |
| 9a120 | 5f 31 22 3e 61 74 74 65 6d 70 74 20 74 6f 20 63 61 73 74 20 6e 65 67 61 74 69 76 65 20 76 61 6c | _1">attempt.to.cast.negative.val |
| 9a140 | 75 65 20 74 6f 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 | ue.to.unsigned.integer</span>... |
| 9a160 | 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 3d 20 40 69 6e 74 43 61 73 74 28 75 33 32 2c | ..const.unsigned.=.@intCast(u32, |
| 9a180 | 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | .value);......................<s |
| 9a1a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 | pan.class="t32_1">^</span>.</cod |
| 9a1c0 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f | e></pre>........<p>At.runtime:</ |
| 9a1e0 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 9a200 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 9a220 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 | n.class="tok-kw">const</span>.st |
| 9a240 | 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | d.=.<span.class="tok-builtin">@i |
| 9a260 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | mport</span>(<span.class="tok-st |
| 9a280 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 | r">"std"</span>);..<sp |
| 9a2a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 | an.class="tok-kw">pub</span>.<sp |
| 9a2c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| 9a2e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c | n.class="tok-fn">main</span>().< |
| 9a300 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e | span.class="tok-type">void</span |
| 9a320 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | >.{.....<span.class="tok-kw">var |
| 9a340 | 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.value:.<span.class="tok- |
| 9a360 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | type">i32</span>.=.-<span.class= |
| 9a380 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-number">1</span>;.....<span |
| 9a3a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 75 6e 73 69 67 | .class="tok-kw">var</span>.unsig |
| 9a3c0 | 6e 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | ned.=.<span.class="tok-builtin"> |
| 9a3e0 | 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | @intCast</span>(<span.class="tok |
| 9a400 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 73 | -type">u32</span>,.value);.....s |
| 9a420 | 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | td.debug.print(<span.class="tok- |
| 9a440 | 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | str">"value:.{}\n"</sp |
| 9a460 | 61 6e 3e 2c 20 2e 7b 75 6e 73 69 67 6e 65 64 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | an>,..{unsigned});.}</code></pre |
| 9a480 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 9a4a0 | 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 | build-exe.test.zig.$../test.thre |
| 9a4c0 | 61 64 20 31 36 36 31 34 20 70 61 6e 69 63 3a 20 61 74 74 65 6d 70 74 20 74 6f 20 63 61 73 74 20 | ad.16614.panic:.attempt.to.cast. |
| 9a4e0 | 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 20 74 6f 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 | negative.value.to.unsigned.integ |
| 9a500 | 65 72 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | er.<span.class="t1_0">/home/andy |
| 9a520 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | /Downloads/zig/docgen_tmp/test.z |
| 9a540 | 69 67 3a 35 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | ig:5:20</span>:.<span.class="t2_ |
| 9a560 | 30 22 3e 30 78 32 32 39 66 37 37 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | 0">0x229f77.in.main.(test)</span |
| 9a580 | 3e 0a 20 20 20 20 76 61 72 20 75 6e 73 69 67 6e 65 64 20 3d 20 40 69 6e 74 43 61 73 74 28 75 33 | >.....var.unsigned.=.@intCast(u3 |
| 9a5a0 | 32 2c 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | 2,.value);....................<s |
| 9a5c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| 9a5e0 | 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 | .class="t1_0">/home/andy/Downloa |
| 9a600 | 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c | ds/zig/lib/std/start.zig:461:22< |
| 9a620 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 | /span>:.<span.class="t2_0">0x222 |
| 9a640 | 33 31 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 | 31c.in.std.start.callMain.(test) |
| 9a660 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b | </span>.............root.main(); |
| 9a680 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......................<span.clas |
| 9a6a0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 9a6c0 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c | t1_0">/home/andy/Downloads/zig/l |
| 9a6e0 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/start.zig:413:12</span>:. |
| 9a700 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 31 61 65 20 69 6e 20 73 | <span.class="t2_0">0x2061ae.in.s |
| 9a720 | 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 | td.start.callMainWithArgs.(test) |
| 9a740 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 | </span>.....return.@call(.{..mod |
| 9a760 | 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 | ifier.=..always_inline.},.callMa |
| 9a780 | 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | in,..{});............<span.class |
| 9a7a0 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 9a7c0 | 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 | 1_0">/home/andy/Downloads/zig/li |
| 9a7e0 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c | b/std/start.zig:332:17</span>:.< |
| 9a800 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 64 36 20 69 6e 20 73 74 | span.class="t2_0">0x2051d6.in.st |
| 9a820 | 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 | d.start.posixCallMainAndExit.(te |
| 9a840 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c | st)</span>.....std.os.exit(@call |
| 9a860 | 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d | (.{..modifier.=..always_inline.} |
| 9a880 | 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 | ,.callMainWithArgs,..{.argc,.arg |
| 9a8a0 | 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | v,.envp.}));.................<sp |
| 9a8c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| 9a8e0 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| 9a900 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 | s/zig/lib/std/start.zig:245:5</s |
| 9a920 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 66 65 | pan>:.<span.class="t2_0">0x204fe |
| 9a940 | 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 | 2.in.std.start._start.(test)</sp |
| 9a960 | 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 | an>.....@call(.{..modifier.=..ne |
| 9a980 | 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 | ver_inline.},.posixCallMainAndEx |
| 9a9a0 | 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | it,..{});.....<span.class="t32_1 |
| 9a9c0 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 | ">^</span>.(process.terminated.b |
| 9a9e0 | 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | y.signal)</code></pre>........<p |
| 9aa00 | 3e 0a 20 20 20 20 20 20 54 6f 20 6f 62 74 61 69 6e 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 76 61 | >.......To.obtain.the.maximum.va |
| 9aa20 | 6c 75 65 20 6f 66 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 2c 20 75 73 65 20 | lue.of.an.unsigned.integer,.use. |
| 9aa40 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 6d 61 74 68 2e 6d 61 78 49 6e | <code.class="zig">std.math.maxIn |
| 9aa60 | 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | t</code>........</p>............ |
| 9aa80 | 20 20 3c 68 32 20 69 64 3d 22 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 3e 3c | ..<h2.id="Cast-Truncates-Data">< |
| 9aaa0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 | a.href="#toc-Cast-Truncates-Data |
| 9aac0 | 22 3e 43 61 73 74 20 54 72 75 6e 63 61 74 65 73 20 44 61 74 61 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ">Cast.Truncates.Data</a>.<a.cla |
| 9aae0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 | ss="hdr".href="#Cast-Truncates-D |
| 9ab00 | 61 74 61 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f | ata">..</a></h2>........<p>At.co |
| 9ab20 | 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | mpile-time:</p>.......<p.class=" |
| 9ab40 | 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | file">test.zig</p><pre><code.cla |
| 9ab60 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| 9ab80 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mptime</span>.{.....<span.class= |
| 9aba0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 70 61 72 74 61 6e 5f 63 6f | "tok-kw">const</span>.spartan_co |
| 9abc0 | 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c | unt:.<span.class="tok-type">u16< |
| 9abe0 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | /span>.=.<span.class="tok-number |
| 9ac00 | 22 3e 33 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">300</span>;.....<span.class="t |
| 9ac20 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 20 3d 20 3c 73 70 61 6e | ok-kw">const</span>.byte.=.<span |
| 9ac40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 | .class="tok-builtin">@intCast</s |
| 9ac60 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | pan>(<span.class="tok-type">u8</ |
| 9ac80 | 73 70 61 6e 3e 2c 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | span>,.spartan_count);.}</code>< |
| 9aca0 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 9acc0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig.test.test.zig.<span.class="t |
| 9ace0 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 31 38 3a | 0_1">./docgen_tmp/test.zig:3:18: |
| 9ad00 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f | .</span><span.class="t31_1">erro |
| 9ad20 | 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 73 | r:.</span><span.class="t0_1">cas |
| 9ad40 | 74 20 66 72 6f 6d 20 27 75 31 36 27 20 74 6f 20 27 75 38 27 20 74 72 75 6e 63 61 74 65 73 20 62 | t.from.'u16'.to.'u8'.truncates.b |
| 9ad60 | 69 74 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 62 79 74 65 20 3d 20 40 69 6e 74 | its</span>.....const.byte.=.@int |
| 9ad80 | 43 61 73 74 28 75 38 2c 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 29 3b 0a 20 20 20 20 20 20 20 | Cast(u8,.spartan_count);........ |
| 9ada0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 9adc0 | 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 | /span>.</code></pre>........<p>A |
| 9ade0 | 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | t.runtime:</p>.......<p.class="f |
| 9ae00 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| 9ae20 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 9ae40 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| 9ae60 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| 9ae80 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| 9aea0 | 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | span>);..<span.class="tok-kw">pu |
| 9aec0 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | b</span>.<span.class="tok-kw">fn |
| 9aee0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 | </span>.<span.class="tok-fn">mai |
| 9af00 | 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n</span>().<span.class="tok-type |
| 9af20 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">void</span>.{.....<span.class= |
| 9af40 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e | "tok-kw">var</span>.spartan_coun |
| 9af60 | 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 | t:.<span.class="tok-type">u16</s |
| 9af80 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pan>.=.<span.class="tok-number"> |
| 9afa0 | 33 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 300</span>;.....<span.class="tok |
| 9afc0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 20 3d 20 3c 73 70 61 6e 20 63 | -kw">const</span>.byte.=.<span.c |
| 9afe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 | lass="tok-builtin">@intCast</spa |
| 9b000 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | n>(<span.class="tok-type">u8</sp |
| 9b020 | 61 6e 3e 2c 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 | an>,.spartan_count);.....std.deb |
| 9b040 | 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ug.print(<span.class="tok-str">& |
| 9b060 | 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | quot;value:.{}\n"</span>,.. |
| 9b080 | 7b 62 79 74 65 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | {byte});.}</code></pre><pre><cod |
| 9b0a0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 | e.class="shell">$.zig.build-exe. |
| 9b0c0 | 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 36 36 37 37 20 70 | test.zig.$../test.thread.16677.p |
| 9b0e0 | 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 63 61 73 74 20 74 72 75 6e 63 61 74 65 64 20 62 69 74 | anic:.integer.cast.truncated.bit |
| 9b100 | 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | s.<span.class="t1_0">/home/andy/ |
| 9b120 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | Downloads/zig/docgen_tmp/test.zi |
| 9b140 | 67 3a 35 3a 31 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | g:5:18</span>:.<span.class="t2_0 |
| 9b160 | 22 3e 30 78 32 32 39 66 37 63 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | ">0x229f7c.in.main.(test)</span> |
| 9b180 | 0a 20 20 20 20 63 6f 6e 73 74 20 62 79 74 65 20 3d 20 40 69 6e 74 43 61 73 74 28 75 38 2c 20 73 | .....const.byte.=.@intCast(u8,.s |
| 9b1a0 | 70 61 72 74 61 6e 5f 63 6f 75 6e 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | partan_count);.................. |
| 9b1c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 9b1e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c | an.class="t1_0">/home/andy/Downl |
| 9b200 | 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 | oads/zig/lib/std/start.zig:461:2 |
| 9b220 | 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 | 2</span>:.<span.class="t2_0">0x2 |
| 9b240 | 32 32 33 31 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 | 2231c.in.std.start.callMain.(tes |
| 9b260 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 | t)</span>.............root.main( |
| 9b280 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | );......................<span.cl |
| 9b2a0 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ass="t32_1">^</span>.<span.class |
| 9b2c0 | 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 | ="t1_0">/home/andy/Downloads/zig |
| 9b2e0 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e | /lib/std/start.zig:413:12</span> |
| 9b300 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 31 61 65 20 69 6e | :.<span.class="t2_0">0x2061ae.in |
| 9b320 | 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 | .std.start.callMainWithArgs.(tes |
| 9b340 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d | t)</span>.....return.@call(.{..m |
| 9b360 | 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c | odifier.=..always_inline.},.call |
| 9b380 | 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | Main,..{});............<span.cla |
| 9b3a0 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 9b3c0 | 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f | "t1_0">/home/andy/Downloads/zig/ |
| 9b3e0 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a | lib/std/start.zig:332:17</span>: |
| 9b400 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 64 36 20 69 6e 20 | .<span.class="t2_0">0x2051d6.in. |
| 9b420 | 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 | std.start.posixCallMainAndExit.( |
| 9b440 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 | test)</span>.....std.os.exit(@ca |
| 9b460 | 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 | ll(.{..modifier.=..always_inline |
| 9b480 | 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 | .},.callMainWithArgs,..{.argc,.a |
| 9b4a0 | 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | rgv,.envp.}));.................< |
| 9b4c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 9b4e0 | 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f | n.class="t1_0">/home/andy/Downlo |
| 9b500 | 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c | ads/zig/lib/std/start.zig:245:5< |
| 9b520 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 | /span>:.<span.class="t2_0">0x204 |
| 9b540 | 66 65 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f | fe2.in.std.start._start.(test)</ |
| 9b560 | 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e | span>.....@call(.{..modifier.=.. |
| 9b580 | 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 | never_inline.},.posixCallMainAnd |
| 9b5a0 | 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | Exit,..{});.....<span.class="t32 |
| 9b5c0 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 | _1">^</span>.(process.terminated |
| 9b5e0 | 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | .by.signal)</code></pre>........ |
| 9b600 | 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 74 72 75 6e 63 61 74 65 20 62 69 74 73 2c 20 75 73 65 20 | <p>.......To.truncate.bits,.use. |
| 9b620 | 3c 61 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 | <a.href="#truncate">@truncate</a |
| 9b640 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 | >........</p>..............<h2.i |
| 9b660 | 64 3d 22 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | d="Integer-Overflow"><a.href="#t |
| 9b680 | 6f 63 2d 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 | oc-Integer-Overflow">Integer.Ove |
| 9b6a0 | 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | rflow</a>.<a.class="hdr".href="# |
| 9b6c0 | 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | Integer-Overflow">..</a></h2>... |
| 9b6e0 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 | .....<h3.id="Default-Operations" |
| 9b700 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e | ><a.href="#toc-Default-Operation |
| 9b720 | 73 22 3e 44 65 66 61 75 6c 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | s">Default.Operations</a>.<a.cla |
| 9b740 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f | ss="hdr".href="#Default-Operatio |
| 9b760 | 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 66 6f | ns">..</a></h3>........<p>The.fo |
| 9b780 | 6c 6c 6f 77 69 6e 67 20 6f 70 65 72 61 74 6f 72 73 20 63 61 6e 20 63 61 75 73 65 20 69 6e 74 65 | llowing.operators.can.cause.inte |
| 9b7a0 | 67 65 72 20 6f 76 65 72 66 6c 6f 77 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | ger.overflow:</p>.......<ul>.... |
| 9b7c0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2b 3c 2f | .......<li><code.class="zig">+</ |
| 9b7e0 | 63 6f 64 65 3e 20 28 61 64 64 69 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | code>.(addition)</li>........... |
| 9b800 | 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 2f 63 6f 64 65 3e 20 28 | <li><code.class="zig">-</code>.( |
| 9b820 | 73 75 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | subtraction)</li>...........<li> |
| 9b840 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 2f 63 6f 64 65 3e 20 28 6e 65 67 61 | <code.class="zig">-</code>.(nega |
| 9b860 | 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 | tion)</li>...........<li><code.c |
| 9b880 | 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 2f 63 6f 64 65 3e 20 28 6d 75 6c 74 69 70 6c 69 63 61 74 | lass="zig">*</code>.(multiplicat |
| 9b8a0 | 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c | ion)</li>...........<li><code.cl |
| 9b8c0 | 61 73 73 3d 22 7a 69 67 22 3e 2f 3c 2f 63 6f 64 65 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c | ass="zig">/</code>.(division)</l |
| 9b8e0 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 54 72 75 6e | i>.........<li><a.href="#divTrun |
| 9b900 | 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e | c">@divTrunc</a>.(division)</li> |
| 9b920 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 | .........<li><a.href="#divFloor" |
| 9b940 | 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 | >@divFloor</a>.(division)</li>.. |
| 9b960 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 | .......<li><a.href="#divExact">@ |
| 9b980 | 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 | divExact</a>.(division)</li>.... |
| 9b9a0 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 6d 70 6c 65 20 77 69 74 68 20 61 | ...</ul>.......<p>Example.with.a |
| 9b9c0 | 64 64 69 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 | ddition.at.compile-time:</p>.... |
| 9b9e0 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 9ba00 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 9ba20 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | s="tok-kw">comptime</span>.{.... |
| 9ba40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 9ba60 | 20 62 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | .byte:.<span.class="tok-type">u8 |
| 9ba80 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | </span>.=.<span.class="tok-numbe |
| 9baa0 | 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 3c 73 70 61 6e | r">255</span>;.....byte.+=.<span |
| 9bac0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c | .class="tok-number">1</span>;.}< |
| 9bae0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 9bb00 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 | ell">$.zig.test.test.zig.<span.c |
| 9bb20 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 9bb40 | 67 3a 33 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f | g:3:10:.</span><span.class="t31_ |
| 9bb60 | 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 | 1">error:.</span><span.class="t0 |
| 9bb80 | 5f 31 22 3e 6f 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 64 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 | _1">operation.caused.overflow</s |
| 9bba0 | 70 61 6e 3e 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 | pan>.....byte.+=.1;..........<sp |
| 9bbc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 | an.class="t32_1">^</span>.</code |
| 9bbe0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 | ></pre>........<p>At.runtime:</p |
| 9bc00 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 9bc20 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 9bc40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 | .class="tok-kw">const</span>.std |
| 9bc60 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | .=.<span.class="tok-builtin">@im |
| 9bc80 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | port</span>(<span.class="tok-str |
| 9bca0 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 | ">"std"</span>);..<spa |
| 9bcc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | n.class="tok-kw">pub</span>.<spa |
| 9bce0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| 9bd00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 | .class="tok-fn">main</span>().<s |
| 9bd20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e | pan.class="tok-type">void</span> |
| 9bd40 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | .{.....<span.class="tok-kw">var< |
| 9bd60 | 2f 73 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | /span>.byte:.<span.class="tok-ty |
| 9bd80 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe">u8</span>.=.<span.class="tok |
| 9bda0 | 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 79 74 65 20 2b 3d | -number">255</span>;.....byte.+= |
| 9bdc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | .<span.class="tok-number">1</spa |
| 9bde0 | 6e 3e 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c | n>;.....std.debug.print(<span.cl |
| 9be00 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 | ass="tok-str">"value:.{}\n& |
| 9be20 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | quot;</span>,..{byte});.}</code> |
| 9be40 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 9be60 | 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 | .zig.build-exe.test.zig.$../test |
| 9be80 | 0a 74 68 72 65 61 64 20 31 36 37 33 39 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 6f 76 65 | .thread.16739.panic:.integer.ove |
| 9bea0 | 72 66 6c 6f 77 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 | rflow.<span.class="t1_0">/home/a |
| 9bec0 | 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | ndy/Downloads/zig/docgen_tmp/tes |
| 9bee0 | 74 2e 7a 69 67 3a 35 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.zig:5:10</span>:.<span.class=" |
| 9bf00 | 74 32 5f 30 22 3e 30 78 32 32 39 66 35 66 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 | t2_0">0x229f5f.in.main.(test)</s |
| 9bf20 | 70 61 6e 3e 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 | pan>.....byte.+=.1;..........<sp |
| 9bf40 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| 9bf60 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| 9bf80 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f | s/zig/lib/std/start.zig:461:22</ |
| 9bfa0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 | span>:.<span.class="t2_0">0x2223 |
| 9bfc0 | 31 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c | 1c.in.std.start.callMain.(test)< |
| 9bfe0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a | /span>.............root.main();. |
| 9c000 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .....................<span.class |
| 9c020 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 9c040 | 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 | 1_0">/home/andy/Downloads/zig/li |
| 9c060 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c | b/std/start.zig:413:12</span>:.< |
| 9c080 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 31 61 65 20 69 6e 20 73 74 | span.class="t2_0">0x2061ae.in.st |
| 9c0a0 | 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c | d.start.callMainWithArgs.(test)< |
| 9c0c0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 | /span>.....return.@call(.{..modi |
| 9c0e0 | 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 | fier.=..always_inline.},.callMai |
| 9c100 | 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n,..{});............<span.class= |
| 9c120 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 | "t32_1">^</span>.<span.class="t1 |
| 9c140 | 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 | _0">/home/andy/Downloads/zig/lib |
| 9c160 | 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | /std/start.zig:332:17</span>:.<s |
| 9c180 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 64 36 20 69 6e 20 73 74 64 | pan.class="t2_0">0x2051d6.in.std |
| 9c1a0 | 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 | .start.posixCallMainAndExit.(tes |
| 9c1c0 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 | t)</span>.....std.os.exit(@call( |
| 9c1e0 | 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c | .{..modifier.=..always_inline.}, |
| 9c200 | 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 | .callMainWithArgs,..{.argc,.argv |
| 9c220 | 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ,.envp.}));.................<spa |
| 9c240 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 9c260 | 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 | lass="t1_0">/home/andy/Downloads |
| 9c280 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 | /zig/lib/std/start.zig:245:5</sp |
| 9c2a0 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 66 65 32 | an>:.<span.class="t2_0">0x204fe2 |
| 9c2c0 | 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 | .in.std.start._start.(test)</spa |
| 9c2e0 | 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 | n>.....@call(.{..modifier.=..nev |
| 9c300 | 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 | er_inline.},.posixCallMainAndExi |
| 9c320 | 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | t,..{});.....<span.class="t32_1" |
| 9c340 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 | >^</span>.(process.terminated.by |
| 9c360 | 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 | .signal)</code></pre>........... |
| 9c380 | 20 20 20 20 3c 68 33 20 69 64 3d 22 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 | ....<h3.id="Standard-Library-Mat |
| 9c3a0 | 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 61 6e 64 | h-Functions"><a.href="#toc-Stand |
| 9c3c0 | 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 53 74 61 6e | ard-Library-Math-Functions">Stan |
| 9c3e0 | 64 61 72 64 20 4c 69 62 72 61 72 79 20 4d 61 74 68 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 | dard.Library.Math.Functions</a>. |
| 9c400 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 61 6e 64 61 72 64 2d 4c | <a.class="hdr".href="#Standard-L |
| 9c420 | 69 62 72 61 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ibrary-Math-Functions">..</a></h |
| 9c440 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 70 72 6f | 3>........<p>These.functions.pro |
| 9c460 | 76 69 64 65 64 20 62 79 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 72 65 | vided.by.the.standard.library.re |
| 9c480 | 74 75 72 6e 20 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | turn.possible.errors.</p>....... |
| 9c4a0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | <ul>...........<li><code.class=" |
| 9c4c0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 9c4e0 | 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | import</span>(<span.class="tok-s |
| 9c500 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 | tr">"std"</span>).math |
| 9c520 | 2e 61 64 64 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | .add</code></li>...........<li>< |
| 9c540 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 9c560 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| 9c580 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c | class="tok-str">"std"< |
| 9c5a0 | 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 73 75 62 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 | /span>).math.sub</code></li>.... |
| 9c5c0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .......<li><code.class="zig"><sp |
| 9c5e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f | an.class="tok-builtin">@import</ |
| 9c600 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>(<span.class="tok-str">&quo |
| 9c620 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 6d 75 6c 3c 2f 63 6f | t;std"</span>).math.mul</co |
| 9c640 | 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 | de></li>...........<li><code.cla |
| 9c660 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ss="zig"><span.class="tok-builti |
| 9c680 | 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">@import</span>(<span.class="t |
| 9c6a0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e | ok-str">"std"</span>). |
| 9c6c0 | 6d 61 74 68 2e 64 69 76 54 72 75 6e 63 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | math.divTrunc</code></li>....... |
| 9c6e0 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<li><code.class="zig"><span. |
| 9c700 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 | class="tok-builtin">@import</spa |
| 9c720 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>(<span.class="tok-str">"s |
| 9c740 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 46 6c 6f 6f 72 3c 2f | td"</span>).math.divFloor</ |
| 9c760 | 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 | code></li>...........<li><code.c |
| 9c780 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 9c7a0 | 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@import</span>(<span.class= |
| 9c7c0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "tok-str">"std"</span> |
| 9c7e0 | 29 2e 6d 61 74 68 2e 64 69 76 45 78 61 63 74 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ).math.divExact</code></li>..... |
| 9c800 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<li><code.class="zig"><spa |
| 9c820 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| 9c840 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| 9c860 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 73 68 6c 3c 2f 63 6f 64 | ;std"</span>).math.shl</cod |
| 9c880 | 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 | e></li>.......</ul>.......<p>Exa |
| 9c8a0 | 6d 70 6c 65 20 6f 66 20 63 61 74 63 68 69 6e 67 20 61 6e 20 6f 76 65 72 66 6c 6f 77 20 66 6f 72 | mple.of.catching.an.overflow.for |
| 9c8c0 | 20 61 64 64 69 74 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | .addition:</p>.......<p.class="f |
| 9c8e0 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| 9c900 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 9c920 | 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 74 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | st</span>.math.=.<span.class="to |
| 9c940 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| 9c960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c | class="tok-str">"std"< |
| 9c980 | 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | /span>).math;.<span.class="tok-k |
| 9c9a0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c | w">const</span>.print.=.<span.cl |
| 9c9c0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| 9c9e0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| 9ca00 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 3c 73 70 61 | "</span>).debug.print;.<spa |
| 9ca20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | n.class="tok-kw">pub</span>.<spa |
| 9ca40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| 9ca60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c | .class="tok-fn">main</span>().!< |
| 9ca80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e | span.class="tok-type">void</span |
| 9caa0 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | >.{.....<span.class="tok-kw">var |
| 9cac0 | 3c 2f 73 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | </span>.byte:.<span.class="tok-t |
| 9cae0 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">u8</span>.=.<span.class="to |
| 9cb00 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 62 79 74 65 20 | k-number">255</span>;......byte. |
| 9cb20 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | =.<span.class="tok-kw">if</span> |
| 9cb40 | 20 28 6d 61 74 68 2e 61 64 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | .(math.add(<span.class="tok-type |
| 9cb60 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">u8</span>,.byte,.<span.class=" |
| 9cb80 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 20 7c 72 65 73 75 6c 74 7c 20 | tok-number">1</span>)).|result|. |
| 9cba0 | 72 65 73 75 6c 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | result.<span.class="tok-kw">else |
| 9cbc0 | 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 | </span>.|err|.{.........print(<s |
| 9cbe0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 61 62 6c 65 | pan.class="tok-str">"unable |
| 9cc00 | 20 74 6f 20 61 64 64 20 6f 6e 65 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | .to.add.one:.{s}\n"</span>, |
| 9cc20 | 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 | ..{<span.class="tok-builtin">@er |
| 9cc40 | 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 29 7d 29 3b 0a 20 20 20 20 20 20 20 20 3c | rorName</span>(err)});.........< |
| 9cc60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e | span.class="tok-kw">return</span |
| 9cc80 | 3e 20 65 72 72 3b 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | >.err;.....};......print(<span.c |
| 9cca0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6c 74 3a 20 7b 7d 5c | lass="tok-str">"result:.{}\ |
| 9ccc0 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 7d 29 3b 0a 7d 3c 2f 63 6f 64 | n"</span>,..{byte});.}</cod |
| 9cce0 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 9cd00 | 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 | >$.zig.build-exe.test.zig.$../te |
| 9cd20 | 73 74 0a 75 6e 61 62 6c 65 20 74 6f 20 61 64 64 20 6f 6e 65 3a 20 4f 76 65 72 66 6c 6f 77 0a 65 | st.unable.to.add.one:.Overflow.e |
| 9cd40 | 72 72 6f 72 3a 20 4f 76 65 72 66 6c 6f 77 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 | rror:.Overflow.<span.class="t1_0 |
| 9cd60 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 | ">/home/andy/Downloads/zig/lib/s |
| 9cd80 | 74 64 2f 6d 61 74 68 2e 7a 69 67 3a 34 34 39 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | td/math.zig:449:5</span>:.<span. |
| 9cda0 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 31 35 61 62 20 69 6e 20 73 74 64 2e 6d 61 74 | class="t2_0">0x2315ab.in.std.mat |
| 9cdc0 | 68 2e 61 64 64 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 69 | h.add.(test)</span>.....return.i |
| 9cde0 | 66 20 28 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 28 54 2c 20 61 2c 20 62 2c 20 26 61 6d | f.(@addWithOverflow(T,.a,.b,.&am |
| 9ce00 | 70 3b 61 6e 73 77 65 72 29 29 20 65 72 72 6f 72 2e 4f 76 65 72 66 6c 6f 77 20 65 6c 73 65 20 61 | p;answer)).error.Overflow.else.a |
| 9ce20 | 6e 73 77 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | nswer;.....<span.class="t32_1">^ |
| 9ce40 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 | </span>.<span.class="t1_0">/home |
| 9ce60 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | /andy/Downloads/zig/docgen_tmp/t |
| 9ce80 | 65 73 74 2e 7a 69 67 3a 38 3a 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | est.zig:8:9</span>:.<span.class= |
| 9cea0 | 22 74 32 5f 30 22 3e 30 78 32 32 61 32 34 34 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f | "t2_0">0x22a244.in.main.(test)</ |
| 9cec0 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 3b 0a 20 20 20 20 20 20 | span>.........return.err;....... |
| 9cee0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 9cf00 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 | /code></pre>...............<h3.i |
| 9cf20 | 64 3d 22 42 75 69 6c 74 69 6e 2d 4f 76 65 72 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 3c | d="Builtin-Overflow-Functions">< |
| 9cf40 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 4f 76 65 72 66 6c 6f 77 2d 46 75 | a.href="#toc-Builtin-Overflow-Fu |
| 9cf60 | 6e 63 74 69 6f 6e 73 22 3e 42 75 69 6c 74 69 6e 20 4f 76 65 72 66 6c 6f 77 20 46 75 6e 63 74 69 | nctions">Builtin.Overflow.Functi |
| 9cf80 | 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 42 75 | ons</a>.<a.class="hdr".href="#Bu |
| 9cfa0 | 69 6c 74 69 6e 2d 4f 76 65 72 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e | iltin-Overflow-Functions">..</a> |
| 9cfc0 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 62 75 69 | </h3>........<p>.......These.bui |
| 9cfe0 | 6c 74 69 6e 73 20 72 65 74 75 72 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ltins.return.a.<code.class="zig" |
| 9d000 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 | ><span.class="tok-type">bool</sp |
| 9d020 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 66 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 6f 76 65 | an></code>.of.whether.or.not.ove |
| 9d040 | 72 66 6c 6f 77 0a 20 20 20 20 20 20 6f 63 63 75 72 72 65 64 2c 20 61 73 20 77 65 6c 6c 20 61 73 | rflow.......occurred,.as.well.as |
| 9d060 | 20 72 65 74 75 72 6e 69 6e 67 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 3a 0a | .returning.the.overflowed.bits:. |
| 9d080 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | ......</p>.......<ul>........... |
| 9d0a0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 | <li><a.href="#addWithOverflow">@ |
| 9d0c0 | 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | addWithOverflow</a></li>........ |
| 9d0e0 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 | ...<li><a.href="#subWithOverflow |
| 9d100 | 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ">@subWithOverflow</a></li>..... |
| 9d120 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 | ......<li><a.href="#mulWithOverf |
| 9d140 | 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | low">@mulWithOverflow</a></li>.. |
| 9d160 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 | .........<li><a.href="#shlWithOv |
| 9d180 | 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 | erflow">@shlWithOverflow</a></li |
| 9d1a0 | 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 | >.......</ul>.......<p>.......Ex |
| 9d1c0 | 61 6d 70 6c 65 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c | ample.of.<a.href="#addWithOverfl |
| 9d1e0 | 6f 77 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 | ow">@addWithOverflow</a>:....... |
| 9d200 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 9d220 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 9d240 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 9d260 | 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | print.=.<span.class="tok-builtin |
| 9d280 | 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">@import</span>(<span.class="to |
| 9d2a0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 | k-str">"std"</span>).d |
| 9d2c0 | 65 62 75 67 2e 70 72 69 6e 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ebug.print;.<span.class="tok-kw" |
| 9d2e0 | 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >pub</span>.<span.class="tok-kw" |
| 9d300 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e | >fn</span>.<span.class="tok-fn"> |
| 9d320 | 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | main</span>().<span.class="tok-t |
| 9d340 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ype">void</span>.{.....<span.cla |
| 9d360 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 | ss="tok-kw">var</span>.byte:.<sp |
| 9d380 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 | an.class="tok-type">u8</span>.=. |
| 9d3a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 | <span.class="tok-number">255</sp |
| 9d3c0 | 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>;......<span.class="tok-kw">v |
| 9d3e0 | 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ar</span>.result:.<span.class="t |
| 9d400 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u8</span>.=.<span.class |
| 9d420 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | ="tok-null">undefined</span>;... |
| 9d440 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | ..<span.class="tok-kw">if</span> |
| 9d460 | 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 | .(<span.class="tok-builtin">@add |
| 9d480 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | WithOverflow</span>(<span.class= |
| 9d4a0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 2c 20 3c 73 70 61 | "tok-type">u8</span>,.byte,.<spa |
| 9d4c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 | n.class="tok-number">10</span>,. |
| 9d4e0 | 26 61 6d 70 3b 72 65 73 75 6c 74 29 29 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 | &result)).{.........print(<s |
| 9d500 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 76 65 72 66 6c | pan.class="tok-str">"overfl |
| 9d520 | 6f 77 65 64 20 72 65 73 75 6c 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 | owed.result:.{}\n"</span>,. |
| 9d540 | 2e 7b 72 65 73 75 6c 74 7d 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .{result});.....}.<span.class="t |
| 9d560 | 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 | ok-kw">else</span>.{.........pri |
| 9d580 | 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 | nt(<span.class="tok-str">"r |
| 9d5a0 | 65 73 75 6c 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 72 65 73 75 | esult:.{}\n"</span>,..{resu |
| 9d5c0 | 6c 74 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | lt});.....}.}</code></pre><pre>< |
| 9d5e0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 | code.class="shell">$.zig.build-e |
| 9d600 | 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 6f 76 65 72 66 6c 6f 77 65 64 20 | xe.test.zig.$../test.overflowed. |
| 9d620 | 72 65 73 75 6c 74 3a 20 39 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a | result:.9.</code></pre>......... |
| 9d640 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e | ......<h3.id="Wrapping-Operation |
| 9d660 | 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 | s"><a.href="#toc-Wrapping-Operat |
| 9d680 | 69 6f 6e 73 22 3e 57 72 61 70 70 69 6e 67 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 | ions">Wrapping.Operations</a>.<a |
| 9d6a0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 72 61 70 70 69 6e 67 2d 4f 70 65 | .class="hdr".href="#Wrapping-Ope |
| 9d6c0 | 72 61 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | rations">..</a></h3>........<p>. |
| 9d6e0 | 20 20 20 20 20 20 54 68 65 73 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 68 61 76 65 20 67 75 61 72 | ......These.operations.have.guar |
| 9d700 | 61 6e 74 65 65 64 20 77 72 61 70 61 72 6f 75 6e 64 20 73 65 6d 61 6e 74 69 63 73 2e 0a 20 20 20 | anteed.wraparound.semantics..... |
| 9d720 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | ...</p>.......<ul>...........<li |
| 9d740 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2b 25 3c 2f 63 6f 64 65 3e 20 28 77 72 | ><code.class="zig">+%</code>.(wr |
| 9d760 | 61 70 61 72 6f 75 6e 64 20 61 64 64 69 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | aparound.addition)</li>......... |
| 9d780 | 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 25 3c 2f 63 6f 64 65 | ..<li><code.class="zig">-%</code |
| 9d7a0 | 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a | >.(wraparound.subtraction)</li>. |
| 9d7c0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<li><code.class="zig"> |
| 9d7e0 | 2d 25 3c 2f 63 6f 64 65 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 20 6e 65 67 61 74 69 6f 6e 29 3c | -%</code>.(wraparound.negation)< |
| 9d800 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /li>...........<li><code.class=" |
| 9d820 | 7a 69 67 22 3e 2a 25 3c 2f 63 6f 64 65 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 20 6d 75 6c 74 69 | zig">*%</code>.(wraparound.multi |
| 9d840 | 70 6c 69 63 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | plication)</li>.......</ul>..... |
| 9d860 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 9d880 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 9d8a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 | ="tok-kw">const</span>.std.=.<sp |
| 9d8c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f | an.class="tok-builtin">@import</ |
| 9d8e0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>(<span.class="tok-str">&quo |
| 9d900 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | t;std"</span>);.<span.class |
| 9d920 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 | ="tok-kw">const</span>.expect.=. |
| 9d940 | 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | std.testing.expect;.<span.class= |
| 9d960 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 69 6e 49 6e 74 20 3d 20 73 | "tok-kw">const</span>.minInt.=.s |
| 9d980 | 74 64 2e 6d 61 74 68 2e 6d 69 6e 49 6e 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | td.math.minInt;.<span.class="tok |
| 9d9a0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 78 49 6e 74 20 3d 20 73 74 64 2e 6d | -kw">const</span>.maxInt.=.std.m |
| 9d9c0 | 61 74 68 2e 6d 61 78 49 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ath.maxInt;..<span.class="tok-kw |
| 9d9e0 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| 9da00 | 74 72 22 3e 26 71 75 6f 74 3b 77 72 61 70 61 72 6f 75 6e 64 20 61 64 64 69 74 69 6f 6e 20 61 6e | tr">"wraparound.addition.an |
| 9da20 | 64 20 73 75 62 74 72 61 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | d.subtraction"</span>.{.... |
| 9da40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| 9da60 | 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | n>.x:.<span.class="tok-type">i32 |
| 9da80 | 3c 2f 73 70 61 6e 3e 20 3d 20 6d 61 78 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.=.maxInt(<span.class="to |
| 9daa0 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-type">i32</span>);.....<span.c |
| 9dac0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 69 6e 5f 76 | lass="tok-kw">const</span>.min_v |
| 9dae0 | 61 6c 20 3d 20 78 20 2b 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | al.=.x.+%.<span.class="tok-numbe |
| 9db00 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">1</span>;.....<span.class="to |
| 9db20 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 69 6e 5f 76 61 6c 20 | k-kw">try</span>.expect(min_val. |
| 9db40 | 3d 3d 20 6d 69 6e 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ==.minInt(<span.class="tok-type" |
| 9db60 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >i32</span>));.....<span.class=" |
| 9db80 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 78 5f 76 61 6c 20 3d 20 6d | tok-kw">const</span>.max_val.=.m |
| 9dba0 | 69 6e 5f 76 61 6c 20 2d 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | in_val.-%.<span.class="tok-numbe |
| 9dbc0 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">1</span>;.....<span.class="to |
| 9dbe0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 61 78 5f 76 61 6c 20 | k-kw">try</span>.expect(max_val. |
| 9dc00 | 3d 3d 20 6d 61 78 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ==.maxInt(<span.class="tok-type" |
| 9dc20 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | >i32</span>));.}</code></pre><pr |
| 9dc40 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 9dc60 | 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b | .test.zig.Test.[1/1].test." |
| 9dc80 | 77 72 61 70 61 72 6f 75 6e 64 20 61 64 64 69 74 69 6f 6e 20 61 6e 64 20 73 75 62 74 72 61 63 74 | wraparound.addition.and.subtract |
| 9dca0 | 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 | ion"......All.1.tests.passe |
| 9dcc0 | 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a | d..</code></pre>................ |
| 9dce0 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 61 63 74 2d 4c 65 66 74 2d 53 68 69 66 74 2d 4f | ......<h2.id="Exact-Left-Shift-O |
| 9dd00 | 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 4c 65 66 | verflow"><a.href="#toc-Exact-Lef |
| 9dd20 | 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 4c 65 66 74 20 53 68 69 | t-Shift-Overflow">Exact.Left.Shi |
| 9dd40 | 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ft.Overflow</a>.<a.class="hdr".h |
| 9dd60 | 72 65 66 3d 22 23 45 78 61 63 74 2d 4c 65 66 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 | ref="#Exact-Left-Shift-Overflow" |
| 9dd80 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c | >..</a></h2>........<p>At.compil |
| 9dda0 | 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | e-time:</p>.......<p.class="file |
| 9ddc0 | 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ">test.zig</p><pre><code.class=" |
| 9dde0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | zig"><span.class="tok-kw">compti |
| 9de00 | 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | me</span>.{.....<span.class="tok |
| 9de20 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">const</span>.x.=.<span.clas |
| 9de40 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e | s="tok-builtin">@shlExact</span> |
| 9de60 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f | (<span.class="tok-builtin">@as</ |
| 9de80 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | span>(<span.class="tok-type">u8< |
| 9dea0 | 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | /span>,.<span.class="tok-number" |
| 9dec0 | 3e 30 62 30 31 30 31 30 31 30 31 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >0b01010101</span>),.<span.class |
| 9dee0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 | ="tok-number">2</span>);.}</code |
| 9df00 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 9df20 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | $.zig.test.test.zig.<span.class= |
| 9df40 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 | "t0_1">./docgen_tmp/test.zig:2:1 |
| 9df60 | 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 | 5:.</span><span.class="t31_1">er |
| 9df80 | 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 6f | ror:.</span><span.class="t0_1">o |
| 9dfa0 | 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 64 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a | peration.caused.overflow</span>. |
| 9dfc0 | 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 73 68 6c 45 78 61 63 74 28 40 61 73 28 75 38 2c 20 | ....const.x.=.@shlExact(@as(u8,. |
| 9dfe0 | 30 62 30 31 30 31 30 31 30 31 29 2c 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | 0b01010101),.2);...............< |
| 9e000 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f | span.class="t32_1">^</span>.</co |
| 9e020 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c | de></pre>........<p>At.runtime:< |
| 9e040 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 9e060 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 9e080 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 | an.class="tok-kw">const</span>.s |
| 9e0a0 | 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | td.=.<span.class="tok-builtin">@ |
| 9e0c0 | 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | import</span>(<span.class="tok-s |
| 9e0e0 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 | tr">"std"</span>);..<s |
| 9e100 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 | pan.class="tok-kw">pub</span>.<s |
| 9e120 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 | pan.class="tok-kw">fn</span>.<sp |
| 9e140 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 | an.class="tok-fn">main</span>(). |
| 9e160 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 | <span.class="tok-type">void</spa |
| 9e180 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | n>.{.....<span.class="tok-kw">va |
| 9e1a0 | 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r</span>.x:.<span.class="tok-typ |
| 9e1c0 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">u8</span>.=.<span.class="tok- |
| 9e1e0 | 6e 75 6d 62 65 72 22 3e 30 62 30 31 30 31 30 31 30 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | number">0b01010101</span>;.....< |
| 9e200 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 | span.class="tok-kw">var</span>.y |
| 9e220 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 | .=.<span.class="tok-builtin">@sh |
| 9e240 | 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | lExact</span>(x,.<span.class="to |
| 9e260 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 | k-number">2</span>);.....std.deb |
| 9e280 | 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ug.print(<span.class="tok-str">& |
| 9e2a0 | 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | quot;value:.{}\n"</span>,.. |
| 9e2c0 | 7b 79 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | {y});.}</code></pre><pre><code.c |
| 9e2e0 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 | lass="shell">$.zig.build-exe.tes |
| 9e300 | 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 36 39 34 35 20 70 61 6e 69 | t.zig.$../test.thread.16945.pani |
| 9e320 | 63 3a 20 6c 65 66 74 20 73 68 69 66 74 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 0a 3c 73 | c:.left.shift.overflowed.bits.<s |
| 9e340 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e | pan.class="t1_0">/home/andy/Down |
| 9e360 | 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a | loads/zig/docgen_tmp/test.zig:5: |
| 9e380 | 31 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 | 13</span>:.<span.class="t2_0">0x |
| 9e3a0 | 32 32 39 66 39 62 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 229f9b.in.main.(test)</span>.... |
| 9e3c0 | 20 76 61 72 20 79 20 3d 20 40 73 68 6c 45 78 61 63 74 28 78 2c 20 32 29 3b 0a 20 20 20 20 20 20 | .var.y.=.@shlExact(x,.2);....... |
| 9e3e0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 9e400 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | n>.<span.class="t1_0">/home/andy |
| 9e420 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | /Downloads/zig/lib/std/start.zig |
| 9e440 | 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | :461:22</span>:.<span.class="t2_ |
| 9e460 | 30 22 3e 30 78 32 32 32 33 33 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 | 0">0x22233c.in.std.start.callMai |
| 9e480 | 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 | n.(test)</span>.............root |
| 9e4a0 | 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | .main();......................<s |
| 9e4c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| 9e4e0 | 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 | .class="t1_0">/home/andy/Downloa |
| 9e500 | 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c | ds/zig/lib/std/start.zig:413:12< |
| 9e520 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 | /span>:.<span.class="t2_0">0x206 |
| 9e540 | 31 63 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 | 1ce.in.std.start.callMainWithArg |
| 9e560 | 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c | s.(test)</span>.....return.@call |
| 9e580 | 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d | (.{..modifier.=..always_inline.} |
| 9e5a0 | 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | ,.callMain,..{});............<sp |
| 9e5c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| 9e5e0 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| 9e600 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f | s/zig/lib/std/start.zig:332:17</ |
| 9e620 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 | span>:.<span.class="t2_0">0x2051 |
| 9e640 | 66 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 | f6.in.std.start.posixCallMainAnd |
| 9e660 | 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 | Exit.(test)</span>.....std.os.ex |
| 9e680 | 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f | it(@call(.{..modifier.=..always_ |
| 9e6a0 | 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 | inline.},.callMainWithArgs,..{.a |
| 9e6c0 | 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | rgc,.argv,.envp.}));............ |
| 9e6e0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e | .....<span.class="t32_1">^</span |
| 9e700 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | >.<span.class="t1_0">/home/andy/ |
| 9e720 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | Downloads/zig/lib/std/start.zig: |
| 9e740 | 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | 245:5</span>:.<span.class="t2_0" |
| 9e760 | 3e 30 78 32 30 35 30 30 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 | >0x205002.in.std.start._start.(t |
| 9e780 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 | est)</span>.....@call(.{..modifi |
| 9e7a0 | 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d | er.=..never_inline.},.posixCallM |
| 9e7c0 | 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ainAndExit,..{});.....<span.clas |
| 9e7e0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d | s="t32_1">^</span>.(process.term |
| 9e800 | 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | inated.by.signal)</code></pre>.. |
| 9e820 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 61 63 74 2d 52 69 67 68 74 | .............<h2.id="Exact-Right |
| 9e840 | 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 | -Shift-Overflow"><a.href="#toc-E |
| 9e860 | 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 | xact-Right-Shift-Overflow">Exact |
| 9e880 | 20 52 69 67 68 74 20 53 68 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 | .Right.Shift.Overflow</a>.<a.cla |
| 9e8a0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 | ss="hdr".href="#Exact-Right-Shif |
| 9e8c0 | 74 2d 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | t-Overflow">..</a></h2>........< |
| 9e8e0 | 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | p>At.compile-time:</p>.......<p. |
| 9e900 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 9e920 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 9e940 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | -kw">comptime</span>.{.....<span |
| 9e960 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d | .class="tok-kw">const</span>.x.= |
| 9e980 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 | .<span.class="tok-builtin">@shrE |
| 9e9a0 | 78 61 63 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | xact</span>(<span.class="tok-bui |
| 9e9c0 | 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ltin">@as</span>(<span.class="to |
| 9e9e0 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-type">u8</span>,.<span.class=" |
| 9ea00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 30 31 30 31 30 3c 2f 73 70 61 6e 3e 29 2c 20 | tok-number">0b10101010</span>),. |
| 9ea20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e | <span.class="tok-number">2</span |
| 9ea40 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >);.}</code></pre><pre><code.cla |
| 9ea60 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c | ss="shell">$.zig.test.test.zig.< |
| 9ea80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 9eaa0 | 65 73 74 2e 7a 69 67 3a 32 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:2:15:.</span><span.class |
| 9eac0 | 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ="t31_1">error:.</span><span.cla |
| 9eae0 | 73 73 3d 22 74 30 5f 31 22 3e 65 78 61 63 74 20 73 68 69 66 74 20 73 68 69 66 74 65 64 20 6f 75 | ss="t0_1">exact.shift.shifted.ou |
| 9eb00 | 74 20 31 20 62 69 74 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 73 | t.1.bits</span>.....const.x.=.@s |
| 9eb20 | 68 72 45 78 61 63 74 28 40 61 73 28 75 38 2c 20 30 62 31 30 31 30 31 30 31 30 29 2c 20 32 29 3b | hrExact(@as(u8,.0b10101010),.2); |
| 9eb40 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| 9eb60 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | 1">^</span>.</code></pre>....... |
| 9eb80 | 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | .<p>At.runtime:</p>.......<p.cla |
| 9eba0 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 9ebc0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 9ebe0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.std.=.<span.class |
| 9ec00 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@import</span>(<s |
| 9ec20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 | pan.class="tok-str">"std&qu |
| 9ec40 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ot;</span>);..<span.class="tok-k |
| 9ec60 | 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | w">pub</span>.<span.class="tok-k |
| 9ec80 | 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e | w">fn</span>.<span.class="tok-fn |
| 9eca0 | 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">main</span>().<span.class="tok |
| 9ecc0 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| 9ece0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.x:.<spa |
| 9ed00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c | n.class="tok-type">u8</span>.=.< |
| 9ed20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 30 31 30 | span.class="tok-number">0b101010 |
| 9ed40 | 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 10</span>;.....<span.class="tok- |
| 9ed60 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | kw">var</span>.y.=.<span.class=" |
| 9ed80 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 78 2c | tok-builtin">@shrExact</span>(x, |
| 9eda0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | .<span.class="tok-number">2</spa |
| 9edc0 | 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | n>);.....std.debug.print(<span.c |
| 9ede0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e | lass="tok-str">"value:.{}\n |
| 9ee00 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 79 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | "</span>,..{y});.}</code></ |
| 9ee20 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 9ee40 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 | ig.build-exe.test.zig.$../test.t |
| 9ee60 | 68 72 65 61 64 20 31 37 30 30 35 20 70 61 6e 69 63 3a 20 72 69 67 68 74 20 73 68 69 66 74 20 6f | hread.17005.panic:.right.shift.o |
| 9ee80 | 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 | verflowed.bits.<span.class="t1_0 |
| 9eea0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 | ">/home/andy/Downloads/zig/docge |
| 9eec0 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | n_tmp/test.zig:5:13</span>:.<spa |
| 9eee0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 39 66 39 62 20 69 6e 20 6d 61 69 6e 20 | n.class="t2_0">0x229f9b.in.main. |
| 9ef00 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 79 20 3d 20 40 73 68 72 45 78 | (test)</span>.....var.y.=.@shrEx |
| 9ef20 | 61 63 74 28 78 2c 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | act(x,.2);.............<span.cla |
| 9ef40 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 9ef60 | 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f | "t1_0">/home/andy/Downloads/zig/ |
| 9ef80 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a | lib/std/start.zig:461:22</span>: |
| 9efa0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 33 63 20 69 6e 20 | .<span.class="t2_0">0x22233c.in. |
| 9efc0 | 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | std.start.callMain.(test)</span> |
| 9efe0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 | .............root.main();....... |
| 9f000 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| 9f020 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f | 1">^</span>.<span.class="t1_0">/ |
| 9f040 | 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | home/andy/Downloads/zig/lib/std/ |
| 9f060 | 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | start.zig:413:12</span>:.<span.c |
| 9f080 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 31 63 65 20 69 6e 20 73 74 64 2e 73 74 61 72 | lass="t2_0">0x2061ce.in.std.star |
| 9f0a0 | 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | t.callMainWithArgs.(test)</span> |
| 9f0c0 | 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d | .....return.@call(.{..modifier.= |
| 9f0e0 | 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d | ..always_inline.},.callMain,..{} |
| 9f100 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | );............<span.class="t32_1 |
| 9f120 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 | ">^</span>.<span.class="t1_0">/h |
| 9f140 | 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | ome/andy/Downloads/zig/lib/std/s |
| 9f160 | 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | tart.zig:332:17</span>:.<span.cl |
| 9f180 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 66 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 | ass="t2_0">0x2051f6.in.std.start |
| 9f1a0 | 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 | .posixCallMainAndExit.(test)</sp |
| 9f1c0 | 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f | an>.....std.os.exit(@call(.{..mo |
| 9f1e0 | 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d | difier.=..always_inline.},.callM |
| 9f200 | 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 | ainWithArgs,..{.argc,.argv,.envp |
| 9f220 | 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .}));.................<span.clas |
| 9f240 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 9f260 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c | t1_0">/home/andy/Downloads/zig/l |
| 9f280 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ib/std/start.zig:245:5</span>:.< |
| 9f2a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 30 30 32 20 69 6e 20 73 74 | span.class="t2_0">0x205002.in.st |
| 9f2c0 | 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | d.start._start.(test)</span>.... |
| 9f2e0 | 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c | .@call(.{..modifier.=..never_inl |
| 9f300 | 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d | ine.},.posixCallMainAndExit,..{} |
| 9f320 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | );.....<span.class="t32_1">^</sp |
| 9f340 | 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 | an>.(process.terminated.by.signa |
| 9f360 | 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | l)</code></pre>...............<h |
| 9f380 | 32 20 69 64 3d 22 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 3c 61 20 68 72 65 66 3d | 2.id="Division-by-Zero"><a.href= |
| 9f3a0 | 22 23 74 6f 63 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e | "#toc-Division-by-Zero">Division |
| 9f3c0 | 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | .by.Zero</a>.<a.class="hdr".href |
| 9f3e0 | 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | ="#Division-by-Zero">..</a></h2> |
| 9f400 | 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a | ........<p>At.compile-time:</p>. |
| 9f420 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| 9f440 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 9f460 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a | lass="tok-kw">comptime</span>.{. |
| 9f480 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| 9f4a0 | 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.a:.<span.class="tok-type"> |
| 9f4c0 | 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | i32</span>.=.<span.class="tok-nu |
| 9f4e0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">1</span>;.....<span.class= |
| 9f500 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.b:.<span.c |
| 9f520 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">i32</span>.=.<sp |
| 9f540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a | an.class="tok-number">0</span>;. |
| 9f560 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| 9f580 | 73 70 61 6e 3e 20 63 20 3d 20 61 20 2f 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | span>.c.=.a./.b;.}</code></pre>< |
| 9f5a0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| 9f5c0 | 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e | st.test.zig.<span.class="t0_1">. |
| 9f5e0 | 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 31 37 3a 20 3c 2f 73 70 61 | /docgen_tmp/test.zig:4:17:.</spa |
| 9f600 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 | n><span.class="t31_1">error:.</s |
| 9f620 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 64 69 76 69 73 69 6f 6e 20 | pan><span.class="t0_1">division. |
| 9f640 | 62 79 20 7a 65 72 6f 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 2f | by.zero</span>.....const.c.=.a./ |
| 9f660 | 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .b;.................<span.class= |
| 9f680 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | "t32_1">^</span>.</code></pre>.. |
| 9f6a0 | 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ......<p>At.runtime:</p>.......< |
| 9f6c0 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 9f6e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 9f700 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.std.=.<span. |
| 9f720 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 | class="tok-builtin">@import</spa |
| 9f740 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>(<span.class="tok-str">"s |
| 9f760 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | td"</span>);..<span.class=" |
| 9f780 | 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tok-kw">pub</span>.<span.class=" |
| 9f7a0 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| 9f7c0 | 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-fn">main</span>().<span.class |
| 9f7e0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ="tok-type">void</span>.{.....<s |
| 9f800 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a | pan.class="tok-kw">var</span>.a: |
| 9f820 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 | .<span.class="tok-type">u32</spa |
| 9f840 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | n>.=.<span.class="tok-number">1< |
| 9f860 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | /span>;.....<span.class="tok-kw" |
| 9f880 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >var</span>.b:.<span.class="tok- |
| 9f8a0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">u32</span>.=.<span.class=" |
| 9f8c0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-number">0</span>;.....<span. |
| 9f8e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 | class="tok-kw">var</span>.c.=.a. |
| 9f900 | 2f 20 62 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | /.b;.....std.debug.print(<span.c |
| 9f920 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e | lass="tok-str">"value:.{}\n |
| 9f940 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 63 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | "</span>,..{c});.}</code></ |
| 9f960 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 9f980 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 | ig.build-exe.test.zig.$../test.t |
| 9f9a0 | 68 72 65 61 64 20 31 37 30 37 31 20 70 61 6e 69 63 3a 20 64 69 76 69 73 69 6f 6e 20 62 79 20 7a | hread.17071.panic:.division.by.z |
| 9f9c0 | 65 72 6f 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | ero.<span.class="t1_0">/home/and |
| 9f9e0 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | y/Downloads/zig/docgen_tmp/test. |
| 9fa00 | 7a 69 67 3a 36 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | zig:6:15</span>:.<span.class="t2 |
| 9fa20 | 5f 30 22 3e 30 78 32 32 39 66 36 39 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 | _0">0x229f69.in.main.(test)</spa |
| 9fa40 | 6e 3e 0a 20 20 20 20 76 61 72 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 | n>.....var.c.=.a./.b;........... |
| 9fa60 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 9fa80 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | .<span.class="t1_0">/home/andy/D |
| 9faa0 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 | ownloads/zig/lib/std/start.zig:4 |
| 9fac0 | 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | 61:22</span>:.<span.class="t2_0" |
| 9fae0 | 3e 30 78 32 32 32 33 31 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 | >0x22231c.in.std.start.callMain. |
| 9fb00 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d | (test)</span>.............root.m |
| 9fb20 | 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ain();......................<spa |
| 9fb40 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 9fb60 | 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 | lass="t1_0">/home/andy/Downloads |
| 9fb80 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 | /zig/lib/std/start.zig:413:12</s |
| 9fba0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 31 61 | pan>:.<span.class="t2_0">0x2061a |
| 9fbc0 | 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 | e.in.std.start.callMainWithArgs. |
| 9fbe0 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e | (test)</span>.....return.@call(. |
| 9fc00 | 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 | {..modifier.=..always_inline.},. |
| 9fc20 | 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | callMain,..{});............<span |
| 9fc40 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | .class="t32_1">^</span>.<span.cl |
| 9fc60 | 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ass="t1_0">/home/andy/Downloads/ |
| 9fc80 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 | zig/lib/std/start.zig:332:17</sp |
| 9fca0 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 64 36 | an>:.<span.class="t2_0">0x2051d6 |
| 9fcc0 | 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 | .in.std.start.posixCallMainAndEx |
| 9fce0 | 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 | it.(test)</span>.....std.os.exit |
| 9fd00 | 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e | (@call(.{..modifier.=..always_in |
| 9fd20 | 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 | line.},.callMainWithArgs,..{.arg |
| 9fd40 | 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | c,.argv,.envp.}));.............. |
| 9fd60 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 9fd80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | <span.class="t1_0">/home/andy/Do |
| 9fda0 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 | wnloads/zig/lib/std/start.zig:24 |
| 9fdc0 | 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 | 5:5</span>:.<span.class="t2_0">0 |
| 9fde0 | 78 32 30 34 66 65 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 | x204fe2.in.std.start._start.(tes |
| 9fe00 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 | t)</span>.....@call(.{..modifier |
| 9fe20 | 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 | .=..never_inline.},.posixCallMai |
| 9fe40 | 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nAndExit,..{});.....<span.class= |
| 9fe60 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e | "t32_1">^</span>.(process.termin |
| 9fe80 | 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | ated.by.signal)</code></pre>.... |
| 9fea0 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 | ...........<h2.id="Remainder-Div |
| 9fec0 | 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6d | ision-by-Zero"><a.href="#toc-Rem |
| 9fee0 | 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 | ainder-Division-by-Zero">Remaind |
| 9ff00 | 65 72 20 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | er.Division.by.Zero</a>.<a.class |
| 9ff20 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e | ="hdr".href="#Remainder-Division |
| 9ff40 | 2d 62 79 2d 5a 65 72 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | -by-Zero">..</a></h2>........<p> |
| 9ff60 | 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | At.compile-time:</p>.......<p.cl |
| 9ff80 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| 9ffa0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 9ffc0 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | w">comptime</span>.{.....<span.c |
| 9ffe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 | lass="tok-kw">const</span>.a:.<s |
| a0000 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| a0020 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 | =.<span.class="tok-number">10</s |
| a0040 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>;.....<span.class="tok-kw">c |
| a0060 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | onst</span>.b:.<span.class="tok- |
| a0080 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">i32</span>.=.<span.class=" |
| a00a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-number">0</span>;.....<span. |
| a00c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 | class="tok-kw">const</span>.c.=. |
| a00e0 | 61 20 25 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | a.%.b;.}</code></pre><pre><code. |
| a0100 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| a0120 | 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d | g.<span.class="t0_1">./docgen_tm |
| a0140 | 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | p/test.zig:4:17:.</span><span.cl |
| a0160 | 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ass="t31_1">error:.</span><span. |
| a0180 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 3c 2f 73 | class="t0_1">division.by.zero</s |
| a01a0 | 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 20 20 | pan>.....const.c.=.a.%.b;....... |
| a01c0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| a01e0 | 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 | /span>.</code></pre>........<p>A |
| a0200 | 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | t.runtime:</p>.......<p.class="f |
| a0220 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| a0240 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| a0260 | 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.std.=.<span.class="tok |
| a0280 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@import</span>(<span.c |
| a02a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"std"</ |
| a02c0 | 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | span>);..<span.class="tok-kw">pu |
| a02e0 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | b</span>.<span.class="tok-kw">fn |
| a0300 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 | </span>.<span.class="tok-fn">mai |
| a0320 | 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n</span>().<span.class="tok-type |
| a0340 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">void</span>.{.....<span.class= |
| a0360 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">var</span>.a:.<span.cla |
| a0380 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e | ss="tok-type">u32</span>.=.<span |
| a03a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 | .class="tok-number">10</span>;.. |
| a03c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 | ...<span.class="tok-kw">var</spa |
| a03e0 | 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | n>.b:.<span.class="tok-type">u32 |
| a0400 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | </span>.=.<span.class="tok-numbe |
| a0420 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">0</span>;.....<span.class="to |
| a0440 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 | k-kw">var</span>.c.=.a.%.b;..... |
| a0460 | 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | std.debug.print(<span.class="tok |
| a0480 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | -str">"value:.{}\n"</s |
| a04a0 | 70 61 6e 3e 2c 20 2e 7b 63 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | pan>,..{c});.}</code></pre><pre> |
| a04c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d | <code.class="shell">$.zig.build- |
| a04e0 | 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 37 31 | exe.test.zig.$../test.thread.171 |
| a0500 | 33 31 20 70 61 6e 69 63 3a 20 72 65 6d 61 69 6e 64 65 72 20 64 69 76 69 73 69 6f 6e 20 62 79 20 | 31.panic:.remainder.division.by. |
| a0520 | 7a 65 72 6f 20 6f 72 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 0a 3c 73 70 61 6e 20 63 6c 61 | zero.or.negative.value.<span.cla |
| a0540 | 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a | ss="t1_0">/home/andy/Downloads/z |
| a0560 | 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 31 35 3c 2f 73 70 61 | ig/docgen_tmp/test.zig:6:15</spa |
| a0580 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 39 66 38 62 20 | n>:.<span.class="t2_0">0x229f8b. |
| a05a0 | 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 63 20 | in.main.(test)</span>.....var.c. |
| a05c0 | 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | =.a.%.b;...............<span.cla |
| a05e0 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| a0600 | 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f | "t1_0">/home/andy/Downloads/zig/ |
| a0620 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a | lib/std/start.zig:461:22</span>: |
| a0640 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 31 63 20 69 6e 20 | .<span.class="t2_0">0x22231c.in. |
| a0660 | 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | std.start.callMain.(test)</span> |
| a0680 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 | .............root.main();....... |
| a06a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| a06c0 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f | 1">^</span>.<span.class="t1_0">/ |
| a06e0 | 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | home/andy/Downloads/zig/lib/std/ |
| a0700 | 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | start.zig:413:12</span>:.<span.c |
| a0720 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 31 61 65 20 69 6e 20 73 74 64 2e 73 74 61 72 | lass="t2_0">0x2061ae.in.std.star |
| a0740 | 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | t.callMainWithArgs.(test)</span> |
| a0760 | 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d | .....return.@call(.{..modifier.= |
| a0780 | 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d | ..always_inline.},.callMain,..{} |
| a07a0 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | );............<span.class="t32_1 |
| a07c0 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 | ">^</span>.<span.class="t1_0">/h |
| a07e0 | 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | ome/andy/Downloads/zig/lib/std/s |
| a0800 | 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | tart.zig:332:17</span>:.<span.cl |
| a0820 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 64 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 | ass="t2_0">0x2051d6.in.std.start |
| a0840 | 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 | .posixCallMainAndExit.(test)</sp |
| a0860 | 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f | an>.....std.os.exit(@call(.{..mo |
| a0880 | 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d | difier.=..always_inline.},.callM |
| a08a0 | 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 | ainWithArgs,..{.argc,.argv,.envp |
| a08c0 | 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .}));.................<span.clas |
| a08e0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| a0900 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c | t1_0">/home/andy/Downloads/zig/l |
| a0920 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ib/std/start.zig:245:5</span>:.< |
| a0940 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 66 65 32 20 69 6e 20 73 74 | span.class="t2_0">0x204fe2.in.st |
| a0960 | 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | d.start._start.(test)</span>.... |
| a0980 | 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c | .@call(.{..modifier.=..never_inl |
| a09a0 | 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d | ine.},.posixCallMainAndExit,..{} |
| a09c0 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | );.....<span.class="t32_1">^</sp |
| a09e0 | 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 | an>.(process.terminated.by.signa |
| a0a00 | 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | l)</code></pre>...............<h |
| a0a20 | 32 20 69 64 3d 22 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 3e | 2.id="Exact-Division-Remainder"> |
| a0a40 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d | <a.href="#toc-Exact-Division-Rem |
| a0a60 | 61 69 6e 64 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 6f 6e 20 52 65 6d 61 69 6e 64 65 72 | ainder">Exact.Division.Remainder |
| a0a80 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 | </a>.<a.class="hdr".href="#Exact |
| a0aa0 | 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | -Division-Remainder">..</a></h2> |
| a0ac0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a | ........<p>At.compile-time:</p>. |
| a0ae0 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| a0b00 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| a0b20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a | lass="tok-kw">comptime</span>.{. |
| a0b40 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| a0b60 | 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.a:.<span.class="tok-type"> |
| a0b80 | 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | u32</span>.=.<span.class="tok-nu |
| a0ba0 | 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mber">10</span>;.....<span.class |
| a0bc0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 | ="tok-kw">const</span>.b:.<span. |
| a0be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | class="tok-type">u32</span>.=.<s |
| a0c00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">3</span>; |
| a0c20 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| a0c40 | 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | /span>.c.=.<span.class="tok-buil |
| a0c60 | 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 3b 0a 7d 3c 2f | tin">@divExact</span>(a,.b);.}</ |
| a0c80 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| a0ca0 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c | ll">$.zig.test.test.zig.<span.cl |
| a0cc0 | 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ass="t0_1">./docgen_tmp/test.zig |
| a0ce0 | 3a 34 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 | :4:15:.</span><span.class="t31_1 |
| a0d00 | 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | ">error:.</span><span.class="t0_ |
| a0d20 | 31 22 3e 65 78 61 63 74 20 64 69 76 69 73 69 6f 6e 20 68 61 64 20 61 20 72 65 6d 61 69 6e 64 65 | 1">exact.division.had.a.remainde |
| a0d40 | 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 40 64 69 76 45 78 61 63 74 | r</span>.....const.c.=.@divExact |
| a0d60 | 28 61 2c 20 62 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | (a,.b);...............<span.clas |
| a0d80 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | s="t32_1">^</span>.</code></pre> |
| a0da0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 | ........<p>At.runtime:</p>...... |
| a0dc0 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| a0de0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| a0e00 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 | "tok-kw">const</span>.std.=.<spa |
| a0e20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| a0e40 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| a0e60 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ;std"</span>);..<span.class |
| a0e80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ="tok-kw">pub</span>.<span.class |
| a0ea0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="tok-kw">fn</span>.<span.class= |
| a0ec0 | 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | "tok-fn">main</span>().<span.cla |
| a0ee0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ss="tok-type">void</span>.{..... |
| a0f00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">var</span>. |
| a0f20 | 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | a:.<span.class="tok-type">u32</s |
| a0f40 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pan>.=.<span.class="tok-number"> |
| a0f60 | 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 10</span>;.....<span.class="tok- |
| a0f80 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">var</span>.b:.<span.class="t |
| a0fa0 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">u32</span>.=.<span.clas |
| a0fc0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | s="tok-number">3</span>;.....<sp |
| a0fe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d | an.class="tok-kw">var</span>.c.= |
| a1000 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 | .<span.class="tok-builtin">@divE |
| a1020 | 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 | xact</span>(a,.b);.....std.debug |
| a1040 | 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .print(<span.class="tok-str">&qu |
| a1060 | 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 63 | ot;value:.{}\n"</span>,..{c |
| a1080 | 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | });.}</code></pre><pre><code.cla |
| a10a0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e | ss="shell">$.zig.build-exe.test. |
| a10c0 | 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 37 31 39 33 20 70 61 6e 69 63 3a | zig.$../test.thread.17193.panic: |
| a10e0 | 20 65 78 61 63 74 20 64 69 76 69 73 69 6f 6e 20 70 72 6f 64 75 63 65 64 20 72 65 6d 61 69 6e 64 | .exact.division.produced.remaind |
| a1100 | 65 72 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | er.<span.class="t1_0">/home/andy |
| a1120 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | /Downloads/zig/docgen_tmp/test.z |
| a1140 | 69 67 3a 36 3a 31 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | ig:6:13</span>:.<span.class="t2_ |
| a1160 | 30 22 3e 30 78 32 32 39 66 61 64 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | 0">0x229fad.in.main.(test)</span |
| a1180 | 3e 0a 20 20 20 20 76 61 72 20 63 20 3d 20 40 64 69 76 45 78 61 63 74 28 61 2c 20 62 29 3b 0a 20 | >.....var.c.=.@divExact(a,.b);.. |
| a11a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| a11c0 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 | </span>.<span.class="t1_0">/home |
| a11e0 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | /andy/Downloads/zig/lib/std/star |
| a1200 | 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t.zig:461:22</span>:.<span.class |
| a1220 | 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 31 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 | ="t2_0">0x22231c.in.std.start.ca |
| a1240 | 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | llMain.(test)</span>............ |
| a1260 | 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .root.main();................... |
| a1280 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| a12a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | <span.class="t1_0">/home/andy/Do |
| a12c0 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 | wnloads/zig/lib/std/start.zig:41 |
| a12e0 | 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e | 3:12</span>:.<span.class="t2_0"> |
| a1300 | 30 78 32 30 36 31 61 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 | 0x2061ae.in.std.start.callMainWi |
| a1320 | 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 | thArgs.(test)</span>.....return. |
| a1340 | 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c | @call(.{..modifier.=..always_inl |
| a1360 | 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 | ine.},.callMain,..{});.......... |
| a1380 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| a13a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 | span.class="t1_0">/home/andy/Dow |
| a13c0 | 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 | nloads/zig/lib/std/start.zig:332 |
| a13e0 | 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 | :17</span>:.<span.class="t2_0">0 |
| a1400 | 78 32 30 35 31 64 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 | x2051d6.in.std.start.posixCallMa |
| a1420 | 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e | inAndExit.(test)</span>.....std. |
| a1440 | 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c | os.exit(@call(.{..modifier.=..al |
| a1460 | 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c | ways_inline.},.callMainWithArgs, |
| a1480 | 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 | ..{.argc,.argv,.envp.}));....... |
| a14a0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| a14c0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f | /span>.<span.class="t1_0">/home/ |
| a14e0 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | andy/Downloads/zig/lib/std/start |
| a1500 | 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig:245:5</span>:.<span.class=" |
| a1520 | 74 32 5f 30 22 3e 30 78 32 30 34 66 65 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 | t2_0">0x204fe2.in.std.start._sta |
| a1540 | 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d | rt.(test)</span>.....@call(.{..m |
| a1560 | 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 | odifier.=..never_inline.},.posix |
| a1580 | 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e | CallMainAndExit,..{});.....<span |
| a15a0 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 | .class="t32_1">^</span>.(process |
| a15c0 | 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 | .terminated.by.signal)</code></p |
| a15e0 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 74 74 65 6d 70 | re>...............<h2.id="Attemp |
| a1600 | 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | t-to-Unwrap-Null"><a.href="#toc- |
| a1620 | 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e 41 74 74 65 6d 70 74 20 | Attempt-to-Unwrap-Null">Attempt. |
| a1640 | 74 6f 20 55 6e 77 72 61 70 20 4e 75 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | to.Unwrap.Null</a>.<a.class="hdr |
| a1660 | 22 20 68 72 65 66 3d 22 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 | ".href="#Attempt-to-Unwrap-Null" |
| a1680 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c | >..</a></h2>........<p>At.compil |
| a16a0 | 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | e-time:</p>.......<p.class="file |
| a16c0 | 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ">test.zig</p><pre><code.class=" |
| a16e0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | zig"><span.class="tok-kw">compti |
| a1700 | 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | me</span>.{.....<span.class="tok |
| a1720 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 | -kw">const</span>.optional_numbe |
| a1740 | 72 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | r:.?<span.class="tok-type">i32</ |
| a1760 | 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e | span>.=.<span.class="tok-null">n |
| a1780 | 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ull</span>;.....<span.class="tok |
| a17a0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f | -kw">const</span>.number.=.optio |
| a17c0 | 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | nal_number.?;.}</code></pre><pre |
| a17e0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| a1800 | 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f | test.zig.<span.class="t0_1">./do |
| a1820 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 33 35 3a 20 3c 2f 73 70 61 6e 3e 3c | cgen_tmp/test.zig:3:35:.</span>< |
| a1840 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e | span.class="t31_1">error:.</span |
| a1860 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 75 6e 61 62 6c 65 20 74 6f 20 75 6e | ><span.class="t0_1">unable.to.un |
| a1880 | 77 72 61 70 20 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 65 | wrap.null</span>.....const.numbe |
| a18a0 | 72 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 20 20 20 20 20 | r.=.optional_number.?;.......... |
| a18c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | .........................<span.c |
| a18e0 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | lass="t32_1">^</span>.</code></p |
| a1900 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 | re>........<p>At.runtime:</p>... |
| a1920 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| a1940 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| a1960 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c | ss="tok-kw">const</span>.std.=.< |
| a1980 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| a19a0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| a19c0 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c | uot;std"</span>);..<span.cl |
| a19e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ass="tok-kw">pub</span>.<span.cl |
| a1a00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| a1a20 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | ss="tok-fn">main</span>().<span. |
| a1a40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | class="tok-type">void</span>.{.. |
| a1a60 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 | ...<span.class="tok-kw">var</spa |
| a1a80 | 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 | n>.optional_number:.?<span.class |
| a1aa0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">i32</span>.=.<span.c |
| a1ac0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | lass="tok-null">null</span>;.... |
| a1ae0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| a1b00 | 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 | .number.=.optional_number.?;.... |
| a1b20 | 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .std.debug.print(<span.class="to |
| a1b40 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f | k-str">"value:.{}\n"</ |
| a1b60 | 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | span>,..{number});.}</code></pre |
| a1b80 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| a1ba0 | 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 | build-exe.test.zig.$../test.thre |
| a1bc0 | 61 64 20 31 37 32 37 31 20 70 61 6e 69 63 3a 20 61 74 74 65 6d 70 74 20 74 6f 20 75 73 65 20 6e | ad.17271.panic:.attempt.to.use.n |
| a1be0 | 75 6c 6c 20 76 61 6c 75 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f | ull.value.<span.class="t1_0">/ho |
| a1c00 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 | me/andy/Downloads/zig/docgen_tmp |
| a1c20 | 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 33 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | /test.zig:5:33</span>:.<span.cla |
| a1c40 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 39 66 36 63 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 | ss="t2_0">0x229f6c.in.main.(test |
| a1c60 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e | )</span>.....var.number.=.option |
| a1c80 | 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | al_number.?;.................... |
| a1ca0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| a1cc0 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f | >^</span>.<span.class="t1_0">/ho |
| a1ce0 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | me/andy/Downloads/zig/lib/std/st |
| a1d00 | 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | art.zig:461:22</span>:.<span.cla |
| a1d20 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 32 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e | ss="t2_0">0x22232c.in.std.start. |
| a1d40 | 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | callMain.(test)</span>.......... |
| a1d60 | 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...root.main();................. |
| a1d80 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e | .....<span.class="t32_1">^</span |
| a1da0 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | >.<span.class="t1_0">/home/andy/ |
| a1dc0 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | Downloads/zig/lib/std/start.zig: |
| a1de0 | 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | 413:12</span>:.<span.class="t2_0 |
| a1e00 | 22 3e 30 78 32 30 36 31 62 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e | ">0x2061be.in.std.start.callMain |
| a1e20 | 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 | WithArgs.(test)</span>.....retur |
| a1e40 | 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 | n.@call(.{..modifier.=..always_i |
| a1e60 | 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 | nline.},.callMain,..{});........ |
| a1e80 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| a1ea0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | .<span.class="t1_0">/home/andy/D |
| a1ec0 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 | ownloads/zig/lib/std/start.zig:3 |
| a1ee0 | 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | 32:17</span>:.<span.class="t2_0" |
| a1f00 | 3e 30 78 32 30 35 31 65 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c | >0x2051e6.in.std.start.posixCall |
| a1f20 | 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 | MainAndExit.(test)</span>.....st |
| a1f40 | 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e | d.os.exit(@call(.{..modifier.=.. |
| a1f60 | 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 | always_inline.},.callMainWithArg |
| a1f80 | 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 | s,..{.argc,.argv,.envp.}));..... |
| a1fa0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| a1fc0 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d | ^</span>.<span.class="t1_0">/hom |
| a1fe0 | 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | e/andy/Downloads/zig/lib/std/sta |
| a2000 | 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rt.zig:245:5</span>:.<span.class |
| a2020 | 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 66 66 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 | ="t2_0">0x204ff2.in.std.start._s |
| a2040 | 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 | tart.(test)</span>.....@call(.{. |
| a2060 | 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 | .modifier.=..never_inline.},.pos |
| a2080 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 | ixCallMainAndExit,..{});.....<sp |
| a20a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 | an.class="t32_1">^</span>.(proce |
| a20c0 | 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c | ss.terminated.by.signal)</code>< |
| a20e0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4f 6e 65 20 77 61 79 20 74 6f 20 61 76 6f 69 64 | /pre>........<p>One.way.to.avoid |
| a2100 | 20 74 68 69 73 20 63 72 61 73 68 20 69 73 20 74 6f 20 74 65 73 74 20 66 6f 72 20 6e 75 6c 6c 20 | .this.crash.is.to.test.for.null. |
| a2120 | 69 6e 73 74 65 61 64 20 6f 66 20 61 73 73 75 6d 69 6e 67 20 6e 6f 6e 2d 6e 75 6c 6c 2c 20 77 69 | instead.of.assuming.non-null,.wi |
| a2140 | 74 68 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | th.......the.<code.class="zig">< |
| a2160 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 | span.class="tok-kw">if</span></c |
| a2180 | 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | ode>.expression:</p>.......<p.cl |
| a21a0 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| a21c0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| a21e0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c | w">const</span>.print.=.<span.cl |
| a2200 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@import</span> |
| a2220 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 | (<span.class="tok-str">"std |
| a2240 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 3c 73 70 61 | "</span>).debug.print;.<spa |
| a2260 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | n.class="tok-kw">pub</span>.<spa |
| a2280 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| a22a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 | .class="tok-fn">main</span>().<s |
| a22c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e | pan.class="tok-type">void</span> |
| a22e0 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | .{.....<span.class="tok-kw">cons |
| a2300 | 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3a 20 3f 3c 73 70 61 6e | t</span>.optional_number:.?<span |
| a2320 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c | .class="tok-type">i32</span>.=.< |
| a2340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e | span.class="tok-null">null</span |
| a2360 | 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | >;......<span.class="tok-kw">if< |
| a2380 | 2f 73 70 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 29 20 7c 6e 75 6d 62 65 72 | /span>.(optional_number).|number |
| a23a0 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | |.{.........print(<span.class="t |
| a23c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 | ok-str">"got.number:.{}\n&q |
| a23e0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 20 20 20 20 7d 20 3c | uot;</span>,..{number});.....}.< |
| a2400 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">else</span>. |
| a2420 | 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | {.........print(<span.class="tok |
| a2440 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 74 27 73 20 6e 75 6c 6c 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | -str">"it's.null\n"</s |
| a2460 | 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | pan>,..{});.....}.}</code></pre> |
| a2480 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 | <pre><code.class="shell">$.zig.b |
| a24a0 | 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 69 74 27 73 20 | uild-exe.test.zig.$../test.it's. |
| a24c0 | 6e 75 6c 6c 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | null.</code></pre>........<p>See |
| a24e0 | 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 | .also:</p><ul>.<li><a.href="#Opt |
| a2500 | 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | ionals">Optionals</a></li>.</ul> |
| a2520 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 74 74 65 6d 70 74 2d 74 | ...............<h2.id="Attempt-t |
| a2540 | 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 74 | o-Unwrap-Error"><a.href="#toc-At |
| a2560 | 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e 41 74 74 65 6d 70 74 20 74 | tempt-to-Unwrap-Error">Attempt.t |
| a2580 | 6f 20 55 6e 77 72 61 70 20 45 72 72 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | o.Unwrap.Error</a>.<a.class="hdr |
| a25a0 | 22 20 68 72 65 66 3d 22 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 | ".href="#Attempt-to-Unwrap-Error |
| a25c0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 | ">..</a></h2>........<p>At.compi |
| a25e0 | 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | le-time:</p>.......<p.class="fil |
| a2600 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| a2620 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | "zig"><span.class="tok-kw">compt |
| a2640 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ime</span>.{.....<span.class="to |
| a2660 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 67 65 74 4e | k-kw">const</span>.number.=.getN |
| a2680 | 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | umberOrFail().<span.class="tok-k |
| a26a0 | 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | w">catch</span>.<span.class="tok |
| a26c0 | 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 | -kw">unreachable</span>;.}..<spa |
| a26e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| a2700 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c | .class="tok-fn">getNumberOrFail< |
| a2720 | 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>().!<span.class="tok-type" |
| a2740 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >i32</span>.{.....<span.class="t |
| a2760 | 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">return</span>.<span.class |
| a2780 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 | ="tok-kw">error</span>.UnableToR |
| a27a0 | 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | eturnNumber;.}</code></pre><pre> |
| a27c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 | <code.class="shell">$.zig.test.t |
| a27e0 | 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 | est.zig.<span.class="t0_1">./doc |
| a2800 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 33 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | gen_tmp/test.zig:2:38:.</span><s |
| a2820 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e | pan.class="t31_1">error:.</span> |
| a2840 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 75 67 68 74 20 75 6e 65 78 70 65 | <span.class="t0_1">caught.unexpe |
| a2860 | 63 74 65 64 20 65 72 72 6f 72 20 27 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 | cted.error.'UnableToReturnNumber |
| a2880 | 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 65 72 20 3d 20 67 65 74 4e | '</span>.....const.number.=.getN |
| a28a0 | 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 63 61 74 63 68 20 75 6e 72 65 61 63 68 61 62 6c 65 3b | umberOrFail().catch.unreachable; |
| a28c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| a28e0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| a2900 | 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 | n>.</code></pre>........<p>At.ru |
| a2920 | 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ntime:</p>.......<p.class="file" |
| a2940 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| a2960 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| a2980 | 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>.std.=.<span.class="tok-bui |
| a29a0 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@import</span>(<span.class |
| a29c0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ="tok-str">"std"</span |
| a29e0 | 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | >);..<span.class="tok-kw">pub</s |
| a2a00 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | pan>.<span.class="tok-kw">fn</sp |
| a2a20 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 | an>.<span.class="tok-fn">main</s |
| a2a40 | 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | pan>().<span.class="tok-type">vo |
| a2a60 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | id</span>.{.....<span.class="tok |
| a2a80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 67 65 74 4e 75 | -kw">const</span>.number.=.getNu |
| a2aa0 | 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | mberOrFail().<span.class="tok-kw |
| a2ac0 | 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">catch</span>.<span.class="tok- |
| a2ae0 | 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 73 74 64 2e | kw">unreachable</span>;.....std. |
| a2b00 | 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | debug.print(<span.class="tok-str |
| a2b20 | 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ">"value:.{}\n"</span> |
| a2b40 | 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ,..{number});.}..<span.class="to |
| a2b60 | 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | k-kw">fn</span>.<span.class="tok |
| a2b80 | 2d 66 6e 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 61 6e 3e 28 29 20 21 3c | -fn">getNumberOrFail</span>().!< |
| a2ba0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">i32</span> |
| a2bc0 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | .{.....<span.class="tok-kw">retu |
| a2be0 | 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | rn</span>.<span.class="tok-kw">e |
| a2c00 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 | rror</span>.UnableToReturnNumber |
| a2c20 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| a2c40 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 | ="shell">$.zig.build-exe.test.zi |
| a2c60 | 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 37 33 36 38 20 70 61 6e 69 63 3a 20 61 | g.$../test.thread.17368.panic:.a |
| a2c80 | 74 74 65 6d 70 74 20 74 6f 20 75 6e 77 72 61 70 20 65 72 72 6f 72 3a 20 55 6e 61 62 6c 65 54 6f | ttempt.to.unwrap.error:.UnableTo |
| a2ca0 | 52 65 74 75 72 6e 4e 75 6d 62 65 72 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e | ReturnNumber.<span.class="t1_0"> |
| a2cc0 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f | /home/andy/Downloads/zig/docgen_ |
| a2ce0 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | tmp/test.zig:9:5</span>:.<span.c |
| a2d00 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 31 32 35 34 20 69 6e 20 67 65 74 4e 75 6d 62 65 | lass="t2_0">0x231254.in.getNumbe |
| a2d20 | 72 4f 72 46 61 69 6c 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e | rOrFail.(test)</span>.....return |
| a2d40 | 20 65 72 72 6f 72 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 20 20 20 | .error.UnableToReturnNumber;.... |
| a2d60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .<span.class="t32_1">^</span>.<s |
| a2d80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a | pan.class="t1_0">???:?:?</span>: |
| a2da0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 63 36 38 32 20 69 6e 20 | .<span.class="t2_0">0x20c682.in. |
| a2dc0 | 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 | ???.(???)</span>.<span.class="t1 |
| a2de0 | 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 | _0">/home/andy/Downloads/zig/doc |
| a2e00 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 33 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | gen_tmp/test.zig:4:38</span>:.<s |
| a2e20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 39 66 62 62 20 69 6e 20 6d 61 69 | pan.class="t2_0">0x229fbb.in.mai |
| a2e40 | 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 65 72 | n.(test)</span>.....const.number |
| a2e60 | 20 3d 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 63 61 74 63 68 20 75 6e 72 65 61 | .=.getNumberOrFail().catch.unrea |
| a2e80 | 63 68 61 62 6c 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | chable;......................... |
| a2ea0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| a2ec0 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f | >^</span>.<span.class="t1_0">/ho |
| a2ee0 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | me/andy/Downloads/zig/lib/std/st |
| a2f00 | 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | art.zig:461:22</span>:.<span.cla |
| a2f20 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 33 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e | ss="t2_0">0x22233c.in.std.start. |
| a2f40 | 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | callMain.(test)</span>.......... |
| a2f60 | 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...root.main();................. |
| a2f80 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e | .....<span.class="t32_1">^</span |
| a2fa0 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | >.<span.class="t1_0">/home/andy/ |
| a2fc0 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | Downloads/zig/lib/std/start.zig: |
| a2fe0 | 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | 413:12</span>:.<span.class="t2_0 |
| a3000 | 22 3e 30 78 32 30 36 31 63 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e | ">0x2061ce.in.std.start.callMain |
| a3020 | 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 | WithArgs.(test)</span>.....retur |
| a3040 | 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 | n.@call(.{..modifier.=..always_i |
| a3060 | 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 | nline.},.callMain,..{});........ |
| a3080 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| a30a0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | .<span.class="t1_0">/home/andy/D |
| a30c0 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 | ownloads/zig/lib/std/start.zig:3 |
| a30e0 | 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | 32:17</span>:.<span.class="t2_0" |
| a3100 | 3e 30 78 32 30 35 31 66 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c | >0x2051f6.in.std.start.posixCall |
| a3120 | 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 | MainAndExit.(test)</span>.....st |
| a3140 | 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e | d.os.exit(@call(.{..modifier.=.. |
| a3160 | 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 | always_inline.},.callMainWithArg |
| a3180 | 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 | s,..{.argc,.argv,.envp.}));..... |
| a31a0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| a31c0 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d | ^</span>.<span.class="t1_0">/hom |
| a31e0 | 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | e/andy/Downloads/zig/lib/std/sta |
| a3200 | 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rt.zig:245:5</span>:.<span.class |
| a3220 | 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 30 30 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 | ="t2_0">0x205002.in.std.start._s |
| a3240 | 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 | tart.(test)</span>.....@call(.{. |
| a3260 | 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 | .modifier.=..never_inline.},.pos |
| a3280 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 | ixCallMainAndExit,..{});.....<sp |
| a32a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 | an.class="t32_1">^</span>.(proce |
| a32c0 | 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c | ss.terminated.by.signal)</code>< |
| a32e0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4f 6e 65 20 77 61 79 20 74 6f 20 61 76 6f 69 64 | /pre>........<p>One.way.to.avoid |
| a3300 | 20 74 68 69 73 20 63 72 61 73 68 20 69 73 20 74 6f 20 74 65 73 74 20 66 6f 72 20 61 6e 20 65 72 | .this.crash.is.to.test.for.an.er |
| a3320 | 72 6f 72 20 69 6e 73 74 65 61 64 20 6f 66 20 61 73 73 75 6d 69 6e 67 20 61 20 73 75 63 63 65 73 | ror.instead.of.assuming.a.succes |
| a3340 | 73 66 75 6c 20 72 65 73 75 6c 74 2c 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 | sful.result,.with.......the.<cod |
| a3360 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| a3380 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 3c | w">if</span></code>.expression:< |
| a33a0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| a33c0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| a33e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 | an.class="tok-kw">const</span>.p |
| a3400 | 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | rint.=.<span.class="tok-builtin" |
| a3420 | 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >@import</span>(<span.class="tok |
| a3440 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 | -str">"std"</span>).de |
| a3460 | 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | bug.print;..<span.class="tok-kw" |
| a3480 | 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >pub</span>.<span.class="tok-kw" |
| a34a0 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e | >fn</span>.<span.class="tok-fn"> |
| a34c0 | 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | main</span>().<span.class="tok-t |
| a34e0 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ype">void</span>.{.....<span.cla |
| a3500 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 | ss="tok-kw">const</span>.result. |
| a3520 | 3d 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | =.getNumberOrFail();......<span. |
| a3540 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 72 65 73 75 6c 74 | class="tok-kw">if</span>.(result |
| a3560 | 29 20 7c 6e 75 6d 62 65 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e | ).|number|.{.........print(<span |
| a3580 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 65 | .class="tok-str">"got.numbe |
| a35a0 | 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 | r:.{}\n"</span>,..{number}) |
| a35c0 | 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | ;.....}.<span.class="tok-kw">els |
| a35e0 | 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c | e</span>.|err|.{.........print(< |
| a3600 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 65 | span.class="tok-str">"got.e |
| a3620 | 72 72 6f 72 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 | rror:.{s}\n"</span>,..{<spa |
| a3640 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 | n.class="tok-builtin">@errorName |
| a3660 | 3c 2f 73 70 61 6e 3e 28 65 72 72 29 7d 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | </span>(err)});.....}.}..<span.c |
| a3680 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | lass="tok-kw">fn</span>.<span.cl |
| a36a0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 | ass="tok-fn">getNumberOrFail</sp |
| a36c0 | 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | an>().!<span.class="tok-type">i3 |
| a36e0 | 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 2</span>.{.....<span.class="tok- |
| a3700 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">return</span>.<span.class="t |
| a3720 | 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 | ok-kw">error</span>.UnableToRetu |
| a3740 | 72 6e 4e 75 6d 62 65 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | rnNumber;.}</code></pre><pre><co |
| a3760 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 | de.class="shell">$.zig.build-exe |
| a3780 | 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 67 6f 74 20 65 72 72 6f 72 3a 20 55 6e | .test.zig.$../test.got.error:.Un |
| a37a0 | 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ableToReturnNumber.</code></pre> |
| a37c0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 | ........<p>See.also:</p><ul>.<li |
| a37e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c | ><a.href="#Errors">Errors</a></l |
| a3800 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 | i>.</ul>...............<h2.id="I |
| a3820 | 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | nvalid-Error-Code"><a.href="#toc |
| a3840 | 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 | -Invalid-Error-Code">Invalid.Err |
| a3860 | 6f 72 20 43 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | or.Code</a>.<a.class="hdr".href= |
| a3880 | 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | "#Invalid-Error-Code">..</a></h2 |
| a38a0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e | >........<p>At.compile-time:</p> |
| a38c0 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c | .......<p.class="file">test.zig< |
| a38e0 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| a3900 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b | class="tok-kw">comptime</span>.{ |
| a3920 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| a3940 | 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.err.=.<span.class="tok-kw |
| a3960 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 6e 45 72 72 6f 72 3b 0a 20 20 20 20 3c 73 70 61 | ">error</span>.AnError;.....<spa |
| a3980 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 | n.class="tok-kw">const</span>.nu |
| a39a0 | 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | mber.=.<span.class="tok-builtin" |
| a39c0 | 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 72 72 29 20 2b 20 3c 73 70 61 6e | >@errorToInt</span>(err).+.<span |
| a39e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 | .class="tok-number">10</span>;.. |
| a3a00 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| a3a20 | 70 61 6e 3e 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.invalid_err.=.<span.class=" |
| a3a40 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 | tok-builtin">@intToError</span>( |
| a3a60 | 6e 75 6d 62 65 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | number);.}</code></pre><pre><cod |
| a3a80 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e | e.class="shell">$.zig.test.test. |
| a3aa0 | 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f | zig.<span.class="t0_1">./docgen_ |
| a3ac0 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 32 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | tmp/test.zig:4:25:.</span><span. |
| a3ae0 | 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | class="t31_1">error:.</span><spa |
| a3b00 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 31 31 20 | n.class="t0_1">integer.value.11. |
| a3b20 | 72 65 70 72 65 73 65 6e 74 73 20 6e 6f 20 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 | represents.no.error</span>.....c |
| a3b40 | 6f 6e 73 74 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 40 69 6e 74 54 6f 45 72 72 6f 72 28 6e | onst.invalid_err.=.@intToError(n |
| a3b60 | 75 6d 62 65 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | umber);......................... |
| a3b80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 | <span.class="t32_1">^</span>.</c |
| a3ba0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a | ode></pre>........<p>At.runtime: |
| a3bc0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| a3be0 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| a3c00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| a3c20 | 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | std.=.<span.class="tok-builtin"> |
| a3c40 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| a3c60 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c | str">"std"</span>);..< |
| a3c80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c | span.class="tok-kw">pub</span>.< |
| a3ca0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| a3cc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 | pan.class="tok-fn">main</span>() |
| a3ce0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 | .<span.class="tok-type">void</sp |
| a3d00 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>.{.....<span.class="tok-kw">v |
| a3d20 | 61 72 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ar</span>.err.=.<span.class="tok |
| a3d40 | 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 6e 45 72 72 6f 72 3b 0a 20 20 20 20 3c | -kw">error</span>.AnError;.....< |
| a3d60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e | span.class="tok-kw">var</span>.n |
| a3d80 | 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | umber.=.<span.class="tok-builtin |
| a3da0 | 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 72 72 29 20 2b 20 3c 73 70 61 | ">@errorToInt</span>(err).+.<spa |
| a3dc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 30 30 3c 2f 73 70 61 6e 3e 3b | n.class="tok-number">500</span>; |
| a3de0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | .....<span.class="tok-kw">var</s |
| a3e00 | 70 61 6e 3e 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.invalid_err.=.<span.class=" |
| a3e20 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 | tok-builtin">@intToError</span>( |
| a3e40 | 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 | number);.....std.debug.print(<sp |
| a3e60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 | an.class="tok-str">"value:. |
| a3e80 | 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 7d | {}\n"</span>,..{number});.} |
| a3ea0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </code></pre><pre><code.class="s |
| a3ec0 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 | hell">$.zig.build-exe.test.zig.$ |
| a3ee0 | 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 37 34 36 39 20 70 61 6e 69 63 3a 20 69 6e 76 61 | ../test.thread.17469.panic:.inva |
| a3f00 | 6c 69 64 20 65 72 72 6f 72 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 | lid.error.code.<span.class="t1_0 |
| a3f20 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 | ">/home/andy/Downloads/zig/docge |
| a3f40 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 32 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | n_tmp/test.zig:6:23</span>:.<spa |
| a3f60 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 39 66 63 33 20 69 6e 20 6d 61 69 6e 20 | n.class="t2_0">0x229fc3.in.main. |
| a3f80 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 69 6e 76 61 6c 69 64 5f 65 72 | (test)</span>.....var.invalid_er |
| a3fa0 | 72 20 3d 20 40 69 6e 74 54 6f 45 72 72 6f 72 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 20 20 20 | r.=.@intToError(number);........ |
| a3fc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| a3fe0 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f | 1">^</span>.<span.class="t1_0">/ |
| a4000 | 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | home/andy/Downloads/zig/lib/std/ |
| a4020 | 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | start.zig:461:22</span>:.<span.c |
| a4040 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 34 63 20 69 6e 20 73 74 64 2e 73 74 61 72 | lass="t2_0">0x22234c.in.std.star |
| a4060 | 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | t.callMain.(test)</span>........ |
| a4080 | 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....root.main();............... |
| a40a0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | .......<span.class="t32_1">^</sp |
| a40c0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | an>.<span.class="t1_0">/home/and |
| a40e0 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | y/Downloads/zig/lib/std/start.zi |
| a4100 | 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | g:413:12</span>:.<span.class="t2 |
| a4120 | 5f 30 22 3e 30 78 32 30 36 31 64 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 | _0">0x2061de.in.std.start.callMa |
| a4140 | 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 | inWithArgs.(test)</span>.....ret |
| a4160 | 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 | urn.@call(.{..modifier.=..always |
| a4180 | 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 | _inline.},.callMain,..{});...... |
| a41a0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| a41c0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | n>.<span.class="t1_0">/home/andy |
| a41e0 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | /Downloads/zig/lib/std/start.zig |
| a4200 | 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | :332:17</span>:.<span.class="t2_ |
| a4220 | 30 22 3e 30 78 32 30 35 32 30 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 | 0">0x205206.in.std.start.posixCa |
| a4240 | 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | llMainAndExit.(test)</span>..... |
| a4260 | 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d | std.os.exit(@call(.{..modifier.= |
| a4280 | 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 | ..always_inline.},.callMainWithA |
| a42a0 | 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 | rgs,..{.argc,.argv,.envp.}));... |
| a42c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ..............<span.class="t32_1 |
| a42e0 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 | ">^</span>.<span.class="t1_0">/h |
| a4300 | 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | ome/andy/Downloads/zig/lib/std/s |
| a4320 | 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | tart.zig:245:5</span>:.<span.cla |
| a4340 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 30 31 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e | ss="t2_0">0x205012.in.std.start. |
| a4360 | 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e | _start.(test)</span>.....@call(. |
| a4380 | 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 | {..modifier.=..never_inline.},.p |
| a43a0 | 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c | osixCallMainAndExit,..{});.....< |
| a43c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f | span.class="t32_1">^</span>.(pro |
| a43e0 | 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 | cess.terminated.by.signal)</code |
| a4400 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e | ></pre>...............<h2.id="In |
| a4420 | 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 | valid-Enum-Cast"><a.href="#toc-I |
| a4440 | 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 6e 75 6d 20 43 | nvalid-Enum-Cast">Invalid.Enum.C |
| a4460 | 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e | ast</a>.<a.class="hdr".href="#In |
| a4480 | 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | valid-Enum-Cast">..</a></h2>.... |
| a44a0 | 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 | ....<p>At.compile-time:</p>..... |
| a44c0 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| a44e0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| a4500 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 | ="tok-kw">const</span>.Foo.=.<sp |
| a4520 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a | an.class="tok-kw">enum</span>.{. |
| a4540 | 20 20 20 20 61 2c 0a 20 20 20 20 62 2c 0a 20 20 20 20 63 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c | ....a,.....b,.....c,.};.<span.cl |
| a4560 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ass="tok-kw">comptime</span>.{.. |
| a4580 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| a45a0 | 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | pan>.a:.<span.class="tok-type">u |
| a45c0 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | 2</span>.=.<span.class="tok-numb |
| a45e0 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">3</span>;.....<span.class="t |
| a4600 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c | ok-kw">const</span>.b.=.<span.cl |
| a4620 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 73 70 | ass="tok-builtin">@intToEnum</sp |
| a4640 | 61 6e 3e 28 46 6f 6f 2c 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | an>(Foo,.a);.}</code></pre><pre> |
| a4660 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 | <code.class="shell">$.zig.test.t |
| a4680 | 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 | est.zig.<span.class="t0_1">./doc |
| a46a0 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 38 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | gen_tmp/test.zig:8:15:.</span><s |
| a46c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e | pan.class="t31_1">error:.</span> |
| a46e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 6e 75 6d 20 27 46 6f 6f 27 20 68 61 | <span.class="t0_1">enum.'Foo'.ha |
| a4700 | 73 20 6e 6f 20 74 61 67 20 6d 61 74 63 68 69 6e 67 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 | s.no.tag.matching.integer.value. |
| a4720 | 33 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 62 20 3d 20 40 69 6e 74 54 6f 45 6e 75 | 3</span>.....const.b.=.@intToEnu |
| a4740 | 6d 28 46 6f 6f 2c 20 61 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | m(Foo,.a);...............<span.c |
| a4760 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| a4780 | 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 | s="t0_1">./docgen_tmp/test.zig:1 |
| a47a0 | 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e | :13:.</span><span.class="t36_1"> |
| a47c0 | 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e | note:.</span><span.class="t0_1"> |
| a47e0 | 27 46 6f 6f 27 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 63 6f 6e 73 74 | 'Foo'.declared.here</span>.const |
| a4800 | 20 46 6f 6f 20 3d 20 65 6e 75 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | .Foo.=.enum.{.............<span. |
| a4820 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f | class="t32_1">^</span>.</code></ |
| a4840 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 | pre>........<p>At.runtime:</p>.. |
| a4860 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| a4880 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| a48a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 | ass="tok-kw">const</span>.std.=. |
| a48c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 | <span.class="tok-builtin">@impor |
| a48e0 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>(<span.class="tok-str">& |
| a4900 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 | quot;std"</span>);..<span.c |
| a4920 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d | lass="tok-kw">const</span>.Foo.= |
| a4940 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e | .<span.class="tok-kw">enum</span |
| a4960 | 3e 20 7b 0a 20 20 20 20 61 2c 0a 20 20 20 20 62 2c 0a 20 20 20 20 63 2c 0a 7d 3b 0a 0a 3c 73 70 | >.{.....a,.....b,.....c,.};..<sp |
| a4980 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 | an.class="tok-kw">pub</span>.<sp |
| a49a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| a49c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c | n.class="tok-fn">main</span>().< |
| a49e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e | span.class="tok-type">void</span |
| a4a00 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | >.{.....<span.class="tok-kw">var |
| a4a20 | 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.a:.<span.class="tok-type |
| a4a40 | 22 3e 75 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">u2</span>.=.<span.class="tok-n |
| a4a60 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">3</span>;.....<span.class |
| a4a80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-kw">var</span>.b.=.<span.c |
| a4aa0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 73 | lass="tok-builtin">@intToEnum</s |
| a4ac0 | 70 61 6e 3e 28 46 6f 6f 2c 20 61 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e | pan>(Foo,.a);.....std.debug.prin |
| a4ae0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 | t(<span.class="tok-str">"va |
| a4b00 | 6c 75 65 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e | lue:.{s}\n"</span>,..{<span |
| a4b20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 | .class="tok-builtin">@tagName</s |
| a4b40 | 70 61 6e 3e 28 62 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | pan>(b)});.}</code></pre><pre><c |
| a4b60 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 | ode.class="shell">$.zig.build-ex |
| a4b80 | 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 37 35 33 30 | e.test.zig.$../test.thread.17530 |
| a4ba0 | 20 70 61 6e 69 63 3a 20 69 6e 76 61 6c 69 64 20 65 6e 75 6d 20 76 61 6c 75 65 0a 3c 73 70 61 6e | .panic:.invalid.enum.value.<span |
| a4bc0 | 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 | .class="t1_0">/home/andy/Downloa |
| a4be0 | 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 31 3a 31 33 | ds/zig/docgen_tmp/test.zig:11:13 |
| a4c00 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 | </span>:.<span.class="t2_0">0x22 |
| a4c20 | 39 66 66 39 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 | 9ff9.in.main.(test)</span>.....v |
| a4c40 | 61 72 20 62 20 3d 20 40 69 6e 74 54 6f 45 6e 75 6d 28 46 6f 6f 2c 20 61 29 3b 0a 20 20 20 20 20 | ar.b.=.@intToEnum(Foo,.a);...... |
| a4c60 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | .......<span.class="t32_1">^</sp |
| a4c80 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | an>.<span.class="t1_0">/home/and |
| a4ca0 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | y/Downloads/zig/lib/std/start.zi |
| a4cc0 | 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | g:461:22</span>:.<span.class="t2 |
| a4ce0 | 5f 30 22 3e 30 78 32 32 32 33 61 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 | _0">0x2223ac.in.std.start.callMa |
| a4d00 | 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f | in.(test)</span>.............roo |
| a4d20 | 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | t.main();......................< |
| a4d40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| a4d60 | 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f | n.class="t1_0">/home/andy/Downlo |
| a4d80 | 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 | ads/zig/lib/std/start.zig:413:12 |
| a4da0 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 | </span>:.<span.class="t2_0">0x20 |
| a4dc0 | 36 32 33 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 | 623e.in.std.start.callMainWithAr |
| a4de0 | 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c | gs.(test)</span>.....return.@cal |
| a4e00 | 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 | l(.{..modifier.=..always_inline. |
| a4e20 | 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 | },.callMain,..{});............<s |
| a4e40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| a4e60 | 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 | .class="t1_0">/home/andy/Downloa |
| a4e80 | 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c | ds/zig/lib/std/start.zig:332:17< |
| a4ea0 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 | /span>:.<span.class="t2_0">0x205 |
| a4ec0 | 32 36 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e | 266.in.std.start.posixCallMainAn |
| a4ee0 | 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 | dExit.(test)</span>.....std.os.e |
| a4f00 | 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 | xit(@call(.{..modifier.=..always |
| a4f20 | 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 | _inline.},.callMainWithArgs,..{. |
| a4f40 | 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | argc,.argv,.envp.}));........... |
| a4f60 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| a4f80 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | n>.<span.class="t1_0">/home/andy |
| a4fa0 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | /Downloads/zig/lib/std/start.zig |
| a4fc0 | 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | :245:5</span>:.<span.class="t2_0 |
| a4fe0 | 22 3e 30 78 32 30 35 30 37 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 | ">0x205072.in.std.start._start.( |
| a5000 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 | test)</span>.....@call(.{..modif |
| a5020 | 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c | ier.=..never_inline.},.posixCall |
| a5040 | 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | MainAndExit,..{});.....<span.cla |
| a5060 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 | ss="t32_1">^</span>.(process.ter |
| a5080 | 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | minated.by.signal)</code></pre>. |
| a50a0 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 76 61 6c 69 64 2d 45 | ...............<h2.id="Invalid-E |
| a50c0 | 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 76 | rror-Set-Cast"><a.href="#toc-Inv |
| a50e0 | 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 | alid-Error-Set-Cast">Invalid.Err |
| a5100 | 6f 72 20 53 65 74 20 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | or.Set.Cast</a>.<a.class="hdr".h |
| a5120 | 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e c2 a7 | ref="#Invalid-Error-Set-Cast">.. |
| a5140 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 | </a></h2>........<p>At.compile-t |
| a5160 | 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ime:</p>.......<p.class="file">t |
| a5180 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| a51a0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| a51c0 | 61 6e 3e 20 53 65 74 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>.Set1.=.<span.class="tok-kw"> |
| a51e0 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 42 2c 0a 7d 3b 0a 3c | error</span>{.....A,.....B,.};.< |
| a5200 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| a5220 | 20 53 65 74 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 | .Set2.=.<span.class="tok-kw">err |
| a5240 | 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 43 2c 0a 7d 3b 0a 3c 73 70 61 | or</span>{.....A,.....C,.};.<spa |
| a5260 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e | n.class="tok-kw">comptime</span> |
| a5280 | 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | .{....._.=.<span.class="tok-buil |
| a52a0 | 74 69 6e 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 53 65 74 32 2c 20 53 65 | tin">@errSetCast</span>(Set2,.Se |
| a52c0 | 74 31 2e 42 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | t1.B);.}</code></pre><pre><code. |
| a52e0 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| a5300 | 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d | g.<span.class="t0_1">./docgen_tm |
| a5320 | 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | p/test.zig:10:9:.</span><span.cl |
| a5340 | 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ass="t31_1">error:.</span><span. |
| a5360 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 72 72 6f 72 2e 42 20 6e 6f 74 20 61 20 6d 65 6d 62 65 | class="t0_1">error.B.not.a.membe |
| a5380 | 72 20 6f 66 20 65 72 72 6f 72 20 73 65 74 20 27 53 65 74 32 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 | r.of.error.set.'Set2'</span>.... |
| a53a0 | 20 5f 20 3d 20 40 65 72 72 53 65 74 43 61 73 74 28 53 65 74 32 2c 20 53 65 74 31 2e 42 29 3b 0a | ._.=.@errSetCast(Set2,.Set1.B);. |
| a53c0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | ........<span.class="t32_1">^</s |
| a53e0 | 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 | pan>.</code></pre>........<p>At. |
| a5400 | 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | runtime:</p>.......<p.class="fil |
| a5420 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| a5440 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | "zig"><span.class="tok-kw">const |
| a5460 | 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | </span>.std.=.<span.class="tok-b |
| a5480 | 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | uiltin">@import</span>(<span.cla |
| a54a0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 | ss="tok-str">"std"</sp |
| a54c0 | 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | an>);..<span.class="tok-kw">cons |
| a54e0 | 74 3c 2f 73 70 61 6e 3e 20 53 65 74 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t</span>.Set1.=.<span.class="tok |
| a5500 | 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 42 2c | -kw">error</span>{.....A,.....B, |
| a5520 | 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | .};.<span.class="tok-kw">const</ |
| a5540 | 73 70 61 6e 3e 20 53 65 74 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>.Set2.=.<span.class="tok-kw |
| a5560 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 43 2c 0a 7d 3b | ">error</span>{.....A,.....C,.}; |
| a5580 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">pub</span> |
| a55a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">fn</span>. |
| a55c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e | <span.class="tok-fn">main</span> |
| a55e0 | 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | ().<span.class="tok-type">void</ |
| a5600 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 53 65 74 31 2e 42 29 3b 0a 7d 0a 3c 73 70 61 6e | span>.{.....foo(Set1.B);.}.<span |
| a5620 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | .class="tok-kw">fn</span>.<span. |
| a5640 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 65 74 31 3a 20 | class="tok-fn">foo</span>(set1:. |
| a5660 | 53 65 74 31 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 | Set1).<span.class="tok-type">voi |
| a5680 | 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | d</span>.{.....<span.class="tok- |
| a56a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.x.=.<span.class |
| a56c0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 73 70 61 6e | ="tok-builtin">@errSetCast</span |
| a56e0 | 3e 28 53 65 74 32 2c 20 73 65 74 31 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 | >(Set2,.set1);.....std.debug.pri |
| a5700 | 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 | nt(<span.class="tok-str">"v |
| a5720 | 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 7d 29 3b 0a | alue:.{}\n"</span>,..{x});. |
| a5740 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| a5760 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a | shell">$.zig.build-exe.test.zig. |
| a5780 | 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 37 35 39 32 20 70 61 6e 69 63 3a 20 69 6e 76 | $../test.thread.17592.panic:.inv |
| a57a0 | 61 6c 69 64 20 65 72 72 6f 72 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f | alid.error.code.<span.class="t1_ |
| a57c0 | 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 | 0">/home/andy/Downloads/zig/docg |
| a57e0 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 35 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | en_tmp/test.zig:15:15</span>:.<s |
| a5800 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 31 32 35 36 20 69 6e 20 66 6f 6f | pan.class="t2_0">0x231256.in.foo |
| a5820 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 65 72 | .(test)</span>.....const.x.=.@er |
| a5840 | 72 53 65 74 43 61 73 74 28 53 65 74 32 2c 20 73 65 74 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | rSetCast(Set2,.set1);........... |
| a5860 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| a5880 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | .<span.class="t1_0">/home/andy/D |
| a58a0 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ownloads/zig/docgen_tmp/test.zig |
| a58c0 | 3a 31 32 3a 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | :12:8</span>:.<span.class="t2_0" |
| a58e0 | 3e 30 78 32 32 39 66 62 64 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | >0x229fbd.in.main.(test)</span>. |
| a5900 | 20 20 20 20 66 6f 6f 28 53 65 74 31 2e 42 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | ....foo(Set1.B);........<span.cl |
| a5920 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ass="t32_1">^</span>.<span.class |
| a5940 | 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 | ="t1_0">/home/andy/Downloads/zig |
| a5960 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e | /lib/std/start.zig:461:22</span> |
| a5980 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 39 63 20 69 6e | :.<span.class="t2_0">0x22239c.in |
| a59a0 | 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | .std.start.callMain.(test)</span |
| a59c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 | >.............root.main();...... |
| a59e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | ................<span.class="t32 |
| a5a00 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e | _1">^</span>.<span.class="t1_0"> |
| a5a20 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | /home/andy/Downloads/zig/lib/std |
| a5a40 | 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | /start.zig:413:12</span>:.<span. |
| a5a60 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 32 32 65 20 69 6e 20 73 74 64 2e 73 74 61 | class="t2_0">0x20622e.in.std.sta |
| a5a80 | 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | rt.callMainWithArgs.(test)</span |
| a5aa0 | 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 | >.....return.@call(.{..modifier. |
| a5ac0 | 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b | =..always_inline.},.callMain,..{ |
| a5ae0 | 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | });............<span.class="t32_ |
| a5b00 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f | 1">^</span>.<span.class="t1_0">/ |
| a5b20 | 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | home/andy/Downloads/zig/lib/std/ |
| a5b40 | 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | start.zig:332:17</span>:.<span.c |
| a5b60 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 32 35 36 20 69 6e 20 73 74 64 2e 73 74 61 72 | lass="t2_0">0x205256.in.std.star |
| a5b80 | 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 | t.posixCallMainAndExit.(test)</s |
| a5ba0 | 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d | pan>.....std.os.exit(@call(.{..m |
| a5bc0 | 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c | odifier.=..always_inline.},.call |
| a5be0 | 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 | MainWithArgs,..{.argc,.argv,.env |
| a5c00 | 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | p.}));.................<span.cla |
| a5c20 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| a5c40 | 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f | "t1_0">/home/andy/Downloads/zig/ |
| a5c60 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | lib/std/start.zig:245:5</span>:. |
| a5c80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 30 36 32 20 69 6e 20 73 | <span.class="t2_0">0x205062.in.s |
| a5ca0 | 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | td.start._start.(test)</span>... |
| a5cc0 | 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e | ..@call(.{..modifier.=..never_in |
| a5ce0 | 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b | line.},.posixCallMainAndExit,..{ |
| a5d00 | 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | });.....<span.class="t32_1">^</s |
| a5d20 | 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e | pan>.(process.terminated.by.sign |
| a5d40 | 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | al)</code></pre>................ |
| a5d60 | 3c 68 32 20 69 64 3d 22 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d | <h2.id="Incorrect-Pointer-Alignm |
| a5d80 | 65 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 | ent"><a.href="#toc-Incorrect-Poi |
| a5da0 | 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e 49 6e 63 6f 72 72 65 63 74 20 50 6f 69 6e 74 65 | nter-Alignment">Incorrect.Pointe |
| a5dc0 | 72 20 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | r.Alignment</a>.<a.class="hdr".h |
| a5de0 | 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e | ref="#Incorrect-Pointer-Alignmen |
| a5e00 | 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 | t">..</a></h2>........<p>At.comp |
| a5e20 | 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | ile-time:</p>.......<p.class="fi |
| a5e40 | 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | le">test.zig</p><pre><code.class |
| a5e60 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | ="zig"><span.class="tok-kw">comp |
| a5e80 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | time</span>.{.....<span.class="t |
| a5ea0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.ptr.=.<span. |
| a5ec0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 | class="tok-builtin">@intToPtr</s |
| a5ee0 | 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e | pan>(*<span.class="tok-kw">align |
| a5f00 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | </span>(<span.class="tok-number" |
| a5f20 | 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | >1</span>).<span.class="tok-type |
| a5f40 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">i32</span>,.<span.class="tok-n |
| a5f60 | 75 6d 62 65 72 22 3e 30 78 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | umber">0x1</span>);.....<span.cl |
| a5f80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 69 67 6e 65 | ass="tok-kw">const</span>.aligne |
| a5fa0 | 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 | d.=.<span.class="tok-builtin">@a |
| a5fc0 | 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | lignCast</span>(<span.class="tok |
| a5fe0 | 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 29 3b 0a 7d 3c 2f 63 6f 64 65 | -number">4</span>,.ptr);.}</code |
| a6000 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| a6020 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | $.zig.test.test.zig.<span.class= |
| a6040 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 33 | "t0_1">./docgen_tmp/test.zig:3:3 |
| a6060 | 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 | 5:.</span><span.class="t31_1">er |
| a6080 | 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 70 | ror:.</span><span.class="t0_1">p |
| a60a0 | 6f 69 6e 74 65 72 20 61 64 64 72 65 73 73 20 30 78 31 20 69 73 20 6e 6f 74 20 61 6c 69 67 6e 65 | ointer.address.0x1.is.not.aligne |
| a60c0 | 64 20 74 6f 20 34 20 62 79 74 65 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 61 6c | d.to.4.bytes</span>.....const.al |
| a60e0 | 69 67 6e 65 64 20 3d 20 40 61 6c 69 67 6e 43 61 73 74 28 34 2c 20 70 74 72 29 3b 0a 20 20 20 20 | igned.=.@alignCast(4,.ptr);..... |
| a6100 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | ..............................<s |
| a6120 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| a6140 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| a6160 | 7a 69 67 3a 33 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | zig:3:21:.</span><span.class="t3 |
| a6180 | 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 6_1">note:.</span><span.class="t |
| a61a0 | 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | 0_1">referenced.here</span>..... |
| a61c0 | 63 6f 6e 73 74 20 61 6c 69 67 6e 65 64 20 3d 20 40 61 6c 69 67 6e 43 61 73 74 28 34 2c 20 70 74 | const.aligned.=.@alignCast(4,.pt |
| a61e0 | 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | r);.....................<span.cl |
| a6200 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ass="t32_1">^</span>.</code></pr |
| a6220 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 | e>........<p>At.runtime:</p>.... |
| a6240 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| a6260 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| a6280 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 | s="tok-kw">const</span>.mem.=.<s |
| a62a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c | pan.class="tok-builtin">@import< |
| a62c0 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | /span>(<span.class="tok-str">&qu |
| a62e0 | 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 | ot;std"</span>).mem;.<span. |
| a6300 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | class="tok-kw">pub</span>.<span. |
| a6320 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | class="tok-kw">fn</span>.<span.c |
| a6340 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 | lass="tok-fn">main</span>().!<sp |
| a6360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 | an.class="tok-type">void</span>. |
| a6380 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | {.....<span.class="tok-kw">var</ |
| a63a0 | 73 70 61 6e 3e 20 61 72 72 61 79 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.array.<span.class="tok-kw" |
| a63c0 | 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >align</span>(<span.class="tok-n |
| a63e0 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 | umber">4</span>).=.[_]<span.clas |
| a6400 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 | s="tok-type">u32</span>{.<span.c |
| a6420 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 | lass="tok-number">0x11111111</sp |
| a6440 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 | an>,.<span.class="tok-number">0x |
| a6460 | 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | 11111111</span>.};.....<span.cla |
| a6480 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d | ss="tok-kw">const</span>.bytes.= |
| a64a0 | 20 6d 65 6d 2e 73 6c 69 63 65 41 73 42 79 74 65 73 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c | .mem.sliceAsBytes(array[<span.cl |
| a64c0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 3b 0a 20 | ass="tok-number">0</span>..]);.. |
| a64e0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | ...<span.class="tok-kw">if</span |
| a6500 | 3e 20 28 66 6f 6f 28 62 79 74 65 73 29 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >.(foo(bytes).!=.<span.class="to |
| a6520 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | k-number">0x11111111</span>).<sp |
| a6540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">return</span>. |
| a6560 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e | <span.class="tok-kw">error</span |
| a6580 | 3e 2e 57 72 6f 6e 67 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.Wrong;.}.<span.class="tok-kw"> |
| a65a0 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 | fn</span>.<span.class="tok-fn">f |
| a65c0 | 6f 6f 3c 2f 73 70 61 6e 3e 28 62 79 74 65 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | oo</span>(bytes:.[]<span.class=" |
| a65e0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">u8</span>).<span.class |
| a6600 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ="tok-type">u32</span>.{.....<sp |
| a6620 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 | an.class="tok-kw">const</span>.s |
| a6640 | 6c 69 63 65 34 20 3d 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | lice4.=.bytes[<span.class="tok-n |
| a6660 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">1</span>..<span.class="to |
| a6680 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-number">5</span>];.....<span.c |
| a66a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 | lass="tok-kw">const</span>.int_s |
| a66c0 | 6c 69 63 65 20 3d 20 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c | lice.=.mem.bytesAsSlice(<span.cl |
| a66e0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-type">u32</span>,.<span |
| a6700 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c | .class="tok-builtin">@alignCast< |
| a6720 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | /span>(<span.class="tok-number"> |
| a6740 | 34 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 34 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | 4</span>,.slice4));.....<span.cl |
| a6760 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 | ass="tok-kw">return</span>.int_s |
| a6780 | 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | lice[<span.class="tok-number">0< |
| a67a0 | 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | /span>];.}</code></pre><pre><cod |
| a67c0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 | e.class="shell">$.zig.build-exe. |
| a67e0 | 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 37 36 35 32 20 70 | test.zig.$../test.thread.17652.p |
| a6800 | 61 6e 69 63 3a 20 69 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 6e 6d 65 6e 74 0a 3c 73 70 61 6e 20 | anic:.incorrect.alignment.<span. |
| a6820 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| a6840 | 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 35 39 3c 2f | s/zig/docgen_tmp/test.zig:9:59</ |
| a6860 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 31 34 | span>:.<span.class="t2_0">0x2314 |
| a6880 | 64 63 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 | dc.in.foo.(test)</span>.....cons |
| a68a0 | 74 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 75 | t.int_slice.=.mem.bytesAsSlice(u |
| a68c0 | 33 32 2c 20 40 61 6c 69 67 6e 43 61 73 74 28 34 2c 20 73 6c 69 63 65 34 29 29 3b 0a 20 20 20 20 | 32,.@alignCast(4,.slice4));..... |
| a68e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| a6900 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......................<span.clas |
| a6920 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| a6940 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 | t1_0">/home/andy/Downloads/zig/d |
| a6960 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 | ocgen_tmp/test.zig:5:12</span>:. |
| a6980 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 61 31 33 35 20 69 6e 20 6d | <span.class="t2_0">0x22a135.in.m |
| a69a0 | 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 66 6f 6f 28 62 79 | ain.(test)</span>.....if.(foo(by |
| a69c0 | 74 65 73 29 20 21 3d 20 30 78 31 31 31 31 31 31 31 31 29 20 72 65 74 75 72 6e 20 65 72 72 6f 72 | tes).!=.0x11111111).return.error |
| a69e0 | 2e 57 72 6f 6e 67 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .Wrong;............<span.class=" |
| a6a00 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f | t32_1">^</span>.<span.class="t1_ |
| a6a20 | 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f | 0">/home/andy/Downloads/zig/lib/ |
| a6a40 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 37 31 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:471:37</span>:.<sp |
| a6a60 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 62 61 20 69 6e 20 73 74 64 2e | an.class="t2_0">0x2223ba.in.std. |
| a6a80 | 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | start.callMain.(test)</span>.... |
| a6aa0 | 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 | .........const.result.=.root.mai |
| a6ac0 | 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | n().catch.|err|.{............... |
| a6ae0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......................<span.clas |
| a6b00 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| a6b20 | 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c | t1_0">/home/andy/Downloads/zig/l |
| a6b40 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/start.zig:413:12</span>:. |
| a6b60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 32 31 65 20 69 6e 20 73 | <span.class="t2_0">0x20621e.in.s |
| a6b80 | 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 | td.start.callMainWithArgs.(test) |
| a6ba0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 | </span>.....return.@call(.{..mod |
| a6bc0 | 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 | ifier.=..always_inline.},.callMa |
| a6be0 | 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | in,..{});............<span.class |
| a6c00 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| a6c20 | 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 | 1_0">/home/andy/Downloads/zig/li |
| a6c40 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c | b/std/start.zig:332:17</span>:.< |
| a6c60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 32 34 36 20 69 6e 20 73 74 | span.class="t2_0">0x205246.in.st |
| a6c80 | 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 | d.start.posixCallMainAndExit.(te |
| a6ca0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c | st)</span>.....std.os.exit(@call |
| a6cc0 | 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d | (.{..modifier.=..always_inline.} |
| a6ce0 | 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 | ,.callMainWithArgs,..{.argc,.arg |
| a6d00 | 76 2c 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | v,.envp.}));.................<sp |
| a6d20 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| a6d40 | 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | class="t1_0">/home/andy/Download |
| a6d60 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 | s/zig/lib/std/start.zig:245:5</s |
| a6d80 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 30 35 | pan>:.<span.class="t2_0">0x20505 |
| a6da0 | 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 | 2.in.std.start._start.(test)</sp |
| a6dc0 | 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 | an>.....@call(.{..modifier.=..ne |
| a6de0 | 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 | ver_inline.},.posixCallMainAndEx |
| a6e00 | 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | it,..{});.....<span.class="t32_1 |
| a6e20 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 | ">^</span>.(process.terminated.b |
| a6e40 | 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 | y.signal)</code></pre>.......... |
| a6e60 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 | .....<h2.id="Wrong-Union-Field-A |
| a6e80 | 63 63 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 72 6f 6e 67 2d 55 6e 69 6f 6e | ccess"><a.href="#toc-Wrong-Union |
| a6ea0 | 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 57 72 6f 6e 67 20 55 6e 69 6f 6e 20 46 69 65 6c 64 | -Field-Access">Wrong.Union.Field |
| a6ec0 | 20 41 63 63 65 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | .Access</a>.<a.class="hdr".href= |
| a6ee0 | 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e c2 a7 3c 2f | "#Wrong-Union-Field-Access">..</ |
| a6f00 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d | a></h2>........<p>At.compile-tim |
| a6f20 | 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | e:</p>.......<p.class="file">tes |
| a6f40 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| a6f60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 | <span.class="tok-kw">comptime</s |
| a6f80 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| a6fa0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e | var</span>.f.=.Foo{..int.=.<span |
| a6fc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b | .class="tok-number">42</span>.}; |
| a6fe0 | 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....f.float.=.<span.class="tok- |
| a7000 | 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | number">12.34</span>;.}..<span.c |
| a7020 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d | lass="tok-kw">const</span>.Foo.= |
| a7040 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 | .<span.class="tok-kw">union</spa |
| a7060 | 6e 3e 20 7b 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.{.....float:.<span.class="tok |
| a7080 | 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 | -type">f32</span>,.....int:.<spa |
| a70a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d | n.class="tok-type">u32</span>,.} |
| a70c0 | 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ;</code></pre><pre><code.class=" |
| a70e0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e | shell">$.zig.test.test.zig.<span |
| a7100 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| a7120 | 7a 69 67 3a 33 3a 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 | zig:3:6:.</span><span.class="t31 |
| a7140 | 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _1">error:.</span><span.class="t |
| a7160 | 30 5f 31 22 3e 61 63 63 65 73 73 69 6e 67 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 27 66 6c 6f 61 | 0_1">accessing.union.field.'floa |
| a7180 | 74 27 20 77 68 69 6c 65 20 66 69 65 6c 64 20 27 69 6e 74 27 20 69 73 20 73 65 74 3c 2f 73 70 61 | t'.while.field.'int'.is.set</spa |
| a71a0 | 6e 3e 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 20 3c 73 70 | n>.....f.float.=.12.34;......<sp |
| a71c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 | an.class="t32_1">^</span>.</code |
| a71e0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 | ></pre>........<p>At.runtime:</p |
| a7200 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| a7220 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| a7240 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 | .class="tok-kw">const</span>.std |
| a7260 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | .=.<span.class="tok-builtin">@im |
| a7280 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | port</span>(<span.class="tok-str |
| a72a0 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 | ">"std"</span>);..<spa |
| a72c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f | n.class="tok-kw">const</span>.Fo |
| a72e0 | 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f | o.=.<span.class="tok-kw">union</ |
| a7300 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>.{.....float:.<span.class=" |
| a7320 | 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c | tok-type">f32</span>,.....int:.< |
| a7340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">u32</span> |
| a7360 | 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | ,.};..<span.class="tok-kw">pub</ |
| a7380 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | span>.<span.class="tok-kw">fn</s |
| a73a0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f | pan>.<span.class="tok-fn">main</ |
| a73c0 | 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | span>().<span.class="tok-type">v |
| a73e0 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | oid</span>.{.....<span.class="to |
| a7400 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d | k-kw">var</span>.f.=.Foo{..int.= |
| a7420 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 | .<span.class="tok-number">42</sp |
| a7440 | 61 6e 3e 20 7d 3b 0a 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | an>.};.....bar(&f);.}..<span |
| a7460 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | .class="tok-kw">fn</span>.<span. |
| a7480 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 66 3a 20 2a 46 6f | class="tok-fn">bar</span>(f:.*Fo |
| a74a0 | 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | o).<span.class="tok-type">void</ |
| a74c0 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | span>.{.....f.float.=.<span.clas |
| a74e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | s="tok-number">12.34</span>;.... |
| a7500 | 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .std.debug.print(<span.class="to |
| a7520 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f | k-str">"value:.{}\n"</ |
| a7540 | 73 70 61 6e 3e 2c 20 2e 7b 66 2e 66 6c 6f 61 74 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | span>,..{f.float});.}</code></pr |
| a7560 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| a7580 | 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 | .build-exe.test.zig.$../test.thr |
| a75a0 | 65 61 64 20 31 37 37 31 34 20 70 61 6e 69 63 3a 20 61 63 63 65 73 73 20 6f 66 20 69 6e 61 63 74 | ead.17714.panic:.access.of.inact |
| a75c0 | 69 76 65 20 75 6e 69 6f 6e 20 66 69 65 6c 64 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f | ive.union.field.<span.class="t1_ |
| a75e0 | 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 | 0">/home/andy/Downloads/zig/docg |
| a7600 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 34 3a 36 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | en_tmp/test.zig:14:6</span>:.<sp |
| a7620 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 65 39 64 61 20 69 6e 20 62 61 72 20 | an.class="t2_0">0x23e9da.in.bar. |
| a7640 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 | (test)</span>.....f.float.=.12.3 |
| a7660 | 34 3b 0a 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | 4;......<span.class="t32_1">^</s |
| a7680 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e | pan>.<span.class="t1_0">/home/an |
| a76a0 | 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | dy/Downloads/zig/docgen_tmp/test |
| a76c0 | 2e 7a 69 67 3a 31 30 3a 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .zig:10:8</span>:.<span.class="t |
| a76e0 | 32 5f 30 22 3e 30 78 32 33 37 37 33 63 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 | 2_0">0x23773c.in.main.(test)</sp |
| a7700 | 61 6e 3e 0a 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 | an>.....bar(&f);........<spa |
| a7720 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| a7740 | 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 | lass="t1_0">/home/andy/Downloads |
| a7760 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 | /zig/lib/std/start.zig:461:22</s |
| a7780 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 66 62 30 | pan>:.<span.class="t2_0">0x22fb0 |
| a77a0 | 63 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f | c.in.std.start.callMain.(test)</ |
| a77c0 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 | span>.............root.main();.. |
| a77e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....................<span.class= |
| a7800 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 | "t32_1">^</span>.<span.class="t1 |
| a7820 | 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 | _0">/home/andy/Downloads/zig/lib |
| a7840 | 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | /std/start.zig:413:12</span>:.<s |
| a7860 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 31 33 39 39 65 20 69 6e 20 73 74 64 | pan.class="t2_0">0x21399e.in.std |
| a7880 | 2e 73 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f | .start.callMainWithArgs.(test)</ |
| a78a0 | 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 | span>.....return.@call(.{..modif |
| a78c0 | 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e | ier.=..always_inline.},.callMain |
| a78e0 | 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ,..{});............<span.class=" |
| a7900 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f | t32_1">^</span>.<span.class="t1_ |
| a7920 | 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f | 0">/home/andy/Downloads/zig/lib/ |
| a7940 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:332:17</span>:.<sp |
| a7960 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 31 32 39 63 36 20 69 6e 20 73 74 64 2e | an.class="t2_0">0x2129c6.in.std. |
| a7980 | 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 | start.posixCallMainAndExit.(test |
| a79a0 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e | )</span>.....std.os.exit(@call(. |
| a79c0 | 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 | {..modifier.=..always_inline.},. |
| a79e0 | 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c | callMainWithArgs,..{.argc,.argv, |
| a7a00 | 20 65 6e 76 70 20 7d 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | .envp.}));.................<span |
| a7a20 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | .class="t32_1">^</span>.<span.cl |
| a7a40 | 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ass="t1_0">/home/andy/Downloads/ |
| a7a60 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:245:5</spa |
| a7a80 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 31 32 37 64 32 20 | n>:.<span.class="t2_0">0x2127d2. |
| a7aa0 | 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | in.std.start._start.(test)</span |
| a7ac0 | 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 | >.....@call(.{..modifier.=..neve |
| a7ae0 | 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 | r_inline.},.posixCallMainAndExit |
| a7b00 | 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ,..{});.....<span.class="t32_1"> |
| a7b20 | 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 | ^</span>.(process.terminated.by. |
| a7b40 | 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | signal)</code></pre>........<p>. |
| a7b60 | 20 20 20 20 20 20 54 68 69 73 20 73 61 66 65 74 79 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 | ......This.safety.is.not.availab |
| a7b80 | 6c 65 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | le.for.<code.class="zig"><span.c |
| a7ba0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">extern</span></cod |
| a7bc0 | 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | e>.or.<code.class="zig"><span.cl |
| a7be0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-kw">packed</span></code |
| a7c00 | 3e 20 75 6e 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | >.unions........</p>.......<p>.. |
| a7c20 | 20 20 20 20 20 54 6f 20 63 68 61 6e 67 65 20 74 68 65 20 61 63 74 69 76 65 20 66 69 65 6c 64 20 | .....To.change.the.active.field. |
| a7c40 | 6f 66 20 61 20 75 6e 69 6f 6e 2c 20 61 73 73 69 67 6e 20 74 68 65 20 65 6e 74 69 72 65 20 75 6e | of.a.union,.assign.the.entire.un |
| a7c60 | 69 6f 6e 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ion,.like.this:.......</p>...... |
| a7c80 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| a7ca0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| a7cc0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 | "tok-kw">const</span>.std.=.<spa |
| a7ce0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| a7d00 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| a7d20 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ;std"</span>);..<span.class |
| a7d40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 | ="tok-kw">const</span>.Foo.=.<sp |
| a7d60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b | an.class="tok-kw">union</span>.{ |
| a7d80 | 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | .....float:.<span.class="tok-typ |
| a7da0 | 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c | e">f32</span>,.....int:.<span.cl |
| a7dc0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c | ass="tok-type">u32</span>,.};..< |
| a7de0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c | span.class="tok-kw">pub</span>.< |
| a7e00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| a7e20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 | pan.class="tok-fn">main</span>() |
| a7e40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 | .<span.class="tok-type">void</sp |
| a7e60 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>.{.....<span.class="tok-kw">v |
| a7e80 | 61 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 | ar</span>.f.=.Foo{..int.=.<span. |
| a7ea0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a | class="tok-number">42</span>.};. |
| a7ec0 | 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....bar(&f);.}..<span.class= |
| a7ee0 | 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "tok-kw">fn</span>.<span.class=" |
| a7f00 | 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 66 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 | tok-fn">bar</span>(f:.*Foo).<spa |
| a7f20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| a7f40 | 0a 20 20 20 20 66 2e 2a 20 3d 20 46 6f 6f 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 | .....f.*.=.Foo{..float.=.<span.c |
| a7f60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 20 7d | lass="tok-number">12.34</span>.} |
| a7f80 | 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 | ;.....std.debug.print(<span.clas |
| a7fa0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 | s="tok-str">"value:.{}\n&qu |
| a7fc0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 2e 66 6c 6f 61 74 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 | ot;</span>,..{f.float});.}</code |
| a7fe0 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| a8000 | 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 | $.zig.build-exe.test.zig.$../tes |
| a8020 | 74 0a 76 61 6c 75 65 3a 20 31 2e 32 33 34 30 30 30 30 31 65 2b 30 31 0a 3c 2f 63 6f 64 65 3e 3c | t.value:.1.23400001e+01.</code>< |
| a8040 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 63 68 61 6e 67 65 | /pre>........<p>.......To.change |
| a8060 | 20 74 68 65 20 61 63 74 69 76 65 20 66 69 65 6c 64 20 6f 66 20 61 20 75 6e 69 6f 6e 20 77 68 65 | .the.active.field.of.a.union.whe |
| a8080 | 6e 20 61 20 6d 65 61 6e 69 6e 67 66 75 6c 20 76 61 6c 75 65 20 66 6f 72 20 74 68 65 20 66 69 65 | n.a.meaningful.value.for.the.fie |
| a80a0 | 6c 64 20 69 73 20 6e 6f 74 20 6b 6e 6f 77 6e 2c 0a 20 20 20 20 20 20 75 73 65 20 3c 61 20 68 72 | ld.is.not.known,.......use.<a.hr |
| a80c0 | 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 6c | ef="#undefined">undefined</a>,.l |
| a80e0 | 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | ike.this:.......</p>.......<p.cl |
| a8100 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| a8120 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| a8140 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.std.=.<span.clas |
| a8160 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@import</span>(< |
| a8180 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 | span.class="tok-str">"std&q |
| a81a0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | uot;</span>);..<span.class="tok- |
| a81c0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.Foo.=.<span.cla |
| a81e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 | ss="tok-kw">union</span>.{.....f |
| a8200 | 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 | loat:.<span.class="tok-type">f32 |
| a8220 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>,.....int:.<span.class="t |
| a8240 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | ok-type">u32</span>,.};..<span.c |
| a8260 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | lass="tok-kw">pub</span>.<span.c |
| a8280 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | lass="tok-kw">fn</span>.<span.cl |
| a82a0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e | ass="tok-fn">main</span>().<span |
| a82c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-type">void</span>.{. |
| a82e0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 | ....<span.class="tok-kw">var</sp |
| a8300 | 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.f.=.Foo{..int.=.<span.class= |
| a8320 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 66 20 | "tok-number">42</span>.};.....f. |
| a8340 | 3d 20 46 6f 6f 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | =.Foo{..float.=.<span.class="tok |
| a8360 | 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 62 | -null">undefined</span>.};.....b |
| a8380 | 61 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 | ar(&f);.....std.debug.print( |
| a83a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 | <span.class="tok-str">"valu |
| a83c0 | 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 2e 66 6c 6f 61 74 7d | e:.{}\n"</span>,..{f.float} |
| a83e0 | 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | );.}..<span.class="tok-kw">fn</s |
| a8400 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 | pan>.<span.class="tok-fn">bar</s |
| a8420 | 70 61 6e 3e 28 66 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | pan>(f:.*Foo).<span.class="tok-t |
| a8440 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d | ype">void</span>.{.....f.float.= |
| a8460 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c | .<span.class="tok-number">12.34< |
| a8480 | 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | /span>;.}</code></pre><pre><code |
| a84a0 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 | .class="shell">$.zig.build-exe.t |
| a84c0 | 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 76 61 6c 75 65 3a 20 31 2e 32 33 34 30 30 30 | est.zig.$../test.value:.1.234000 |
| a84e0 | 30 31 65 2b 30 31 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 | 01e+01.</code></pre>........<p>S |
| a8500 | 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 | ee.also:</p><ul>.<li><a.href="#u |
| a8520 | 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | nion">union</a></li>.<li><a.href |
| a8540 | 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 | ="#extern-union">extern.union</a |
| a8560 | 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 | ></li>.</ul>................<h2. |
| a8580 | 69 64 3d 22 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 | id="Out-of-Bounds-Float-to-Integ |
| a85a0 | 65 72 2d 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 75 74 2d 6f 66 2d 42 6f | er-Cast"><a.href="#toc-Out-of-Bo |
| a85c0 | 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 4f 75 74 20 | unds-Float-to-Integer-Cast">Out. |
| a85e0 | 6f 66 20 42 6f 75 6e 64 73 20 46 6c 6f 61 74 20 74 6f 20 49 6e 74 65 67 65 72 20 43 61 73 74 3c | of.Bounds.Float.to.Integer.Cast< |
| a8600 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 75 74 2d 6f 66 | /a>.<a.class="hdr".href="#Out-of |
| a8620 | 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e c2 | -Bounds-Float-to-Integer-Cast">. |
| a8640 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 | .</a></h2>........<p>TODO</p>... |
| a8660 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 50 6f 69 6e 74 65 72 2d 43 61 73 74 | ............<h2.id="Pointer-Cast |
| a8680 | 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 6f 69 | -Invalid-Null"><a.href="#toc-Poi |
| a86a0 | 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 6e 74 65 72 20 | nter-Cast-Invalid-Null">Pointer. |
| a86c0 | 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | Cast.Invalid.Null</a>.<a.class=" |
| a86e0 | 68 64 72 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 | hdr".href="#Pointer-Cast-Invalid |
| a8700 | 2d 4e 75 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | -Null">..</a></h2>........<p>... |
| a8720 | 20 20 20 20 54 68 69 73 20 68 61 70 70 65 6e 73 20 77 68 65 6e 20 63 61 73 74 69 6e 67 20 61 20 | ....This.happens.when.casting.a. |
| a8740 | 70 6f 69 6e 74 65 72 20 77 69 74 68 20 74 68 65 20 61 64 64 72 65 73 73 20 30 20 74 6f 20 61 20 | pointer.with.the.address.0.to.a. |
| a8760 | 70 6f 69 6e 74 65 72 20 77 68 69 63 68 20 6d 61 79 20 6e 6f 74 20 68 61 76 65 20 74 68 65 20 61 | pointer.which.may.not.have.the.a |
| a8780 | 64 64 72 65 73 73 20 30 2e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 3c 61 20 | ddress.0........For.example,.<a. |
| a87a0 | 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 | href="#C-Pointers">C.Pointers</a |
| a87c0 | 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e | >,.<a.href="#Optional-Pointers"> |
| a87e0 | 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2c 20 61 6e 64 20 3c 61 20 68 72 | Optional.Pointers</a>,.and.<a.hr |
| a8800 | 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 61 3e 20 70 6f | ef="#allowzero">allowzero</a>.po |
| a8820 | 69 6e 74 65 72 73 0a 20 20 20 20 20 20 61 6c 6c 6f 77 20 61 64 64 72 65 73 73 20 7a 65 72 6f 2c | inters.......allow.address.zero, |
| a8840 | 20 62 75 74 20 6e 6f 72 6d 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e | .but.normal.<a.href="#Pointers"> |
| a8860 | 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 64 6f 20 6e 6f 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | Pointers</a>.do.not........</p>. |
| a8880 | 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 | ......<p>At.compile-time:</p>... |
| a88a0 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| a88c0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| a88e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ss="tok-kw">comptime</span>.{... |
| a8900 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| a8920 | 61 6e 3e 20 6f 70 74 5f 70 74 72 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.opt_ptr:.?*<span.class="tok- |
| a8940 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">i32</span>.=.<span.class=" |
| a8960 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-null">null</span>;.....<span |
| a8980 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 | .class="tok-kw">const</span>.ptr |
| a89a0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 | .=.<span.class="tok-builtin">@pt |
| a89c0 | 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | rCast</span>(*<span.class="tok-t |
| a89e0 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 6f 70 74 5f 70 74 72 29 3b 0a 7d 3c 2f 63 6f | ype">i32</span>,.opt_ptr);.}</co |
| a8a00 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| a8a20 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 | ">$.zig.test.test.zig.<span.clas |
| a8a40 | 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 | s="t0_1">./docgen_tmp/test.zig:3 |
| a8a60 | 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e | :17:.</span><span.class="t31_1"> |
| a8a80 | 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | error:.</span><span.class="t0_1" |
| a8aa0 | 3e 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 20 63 61 73 74 65 64 20 74 6f 20 74 79 70 65 20 27 2a 69 | >null.pointer.casted.to.type.'*i |
| a8ac0 | 33 32 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 70 74 72 20 3d 20 40 70 74 72 43 | 32'</span>.....const.ptr.=.@ptrC |
| a8ae0 | 61 73 74 28 2a 69 33 32 2c 20 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ast(*i32,.opt_ptr);............. |
| a8b00 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| a8b20 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 | .</code></pre>........<p>At.runt |
| a8b40 | 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ime:</p>.......<p.class="file">t |
| a8b60 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| a8b80 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e | "><span.class="tok-kw">pub</span |
| a8ba0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">fn</span> |
| a8bc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e | .<span.class="tok-fn">main</span |
| a8be0 | 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | >().<span.class="tok-type">void< |
| a8c00 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.{.....<span.class="tok-kw |
| a8c20 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6f 70 74 5f 70 74 72 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c | ">var</span>.opt_ptr:.?*<span.cl |
| a8c40 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | ass="tok-type">i32</span>.=.<spa |
| a8c60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a | n.class="tok-null">null</span>;. |
| a8c80 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 | ....<span.class="tok-kw">var</sp |
| a8ca0 | 61 6e 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>.ptr.=.<span.class="tok-built |
| a8cc0 | 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | in">@ptrCast</span>(*<span.class |
| a8ce0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 6f 70 74 5f 70 74 72 29 | ="tok-type">i32</span>,.opt_ptr) |
| a8d00 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| a8d20 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 | ="shell">$.zig.build-exe.test.zi |
| a8d40 | 67 0a 24 20 2e 2f 74 65 73 74 0a 74 68 72 65 61 64 20 31 37 38 34 36 20 70 61 6e 69 63 3a 20 63 | g.$../test.thread.17846.panic:.c |
| a8d60 | 61 73 74 20 63 61 75 73 65 73 20 70 6f 69 6e 74 65 72 20 74 6f 20 62 65 20 6e 75 6c 6c 0a 3c 73 | ast.causes.pointer.to.be.null.<s |
| a8d80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e | pan.class="t1_0">/home/andy/Down |
| a8da0 | 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a | loads/zig/docgen_tmp/test.zig:3: |
| a8dc0 | 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 | 15</span>:.<span.class="t2_0">0x |
| a8de0 | 32 32 39 66 31 30 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 229f10.in.main.(test)</span>.... |
| a8e00 | 20 76 61 72 20 70 74 72 20 3d 20 40 70 74 72 43 61 73 74 28 2a 69 33 32 2c 20 6f 70 74 5f 70 74 | .var.ptr.=.@ptrCast(*i32,.opt_pt |
| a8e20 | 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r);...............<span.class="t |
| a8e40 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 | 32_1">^</span>.<span.class="t1_0 |
| a8e60 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 | ">/home/andy/Downloads/zig/lib/s |
| a8e80 | 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 34 36 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | td/start.zig:461:22</span>:.<spa |
| a8ea0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 32 63 63 20 69 6e 20 73 74 64 2e 73 | n.class="t2_0">0x2222cc.in.std.s |
| a8ec0 | 74 61 72 74 2e 63 61 6c 6c 4d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | tart.callMain.(test)</span>..... |
| a8ee0 | 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | ........root.main();............ |
| a8f00 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| a8f20 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f | /span>.<span.class="t1_0">/home/ |
| a8f40 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | andy/Downloads/zig/lib/std/start |
| a8f60 | 2e 7a 69 67 3a 34 31 33 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .zig:413:12</span>:.<span.class= |
| a8f80 | 22 74 32 5f 30 22 3e 30 78 32 30 36 31 35 65 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 63 61 6c | "t2_0">0x20615e.in.std.start.cal |
| a8fa0 | 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | lMainWithArgs.(test)</span>..... |
| a8fc0 | 72 65 74 75 72 6e 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 61 6c 77 | return.@call(.{..modifier.=..alw |
| a8fe0 | 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 2c 20 2e 7b 7d 29 3b 0a 20 20 | ays_inline.},.callMain,..{});... |
| a9000 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| a9020 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 3e 2f 68 6f 6d 65 2f 61 | span>.<span.class="t1_0">/home/a |
| a9040 | 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e | ndy/Downloads/zig/lib/std/start. |
| a9060 | 7a 69 67 3a 33 33 32 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | zig:332:17</span>:.<span.class=" |
| a9080 | 74 32 5f 30 22 3e 30 78 32 30 35 31 38 36 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 | t2_0">0x205186.in.std.start.posi |
| a90a0 | 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | xCallMainAndExit.(test)</span>.. |
| a90c0 | 20 20 20 73 74 64 2e 6f 73 2e 65 78 69 74 28 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 | ...std.os.exit(@call(.{..modifie |
| a90e0 | 72 20 3d 20 2e 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 20 7d 2c 20 63 61 6c 6c 4d 61 69 6e 57 69 | r.=..always_inline.},.callMainWi |
| a9100 | 74 68 41 72 67 73 2c 20 2e 7b 20 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 20 7d 29 29 3b | thArgs,..{.argc,.argv,.envp.})); |
| a9120 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | .................<span.class="t3 |
| a9140 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 31 5f 30 22 | 2_1">^</span>.<span.class="t1_0" |
| a9160 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 | >/home/andy/Downloads/zig/lib/st |
| a9180 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 34 35 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | d/start.zig:245:5</span>:.<span. |
| a91a0 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 66 39 32 20 69 6e 20 73 74 64 2e 73 74 61 | class="t2_0">0x204f92.in.std.sta |
| a91c0 | 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c | rt._start.(test)</span>.....@cal |
| a91e0 | 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d | l(.{..modifier.=..never_inline.} |
| a9200 | 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 | ,.posixCallMainAndExit,..{});... |
| a9220 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 | ..<span.class="t32_1">^</span>.( |
| a9240 | 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 | process.terminated.by.signal)</c |
| a9260 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ode></pre>...................... |
| a9280 | 20 3c 68 31 20 69 64 3d 22 4d 65 6d 6f 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d | .<h1.id="Memory"><a.href="#toc-M |
| a92a0 | 65 6d 6f 72 79 22 3e 4d 65 6d 6f 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | emory">Memory</a>.<a.class="hdr" |
| a92c0 | 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 | .href="#Memory">..</a></h1>..... |
| a92e0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 5a 69 67 20 6c 61 6e 67 75 61 67 65 20 70 65 | ...<p>.......The.Zig.language.pe |
| a9300 | 72 66 6f 72 6d 73 20 6e 6f 20 6d 65 6d 6f 72 79 20 6d 61 6e 61 67 65 6d 65 6e 74 20 6f 6e 20 62 | rforms.no.memory.management.on.b |
| a9320 | 65 68 61 6c 66 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 2e 20 54 68 69 73 20 69 73 | ehalf.of.the.programmer..This.is |
| a9340 | 0a 20 20 20 20 20 20 77 68 79 20 5a 69 67 20 68 61 73 20 6e 6f 20 72 75 6e 74 69 6d 65 2c 20 61 | .......why.Zig.has.no.runtime,.a |
| a9360 | 6e 64 20 77 68 79 20 5a 69 67 20 63 6f 64 65 20 77 6f 72 6b 73 20 73 65 61 6d 6c 65 73 73 6c 79 | nd.why.Zig.code.works.seamlessly |
| a9380 | 20 69 6e 20 73 6f 20 6d 61 6e 79 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 2c 0a 20 20 20 20 20 20 | .in.so.many.environments,....... |
| a93a0 | 69 6e 63 6c 75 64 69 6e 67 20 72 65 61 6c 2d 74 69 6d 65 20 73 6f 66 74 77 61 72 65 2c 20 6f 70 | including.real-time.software,.op |
| a93c0 | 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6b 65 72 6e 65 6c 73 2c 20 65 6d 62 65 64 64 65 64 | erating.system.kernels,.embedded |
| a93e0 | 20 64 65 76 69 63 65 73 2c 20 61 6e 64 0a 20 20 20 20 20 20 6c 6f 77 20 6c 61 74 65 6e 63 79 20 | .devices,.and.......low.latency. |
| a9400 | 73 65 72 76 65 72 73 2e 20 41 73 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 2c 20 5a 69 67 20 70 | servers..As.a.consequence,.Zig.p |
| a9420 | 72 6f 67 72 61 6d 6d 65 72 73 20 6d 75 73 74 20 61 6c 77 61 79 73 20 62 65 20 61 62 6c 65 20 74 | rogrammers.must.always.be.able.t |
| a9440 | 6f 20 61 6e 73 77 65 72 0a 20 20 20 20 20 20 74 68 65 20 71 75 65 73 74 69 6f 6e 3a 0a 20 20 20 | o.answer.......the.question:.... |
| a9460 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 61 20 68 72 65 66 3d 22 23 57 68 65 72 65 | ...</p>.......<p><a.href="#Where |
| a9480 | 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 57 68 65 72 65 20 61 72 65 20 74 68 65 20 62 79 | -are-the-bytes">Where.are.the.by |
| a94a0 | 74 65 73 3f 3c 2f 61 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 69 6b | tes?</a></p>.......<p>.......Lik |
| a94c0 | 65 20 5a 69 67 2c 20 74 68 65 20 43 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 | e.Zig,.the.C.programming.languag |
| a94e0 | 65 20 68 61 73 20 6d 61 6e 75 61 6c 20 6d 65 6d 6f 72 79 20 6d 61 6e 61 67 65 6d 65 6e 74 2e 20 | e.has.manual.memory.management.. |
| a9500 | 48 6f 77 65 76 65 72 2c 20 75 6e 6c 69 6b 65 20 5a 69 67 2c 0a 20 20 20 20 20 20 43 20 68 61 73 | However,.unlike.Zig,.......C.has |
| a9520 | 20 61 20 64 65 66 61 75 6c 74 20 61 6c 6c 6f 63 61 74 6f 72 20 2d 20 3c 63 6f 64 65 3e 6d 61 6c | .a.default.allocator.-.<code>mal |
| a9540 | 6c 6f 63 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 72 65 61 6c 6c 6f 63 3c 2f 63 6f 64 65 3e | loc</code>,.<code>realloc</code> |
| a9560 | 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 66 72 65 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 57 | ,.and.<code>free</code>........W |
| a9580 | 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 61 67 61 69 6e 73 74 20 6c 69 62 63 2c 20 5a 69 67 20 65 78 | hen.linking.against.libc,.Zig.ex |
| a95a0 | 70 6f 73 65 73 20 74 68 69 73 20 61 6c 6c 6f 63 61 74 6f 72 20 77 69 74 68 20 3c 63 6f 64 65 20 | poses.this.allocator.with.<code. |
| a95c0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 63 5f 61 6c 6c 6f 63 61 74 6f 72 | class="zig">std.heap.c_allocator |
| a95e0 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 62 79 20 63 6f 6e 76 65 | </code>........However,.by.conve |
| a9600 | 6e 74 69 6f 6e 2c 20 74 68 65 72 65 20 69 73 20 6e 6f 20 64 65 66 61 75 6c 74 20 61 6c 6c 6f 63 | ntion,.there.is.no.default.alloc |
| a9620 | 61 74 6f 72 20 69 6e 20 5a 69 67 2e 20 49 6e 73 74 65 61 64 2c 20 66 75 6e 63 74 69 6f 6e 73 20 | ator.in.Zig..Instead,.functions. |
| a9640 | 77 68 69 63 68 20 6e 65 65 64 20 74 6f 0a 20 20 20 20 20 20 61 6c 6c 6f 63 61 74 65 20 61 63 63 | which.need.to.......allocate.acc |
| a9660 | 65 70 74 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 41 6c 6c 6f 63 61 | ept.an.<code.class="zig">*Alloca |
| a9680 | 74 6f 72 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 2e 20 4c 69 6b 65 77 69 73 65 2c 20 | tor</code>.parameter..Likewise,. |
| a96a0 | 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 3c 63 | data.structures.such.as.......<c |
| a96c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 41 72 72 61 79 4c 69 73 74 3c 2f 63 | ode.class="zig">std.ArrayList</c |
| a96e0 | 6f 64 65 3e 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ode>.accept.an.<code.class="zig" |
| a9700 | 3e 2a 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 20 69 6e 0a | >*Allocator</code>.parameter.in. |
| a9720 | 20 20 20 20 20 20 74 68 65 69 72 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 75 6e 63 74 | ......their.initialization.funct |
| a9740 | 69 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | ions:.......</p>.......<p.class= |
| a9760 | 22 66 69 6c 65 22 3e 61 6c 6c 6f 63 61 74 6f 72 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | "file">allocator.zig</p><pre><co |
| a9780 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| a97a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.std.=.<span.cla |
| a97c0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@import</span>( |
| a97e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 | <span.class="tok-str">"std& |
| a9800 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | quot;</span>);.<span.class="tok- |
| a9820 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 | kw">const</span>.Allocator.=.std |
| a9840 | 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .mem.Allocator;.<span.class="tok |
| a9860 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 | -kw">const</span>.expect.=.std.t |
| a9880 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | esting.expect;..<span.class="tok |
| a98a0 | 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">test</span>.<span.class="to |
| a98c0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 73 69 6e 67 20 61 6e 20 61 6c 6c 6f 63 61 74 6f 72 26 | k-str">"using.an.allocator& |
| a98e0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>.{.....<span.class=" |
| a9900 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 66 65 72 3a 20 5b 3c 73 70 61 | tok-kw">var</span>.buffer:.[<spa |
| a9920 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 5d | n.class="tok-number">100</span>] |
| a9940 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| a9960 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 | .=.<span.class="tok-null">undefi |
| a9980 | 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ned</span>;.....<span.class="tok |
| a99a0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 26 61 | -kw">const</span>.allocator.=.&a |
| a99c0 | 6d 70 3b 73 74 64 2e 68 65 61 70 2e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 | mp;std.heap.FixedBufferAllocator |
| a99e0 | 2e 69 6e 69 74 28 26 61 6d 70 3b 62 75 66 66 65 72 29 2e 61 6c 6c 6f 63 61 74 6f 72 3b 0a 20 20 | .init(&buffer).allocator;... |
| a9a00 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| a9a20 | 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | an>.result.=.<span.class="tok-kw |
| a9a40 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 63 6f 6e 63 61 74 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c | ">try</span>.concat(allocator,.< |
| a9a60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 | span.class="tok-str">"foo&q |
| a9a80 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | uot;</span>,.<span.class="tok-st |
| a9aa0 | 72 22 3e 26 71 75 6f 74 3b 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | r">"bar"</span>);..... |
| a9ac0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">try</span>. |
| a9ae0 | 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | expect(std.mem.eql(<span.class=" |
| a9b00 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">u8</span>,.<span.class |
| a9b20 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 | ="tok-str">"foobar"</s |
| a9b40 | 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>,.result));.}..<span.class=" |
| a9b60 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tok-kw">fn</span>.<span.class="t |
| a9b80 | 6f 6b 2d 66 6e 22 3e 63 6f 6e 63 61 74 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 | ok-fn">concat</span>(allocator:. |
| a9ba0 | 2a 41 6c 6c 6f 63 61 74 6f 72 2c 20 61 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | *Allocator,.a:.[]<span.class="to |
| a9bc0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-kw">const</span>.<span.class=" |
| a9be0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 5b 5d 3c 73 70 61 6e 20 | tok-type">u8</span>,.b:.[]<span. |
| a9c00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | class="tok-kw">const</span>.<spa |
| a9c20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b | n.class="tok-type">u8</span>).![ |
| a9c40 | 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | ]<span.class="tok-type">u8</span |
| a9c60 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | >.{.....<span.class="tok-kw">con |
| a9c80 | 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st</span>.result.=.<span.class=" |
| a9ca0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c | tok-kw">try</span>.allocator.all |
| a9cc0 | 6f 63 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | oc(<span.class="tok-type">u8</sp |
| a9ce0 | 61 6e 3e 2c 20 61 2e 6c 65 6e 20 2b 20 62 2e 6c 65 6e 29 3b 0a 20 20 20 20 73 74 64 2e 6d 65 6d | an>,.a.len.+.b.len);.....std.mem |
| a9d00 | 2e 63 6f 70 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | .copy(<span.class="tok-type">u8< |
| a9d20 | 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 2c 20 61 29 3b 0a 20 20 20 20 73 74 64 2e 6d 65 6d 2e | /span>,.result,.a);.....std.mem. |
| a9d40 | 63 6f 70 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | copy(<span.class="tok-type">u8</ |
| a9d60 | 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 5b 61 2e 6c 65 6e 2e 2e 5d 2c 20 62 29 3b 0a 20 20 20 20 | span>,.result[a.len..],.b);..... |
| a9d80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 | <span.class="tok-kw">return</spa |
| a9da0 | 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | n>.result;.}</code></pre><pre><c |
| a9dc0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 6c 6c | ode.class="shell">$.zig.test.all |
| a9de0 | 6f 63 61 74 6f 72 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 | ocator.zig.Test.[1/1].test." |
| a9e00 | 3b 75 73 69 6e 67 20 61 6e 20 61 6c 6c 6f 63 61 74 6f 72 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 | ;using.an.allocator"......A |
| a9e20 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</code></pre> |
| a9e40 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 61 62 6f 76 65 20 65 | ........<p>.......In.the.above.e |
| a9e60 | 78 61 6d 70 6c 65 2c 20 31 30 30 20 62 79 74 65 73 20 6f 66 20 73 74 61 63 6b 20 6d 65 6d 6f 72 | xample,.100.bytes.of.stack.memor |
| a9e80 | 79 20 61 72 65 20 75 73 65 64 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 0a 20 20 20 20 20 | y.are.used.to.initialize.a...... |
| a9ea0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 46 69 78 65 64 42 75 66 66 65 72 41 6c | .<code.class="zig">FixedBufferAl |
| a9ec0 | 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 6e 20 70 61 | locator</code>,.which.is.then.pa |
| a9ee0 | 73 73 65 64 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 41 73 20 61 20 63 | ssed.to.a.function........As.a.c |
| a9f00 | 6f 6e 76 65 6e 69 65 6e 63 65 20 74 68 65 72 65 20 69 73 20 61 20 67 6c 6f 62 61 6c 20 3c 63 6f | onvenience.there.is.a.global.<co |
| a9f20 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 | de.class="zig">FixedBufferAlloca |
| a9f40 | 74 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 71 | tor</code>.......available.for.q |
| a9f60 | 75 69 63 6b 20 74 65 73 74 73 20 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | uick.tests.at.<code.class="zig"> |
| a9f80 | 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2c 0a 20 20 | std.testing.allocator</code>,... |
| a9fa0 | 20 20 20 20 77 68 69 63 68 20 77 69 6c 6c 20 61 6c 73 6f 20 64 6f 20 70 65 72 66 6f 72 6d 20 62 | ....which.will.also.do.perform.b |
| a9fc0 | 61 73 69 63 20 6c 65 61 6b 20 64 65 74 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | asic.leak.detection........</p>. |
| a9fe0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 61 20 67 65 6e 65 72 61 | ......<p>.......Zig.has.a.genera |
| aa000 | 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 74 6f 72 20 61 76 61 69 6c 61 62 6c 65 20 74 6f | l.purpose.allocator.available.to |
| aa020 | 20 62 65 20 69 6d 70 6f 72 74 65 64 0a 20 20 20 20 20 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c | .be.imported.......with.<code.cl |
| aa040 | 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 | ass="zig">std.heap.GeneralPurpos |
| aa060 | 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 48 6f 77 65 76 65 72 2c 20 69 74 20 69 | eAllocator</code>..However,.it.i |
| aa080 | 73 20 73 74 69 6c 6c 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 0a 20 20 20 20 20 20 66 6f 6c | s.still.recommended.to.......fol |
| aa0a0 | 6c 6f 77 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c | low.the.<a.href="#Choosing-an-Al |
| aa0c0 | 6c 6f 63 61 74 6f 72 22 3e 43 68 6f 6f 73 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f | locator">Choosing.an.Allocator</ |
| aa0e0 | 61 3e 20 67 75 69 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 | a>.guide........</p>........<h2. |
| aa100 | 69 64 3d 22 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 3c 61 20 68 72 | id="Choosing-an-Allocator"><a.hr |
| aa120 | 65 66 3d 22 23 74 6f 63 2d 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e | ef="#toc-Choosing-an-Allocator"> |
| aa140 | 43 68 6f 6f 73 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 | Choosing.an.Allocator</a>.<a.cla |
| aa160 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f | ss="hdr".href="#Choosing-an-Allo |
| aa180 | 63 61 74 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 61 | cator">..</a></h2>........<p>Wha |
| aa1a0 | 74 20 61 6c 6c 6f 63 61 74 6f 72 20 74 6f 20 75 73 65 20 64 65 70 65 6e 64 73 20 6f 6e 20 61 20 | t.allocator.to.use.depends.on.a. |
| aa1c0 | 6e 75 6d 62 65 72 20 6f 66 20 66 61 63 74 6f 72 73 2e 20 48 65 72 65 20 69 73 20 61 20 66 6c 6f | number.of.factors..Here.is.a.flo |
| aa1e0 | 77 20 63 68 61 72 74 20 74 6f 20 68 65 6c 70 20 79 6f 75 20 64 65 63 69 64 65 3a 0a 20 20 20 20 | w.chart.to.help.you.decide:..... |
| aa200 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 6f 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | ..</p>.......<ol>...........<li> |
| aa220 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 65 20 79 6f 75 20 6d 61 6b 69 6e 67 20 61 20 | ...............Are.you.making.a. |
| aa240 | 6c 69 62 72 61 72 79 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 62 65 73 74 20 74 6f 20 61 | library?.In.this.case,.best.to.a |
| aa260 | 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 41 6c 6c 6f | ccept.an.<code.class="zig">*Allo |
| aa280 | 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 73 20 61 20 | cator</code>...............as.a. |
| aa2a0 | 70 61 72 61 6d 65 74 65 72 20 61 6e 64 20 61 6c 6c 6f 77 20 79 6f 75 72 20 6c 69 62 72 61 72 79 | parameter.and.allow.your.library |
| aa2c0 | 27 73 20 75 73 65 72 73 20 74 6f 20 64 65 63 69 64 65 20 77 68 61 74 20 61 6c 6c 6f 63 61 74 6f | 's.users.to.decide.what.allocato |
| aa2e0 | 72 20 74 6f 20 75 73 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | r.to.use............</li>....... |
| aa300 | 20 20 20 20 3c 6c 69 3e 41 72 65 20 79 6f 75 20 6c 69 6e 6b 69 6e 67 20 6c 69 62 63 3f 20 49 6e | ....<li>Are.you.linking.libc?.In |
| aa320 | 20 74 68 69 73 20 63 61 73 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 | .this.case,.<code.class="zig">st |
| aa340 | 64 2e 68 65 61 70 2e 63 5f 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6c 69 6b | d.heap.c_allocator</code>.is.lik |
| aa360 | 65 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 20 72 69 67 68 74 20 63 68 6f 69 | ely...............the.right.choi |
| aa380 | 63 65 2c 20 61 74 20 6c 65 61 73 74 20 66 6f 72 20 79 6f 75 72 20 6d 61 69 6e 20 61 6c 6c 6f 63 | ce,.at.least.for.your.main.alloc |
| aa3a0 | 61 74 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 | ator.</li>...........<li>....... |
| aa3c0 | 20 20 20 20 20 20 20 20 49 73 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 | ........Is.the.maximum.number.of |
| aa3e0 | 20 62 79 74 65 73 20 74 68 61 74 20 79 6f 75 20 77 69 6c 6c 20 6e 65 65 64 20 62 6f 75 6e 64 65 | .bytes.that.you.will.need.bounde |
| aa400 | 64 20 62 79 20 61 20 6e 75 6d 62 65 72 20 6b 6e 6f 77 6e 20 61 74 0a 20 20 20 20 20 20 20 20 20 | d.by.a.number.known.at.......... |
| aa420 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d | .....<a.href="#comptime">comptim |
| aa440 | 65 3c 2f 61 3e 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 | e</a>?.In.this.case,.use.<code.c |
| aa460 | 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 46 69 78 65 64 42 75 66 66 65 72 41 | lass="zig">std.heap.FixedBufferA |
| aa480 | 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | llocator</code>.or.............. |
| aa4a0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 54 68 72 65 | .<code.class="zig">std.heap.Thre |
| aa4c0 | 61 64 53 61 66 65 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 | adSafeFixedBufferAllocator</code |
| aa4e0 | 3e 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 65 74 68 65 72 20 79 6f 75 20 6e 65 65 64 0a | >.depending.on.whether.you.need. |
| aa500 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 65 61 64 2d 73 61 66 65 74 79 20 6f 72 20 6e | ..............thread-safety.or.n |
| aa520 | 6f 74 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | ot............</li>...........<l |
| aa540 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 73 20 79 6f 75 72 20 70 72 6f 67 72 61 6d | i>...............Is.your.program |
| aa560 | 20 61 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 77 68 69 63 | .a.command.line.application.whic |
| aa580 | 68 20 72 75 6e 73 20 66 72 6f 6d 20 73 74 61 72 74 20 74 6f 20 65 6e 64 20 77 69 74 68 6f 75 74 | h.runs.from.start.to.end.without |
| aa5a0 | 20 61 6e 79 20 66 75 6e 64 61 6d 65 6e 74 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 | .any.fundamental...............c |
| aa5c0 | 79 63 6c 69 63 61 6c 20 70 61 74 74 65 72 6e 20 28 73 75 63 68 20 61 73 20 61 20 76 69 64 65 6f | yclical.pattern.(such.as.a.video |
| aa5e0 | 20 67 61 6d 65 20 6d 61 69 6e 20 6c 6f 6f 70 2c 20 6f 72 20 61 20 77 65 62 20 73 65 72 76 65 72 | .game.main.loop,.or.a.web.server |
| aa600 | 20 72 65 71 75 65 73 74 20 68 61 6e 64 6c 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | .request.handler),.............. |
| aa620 | 20 73 75 63 68 20 74 68 61 74 20 69 74 20 77 6f 75 6c 64 20 6d 61 6b 65 20 73 65 6e 73 65 20 74 | .such.that.it.would.make.sense.t |
| aa640 | 6f 20 66 72 65 65 20 65 76 65 72 79 74 68 69 6e 67 20 61 74 20 6f 6e 63 65 20 61 74 20 74 68 65 | o.free.everything.at.once.at.the |
| aa660 | 20 65 6e 64 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 | .end?...............In.this.case |
| aa680 | 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 66 6f 6c 6c 6f 77 20 74 68 | ,.it.is.recommended.to.follow.th |
| aa6a0 | 69 73 20 70 61 74 74 65 72 6e 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 20 63 6c 61 | is.pattern:...............<p.cla |
| aa6c0 | 73 73 3d 22 66 69 6c 65 22 3e 63 6c 69 5f 61 6c 6c 6f 63 61 74 69 6f 6e 2e 7a 69 67 3c 2f 70 3e | ss="file">cli_allocation.zig</p> |
| aa6e0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| aa700 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c | ss="tok-kw">const</span>.std.=.< |
| aa720 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 | span.class="tok-builtin">@import |
| aa740 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| aa760 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c | uot;std"</span>);..<span.cl |
| aa780 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ass="tok-kw">pub</span>.<span.cl |
| aa7a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| aa7c0 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e | ss="tok-fn">main</span>().!<span |
| aa7e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-type">void</span>.{. |
| aa800 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 | ....<span.class="tok-kw">var</sp |
| aa820 | 61 6e 3e 20 61 72 65 6e 61 20 3d 20 73 74 64 2e 68 65 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 61 | an>.arena.=.std.heap.ArenaAlloca |
| aa840 | 74 6f 72 2e 69 6e 69 74 28 73 74 64 2e 68 65 61 70 2e 70 61 67 65 5f 61 6c 6c 6f 63 61 74 6f 72 | tor.init(std.heap.page_allocator |
| aa860 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 | );.....<span.class="tok-kw">defe |
| aa880 | 72 3c 2f 73 70 61 6e 3e 20 61 72 65 6e 61 2e 64 65 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 3c 73 | r</span>.arena.deinit();......<s |
| aa8a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| aa8c0 | 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 26 61 6d 70 3b 61 72 65 6e 61 2e 61 6c 6c 6f 63 61 74 6f 72 | allocator.=.&arena.allocator |
| aa8e0 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ;......<span.class="tok-kw">cons |
| aa900 | 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.ptr.=.<span.class="tok- |
| aa920 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 | kw">try</span>.allocator.create( |
| aa940 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">i32</span |
| aa960 | 3e 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c | >);.....std.debug.print(<span.cl |
| aa980 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 74 72 3d 7b 2a 7d 5c 6e 26 71 75 | ass="tok-str">"ptr={*}\n&qu |
| aa9a0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 70 74 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | ot;</span>,..{ptr});.}</code></p |
| aa9c0 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| aa9e0 | 67 20 62 75 69 6c 64 2d 65 78 65 20 63 6c 69 5f 61 6c 6c 6f 63 61 74 69 6f 6e 2e 7a 69 67 0a 24 | g.build-exe.cli_allocation.zig.$ |
| aaa00 | 20 2e 2f 63 6c 69 5f 61 6c 6c 6f 63 61 74 69 6f 6e 0a 70 74 72 3d 69 33 32 40 37 66 30 30 64 30 | ../cli_allocation.ptr=i32@7f00d0 |
| aaa20 | 35 38 63 30 31 38 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 20 20 20 20 | 58c018.</code></pre>............ |
| aaa40 | 20 20 20 20 57 68 65 6e 20 75 73 69 6e 67 20 74 68 69 73 20 6b 69 6e 64 20 6f 66 20 61 6c 6c 6f | ....When.using.this.kind.of.allo |
| aaa60 | 63 61 74 6f 72 2c 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6e 65 65 64 20 74 6f 20 66 72 65 65 20 | cator,.there.is.no.need.to.free. |
| aaa80 | 61 6e 79 74 68 69 6e 67 20 6d 61 6e 75 61 6c 6c 79 2e 20 45 76 65 72 79 74 68 69 6e 67 0a 20 20 | anything.manually..Everything... |
| aaaa0 | 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 73 20 66 72 65 65 64 20 61 74 20 6f 6e 63 65 20 77 | ............gets.freed.at.once.w |
| aaac0 | 69 74 68 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ith.the.call.to.<code.class="zig |
| aaae0 | 22 3e 61 72 65 6e 61 2e 64 65 69 6e 69 74 28 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 | ">arena.deinit()</code>......... |
| aab00 | 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ...</li>...........<li>......... |
| aab20 | 20 20 20 20 20 20 41 72 65 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 20 70 61 72 74 20 6f | ......Are.the.allocations.part.o |
| aab40 | 66 20 61 20 63 79 63 6c 69 63 61 6c 20 70 61 74 74 65 72 6e 20 73 75 63 68 20 61 73 20 61 20 76 | f.a.cyclical.pattern.such.as.a.v |
| aab60 | 69 64 65 6f 20 67 61 6d 65 20 6d 61 69 6e 20 6c 6f 6f 70 2c 20 6f 72 20 61 20 77 65 62 0a 20 20 | ideo.game.main.loop,.or.a.web... |
| aab80 | 20 20 20 20 20 20 20 20 20 20 20 20 73 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 6e 64 6c | ............server.request.handl |
| aaba0 | 65 72 3f 20 49 66 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 20 63 61 6e 20 61 6c 6c 20 62 | er?.If.the.allocations.can.all.b |
| aabc0 | 65 20 66 72 65 65 64 20 61 74 20 6f 6e 63 65 2c 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 | e.freed.at.once,.at.the.end.of.t |
| aabe0 | 68 65 20 63 79 63 6c 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 65 78 61 6d | he.cycle,...............for.exam |
| aac00 | 70 6c 65 20 6f 6e 63 65 20 74 68 65 20 76 69 64 65 6f 20 67 61 6d 65 20 66 72 61 6d 65 20 68 61 | ple.once.the.video.game.frame.ha |
| aac20 | 73 20 62 65 65 6e 20 66 75 6c 6c 79 20 72 65 6e 64 65 72 65 64 2c 20 6f 72 20 74 68 65 20 77 65 | s.been.fully.rendered,.or.the.we |
| aac40 | 62 20 73 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 73 0a 20 20 20 20 20 20 20 20 20 20 20 | b.server.request.has............ |
| aac60 | 20 20 20 62 65 65 6e 20 73 65 72 76 65 64 2c 20 74 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ...been.served,.then.<code.class |
| aac80 | 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 61 74 6f 72 3c 2f | ="zig">std.heap.ArenaAllocator</ |
| aaca0 | 63 6f 64 65 3e 20 69 73 20 61 20 67 72 65 61 74 20 63 61 6e 64 69 64 61 74 65 2e 20 41 73 0a 20 | code>.is.a.great.candidate..As.. |
| aacc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 6d 6f 6e 73 74 72 61 74 65 64 20 69 6e 20 74 68 65 | .............demonstrated.in.the |
| aace0 | 20 70 72 65 76 69 6f 75 73 20 62 75 6c 6c 65 74 20 70 6f 69 6e 74 2c 20 74 68 69 73 20 61 6c 6c | .previous.bullet.point,.this.all |
| aad00 | 6f 77 73 20 79 6f 75 20 74 6f 20 66 72 65 65 20 65 6e 74 69 72 65 20 61 72 65 6e 61 73 20 61 74 | ows.you.to.free.entire.arenas.at |
| aad20 | 20 6f 6e 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 6f 74 65 20 61 6c 73 6f 20 74 | .once................Note.also.t |
| aad40 | 68 61 74 20 69 66 20 61 6e 20 75 70 70 65 72 20 62 6f 75 6e 64 20 6f 66 20 6d 65 6d 6f 72 79 20 | hat.if.an.upper.bound.of.memory. |
| aad60 | 63 61 6e 20 62 65 20 65 73 74 61 62 6c 69 73 68 65 64 2c 20 74 68 65 6e 0a 20 20 20 20 20 20 20 | can.be.established,.then........ |
| aad80 | 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 | .......<code.class="zig">std.hea |
| aada0 | 70 2e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 63 61 | p.FixedBufferAllocator</code>.ca |
| aadc0 | 6e 20 62 65 20 75 73 65 64 20 61 73 20 61 20 66 75 72 74 68 65 72 20 6f 70 74 69 6d 69 7a 61 74 | n.be.used.as.a.further.optimizat |
| aade0 | 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ion............</li>...........< |
| aae00 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 65 20 79 6f 75 20 77 72 69 74 69 6e | li>...............Are.you.writin |
| aae20 | 67 20 61 20 74 65 73 74 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 61 6b 65 20 73 | g.a.test,.and.you.want.to.make.s |
| aae40 | 75 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ure.<code.class="zig"><span.clas |
| aae60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d | s="tok-kw">error</span>.OutOfMem |
| aae80 | 6f 72 79 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 68 61 6e 64 | ory</code>...............is.hand |
| aaea0 | 6c 65 64 20 63 6f 72 72 65 63 74 6c 79 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 75 73 65 | led.correctly?.In.this.case,.use |
| aaec0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 46 | .<code.class="zig">std.testing.F |
| aaee0 | 61 69 6c 69 6e 67 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 | ailingAllocator</code>.......... |
| aaf00 | 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ..</li>...........<li>.......... |
| aaf20 | 20 20 20 20 20 41 72 65 20 79 6f 75 20 77 72 69 74 69 6e 67 20 61 20 74 65 73 74 3f 20 49 6e 20 | .....Are.you.writing.a.test?.In. |
| aaf40 | 74 68 69 73 20 63 61 73 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | this.case,.use.<code.class="zig" |
| aaf60 | 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 | >std.testing.allocator</code>... |
| aaf80 | 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 | .........</li>...........<li>... |
| aafa0 | 20 20 20 20 20 20 20 20 20 20 20 20 46 69 6e 61 6c 6c 79 2c 20 69 66 20 6e 6f 6e 65 20 6f 66 20 | ............Finally,.if.none.of. |
| aafc0 | 74 68 65 20 61 62 6f 76 65 20 61 70 70 6c 79 2c 20 79 6f 75 20 6e 65 65 64 20 61 20 67 65 6e 65 | the.above.apply,.you.need.a.gene |
| aafe0 | 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 74 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 | ral.purpose.allocator........... |
| ab000 | 20 20 20 20 20 5a 69 67 27 73 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 | .....Zig's.general.purpose.alloc |
| ab020 | 61 74 6f 72 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 61 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 | ator.is.available.as.a.function. |
| ab040 | 74 68 61 74 20 74 61 6b 65 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 | that.takes.a.<a.href="#comptime" |
| ab060 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 | >comptime</a>...............<a.h |
| ab080 | 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 6f 66 20 63 6f 6e 66 | ref="#struct">struct</a>.of.conf |
| ab0a0 | 69 67 75 72 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 | iguration.options.and.returns.a. |
| ab0c0 | 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 65 6e 65 72 61 6c 6c 79 2c 20 79 | type................Generally,.y |
| ab0e0 | 6f 75 20 77 69 6c 6c 20 73 65 74 20 75 70 20 6f 6e 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ou.will.set.up.one.<code.class=" |
| ab100 | 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 41 6c 6c 6f | zig">std.heap.GeneralPurposeAllo |
| ab120 | 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 79 6f | cator</code>.in...............yo |
| ab140 | 75 72 20 6d 61 69 6e 20 66 75 6e 63 74 69 6f 6e 2c 20 61 6e 64 20 74 68 65 6e 20 70 61 73 73 20 | ur.main.function,.and.then.pass. |
| ab160 | 69 74 20 6f 72 20 73 75 62 2d 61 6c 6c 6f 63 61 74 6f 72 73 20 61 72 6f 75 6e 64 20 74 6f 20 76 | it.or.sub-allocators.around.to.v |
| ab180 | 61 72 69 6f 75 73 20 70 61 72 74 73 20 6f 66 20 79 6f 75 72 0a 20 20 20 20 20 20 20 20 20 20 20 | arious.parts.of.your............ |
| ab1a0 | 20 20 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a | ...application............</li>. |
| ab1c0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 59 6f 75 | ..........<li>...............You |
| ab1e0 | 20 63 61 6e 20 61 6c 73 6f 20 63 6f 6e 73 69 64 65 72 20 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 | .can.also.consider.<a.href="#Imp |
| ab200 | 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 49 6d 70 6c 65 6d 65 6e | lementing-an-Allocator">Implemen |
| ab220 | 74 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 | ting.an.Allocator</a>........... |
| ab240 | 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 6f 6c 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | .</li>.......</ol>.............. |
| ab260 | 20 3c 68 32 20 69 64 3d 22 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 3c 61 | .<h2.id="Where-are-the-bytes"><a |
| ab280 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 | .href="#toc-Where-are-the-bytes" |
| ab2a0 | 3e 57 68 65 72 65 20 61 72 65 20 74 68 65 20 62 79 74 65 73 3f 3c 2f 61 3e 20 3c 61 20 63 6c 61 | >Where.are.the.bytes?</a>.<a.cla |
| ab2c0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 | ss="hdr".href="#Where-are-the-by |
| ab2e0 | 74 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 74 72 69 6e | tes">..</a></h2>........<p>Strin |
| ab300 | 67 20 6c 69 74 65 72 61 6c 73 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | g.literals.such.as.<code.class=" |
| ab320 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | zig"><span.class="tok-str">" |
| ab340 | 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 72 65 20 69 6e 20 | ;foo"</span></code>.are.in. |
| ab360 | 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 73 74 61 6e 74 20 64 61 74 61 20 73 65 63 74 69 6f 6e | the.global.constant.data.section |
| ab380 | 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 77 68 79 20 69 74 20 69 73 20 61 6e 20 65 72 72 | ........This.is.why.it.is.an.err |
| ab3a0 | 6f 72 20 74 6f 20 70 61 73 73 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 61 | or.to.pass.a.string.literal.to.a |
| ab3c0 | 20 6d 75 74 61 62 6c 65 20 73 6c 69 63 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 | .mutable.slice,.like.this:...... |
| ab3e0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | .</p>.......<p.class="file">test |
| ab400 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| ab420 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| ab440 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 3a | pan.class="tok-fn">foo</span>(s: |
| ab460 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | .[]<span.class="tok-type">u8</sp |
| ab480 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | an>).<span.class="tok-type">void |
| ab4a0 | 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | </span>.{}..<span.class="tok-kw" |
| ab4c0 | 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >test</span>.<span.class="tok-st |
| ab4e0 | 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 6d 75 74 61 62 | r">"string.literal.to.mutab |
| ab500 | 6c 65 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 | le.slice"</span>.{.....foo( |
| ab520 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c | <span.class="tok-str">"hell |
| ab540 | 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | o"</span>);.}</code></pre>< |
| ab560 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| ab580 | 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e | st.test.zig.<span.class="t0_1">. |
| ab5a0 | 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 39 3a 20 3c 2f 73 70 61 6e | /docgen_tmp/test.zig:4:9:.</span |
| ab5c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 | ><span.class="t31_1">error:.</sp |
| ab5e0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 | an><span.class="t0_1">expected.t |
| ab600 | 79 70 65 20 27 5b 5d 75 38 27 2c 20 66 6f 75 6e 64 20 27 2a 63 6f 6e 73 74 20 5b 35 3a 30 5d 75 | ype.'[]u8',.found.'*const.[5:0]u |
| ab620 | 38 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 28 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 | 8'</span>.....foo("hello&qu |
| ab640 | 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ot;);.........<span.class="t32_1 |
| ab660 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ">^</span>.</code></pre>........ |
| ab680 | 3c 70 3e 48 6f 77 65 76 65 72 20 69 66 20 79 6f 75 20 6d 61 6b 65 20 74 68 65 20 73 6c 69 63 65 | <p>However.if.you.make.the.slice |
| ab6a0 | 20 63 6f 6e 73 74 61 6e 74 2c 20 74 68 65 6e 20 69 74 20 77 6f 72 6b 73 3a 3c 2f 70 3e 0a 20 20 | .constant,.then.it.works:</p>... |
| ab6c0 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 6c 69 74 2e 7a 69 67 3c 2f | ....<p.class="file">strlit.zig</ |
| ab6e0 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| ab700 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | lass="tok-kw">fn</span>.<span.cl |
| ab720 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 3a 20 5b 5d 3c 73 70 | ass="tok-fn">foo</span>(s:.[]<sp |
| ab740 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c | an.class="tok-kw">const</span>.< |
| ab760 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 | span.class="tok-type">u8</span>) |
| ab780 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 | .<span.class="tok-type">void</sp |
| ab7a0 | 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | an>.{}..<span.class="tok-kw">tes |
| ab7c0 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>.<span.class="tok-str">& |
| ab7e0 | 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 63 6f 6e 73 74 61 6e 74 20 | quot;string.literal.to.constant. |
| ab800 | 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 | slice"</span>.{.....foo(<sp |
| ab820 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 | an.class="tok-str">"hello&q |
| ab840 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | uot;</span>);.}</code></pre><pre |
| ab860 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| ab880 | 73 74 72 6c 69 74 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 | strlit.zig.Test.[1/1].test." |
| ab8a0 | 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 63 6f 6e 73 74 61 6e 74 20 73 6c 69 63 | ;string.literal.to.constant.slic |
| ab8c0 | 65 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | e"......All.1.tests.passed. |
| ab8e0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | .</code></pre>........<p>....... |
| ab900 | 4a 75 73 74 20 6c 69 6b 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 2c 20 3c 63 6f 64 65 | Just.like.string.literals,.<code |
| ab920 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| ab940 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f | ">const</span></code>.declaratio |
| ab960 | 6e 73 2c 20 77 68 65 6e 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 3c | ns,.when.the.value.is.known.at.< |
| ab980 | 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c | a.href="#comptime">comptime</a>, |
| ab9a0 | 0a 20 20 20 20 20 20 61 72 65 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 | .......are.stored.in.the.global. |
| ab9c0 | 63 6f 6e 73 74 61 6e 74 20 64 61 74 61 20 73 65 63 74 69 6f 6e 2e 20 41 6c 73 6f 20 3c 61 20 68 | constant.data.section..Also.<a.h |
| ab9e0 | 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f | ref="#Compile-Time-Variables">Co |
| aba00 | 6d 70 69 6c 65 20 54 69 6d 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 61 72 65 20 73 74 6f | mpile.Time.Variables</a>.are.sto |
| aba20 | 72 65 64 0a 20 20 20 20 20 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 73 74 61 6e 74 | red.......in.the.global.constant |
| aba40 | 20 64 61 74 61 20 73 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .data.section........</p>....... |
| aba60 | 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | <p>.......<code.class="zig"><spa |
| aba80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | n.class="tok-kw">var</span></cod |
| abaa0 | 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 73 | e>.declarations.inside.functions |
| abac0 | 20 61 72 65 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 73 74 | .are.stored.in.the.function's.st |
| abae0 | 61 63 6b 20 66 72 61 6d 65 2e 20 4f 6e 63 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 | ack.frame..Once.a.function.retur |
| abb00 | 6e 73 2c 0a 20 20 20 20 20 20 61 6e 79 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 | ns,.......any.<a.href="#Pointers |
| abb20 | 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 74 6f 20 76 61 72 69 61 62 6c 65 73 20 69 6e 20 74 | ">Pointers</a>.to.variables.in.t |
| abb40 | 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 73 74 61 63 6b 20 66 72 61 6d 65 20 62 65 63 6f 6d 65 | he.function's.stack.frame.become |
| abb60 | 20 69 6e 76 61 6c 69 64 20 72 65 66 65 72 65 6e 63 65 73 2c 20 61 6e 64 0a 20 20 20 20 20 20 64 | .invalid.references,.and.......d |
| abb80 | 65 72 65 66 65 72 65 6e 63 69 6e 67 20 74 68 65 6d 20 62 65 63 6f 6d 65 73 20 75 6e 63 68 65 63 | ereferencing.them.becomes.unchec |
| abba0 | 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 | ked.<a.href="#Undefined-Behavior |
| abbc0 | 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | ">Undefined.Behavior</a>........ |
| abbe0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | </p>.......<p>.......<code.class |
| abc00 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | ="zig"><span.class="tok-kw">var< |
| abc20 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 74 20 74 68 | /span></code>.declarations.at.th |
| abc40 | 65 20 74 6f 70 20 6c 65 76 65 6c 20 6f 72 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 | e.top.level.or.in.<a.href="#stru |
| abc60 | 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 | ct">struct</a>.declarations.are. |
| abc80 | 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 0a 20 20 20 20 20 20 64 61 74 61 20 | stored.in.the.global.......data. |
| abca0 | 73 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | section........</p>.......<p>... |
| abcc0 | 20 20 20 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 | ....The.location.of.memory.alloc |
| abce0 | 61 74 65 64 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 6c 6c 6f | ated.with.<code.class="zig">allo |
| abd00 | 63 61 74 6f 72 2e 61 6c 6c 6f 63 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 | cator.alloc</code>.or.......<cod |
| abd20 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 3c 2f | e.class="zig">allocator.create</ |
| abd40 | 63 6f 64 65 3e 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 61 6c 6c 6f 63 | code>.is.determined.by.the.alloc |
| abd60 | 61 74 6f 72 27 73 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 | ator's.implementation........</p |
| abd80 | 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 76 61 | >.......<p>TODO:.thread.local.va |
| abda0 | 72 69 61 62 6c 65 73 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | riables</p>...............<h2.id |
| abdc0 | 3d 22 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 3c 61 20 | ="Implementing-an-Allocator"><a. |
| abde0 | 68 72 65 66 3d 22 23 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 | href="#toc-Implementing-an-Alloc |
| abe00 | 61 74 6f 72 22 3e 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c | ator">Implementing.an.Allocator< |
| abe20 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d | /a>.<a.class="hdr".href="#Implem |
| abe40 | 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | enting-an-Allocator">..</a></h2> |
| abe60 | 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 70 72 6f 67 72 61 6d 6d 65 72 73 20 63 61 6e 20 69 | ........<p>Zig.programmers.can.i |
| abe80 | 6d 70 6c 65 6d 65 6e 74 20 74 68 65 69 72 20 6f 77 6e 20 61 6c 6c 6f 63 61 74 6f 72 73 20 62 79 | mplement.their.own.allocators.by |
| abea0 | 20 66 75 6c 66 69 6c 6c 69 6e 67 20 74 68 65 20 41 6c 6c 6f 63 61 74 6f 72 20 69 6e 74 65 72 66 | .fulfilling.the.Allocator.interf |
| abec0 | 61 63 65 2e 0a 20 20 20 20 20 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 64 6f 20 74 68 69 73 20 6f | ace........In.order.to.do.this.o |
| abee0 | 6e 65 20 6d 75 73 74 20 72 65 61 64 20 63 61 72 65 66 75 6c 6c 79 20 74 68 65 20 64 6f 63 75 6d | ne.must.read.carefully.the.docum |
| abf00 | 65 6e 74 61 74 69 6f 6e 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 73 74 64 2f 6d 65 6d 2e 7a 69 67 | entation.comments.in.std/mem.zig |
| abf20 | 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 6e 20 73 75 70 70 6c 79 20 61 20 3c 63 6f 64 65 20 63 | .and.......then.supply.a.<code.c |
| abf40 | 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 61 6c 6c 6f 63 46 6e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 | lass="zig">reallocFn</code>.and. |
| abf60 | 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 72 69 6e 6b 46 6e 3c 2f 63 6f | a.<code.class="zig">shrinkFn</co |
| abf80 | 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | de>........</p>.......<p>....... |
| abfa0 | 54 68 65 72 65 20 61 72 65 20 6d 61 6e 79 20 65 78 61 6d 70 6c 65 20 61 6c 6c 6f 63 61 74 6f 72 | There.are.many.example.allocator |
| abfc0 | 73 20 74 6f 20 6c 6f 6f 6b 20 61 74 20 66 6f 72 20 69 6e 73 70 69 72 61 74 69 6f 6e 2e 20 4c 6f | s.to.look.at.for.inspiration..Lo |
| abfe0 | 6f 6b 20 61 74 20 73 74 64 2f 68 65 61 70 2e 7a 69 67 20 61 6e 64 0a 20 20 20 20 20 20 3c 63 6f | ok.at.std/heap.zig.and.......<co |
| ac000 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 | de.class="zig">std.heap.GeneralP |
| ac020 | 75 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f | urposeAllocator</code>........</ |
| ac040 | 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 48 65 61 70 2d 41 6c | p>...............<h2.id="Heap-Al |
| ac060 | 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | location-Failure"><a.href="#toc- |
| ac080 | 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 3e 48 65 61 70 20 41 6c | Heap-Allocation-Failure">Heap.Al |
| ac0a0 | 6c 6f 63 61 74 69 6f 6e 20 46 61 69 6c 75 72 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | location.Failure</a>.<a.class="h |
| ac0c0 | 64 72 22 20 68 72 65 66 3d 22 23 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 | dr".href="#Heap-Allocation-Failu |
| ac0e0 | 72 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | re">..</a></h2>........<p>...... |
| ac100 | 20 4d 61 6e 79 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 73 20 63 68 6f 6f | .Many.programming.languages.choo |
| ac120 | 73 65 20 74 6f 20 68 61 6e 64 6c 65 20 74 68 65 20 70 6f 73 73 69 62 69 6c 69 74 79 20 6f 66 20 | se.to.handle.the.possibility.of. |
| ac140 | 68 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 20 62 79 0a 20 20 20 20 20 | heap.allocation.failure.by...... |
| ac160 | 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 63 72 61 73 68 69 6e 67 2e 20 42 79 20 63 6f | .unconditionally.crashing..By.co |
| ac180 | 6e 76 65 6e 74 69 6f 6e 2c 20 5a 69 67 20 70 72 6f 67 72 61 6d 6d 65 72 73 20 64 6f 20 6e 6f 74 | nvention,.Zig.programmers.do.not |
| ac1a0 | 20 63 6f 6e 73 69 64 65 72 20 74 68 69 73 20 74 6f 20 62 65 20 61 0a 20 20 20 20 20 20 73 61 74 | .consider.this.to.be.a.......sat |
| ac1c0 | 69 73 66 61 63 74 6f 72 79 20 73 6f 6c 75 74 69 6f 6e 2e 20 49 6e 73 74 65 61 64 2c 20 3c 63 6f | isfactory.solution..Instead,.<co |
| ac1e0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| ac200 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 3c 2f 63 6f | kw">error</span>.OutOfMemory</co |
| ac220 | 64 65 3e 20 72 65 70 72 65 73 65 6e 74 73 0a 20 20 20 20 20 20 68 65 61 70 20 61 6c 6c 6f 63 61 | de>.represents.......heap.alloca |
| ac240 | 74 69 6f 6e 20 66 61 69 6c 75 72 65 2c 20 61 6e 64 20 5a 69 67 20 6c 69 62 72 61 72 69 65 73 20 | tion.failure,.and.Zig.libraries. |
| ac260 | 72 65 74 75 72 6e 20 74 68 69 73 20 65 72 72 6f 72 20 63 6f 64 65 20 77 68 65 6e 65 76 65 72 20 | return.this.error.code.whenever. |
| ac280 | 68 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 66 61 69 6c 75 72 65 20 70 72 | heap.allocation.......failure.pr |
| ac2a0 | 65 76 65 6e 74 65 64 20 61 6e 20 6f 70 65 72 61 74 69 6f 6e 20 66 72 6f 6d 20 63 6f 6d 70 6c 65 | evented.an.operation.from.comple |
| ac2c0 | 74 69 6e 67 20 73 75 63 63 65 73 73 66 75 6c 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ting.successfully........</p>... |
| ac2e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 20 68 61 76 65 20 61 72 67 75 65 64 20 74 | ....<p>.......Some.have.argued.t |
| ac300 | 68 61 74 20 62 65 63 61 75 73 65 20 73 6f 6d 65 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 | hat.because.some.operating.syste |
| ac320 | 6d 73 20 73 75 63 68 20 61 73 20 4c 69 6e 75 78 20 68 61 76 65 20 6d 65 6d 6f 72 79 20 6f 76 65 | ms.such.as.Linux.have.memory.ove |
| ac340 | 72 63 6f 6d 6d 69 74 20 65 6e 61 62 6c 65 64 20 62 79 0a 20 20 20 20 20 20 64 65 66 61 75 6c 74 | rcommit.enabled.by.......default |
| ac360 | 2c 20 69 74 20 69 73 20 70 6f 69 6e 74 6c 65 73 73 20 74 6f 20 68 61 6e 64 6c 65 20 68 65 61 70 | ,.it.is.pointless.to.handle.heap |
| ac380 | 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 2e 20 54 68 65 72 65 20 61 72 65 20 6d | .allocation.failure..There.are.m |
| ac3a0 | 61 6e 79 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 74 68 69 73 20 72 65 61 73 6f 6e 69 6e 67 | any.problems.with.this.reasoning |
| ac3c0 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | :.......</p>.......<ul>......... |
| ac3e0 | 20 20 3c 6c 69 3e 4f 6e 6c 79 20 73 6f 6d 65 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d | ..<li>Only.some.operating.system |
| ac400 | 73 20 68 61 76 65 20 61 6e 20 6f 76 65 72 63 6f 6d 6d 69 74 20 66 65 61 74 75 72 65 2e 0a 20 20 | s.have.an.overcommit.feature.... |
| ac420 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ............<ul>................ |
| ac440 | 20 20 20 3c 6c 69 3e 4c 69 6e 75 78 20 68 61 73 20 69 74 20 65 6e 61 62 6c 65 64 20 62 79 20 64 | ...<li>Linux.has.it.enabled.by.d |
| ac460 | 65 66 61 75 6c 74 2c 20 62 75 74 20 69 74 20 69 73 20 63 6f 6e 66 69 67 75 72 61 62 6c 65 2e 3c | efault,.but.it.is.configurable.< |
| ac480 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 57 69 6e 64 6f | /li>...................<li>Windo |
| ac4a0 | 77 73 20 64 6f 65 73 20 6e 6f 74 20 6f 76 65 72 63 6f 6d 6d 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 | ws.does.not.overcommit.</li>.... |
| ac4c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 6d 62 65 64 64 65 64 20 73 79 73 74 | ...............<li>Embedded.syst |
| ac4e0 | 65 6d 73 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 6f 76 65 72 63 6f 6d 6d 69 74 2e 3c 2f 6c 69 3e | ems.do.not.have.overcommit.</li> |
| ac500 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 48 6f 62 62 79 20 6f 70 65 | ...................<li>Hobby.ope |
| ac520 | 72 61 74 69 6e 67 20 73 79 73 74 65 6d 73 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 68 61 | rating.systems.may.or.may.not.ha |
| ac540 | 76 65 20 6f 76 65 72 63 6f 6d 6d 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ve.overcommit.</li>............. |
| ac560 | 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ..</ul>...........</li>......... |
| ac580 | 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 6f 72 20 72 65 61 6c 2d 74 69 | ..<li>...............For.real-ti |
| ac5a0 | 6d 65 20 73 79 73 74 65 6d 73 2c 20 6e 6f 74 20 6f 6e 6c 79 20 69 73 20 74 68 65 72 65 20 6e 6f | me.systems,.not.only.is.there.no |
| ac5c0 | 20 6f 76 65 72 63 6f 6d 6d 69 74 2c 20 62 75 74 20 74 79 70 69 63 61 6c 6c 79 20 74 68 65 20 6d | .overcommit,.but.typically.the.m |
| ac5e0 | 61 78 69 6d 75 6d 20 61 6d 6f 75 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 66 20 6d | aximum.amount...............of.m |
| ac600 | 65 6d 6f 72 79 20 70 65 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 69 73 20 64 65 74 65 72 6d 69 | emory.per.application.is.determi |
| ac620 | 6e 65 64 20 61 68 65 61 64 20 6f 66 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c | ned.ahead.of.time............</l |
| ac640 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | i>...........<li>............... |
| ac660 | 57 68 65 6e 20 77 72 69 74 69 6e 67 20 61 20 6c 69 62 72 61 72 79 2c 20 6f 6e 65 20 6f 66 20 74 | When.writing.a.library,.one.of.t |
| ac680 | 68 65 20 6d 61 69 6e 20 67 6f 61 6c 73 20 69 73 20 63 6f 64 65 20 72 65 75 73 65 2e 20 42 79 20 | he.main.goals.is.code.reuse..By. |
| ac6a0 | 6d 61 6b 69 6e 67 20 63 6f 64 65 20 68 61 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | making.code.handle.............. |
| ac6c0 | 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 20 63 6f 72 72 65 63 74 6c 79 2c 20 61 | .allocation.failure.correctly,.a |
| ac6e0 | 20 6c 69 62 72 61 72 79 20 62 65 63 6f 6d 65 73 20 65 6c 69 67 69 62 6c 65 20 74 6f 20 62 65 20 | .library.becomes.eligible.to.be. |
| ac700 | 72 65 75 73 65 64 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 72 65 20 63 6f 6e | reused.in...............more.con |
| ac720 | 74 65 78 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | texts............</li>.......... |
| ac740 | 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 74 68 6f 75 67 68 20 73 6f 6d | .<li>...............Although.som |
| ac760 | 65 20 73 6f 66 74 77 61 72 65 20 68 61 73 20 67 72 6f 77 6e 20 74 6f 20 64 65 70 65 6e 64 20 6f | e.software.has.grown.to.depend.o |
| ac780 | 6e 20 6f 76 65 72 63 6f 6d 6d 69 74 20 62 65 69 6e 67 20 65 6e 61 62 6c 65 64 2c 20 69 74 73 20 | n.overcommit.being.enabled,.its. |
| ac7a0 | 65 78 69 73 74 65 6e 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 74 68 65 20 73 | existence...............is.the.s |
| ac7c0 | 6f 75 72 63 65 20 6f 66 20 63 6f 75 6e 74 6c 65 73 73 20 75 73 65 72 20 65 78 70 65 72 69 65 6e | ource.of.countless.user.experien |
| ac7e0 | 63 65 20 64 69 73 61 73 74 65 72 73 2e 20 57 68 65 6e 20 61 20 73 79 73 74 65 6d 20 77 69 74 68 | ce.disasters..When.a.system.with |
| ac800 | 20 6f 76 65 72 63 6f 6d 6d 69 74 20 65 6e 61 62 6c 65 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | .overcommit.enabled,............ |
| ac820 | 20 20 20 73 75 63 68 20 61 73 20 4c 69 6e 75 78 20 6f 6e 20 64 65 66 61 75 6c 74 20 73 65 74 74 | ...such.as.Linux.on.default.sett |
| ac840 | 69 6e 67 73 2c 20 63 6f 6d 65 73 20 63 6c 6f 73 65 20 74 6f 20 6d 65 6d 6f 72 79 20 65 78 68 61 | ings,.comes.close.to.memory.exha |
| ac860 | 75 73 74 69 6f 6e 2c 20 74 68 65 20 73 79 73 74 65 6d 20 6c 6f 63 6b 73 20 75 70 0a 20 20 20 20 | ustion,.the.system.locks.up..... |
| ac880 | 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 62 65 63 6f 6d 65 73 20 75 6e 75 73 61 62 6c 65 2e 20 | ..........and.becomes.unusable.. |
| ac8a0 | 41 74 20 74 68 69 73 20 70 6f 69 6e 74 2c 20 74 68 65 20 4f 4f 4d 20 4b 69 6c 6c 65 72 20 73 65 | At.this.point,.the.OOM.Killer.se |
| ac8c0 | 6c 65 63 74 73 20 61 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 74 6f 20 6b 69 6c 6c 0a 20 20 20 | lects.an.application.to.kill.... |
| ac8e0 | 20 20 20 20 20 20 20 20 20 20 20 62 61 73 65 64 20 6f 6e 20 68 65 75 72 69 73 74 69 63 73 2e 20 | ...........based.on.heuristics.. |
| ac900 | 54 68 69 73 20 6e 6f 6e 2d 64 65 74 65 72 6d 69 6e 69 73 74 69 63 20 64 65 63 69 73 69 6f 6e 20 | This.non-deterministic.decision. |
| ac920 | 6f 66 74 65 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 61 6e 20 69 6d 70 6f 72 74 61 6e 74 20 70 72 | often.results.in.an.important.pr |
| ac940 | 6f 63 65 73 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 65 69 6e 67 20 6b 69 6c 6c 65 64 | ocess...............being.killed |
| ac960 | 2c 20 61 6e 64 20 6f 66 74 65 6e 20 66 61 69 6c 73 20 74 6f 20 72 65 74 75 72 6e 20 74 68 65 20 | ,.and.often.fails.to.return.the. |
| ac980 | 73 79 73 74 65 6d 20 62 61 63 6b 20 74 6f 20 77 6f 72 6b 69 6e 67 20 6f 72 64 65 72 2e 0a 20 20 | system.back.to.working.order.... |
| ac9a0 | 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | ........</li>.......</ul>....... |
| ac9c0 | 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 63 75 72 73 69 6f 6e 22 3e 3c 61 20 68 72 | ........<h2.id="Recursion"><a.hr |
| ac9e0 | 65 66 3d 22 23 74 6f 63 2d 52 65 63 75 72 73 69 6f 6e 22 3e 52 65 63 75 72 73 69 6f 6e 3c 2f 61 | ef="#toc-Recursion">Recursion</a |
| aca00 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 63 75 72 73 69 6f | >.<a.class="hdr".href="#Recursio |
| aca20 | 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | n">..</a></h2>........<p>....... |
| aca40 | 52 65 63 75 72 73 69 6f 6e 20 69 73 20 61 20 66 75 6e 64 61 6d 65 6e 74 61 6c 20 74 6f 6f 6c 20 | Recursion.is.a.fundamental.tool. |
| aca60 | 69 6e 20 6d 6f 64 65 6c 69 6e 67 20 73 6f 66 74 77 61 72 65 2e 20 48 6f 77 65 76 65 72 20 69 74 | in.modeling.software..However.it |
| aca80 | 20 68 61 73 20 61 6e 20 6f 66 74 65 6e 2d 6f 76 65 72 6c 6f 6f 6b 65 64 20 70 72 6f 62 6c 65 6d | .has.an.often-overlooked.problem |
| acaa0 | 3a 0a 20 20 20 20 20 20 75 6e 62 6f 75 6e 64 65 64 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 | :.......unbounded.memory.allocat |
| acac0 | 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ion........</p>.......<p>....... |
| acae0 | 52 65 63 75 72 73 69 6f 6e 20 69 73 20 61 6e 20 61 72 65 61 20 6f 66 20 61 63 74 69 76 65 20 65 | Recursion.is.an.area.of.active.e |
| acb00 | 78 70 65 72 69 6d 65 6e 74 61 74 69 6f 6e 20 69 6e 20 5a 69 67 20 61 6e 64 20 73 6f 20 74 68 65 | xperimentation.in.Zig.and.so.the |
| acb20 | 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 68 65 72 65 20 69 73 20 6e 6f 74 20 66 69 6e 61 6c | .documentation.here.is.not.final |
| acb40 | 2e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 72 65 61 64 20 61 0a 20 20 20 20 20 20 3c 61 20 | ........You.can.read.a.......<a. |
| acb60 | 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 77 6e 6c 6f | href="https://ziglang.org/downlo |
| acb80 | 61 64 2f 30 2e 33 2e 30 2f 72 65 6c 65 61 73 65 2d 6e 6f 74 65 73 2e 68 74 6d 6c 23 72 65 63 75 | ad/0.3.0/release-notes.html#recu |
| acba0 | 72 73 69 6f 6e 22 3e 73 75 6d 6d 61 72 79 20 6f 66 20 72 65 63 75 72 73 69 6f 6e 20 73 74 61 74 | rsion">summary.of.recursion.stat |
| acbc0 | 75 73 20 69 6e 20 74 68 65 20 30 2e 33 2e 30 20 72 65 6c 65 61 73 65 20 6e 6f 74 65 73 3c 2f 61 | us.in.the.0.3.0.release.notes</a |
| acbe0 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | >........</p>.......<p>.......Th |
| acc00 | 65 20 73 68 6f 72 74 20 73 75 6d 6d 61 72 79 20 69 73 20 74 68 61 74 20 63 75 72 72 65 6e 74 6c | e.short.summary.is.that.currentl |
| acc20 | 79 20 72 65 63 75 72 73 69 6f 6e 20 77 6f 72 6b 73 20 6e 6f 72 6d 61 6c 6c 79 20 61 73 20 79 6f | y.recursion.works.normally.as.yo |
| acc40 | 75 20 77 6f 75 6c 64 20 65 78 70 65 63 74 2e 20 41 6c 74 68 6f 75 67 68 20 5a 69 67 20 63 6f 64 | u.would.expect..Although.Zig.cod |
| acc60 | 65 0a 20 20 20 20 20 20 69 73 20 6e 6f 74 20 79 65 74 20 70 72 6f 74 65 63 74 65 64 20 66 72 6f | e.......is.not.yet.protected.fro |
| acc80 | 6d 20 73 74 61 63 6b 20 6f 76 65 72 66 6c 6f 77 2c 20 69 74 20 69 73 20 70 6c 61 6e 6e 65 64 20 | m.stack.overflow,.it.is.planned. |
| acca0 | 74 68 61 74 20 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 5a 69 67 20 77 69 6c | that.a.future.version.of.Zig.wil |
| accc0 | 6c 20 70 72 6f 76 69 64 65 0a 20 20 20 20 20 20 73 75 63 68 20 70 72 6f 74 65 63 74 69 6f 6e 2c | l.provide.......such.protection, |
| acce0 | 20 77 69 74 68 20 73 6f 6d 65 20 64 65 67 72 65 65 20 6f 66 20 63 6f 6f 70 65 72 61 74 69 6f 6e | .with.some.degree.of.cooperation |
| acd00 | 20 66 72 6f 6d 20 5a 69 67 20 63 6f 64 65 20 72 65 71 75 69 72 65 64 2e 0a 20 20 20 20 20 20 3c | .from.Zig.code.required........< |
| acd20 | 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4c 69 66 65 74 69 | /p>...............<h2.id="Lifeti |
| acd40 | 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | me-and-Ownership"><a.href="#toc- |
| acd60 | 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 3e 4c 69 66 65 74 69 6d 65 | Lifetime-and-Ownership">Lifetime |
| acd80 | 20 61 6e 64 20 4f 77 6e 65 72 73 68 69 70 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | .and.Ownership</a>.<a.class="hdr |
| acda0 | 22 20 68 72 65 66 3d 22 23 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 | ".href="#Lifetime-and-Ownership" |
| acdc0 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 | >..</a></h2>........<p>.......It |
| acde0 | 20 69 73 20 74 68 65 20 5a 69 67 20 70 72 6f 67 72 61 6d 6d 65 72 27 73 20 72 65 73 70 6f 6e 73 | .is.the.Zig.programmer's.respons |
| ace00 | 69 62 69 6c 69 74 79 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 61 20 3c 61 20 68 72 65 66 | ibility.to.ensure.that.a.<a.href |
| ace20 | 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 20 69 73 20 6e 6f 74 0a | ="#Pointers">pointer</a>.is.not. |
| ace40 | 20 20 20 20 20 20 61 63 63 65 73 73 65 64 20 77 68 65 6e 20 74 68 65 20 6d 65 6d 6f 72 79 20 70 | ......accessed.when.the.memory.p |
| ace60 | 6f 69 6e 74 65 64 20 74 6f 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 61 76 61 69 6c 61 62 6c 65 | ointed.to.is.no.longer.available |
| ace80 | 2e 20 4e 6f 74 65 20 74 68 61 74 20 61 20 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e | ..Note.that.a.<a.href="#Slices"> |
| acea0 | 73 6c 69 63 65 3c 2f 61 3e 0a 20 20 20 20 20 20 69 73 20 61 20 66 6f 72 6d 20 6f 66 20 70 6f 69 | slice</a>.......is.a.form.of.poi |
| acec0 | 6e 74 65 72 2c 20 69 6e 20 74 68 61 74 20 69 74 20 72 65 66 65 72 65 6e 63 65 73 20 6f 74 68 65 | nter,.in.that.it.references.othe |
| acee0 | 72 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | r.memory........</p>.......<p>.. |
| acf00 | 20 20 20 20 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 70 72 65 76 65 6e 74 20 62 75 67 73 2c 20 74 | .....In.order.to.prevent.bugs,.t |
| acf20 | 68 65 72 65 20 61 72 65 20 73 6f 6d 65 20 68 65 6c 70 66 75 6c 20 63 6f 6e 76 65 6e 74 69 6f 6e | here.are.some.helpful.convention |
| acf40 | 73 20 74 6f 20 66 6f 6c 6c 6f 77 20 77 68 65 6e 20 64 65 61 6c 69 6e 67 20 77 69 74 68 20 70 6f | s.to.follow.when.dealing.with.po |
| acf60 | 69 6e 74 65 72 73 2e 0a 20 20 20 20 20 20 49 6e 20 67 65 6e 65 72 61 6c 2c 20 77 68 65 6e 20 61 | inters........In.general,.when.a |
| acf80 | 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 70 6f 69 6e 74 65 72 2c 20 74 68 65 | .function.returns.a.pointer,.the |
| acfa0 | 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 | .documentation.for.the.function. |
| acfc0 | 73 68 6f 75 6c 64 20 65 78 70 6c 61 69 6e 0a 20 20 20 20 20 20 77 68 6f 20 22 6f 77 6e 73 22 20 | should.explain.......who."owns". |
| acfe0 | 74 68 65 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 63 6f 6e 63 65 70 74 20 68 65 6c 70 73 20 | the.pointer..This.concept.helps. |
| ad000 | 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 64 65 63 69 64 65 20 77 68 65 6e 20 69 74 20 69 73 | the.programmer.decide.when.it.is |
| ad020 | 20 61 70 70 72 6f 70 72 69 61 74 65 2c 20 69 66 20 65 76 65 72 2c 0a 20 20 20 20 20 20 74 6f 20 | .appropriate,.if.ever,.......to. |
| ad040 | 66 72 65 65 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | free.the.pointer........</p>.... |
| ad060 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 66 75 | ...<p>.......For.example,.the.fu |
| ad080 | 6e 63 74 69 6f 6e 27 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 6d 61 79 20 73 61 79 20 22 | nction's.documentation.may.say." |
| ad0a0 | 63 61 6c 6c 65 72 20 6f 77 6e 73 20 74 68 65 20 72 65 74 75 72 6e 65 64 20 6d 65 6d 6f 72 79 22 | caller.owns.the.returned.memory" |
| ad0c0 | 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 65 0a 20 20 20 20 20 20 74 68 65 20 63 6f 64 65 20 74 | ,.in.which.case.......the.code.t |
| ad0e0 | 68 61 74 20 63 61 6c 6c 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 6d 75 73 74 20 68 61 76 65 | hat.calls.the.function.must.have |
| ad100 | 20 61 20 70 6c 61 6e 20 66 6f 72 20 77 68 65 6e 20 74 6f 20 66 72 65 65 20 74 68 61 74 20 6d 65 | .a.plan.for.when.to.free.that.me |
| ad120 | 6d 6f 72 79 2e 20 50 72 6f 62 61 62 6c 79 20 69 6e 20 74 68 69 73 20 73 69 74 75 61 74 69 6f 6e | mory..Probably.in.this.situation |
| ad140 | 2c 0a 20 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 61 63 63 65 70 74 | ,.......the.function.will.accept |
| ad160 | 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 41 6c 6c 6f 63 61 74 6f 72 | .an.<code.class="zig">*Allocator |
| ad180 | 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | </code>.parameter........</p>... |
| ad1a0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 74 69 6d 65 73 20 74 68 65 20 6c 69 66 65 | ....<p>.......Sometimes.the.life |
| ad1c0 | 74 69 6d 65 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 6d 61 79 20 62 65 20 6d 6f 72 65 20 63 6f | time.of.a.pointer.may.be.more.co |
| ad1e0 | 6d 70 6c 69 63 61 74 65 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 0a 20 20 20 20 | mplicated..For.example,.the..... |
| ad200 | 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 41 72 72 61 79 4c 69 73 | ..<code.class="zig">std.ArrayLis |
| ad220 | 74 28 54 29 2e 69 74 65 6d 73 3c 2f 63 6f 64 65 3e 20 73 6c 69 63 65 20 68 61 73 20 61 20 6c 69 | t(T).items</code>.slice.has.a.li |
| ad240 | 66 65 74 69 6d 65 20 74 68 61 74 20 72 65 6d 61 69 6e 73 0a 20 20 20 20 20 20 76 61 6c 69 64 20 | fetime.that.remains.......valid. |
| ad260 | 75 6e 74 69 6c 20 74 68 65 20 6e 65 78 74 20 74 69 6d 65 20 74 68 65 20 6c 69 73 74 20 69 73 20 | until.the.next.time.the.list.is. |
| ad280 | 72 65 73 69 7a 65 64 2c 20 73 75 63 68 20 61 73 20 62 79 20 61 70 70 65 6e 64 69 6e 67 20 6e 65 | resized,.such.as.by.appending.ne |
| ad2a0 | 77 20 65 6c 65 6d 65 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | w.elements........</p>.......<p> |
| ad2c0 | 0a 20 20 20 20 20 20 54 68 65 20 41 50 49 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 | .......The.API.documentation.for |
| ad2e0 | 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 73 | .functions.and.data.structures.s |
| ad300 | 68 6f 75 6c 64 20 74 61 6b 65 20 67 72 65 61 74 20 63 61 72 65 20 74 6f 20 65 78 70 6c 61 69 6e | hould.take.great.care.to.explain |
| ad320 | 0a 20 20 20 20 20 20 74 68 65 20 6f 77 6e 65 72 73 68 69 70 20 61 6e 64 20 6c 69 66 65 74 69 6d | .......the.ownership.and.lifetim |
| ad340 | 65 20 73 65 6d 61 6e 74 69 63 73 20 6f 66 20 70 6f 69 6e 74 65 72 73 2e 20 4f 77 6e 65 72 73 68 | e.semantics.of.pointers..Ownersh |
| ad360 | 69 70 20 64 65 74 65 72 6d 69 6e 65 73 20 77 68 6f 73 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 | ip.determines.whose.responsibili |
| ad380 | 74 79 20 69 74 0a 20 20 20 20 20 20 69 73 20 74 6f 20 66 72 65 65 20 74 68 65 20 6d 65 6d 6f 72 | ty.it.......is.to.free.the.memor |
| ad3a0 | 79 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 74 68 65 20 70 6f 69 6e 74 65 72 2c 20 61 6e 64 | y.referenced.by.the.pointer,.and |
| ad3c0 | 20 6c 69 66 65 74 69 6d 65 20 64 65 74 65 72 6d 69 6e 65 73 20 74 68 65 20 70 6f 69 6e 74 20 61 | .lifetime.determines.the.point.a |
| ad3e0 | 74 20 77 68 69 63 68 0a 20 20 20 20 20 20 74 68 65 20 6d 65 6d 6f 72 79 20 62 65 63 6f 6d 65 73 | t.which.......the.memory.becomes |
| ad400 | 20 69 6e 61 63 63 65 73 73 69 62 6c 65 20 28 6c 65 73 74 20 3c 61 20 68 72 65 66 3d 22 23 55 6e | .inaccessible.(lest.<a.href="#Un |
| ad420 | 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 | defined-Behavior">Undefined.Beha |
| ad440 | 76 69 6f 72 3c 2f 61 3e 20 6f 63 63 75 72 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | vior</a>.occur)........</p>..... |
| ad460 | 20 20 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 6f 6d 70 69 6c 65 | .................<h1.id="Compile |
| ad480 | 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 6c | -Variables"><a.href="#toc-Compil |
| ad4a0 | 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f | e-Variables">Compile.Variables</ |
| ad4c0 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 | a>.<a.class="hdr".href="#Compile |
| ad4e0 | 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c | -Variables">..</a></h1>........< |
| ad500 | 70 3e 0a 20 20 20 20 20 20 43 6f 6d 70 69 6c 65 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 61 | p>.......Compile.variables.are.a |
| ad520 | 63 63 65 73 73 69 62 6c 65 20 62 79 20 69 6d 70 6f 72 74 69 6e 67 20 74 68 65 20 3c 63 6f 64 65 | ccessible.by.importing.the.<code |
| ad540 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | .class="zig"><span.class="tok-st |
| ad560 | 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 | r">"builtin"</span></c |
| ad580 | 6f 64 65 3e 20 70 61 63 6b 61 67 65 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 74 68 65 20 63 6f | ode>.package,.......which.the.co |
| ad5a0 | 6d 70 69 6c 65 72 20 6d 61 6b 65 73 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 65 76 65 72 79 20 | mpiler.makes.available.to.every. |
| ad5c0 | 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 20 49 74 20 63 6f 6e 74 61 69 6e 73 0a 20 20 20 | Zig.source.file..It.contains.... |
| ad5e0 | 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 73 20 73 75 63 68 20 61 | ...compile-time.constants.such.a |
| ad600 | 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 2c 20 65 6e 64 69 61 6e 6e 65 73 73 | s.the.current.target,.endianness |
| ad620 | 2c 20 61 6e 64 20 72 65 6c 65 61 73 65 20 6d 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ,.and.release.mode........</p>.. |
| ad640 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| ad660 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 | n.class="tok-kw">const</span>.bu |
| ad680 | 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | iltin.=.<span.class="tok-builtin |
| ad6a0 | 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">@import</span>(<span.class="to |
| ad6c0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | k-str">"builtin"</span |
| ad6e0 | 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | >);.<span.class="tok-kw">const</ |
| ad700 | 73 70 61 6e 3e 20 73 65 70 61 72 61 74 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>.separator.=.<span.class="t |
| ad720 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 | ok-kw">if</span>.(builtin.os.tag |
| ad740 | 20 3d 3d 20 62 75 69 6c 74 69 6e 2e 4f 73 2e 77 69 6e 64 6f 77 73 29 20 3c 73 70 61 6e 20 63 6c | .==.builtin.Os.windows).<span.cl |
| ad760 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 5c 27 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-str">'\\'</span>.<span. |
| ad780 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">else</span>.<span |
| ad7a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 2f 27 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f | .class="tok-str">'/'</span>;</co |
| ad7c0 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c | de></pre>.......<p>.......Exampl |
| ad7e0 | 65 20 6f 66 20 77 68 61 74 20 69 73 20 69 6d 70 6f 72 74 65 64 20 77 69 74 68 20 3c 63 6f 64 65 | e.of.what.is.imported.with.<code |
| ad800 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| ad820 | 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | iltin">@import</span>(<span.clas |
| ad840 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c | s="tok-str">"builtin"< |
| ad860 | 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | /span>)</code>:.......</p>...... |
| ad880 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| ad8a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 | ass="tok-kw">const</span>.std.=. |
| ad8c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 | <span.class="tok-builtin">@impor |
| ad8e0 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | t</span>(<span.class="tok-str">& |
| ad900 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c | quot;std"</span>);.<span.cl |
| ad920 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 5a 69 67 20 76 65 72 73 69 6f | ass="tok-comment">///.Zig.versio |
| ad940 | 6e 2e 20 57 68 65 6e 20 77 72 69 74 69 6e 67 20 63 6f 64 65 20 74 68 61 74 20 73 75 70 70 6f 72 | n..When.writing.code.that.suppor |
| ad960 | 74 73 20 6d 75 6c 74 69 70 6c 65 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 5a 69 67 2c 20 70 72 65 | ts.multiple.versions.of.Zig,.pre |
| ad980 | 66 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | fer</span>.<span.class="tok-comm |
| ad9a0 | 65 6e 74 22 3e 2f 2f 2f 20 66 65 61 74 75 72 65 20 64 65 74 65 63 74 69 6f 6e 20 28 69 2e 65 2e | ent">///.feature.detection.(i.e. |
| ad9c0 | 20 77 69 74 68 20 60 40 68 61 73 44 65 63 6c 60 20 6f 72 20 60 40 68 61 73 46 69 65 6c 64 60 29 | .with.`@hasDecl`.or.`@hasField`) |
| ad9e0 | 20 6f 76 65 72 20 76 65 72 73 69 6f 6e 20 63 68 65 63 6b 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | .over.version.checks.</span>.<sp |
| ada00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 | an.class="tok-kw">pub</span>.<sp |
| ada20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a | an.class="tok-kw">const</span>.z |
| ada40 | 69 67 5f 76 65 72 73 69 6f 6e 20 3d 20 73 74 64 2e 53 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e | ig_version.=.std.SemanticVersion |
| ada60 | 2e 70 61 72 73 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .parse(<span.class="tok-str">&qu |
| ada80 | 6f 74 3b 30 2e 38 2e 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | ot;0.8.1"</span>).<span.cla |
| adaa0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ss="tok-kw">catch</span>.<span.c |
| adac0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e | lass="tok-kw">unreachable</span> |
| adae0 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 | ;.<span.class="tok-comment">///. |
| adb00 | 54 65 6d 70 6f 72 61 72 79 20 75 6e 74 69 6c 20 73 65 6c 66 2d 68 6f 73 74 65 64 20 69 73 20 66 | Temporary.until.self-hosted.is.f |
| adb20 | 65 61 74 75 72 65 20 63 6f 6d 70 6c 65 74 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | eature.complete.</span>.<span.cl |
| adb40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ass="tok-kw">pub</span>.<span.cl |
| adb60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 69 67 5f 69 73 | ass="tok-kw">const</span>.zig_is |
| adb80 | 5f 73 74 61 67 65 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | _stage2.=.<span.class="tok-null" |
| adba0 | 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | >true</span>;.<span.class="tok-c |
| adbc0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 54 65 6d 70 6f 72 61 72 79 20 75 6e 74 69 6c 20 73 65 6c 66 | omment">///.Temporary.until.self |
| adbe0 | 2d 68 6f 73 74 65 64 20 73 75 70 70 6f 72 74 73 20 74 68 65 20 60 63 70 75 2e 61 72 63 68 60 20 | -hosted.supports.the.`cpu.arch`. |
| adc00 | 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | value.</span>.<span.class="tok-k |
| adc20 | 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | w">pub</span>.<span.class="tok-k |
| adc40 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 61 67 65 32 5f 61 72 63 68 3a 20 73 74 64 | w">const</span>.stage2_arch:.std |
| adc60 | 2e 54 61 72 67 65 74 2e 43 70 75 2e 41 72 63 68 20 3d 20 2e 78 38 36 5f 36 34 3b 0a 0a 3c 73 70 | .Target.Cpu.Arch.=..x86_64;..<sp |
| adc80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 | an.class="tok-kw">pub</span>.<sp |
| adca0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f | an.class="tok-kw">const</span>.o |
| adcc0 | 75 74 70 75 74 5f 6d 6f 64 65 20 3d 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 4f 75 74 70 75 74 4d | utput_mode.=.std.builtin.OutputM |
| adce0 | 6f 64 65 2e 4f 62 6a 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | ode.Obj;.<span.class="tok-kw">pu |
| add00 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | b</span>.<span.class="tok-kw">co |
| add20 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6d 6f 64 65 20 3d 20 73 74 64 2e 62 75 69 6c 74 | nst</span>.link_mode.=.std.built |
| add40 | 69 6e 2e 4c 69 6e 6b 4d 6f 64 65 2e 53 74 61 74 69 63 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | in.LinkMode.Static;.<span.class= |
| add60 | 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">pub</span>.<span.class= |
| add80 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 73 5f 74 65 73 74 20 3d 20 | "tok-kw">const</span>.is_test.=. |
| adda0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 | <span.class="tok-null">false</sp |
| addc0 | 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | an>;.<span.class="tok-kw">pub</s |
| adde0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | pan>.<span.class="tok-kw">const< |
| ade00 | 2f 73 70 61 6e 3e 20 73 69 6e 67 6c 65 5f 74 68 72 65 61 64 65 64 20 3d 20 3c 73 70 61 6e 20 63 | /span>.single_threaded.=.<span.c |
| ade20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 | lass="tok-null">false</span>;.<s |
| ade40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 | pan.class="tok-kw">pub</span>.<s |
| ade60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| ade80 | 61 62 69 20 3d 20 73 74 64 2e 54 61 72 67 65 74 2e 41 62 69 2e 67 6e 75 3b 0a 3c 73 70 61 6e 20 | abi.=.std.Target.Abi.gnu;.<span. |
| adea0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | class="tok-kw">pub</span>.<span. |
| adec0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 70 75 3a | class="tok-kw">const</span>.cpu: |
| adee0 | 20 73 74 64 2e 54 61 72 67 65 74 2e 43 70 75 20 3d 20 2e 7b 0a 20 20 20 20 2e 61 72 63 68 20 3d | .std.Target.Cpu.=..{......arch.= |
| adf00 | 20 2e 78 38 36 5f 36 34 2c 0a 20 20 20 20 2e 6d 6f 64 65 6c 20 3d 20 26 61 6d 70 3b 73 74 64 2e | ..x86_64,......model.=.&std. |
| adf20 | 54 61 72 67 65 74 2e 78 38 36 2e 63 70 75 2e 73 6b 79 6c 61 6b 65 2c 0a 20 20 20 20 2e 66 65 61 | Target.x86.cpu.skylake,......fea |
| adf40 | 74 75 72 65 73 20 3d 20 73 74 64 2e 54 61 72 67 65 74 2e 78 38 36 2e 66 65 61 74 75 72 65 53 65 | tures.=.std.Target.x86.featureSe |
| adf60 | 74 28 26 61 6d 70 3b 5b 5f 5d 73 74 64 2e 54 61 72 67 65 74 2e 78 38 36 2e 46 65 61 74 75 72 65 | t(&[_]std.Target.x86.Feature |
| adf80 | 7b 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 36 34 62 69 74 26 71 75 6f 74 3b 2c 0a 20 | {..........@"64bit",.. |
| adfa0 | 20 20 20 20 20 20 20 2e 61 64 78 2c 0a 20 20 20 20 20 20 20 20 2e 61 65 73 2c 0a 20 20 20 20 20 | ........adx,..........aes,...... |
| adfc0 | 20 20 20 2e 61 76 78 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 32 2c 0a 20 20 20 20 20 20 20 20 | ....avx,..........avx2,......... |
| adfe0 | 2e 62 6d 69 2c 0a 20 20 20 20 20 20 20 20 2e 62 6d 69 32 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c | .bmi,..........bmi2,..........cl |
| ae000 | 66 6c 75 73 68 6f 70 74 2c 0a 20 20 20 20 20 20 20 20 2e 63 6d 6f 76 2c 0a 20 20 20 20 20 20 20 | flushopt,..........cmov,........ |
| ae020 | 20 2e 63 78 31 36 2c 0a 20 20 20 20 20 20 20 20 2e 63 78 38 2c 0a 20 20 20 20 20 20 20 20 2e 65 | ..cx16,..........cx8,..........e |
| ae040 | 72 6d 73 62 2c 0a 20 20 20 20 20 20 20 20 2e 66 31 36 63 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 | rmsb,..........f16c,..........fa |
| ae060 | 6c 73 65 5f 64 65 70 73 5f 70 6f 70 63 6e 74 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 31 | lse_deps_popcnt,..........fast_1 |
| ae080 | 35 62 79 74 65 6e 6f 70 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 67 61 74 68 65 72 2c 0a | 5bytenop,..........fast_gather,. |
| ae0a0 | 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 73 63 61 6c 61 72 5f 66 73 71 72 74 2c 0a 20 20 20 20 | .........fast_scalar_fsqrt,..... |
| ae0c0 | 20 20 20 20 2e 66 61 73 74 5f 73 68 6c 64 5f 72 6f 74 61 74 65 2c 0a 20 20 20 20 20 20 20 20 2e | .....fast_shld_rotate,.......... |
| ae0e0 | 66 61 73 74 5f 76 61 72 69 61 62 6c 65 5f 73 68 75 66 66 6c 65 2c 0a 20 20 20 20 20 20 20 20 2e | fast_variable_shuffle,.......... |
| ae100 | 66 61 73 74 5f 76 65 63 74 6f 72 5f 66 73 71 72 74 2c 0a 20 20 20 20 20 20 20 20 2e 66 6d 61 2c | fast_vector_fsqrt,..........fma, |
| ae120 | 0a 20 20 20 20 20 20 20 20 2e 66 73 67 73 62 61 73 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 78 73 | ..........fsgsbase,..........fxs |
| ae140 | 72 2c 0a 20 20 20 20 20 20 20 20 2e 69 64 69 76 71 5f 74 6f 5f 64 69 76 6c 2c 0a 20 20 20 20 20 | r,..........idivq_to_divl,...... |
| ae160 | 20 20 20 2e 69 6e 76 70 63 69 64 2c 0a 20 20 20 20 20 20 20 20 2e 6c 7a 63 6e 74 2c 0a 20 20 20 | ....invpcid,..........lzcnt,.... |
| ae180 | 20 20 20 20 20 2e 6d 61 63 72 6f 66 75 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 2e 6d 6d 78 2c | ......macrofusion,..........mmx, |
| ae1a0 | 0a 20 20 20 20 20 20 20 20 2e 6d 6f 76 62 65 2c 0a 20 20 20 20 20 20 20 20 2e 6e 6f 70 6c 2c 0a | ..........movbe,..........nopl,. |
| ae1c0 | 20 20 20 20 20 20 20 20 2e 70 63 6c 6d 75 6c 2c 0a 20 20 20 20 20 20 20 20 2e 70 6f 70 63 6e 74 | .........pclmul,..........popcnt |
| ae1e0 | 2c 0a 20 20 20 20 20 20 20 20 2e 70 72 66 63 68 77 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 72 6e | ,..........prfchw,..........rdrn |
| ae200 | 64 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 73 65 65 64 2c 0a 20 20 20 20 20 20 20 20 2e 73 61 68 | d,..........rdseed,..........sah |
| ae220 | 66 2c 0a 20 20 20 20 20 20 20 20 2e 73 67 78 2c 0a 20 20 20 20 20 20 20 20 2e 73 6c 6f 77 5f 33 | f,..........sgx,..........slow_3 |
| ae240 | 6f 70 73 5f 6c 65 61 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 2c 0a 20 20 20 20 20 20 20 20 2e | ops_lea,..........sse,.......... |
| ae260 | 73 73 65 32 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 33 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 | sse2,..........sse3,..........ss |
| ae280 | 65 34 5f 31 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 34 5f 32 2c 0a 20 20 20 20 20 20 20 20 2e | e4_1,..........sse4_2,.......... |
| ae2a0 | 73 73 73 65 33 2c 0a 20 20 20 20 20 20 20 20 2e 76 7a 65 72 6f 75 70 70 65 72 2c 0a 20 20 20 20 | ssse3,..........vzeroupper,..... |
| ae2c0 | 20 20 20 20 2e 78 38 37 2c 0a 20 20 20 20 20 20 20 20 2e 78 73 61 76 65 2c 0a 20 20 20 20 20 20 | .....x87,..........xsave,....... |
| ae2e0 | 20 20 2e 78 73 61 76 65 63 2c 0a 20 20 20 20 20 20 20 20 2e 78 73 61 76 65 6f 70 74 2c 0a 20 20 | ...xsavec,..........xsaveopt,... |
| ae300 | 20 20 20 20 20 20 2e 78 73 61 76 65 73 2c 0a 20 20 20 20 7d 29 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 | .......xsaves,.....}),.};.<span. |
| ae320 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | class="tok-kw">pub</span>.<span. |
| ae340 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 20 3d | class="tok-kw">const</span>.os.= |
| ae360 | 20 73 74 64 2e 54 61 72 67 65 74 2e 4f 73 7b 0a 20 20 20 20 2e 74 61 67 20 3d 20 2e 6c 69 6e 75 | .std.Target.Os{......tag.=..linu |
| ae380 | 78 2c 0a 20 20 20 20 2e 76 65 72 73 69 6f 6e 5f 72 61 6e 67 65 20 3d 20 2e 7b 20 2e 6c 69 6e 75 | x,......version_range.=..{..linu |
| ae3a0 | 78 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 72 61 6e 67 65 20 3d 20 2e 7b 0a 20 20 20 20 20 | x.=..{..........range.=..{...... |
| ae3c0 | 20 20 20 20 20 20 20 2e 6d 69 6e 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ........min.=..{................ |
| ae3e0 | 20 2e 6d 61 6a 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ..major.=.<span.class="tok-numbe |
| ae400 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 69 | r">5</span>,..................mi |
| ae420 | 6e 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 | nor.=.<span.class="tok-number">4 |
| ae440 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 68 20 | </span>,..................patch. |
| ae460 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 32 3c 2f | =.<span.class="tok-number">122</ |
| ae480 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 | span>,.............},........... |
| ae4a0 | 20 20 2e 6d 61 78 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 6a | ...max.=..{..................maj |
| ae4c0 | 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | or.=.<span.class="tok-number">5< |
| ae4e0 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 69 6e 6f 72 20 3d | /span>,..................minor.= |
| ae500 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 | .<span.class="tok-number">4</spa |
| ae520 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 68 20 3d 20 3c 73 70 | n>,..................patch.=.<sp |
| ae540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 32 3c 2f 73 70 61 6e 3e | an.class="tok-number">122</span> |
| ae560 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 | ,.............},.........},..... |
| ae580 | 20 20 20 20 2e 67 6c 69 62 63 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 6a | .....glibc.=..{..............maj |
| ae5a0 | 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | or.=.<span.class="tok-number">2< |
| ae5c0 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 69 6e 6f 72 20 3d 20 3c 73 70 | /span>,..............minor.=.<sp |
| ae5e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 31 3c 2f 73 70 61 6e 3e 2c | an.class="tok-number">31</span>, |
| ae600 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ..............patch.=.<span.clas |
| ae620 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | s="tok-number">0</span>,........ |
| ae640 | 20 7d 2c 0a 20 20 20 20 7d 7d 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .},.....}},.};.<span.class="tok- |
| ae660 | 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | kw">pub</span>.<span.class="tok- |
| ae680 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 61 72 67 65 74 20 3d 20 73 74 64 2e 54 61 | kw">const</span>.target.=.std.Ta |
| ae6a0 | 72 67 65 74 7b 0a 20 20 20 20 2e 63 70 75 20 3d 20 63 70 75 2c 0a 20 20 20 20 2e 6f 73 20 3d 20 | rget{......cpu.=.cpu,......os.=. |
| ae6c0 | 6f 73 2c 0a 20 20 20 20 2e 61 62 69 20 3d 20 61 62 69 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 | os,......abi.=.abi,.};.<span.cla |
| ae6e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ss="tok-kw">pub</span>.<span.cla |
| ae700 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 62 6a 65 63 74 5f | ss="tok-kw">const</span>.object_ |
| ae720 | 66 6f 72 6d 61 74 20 3d 20 73 74 64 2e 54 61 72 67 65 74 2e 4f 62 6a 65 63 74 46 6f 72 6d 61 74 | format.=.std.Target.ObjectFormat |
| ae740 | 2e 65 6c 66 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | .elf;.<span.class="tok-kw">pub</ |
| ae760 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | span>.<span.class="tok-kw">const |
| ae780 | 3c 2f 73 70 61 6e 3e 20 6d 6f 64 65 20 3d 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 4d 6f 64 65 2e | </span>.mode.=.std.builtin.Mode. |
| ae7a0 | 44 65 62 75 67 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | Debug;.<span.class="tok-kw">pub< |
| ae7c0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | /span>.<span.class="tok-kw">cons |
| ae7e0 | 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6c 69 62 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t</span>.link_libc.=.<span.class |
| ae800 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 | ="tok-null">false</span>;.<span. |
| ae820 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | class="tok-kw">pub</span>.<span. |
| ae840 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b | class="tok-kw">const</span>.link |
| ae860 | 5f 6c 69 62 63 70 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | _libcpp.=.<span.class="tok-null" |
| ae880 | 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >false</span>;.<span.class="tok- |
| ae8a0 | 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | kw">pub</span>.<span.class="tok- |
| ae8c0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 61 76 65 5f 65 72 72 6f 72 5f 72 65 74 75 | kw">const</span>.have_error_retu |
| ae8e0 | 72 6e 5f 74 72 61 63 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | rn_tracing.=.<span.class="tok-nu |
| ae900 | 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ll">true</span>;.<span.class="to |
| ae920 | 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | k-kw">pub</span>.<span.class="to |
| ae940 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 67 72 69 6e 64 5f 73 75 70 70 | k-kw">const</span>.valgrind_supp |
| ae960 | 6f 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 | ort.=.<span.class="tok-null">tru |
| ae980 | 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | e</span>;.<span.class="tok-kw">p |
| ae9a0 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ub</span>.<span.class="tok-kw">c |
| ae9c0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 73 69 74 69 6f 6e 5f 69 6e 64 65 70 65 6e 64 65 6e 74 | onst</span>.position_independent |
| ae9e0 | 5f 63 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | _code.=.<span.class="tok-null">f |
| aea00 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | alse</span>;.<span.class="tok-kw |
| aea20 | 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">pub</span>.<span.class="tok-kw |
| aea40 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 73 69 74 69 6f 6e 5f 69 6e 64 65 70 65 6e 64 | ">const</span>.position_independ |
| aea60 | 65 6e 74 5f 65 78 65 63 75 74 61 62 6c 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ent_executable.=.<span.class="to |
| aea80 | 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | k-null">false</span>;.<span.clas |
| aeaa0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | s="tok-kw">pub</span>.<span.clas |
| aeac0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 72 69 70 5f 64 65 | s="tok-kw">const</span>.strip_de |
| aeae0 | 62 75 67 5f 69 6e 66 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | bug_info.=.<span.class="tok-null |
| aeb00 | 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">false</span>;.<span.class="tok |
| aeb20 | 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | -kw">pub</span>.<span.class="tok |
| aeb40 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 64 65 5f 6d 6f 64 65 6c 20 3d 20 73 | -kw">const</span>.code_model.=.s |
| aeb60 | 74 64 2e 62 75 69 6c 74 69 6e 2e 43 6f 64 65 4d 6f 64 65 6c 2e 64 65 66 61 75 6c 74 3b 3c 2f 63 | td.builtin.CodeModel.default;</c |
| aeb80 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 | ode></pre>.......<p>See.also:</p |
| aeba0 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e | ><ul>.<li><a.href="#Build-Mode"> |
| aebc0 | 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | Build.Mode</a></li>.</ul>....... |
| aebe0 | 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 | ........<h1.id="Root-Source-File |
| aec00 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 | "><a.href="#toc-Root-Source-File |
| aec20 | 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ">Root.Source.File</a>.<a.class= |
| aec40 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e c2 | "hdr".href="#Root-Source-File">. |
| aec60 | a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 65 78 70 6c 61 | .</a></h1>........<p>TODO:.expla |
| aec80 | 69 6e 20 68 6f 77 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 20 66 69 6e 64 73 20 6f 74 | in.how.root.source.file.finds.ot |
| aeca0 | 68 65 72 20 66 69 6c 65 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 70 75 62 | her.files</p>.......<p>TODO:.pub |
| aecc0 | 20 66 6e 20 6d 61 69 6e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 70 75 62 20 | .fn.main</p>.......<p>TODO:.pub. |
| aece0 | 66 6e 20 70 61 6e 69 63 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 69 66 20 6c | fn.panic</p>.......<p>TODO:.if.l |
| aed00 | 69 6e 6b 69 6e 67 20 77 69 74 68 20 6c 69 62 63 20 79 6f 75 20 63 61 6e 20 75 73 65 20 65 78 70 | inking.with.libc.you.can.use.exp |
| aed20 | 6f 72 74 20 66 6e 20 6d 61 69 6e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 6f | ort.fn.main</p>.......<p>TODO:.o |
| aed40 | 72 64 65 72 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 | rder.independent.top.level.decla |
| aed60 | 72 61 74 69 6f 6e 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 6c 61 7a 79 20 | rations</p>.......<p>TODO:.lazy. |
| aed80 | 61 6e 61 6c 79 73 69 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 75 73 69 6e | analysis</p>.......<p>TODO:.usin |
| aeda0 | 67 20 63 6f 6d 70 74 69 6d 65 20 7b 20 5f 20 3d 20 40 69 6d 70 6f 72 74 28 29 20 7d 3c 2f 70 3e | g.comptime.{._.=.@import().}</p> |
| aedc0 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 5a 69 67 2d 54 65 73 74 22 3e | ..............<h1.id="Zig-Test"> |
| aede0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 69 67 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 | <a.href="#toc-Zig-Test">Zig.Test |
| aee00 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 | </a>.<a.class="hdr".href="#Zig-T |
| aee20 | 65 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | est">..</a></h1>........<p>..... |
| aee40 | 20 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 74 6f 6f | ..<code>zig.test</code>.is.a.too |
| aee60 | 6c 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 71 75 69 63 6b 6c 79 20 62 75 | l.that.can.be.used.to.quickly.bu |
| aee80 | 69 6c 64 20 61 6e 64 20 72 75 6e 20 5a 69 67 20 63 6f 64 65 0a 20 20 20 20 20 20 74 6f 20 6d 61 | ild.and.run.Zig.code.......to.ma |
| aeea0 | 6b 65 20 73 75 72 65 20 62 65 68 61 76 69 6f 72 20 6d 65 65 74 73 20 65 78 70 65 63 74 61 74 69 | ke.sure.behavior.meets.expectati |
| aeec0 | 6f 6e 73 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | ons..<code.class="zig"><span.cla |
| aeee0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@import</span>( |
| aef00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c | <span.class="tok-str">"buil |
| aef20 | 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 69 73 5f 74 65 73 74 3c 2f 63 6f 64 65 3e | tin"</span>).is_test</code> |
| aef40 | 0a 20 20 20 20 20 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 63 6f 64 65 20 74 6f 20 | .......is.available.for.code.to. |
| aef60 | 64 65 74 65 63 74 20 77 68 65 74 68 65 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 69 6c 64 | detect.whether.the.current.build |
| aef80 | 20 69 73 20 61 20 74 65 73 74 20 62 75 69 6c 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .is.a.test.build........</p>.... |
| aefa0 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 74 65 63 74 5f 74 65 73 74 2e 7a | ...<p.class="file">detect_test.z |
| aefc0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| aefe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 | an.class="tok-kw">const</span>.s |
| af000 | 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | td.=.<span.class="tok-builtin">@ |
| af020 | 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | import</span>(<span.class="tok-s |
| af040 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 | tr">"std"</span>);.<sp |
| af060 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 | an.class="tok-kw">const</span>.b |
| af080 | 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | uiltin.=.<span.class="tok-builti |
| af0a0 | 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">@import</span>(<span.class="t |
| af0c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | ok-str">"builtin"</spa |
| af0e0 | 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | n>);.<span.class="tok-kw">const< |
| af100 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 | /span>.expect.=.std.testing.expe |
| af120 | 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ct;..<span.class="tok-kw">test</ |
| af140 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | span>.<span.class="tok-str">&quo |
| af160 | 74 3b 62 75 69 6c 74 69 6e 2e 69 73 5f 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | t;builtin.is_test"</span>.{ |
| af180 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | .....<span.class="tok-kw">try</s |
| af1a0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 62 75 69 6c 74 69 6e 2e 69 73 5f 74 65 73 74 29 3b 0a 7d 3c | pan>.expect(builtin.is_test);.}< |
| af1c0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| af1e0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 64 65 74 65 63 74 5f 74 65 73 74 2e 7a 69 67 0a | ell">$.zig.test.detect_test.zig. |
| af200 | 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 2e 69 73 | Test.[1/1].test."builtin.is |
| af220 | 5f 74 65 73 74 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | _test"......All.1.tests.pas |
| af240 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | sed..</code></pre>........<p>... |
| af260 | 20 20 20 20 5a 69 67 20 68 61 73 20 6c 61 7a 79 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 | ....Zig.has.lazy.top.level.decla |
| af280 | 72 61 74 69 6f 6e 20 61 6e 61 6c 79 73 69 73 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 61 | ration.analysis,.which.means.tha |
| af2a0 | 74 20 69 66 20 61 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6e 6f 74 20 63 61 6c 6c 65 64 2c 0a 20 | t.if.a.function.is.not.called,.. |
| af2c0 | 20 20 20 20 20 6f 72 20 6f 74 68 65 72 77 69 73 65 20 75 73 65 64 2c 20 69 74 20 69 73 20 6e 6f | .....or.otherwise.used,.it.is.no |
| af2e0 | 74 20 61 6e 61 6c 79 7a 65 64 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 72 | t.analyzed..This.means.that.ther |
| af300 | 65 20 6d 61 79 20 62 65 20 61 6e 20 75 6e 64 69 73 63 6f 76 65 72 65 64 0a 20 20 20 20 20 20 63 | e.may.be.an.undiscovered.......c |
| af320 | 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 61 75 | ompile.error.in.a.function.becau |
| af340 | 73 65 20 69 74 20 69 73 20 6e 65 76 65 72 20 63 61 6c 6c 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 | se.it.is.never.called........</p |
| af360 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 75 6e 75 73 65 64 5f 66 | >.......<p.class="file">unused_f |
| af380 | 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | n.zig</p><pre><code.class="zig"> |
| af3a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c | <span.class="tok-kw">fn</span>.< |
| af3c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 75 6e 75 73 65 64 3c 2f 73 70 61 6e | span.class="tok-fn">unused</span |
| af3e0 | 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | >().<span.class="tok-type">i32</ |
| af400 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.{.....<span.class="tok-kw" |
| af420 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >return</span>.<span.class="tok- |
| af440 | 73 74 72 22 3e 26 71 75 6f 74 3b 77 72 6f 6e 67 20 72 65 74 75 72 6e 20 74 79 70 65 26 71 75 6f | str">"wrong.return.type&quo |
| af460 | 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | t;</span>;.}.<span.class="tok-kw |
| af480 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| af4a0 | 74 72 22 3e 26 71 75 6f 74 3b 75 6e 75 73 65 64 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c | tr">"unused.function"< |
| af4c0 | 2f 73 70 61 6e 3e 20 7b 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | /span>.{.}</code></pre><pre><cod |
| af4e0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 75 6e 75 73 65 | e.class="shell">$.zig.test.unuse |
| af500 | 64 5f 66 6e 2e 7a 69 67 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 75 | d_fn.zig.Test.[1/1].test."u |
| af520 | 6e 75 73 65 64 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 0a 0a 41 6c 6c 20 31 20 | nused.function"......All.1. |
| af540 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | tests.passed..</code></pre>..... |
| af560 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 2c 20 77 68 69 6c 65 20 69 6e | ...<p>.......Note.that,.while.in |
| af580 | 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 61 6e 64 20 | .<a.href="#Debug">Debug</a>.and. |
| af5a0 | 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 | <a.href="#ReleaseSafe">ReleaseSa |
| af5c0 | 66 65 3c 2f 61 3e 20 6d 6f 64 65 73 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 | fe</a>.modes,.<a.href="#unreacha |
| af5e0 | 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 20 65 6d 69 74 73 20 61 0a 20 20 20 | ble">unreachable</a>.emits.a.... |
| af600 | 20 20 20 63 61 6c 6c 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 70 61 6e 69 63 22 3e 40 70 61 6e | ...call.to.<a.href="#panic">@pan |
| af620 | 69 63 3c 2f 61 3e 2c 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 | ic</a>,.in.<a.href="#ReleaseFast |
| af640 | 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 | ">ReleaseFast</a>.and.<a.href="# |
| af660 | 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 6d | ReleaseSmall">ReleaseSmall</a>.m |
| af680 | 6f 64 65 73 2c 20 69 74 20 69 73 20 72 65 61 6c 6c 79 0a 20 20 20 20 20 20 75 6e 64 65 66 69 6e | odes,.it.is.really.......undefin |
| af6a0 | 65 64 20 62 65 68 61 76 69 6f 72 2e 20 54 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 | ed.behavior..The.implementation. |
| af6c0 | 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 64 65 62 75 67 2e 61 | of.<code.class="zig">std.debug.a |
| af6e0 | 73 73 65 72 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 73 0a 20 20 20 20 20 20 73 69 6d 70 6c 65 20 | ssert</code>.is.as.......simple. |
| af700 | 61 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | as:.......</p>.......<pre><code. |
| af720 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| af740 | 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >pub</span>.<span.class="tok-kw" |
| af760 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e | >fn</span>.<span.class="tok-fn"> |
| af780 | 61 73 73 65 72 74 3c 2f 73 70 61 6e 3e 28 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | assert</span>(ok:.<span.class="t |
| af7a0 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">bool</span>).<span.clas |
| af7c0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | s="tok-type">void</span>.{.....< |
| af7e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 | span.class="tok-kw">if</span>.(! |
| af800 | 6f 6b 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 | ok).<span.class="tok-kw">unreach |
| af820 | 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | able</span>;.}</code></pre>..... |
| af840 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 77 68 65 6e | ..<p>.......This.means.that.when |
| af860 | 20 74 65 73 74 69 6e 67 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 20 6f 72 20 52 65 6c 65 61 | .testing.in.ReleaseFast.or.Relea |
| af880 | 73 65 53 6d 61 6c 6c 20 6d 6f 64 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | seSmall.mode,.<code.class="zig"> |
| af8a0 | 61 73 73 65 72 74 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 6e 6f 74 20 73 75 66 66 69 | assert</code>.......is.not.suffi |
| af8c0 | 63 69 65 6e 74 20 74 6f 20 63 68 65 63 6b 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 61 20 63 | cient.to.check.the.result.of.a.c |
| af8e0 | 6f 6d 70 75 74 61 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 | omputation:.......</p>.......<pr |
| af900 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| af920 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 | "tok-kw">const</span>.std.=.<spa |
| af940 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 | n.class="tok-builtin">@import</s |
| af960 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | pan>(<span.class="tok-str">" |
| af980 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;std"</span>);.<span.class= |
| af9a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 | "tok-kw">const</span>.assert.=.s |
| af9c0 | 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | td.debug.assert;..<span.class="t |
| af9e0 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">test</span>.<span.class=" |
| afa00 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 73 73 65 72 74 20 69 6e 20 72 65 6c 65 61 73 65 | tok-str">"assert.in.release |
| afa20 | 20 66 61 73 74 20 6d 6f 64 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 | .fast.mode"</span>.{.....as |
| afa40 | 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 | sert(<span.class="tok-null">fals |
| afa60 | 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | e</span>);.}</code></pre>....... |
| afa80 | 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 69 73 20 74 65 | <p>.......When.compiling.this.te |
| afaa0 | 73 74 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c | st.in.<a.href="#ReleaseFast">Rel |
| afac0 | 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 6d 6f 64 65 2c 20 69 74 20 69 6e 76 6f 6b 65 73 20 75 6e | easeFast</a>.mode,.it.invokes.un |
| afae0 | 63 68 65 63 6b 65 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 | checked.......<a.href="#Undefine |
| afb00 | 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f | d-Behavior">Undefined.Behavior</ |
| afb20 | 61 3e 2e 20 53 69 6e 63 65 20 74 68 61 74 20 63 6f 75 6c 64 20 64 6f 20 61 6e 79 74 68 69 6e 67 | a>..Since.that.could.do.anything |
| afb40 | 2c 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 63 61 6e 6e 6f | ,.this.documentation.......canno |
| afb60 | 74 20 73 68 6f 77 20 79 6f 75 20 74 68 65 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 | t.show.you.the.output........</p |
| afb80 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 65 74 74 65 72 20 70 72 61 63 74 69 63 | >.......<p>.......Better.practic |
| afba0 | 65 20 66 6f 72 20 63 68 65 63 6b 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 20 77 68 65 6e 20 74 | e.for.checking.the.output.when.t |
| afbc0 | 65 73 74 69 6e 67 20 69 73 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | esting.is.to.use.<code.class="zi |
| afbe0 | 67 22 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3c 2f 63 6f 64 65 3e 3a 0a 20 20 | g">std.testing.expect</code>:... |
| afc00 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| afc20 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| afc40 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| afc60 | 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>.std.=.<span.class="tok-built |
| afc80 | 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in">@import</span>(<span.class=" |
| afca0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | tok-str">"std"</span>) |
| afcc0 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ;.<span.class="tok-kw">const</sp |
| afce0 | 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b | an>.expect.=.std.testing.expect; |
| afd00 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | ..<span.class="tok-kw">test</spa |
| afd20 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 | n>.<span.class="tok-str">"e |
| afd40 | 78 70 65 63 74 20 69 6e 20 72 65 6c 65 61 73 65 20 66 61 73 74 20 6d 6f 64 65 26 71 75 6f 74 3b | xpect.in.release.fast.mode" |
| afd60 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.{.....<span.class="tok-k |
| afd80 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | w">try</span>.expect(<span.class |
| afda0 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | ="tok-null">false</span>);.}</co |
| afdc0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| afde0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 | ">$.zig.test.test.zig.-O.Release |
| afe00 | 46 61 73 74 0a 54 65 73 74 20 5b 31 2f 31 5d 20 74 65 73 74 20 26 71 75 6f 74 3b 65 78 70 65 63 | Fast.Test.[1/1].test."expec |
| afe20 | 74 20 69 6e 20 72 65 6c 65 61 73 65 20 66 61 73 74 20 6d 6f 64 65 26 71 75 6f 74 3b 2e 2e 2e 20 | t.in.release.fast.mode".... |
| afe40 | 0a 54 65 73 74 20 5b 32 2f 31 5d 20 0a 74 65 73 74 20 26 71 75 6f 74 3b 65 78 70 65 63 74 20 69 | .Test.[2/1]..test."expect.i |
| afe60 | 6e 20 72 65 6c 65 61 73 65 20 66 61 73 74 20 6d 6f 64 65 26 71 75 6f 74 3b 2e 2e 2e 20 46 41 49 | n.release.fast.mode"....FAI |
| afe80 | 4c 20 28 54 65 73 74 55 6e 65 78 70 65 63 74 65 64 52 65 73 75 6c 74 29 0a 0a 30 20 70 61 73 73 | L.(TestUnexpectedResult)..0.pass |
| afea0 | 65 64 3b 20 30 20 73 6b 69 70 70 65 64 3b 20 31 20 66 61 69 6c 65 64 2e 0a 65 72 72 6f 72 3a 20 | ed;.0.skipped;.1.failed..error:. |
| afec0 | 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 66 61 69 6c 65 | the.following.test.command.faile |
| afee0 | 64 20 77 69 74 68 20 65 78 69 74 20 63 6f 64 65 20 31 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a | d.with.exit.code.1:.docgen_tmp/z |
| aff00 | 69 67 2d 63 61 63 68 65 2f 6f 2f 35 66 37 37 32 62 61 33 34 62 36 37 33 33 37 63 30 36 37 65 35 | ig-cache/o/5f772ba34b67337c067e5 |
| aff20 | 36 33 30 39 39 30 65 66 32 34 65 2f 74 65 73 74 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e | 630990ef24e/test./home/andy/Down |
| aff40 | 6c 6f 61 64 73 2f 7a 69 67 2f 62 75 69 6c 64 2d 72 65 6c 65 61 73 65 2f 7a 69 67 0a 3c 2f 63 6f | loads/zig/build-release/zig.</co |
| aff60 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 74 68 65 20 72 65 73 74 | de></pre>........<p>See.the.rest |
| aff80 | 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 74 65 | .of.the.<code.class="zig">std.te |
| affa0 | 73 74 69 6e 67 3c 2f 63 6f 64 65 3e 20 6e 61 6d 65 73 70 61 63 65 20 66 6f 72 20 6d 6f 72 65 20 | sting</code>.namespace.for.more. |
| affc0 | 61 76 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | available.functions.</p>.......< |
| affe0 | 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f 64 65 3e 20 68 | p>.......<code>zig.test</code>.h |
| b0000 | 61 73 20 61 20 66 65 77 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 70 61 72 61 6d 65 74 65 72 73 | as.a.few.command.line.parameters |
| b0020 | 20 77 68 69 63 68 20 61 66 66 65 63 74 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2e 20 53 | .which.affect.the.compilation..S |
| b0040 | 65 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 7a 69 67 20 2d 2d 68 65 6c 70 3c 2f 63 6f 64 65 3e | ee.......<code>zig.--help</code> |
| b0060 | 20 66 6f 72 20 61 20 66 75 6c 6c 20 6c 69 73 74 2e 20 54 68 65 20 6d 6f 73 74 20 69 6e 74 65 72 | .for.a.full.list..The.most.inter |
| b0080 | 65 73 74 69 6e 67 20 6f 6e 65 20 69 73 20 3c 63 6f 64 65 3e 2d 2d 74 65 73 74 2d 66 69 6c 74 65 | esting.one.is.<code>--test-filte |
| b00a0 | 72 20 5b 74 65 78 74 5d 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 61 6b 65 | r.[text]</code>........This.make |
| b00c0 | 73 20 74 68 65 20 74 65 73 74 20 62 75 69 6c 64 20 6f 6e 6c 79 20 69 6e 63 6c 75 64 65 20 74 65 | s.the.test.build.only.include.te |
| b00e0 | 73 74 73 20 77 68 6f 73 65 20 6e 61 6d 65 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 73 75 70 70 | sts.whose.name.contains.the.supp |
| b0100 | 6c 69 65 64 20 66 69 6c 74 65 72 20 74 65 78 74 2e 0a 20 20 20 20 20 20 41 67 61 69 6e 2c 20 74 | lied.filter.text........Again,.t |
| b0120 | 68 61 6e 6b 73 20 74 6f 20 6c 61 7a 79 20 61 6e 61 6c 79 73 69 73 2c 20 74 68 69 73 20 63 61 6e | hanks.to.lazy.analysis,.this.can |
| b0140 | 20 61 6c 6c 6f 77 20 79 6f 75 20 74 6f 20 6e 61 72 72 6f 77 20 61 20 62 75 69 6c 64 20 74 6f 20 | .allow.you.to.narrow.a.build.to. |
| b0160 | 6f 6e 6c 79 20 61 20 66 65 77 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 0a 20 20 20 20 20 20 69 73 | only.a.few.functions.in.......is |
| b0180 | 6f 6c 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | olation........</p>............. |
| b01a0 | 20 20 3c 68 31 20 69 64 3d 22 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 3c 61 20 68 | ..<h1.id="Zig-Build-System"><a.h |
| b01c0 | 72 65 66 3d 22 23 74 6f 63 2d 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 | ref="#toc-Zig-Build-System">Zig. |
| b01e0 | 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | Build.System</a>.<a.class="hdr". |
| b0200 | 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e c2 a7 3c 2f 61 3e 3c | href="#Zig-Build-System">..</a>< |
| b0220 | 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 5a 69 67 20 42 75 | /h1>........<p>.......The.Zig.Bu |
| b0240 | 69 6c 64 20 53 79 73 74 65 6d 20 70 72 6f 76 69 64 65 73 20 61 20 63 72 6f 73 73 2d 70 6c 61 74 | ild.System.provides.a.cross-plat |
| b0260 | 66 6f 72 6d 2c 20 64 65 70 65 6e 64 65 6e 63 79 2d 66 72 65 65 20 77 61 79 20 74 6f 20 64 65 63 | form,.dependency-free.way.to.dec |
| b0280 | 6c 61 72 65 0a 20 20 20 20 20 20 74 68 65 20 6c 6f 67 69 63 20 72 65 71 75 69 72 65 64 20 74 6f | lare.......the.logic.required.to |
| b02a0 | 20 62 75 69 6c 64 20 61 20 70 72 6f 6a 65 63 74 2e 20 57 69 74 68 20 74 68 69 73 20 73 79 73 74 | .build.a.project..With.this.syst |
| b02c0 | 65 6d 2c 20 74 68 65 20 6c 6f 67 69 63 20 74 6f 20 62 75 69 6c 64 0a 20 20 20 20 20 20 61 20 70 | em,.the.logic.to.build.......a.p |
| b02e0 | 72 6f 6a 65 63 74 20 69 73 20 77 72 69 74 74 65 6e 20 69 6e 20 61 20 62 75 69 6c 64 2e 7a 69 67 | roject.is.written.in.a.build.zig |
| b0300 | 20 66 69 6c 65 2c 20 75 73 69 6e 67 20 74 68 65 20 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 | .file,.using.the.Zig.Build.Syste |
| b0320 | 6d 20 41 50 49 20 74 6f 0a 20 20 20 20 20 20 64 65 63 6c 61 72 65 20 61 6e 64 20 63 6f 6e 66 69 | m.API.to.......declare.and.confi |
| b0340 | 67 75 72 65 20 62 75 69 6c 64 20 61 72 74 69 66 61 63 74 73 20 61 6e 64 20 6f 74 68 65 72 20 74 | gure.build.artifacts.and.other.t |
| b0360 | 61 73 6b 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | asks........</p>.......<p>...... |
| b0380 | 20 53 6f 6d 65 20 65 78 61 6d 70 6c 65 73 20 6f 66 20 74 61 73 6b 73 20 74 68 65 20 62 75 69 6c | .Some.examples.of.tasks.the.buil |
| b03a0 | 64 20 73 79 73 74 65 6d 20 63 61 6e 20 68 65 6c 70 20 77 69 74 68 3a 0a 20 20 20 20 20 20 3c 2f | d.system.can.help.with:.......</ |
| b03c0 | 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 72 65 61 74 69 | p>.......<ul>.........<li>Creati |
| b03e0 | 6e 67 20 62 75 69 6c 64 20 61 72 74 69 66 61 63 74 73 20 62 79 20 65 78 65 63 75 74 69 6e 67 20 | ng.build.artifacts.by.executing. |
| b0400 | 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 65 72 2e 20 54 68 69 73 20 69 6e 63 6c 75 64 65 73 0a | the.Zig.compiler..This.includes. |
| b0420 | 20 20 20 20 20 20 20 20 20 20 62 75 69 6c 64 69 6e 67 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f | ..........building.Zig.source.co |
| b0440 | 64 65 20 61 73 20 77 65 6c 6c 20 61 73 20 43 20 61 6e 64 20 43 2b 2b 20 73 6f 75 72 63 65 20 63 | de.as.well.as.C.and.C++.source.c |
| b0460 | 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 70 74 75 72 69 6e 67 20 | ode.</li>.........<li>Capturing. |
| b0480 | 75 73 65 72 2d 63 6f 6e 66 69 67 75 72 65 64 20 6f 70 74 69 6f 6e 73 20 61 6e 64 20 75 73 69 6e | user-configured.options.and.usin |
| b04a0 | 67 20 74 68 6f 73 65 20 6f 70 74 69 6f 6e 73 20 74 6f 20 63 6f 6e 66 69 67 75 72 65 0a 20 20 20 | g.those.options.to.configure.... |
| b04c0 | 20 20 20 20 20 20 20 74 68 65 20 62 75 69 6c 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | .......the.build.</li>.........< |
| b04e0 | 6c 69 3e 53 75 72 66 61 63 69 6e 67 20 62 75 69 6c 64 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e | li>Surfacing.build.configuration |
| b0500 | 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 | .as.<a.href="#comptime">comptime |
| b0520 | 3c 2f 61 3e 20 76 61 6c 75 65 73 20 62 79 20 70 72 6f 76 69 64 69 6e 67 20 61 0a 20 20 20 20 20 | </a>.values.by.providing.a...... |
| b0540 | 20 20 20 20 20 66 69 6c 65 20 74 68 61 74 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 | .....file.that.can.be.<a.href="# |
| b0560 | 69 6d 70 6f 72 74 22 3e 69 6d 70 6f 72 74 65 64 3c 2f 61 3e 20 62 79 20 5a 69 67 20 63 6f 64 65 | import">imported</a>.by.Zig.code |
| b0580 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 63 68 69 6e 67 20 62 75 69 6c 64 | .</li>.........<li>Caching.build |
| b05a0 | 20 61 72 74 69 66 61 63 74 73 20 74 6f 20 61 76 6f 69 64 20 75 6e 6e 65 63 65 73 73 61 72 69 6c | .artifacts.to.avoid.unnecessaril |
| b05c0 | 79 20 72 65 70 65 61 74 69 6e 67 20 73 74 65 70 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | y.repeating.steps.</li>......... |
| b05e0 | 3c 6c 69 3e 45 78 65 63 75 74 69 6e 67 20 62 75 69 6c 64 20 61 72 74 69 66 61 63 74 73 20 6f 72 | <li>Executing.build.artifacts.or |
| b0600 | 20 73 79 73 74 65 6d 2d 69 6e 73 74 61 6c 6c 65 64 20 74 6f 6f 6c 73 2e 3c 2f 6c 69 3e 0a 20 20 | .system-installed.tools.</li>... |
| b0620 | 20 20 20 20 20 20 3c 6c 69 3e 52 75 6e 6e 69 6e 67 20 74 65 73 74 73 20 61 6e 64 20 76 65 72 69 | ......<li>Running.tests.and.veri |
| b0640 | 66 79 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 20 6f 66 20 65 78 65 63 75 74 69 6e 67 20 61 20 | fying.the.output.of.executing.a. |
| b0660 | 62 75 69 6c 64 20 61 72 74 69 66 61 63 74 20 6d 61 74 63 68 65 73 0a 20 20 20 20 20 20 20 20 74 | build.artifact.matches.........t |
| b0680 | 68 65 20 65 78 70 65 63 74 65 64 20 76 61 6c 75 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | he.expected.value.</li>......... |
| b06a0 | 3c 6c 69 3e 52 75 6e 6e 69 6e 67 20 3c 63 6f 64 65 3e 7a 69 67 20 66 6d 74 3c 2f 63 6f 64 65 3e | <li>Running.<code>zig.fmt</code> |
| b06c0 | 20 6f 6e 20 61 20 63 6f 64 65 62 61 73 65 20 6f 72 20 61 20 73 75 62 73 65 74 20 6f 66 20 69 74 | .on.a.codebase.or.a.subset.of.it |
| b06e0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 75 73 74 6f 6d 20 74 61 73 6b 73 2e | .</li>.........<li>Custom.tasks. |
| b0700 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | </li>.......</ul>.......<p>..... |
| b0720 | 20 20 54 6f 20 75 73 65 20 74 68 65 20 62 75 69 6c 64 20 73 79 73 74 65 6d 2c 20 72 75 6e 20 3c | ..To.use.the.build.system,.run.< |
| b0740 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 7a 69 67 20 62 75 69 6c 64 20 2d 2d 68 | code.class="shell">zig.build.--h |
| b0760 | 65 6c 70 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 6f 20 73 65 65 20 61 20 63 6f 6d 6d 61 6e | elp</code>.......to.see.a.comman |
| b0780 | 64 2d 6c 69 6e 65 20 75 73 61 67 65 20 68 65 6c 70 20 6d 65 6e 75 2e 20 54 68 69 73 20 77 69 6c | d-line.usage.help.menu..This.wil |
| b07a0 | 6c 20 69 6e 63 6c 75 64 65 20 70 72 6f 6a 65 63 74 2d 73 70 65 63 69 66 69 63 0a 20 20 20 20 20 | l.include.project-specific...... |
| b07c0 | 20 6f 70 74 69 6f 6e 73 20 74 68 61 74 20 77 65 72 65 20 64 65 63 6c 61 72 65 64 20 69 6e 20 74 | .options.that.were.declared.in.t |
| b07e0 | 68 65 20 62 75 69 6c 64 2e 7a 69 67 20 73 63 72 69 70 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | he.build.zig.script........</p>. |
| b0800 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 42 75 69 6c 64 69 6e 67 2d 61 6e 2d 45 78 65 63 75 | .......<h2.id="Building-an-Execu |
| b0820 | 74 61 62 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 64 69 6e 67 2d 61 6e | table"><a.href="#toc-Building-an |
| b0840 | 2d 45 78 65 63 75 74 61 62 6c 65 22 3e 42 75 69 6c 64 69 6e 67 20 61 6e 20 45 78 65 63 75 74 61 | -Executable">Building.an.Executa |
| b0860 | 62 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 42 75 | ble</a>.<a.class="hdr".href="#Bu |
| b0880 | 69 6c 64 69 6e 67 2d 61 6e 2d 45 78 65 63 75 74 61 62 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | ilding-an-Executable">..</a></h2 |
| b08a0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 3c 63 6f 64 65 3e 62 75 69 6c 64 2e 7a 69 67 | >........<p>This.<code>build.zig |
| b08c0 | 3c 2f 63 6f 64 65 3e 20 66 69 6c 65 20 69 73 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 67 65 | </code>.file.is.automatically.ge |
| b08e0 | 6e 65 72 61 74 65 64 0a 20 20 20 20 20 20 20 20 62 79 20 3c 63 6f 64 65 3e 7a 69 67 20 69 6e 69 | nerated.........by.<code>zig.ini |
| b0900 | 74 2d 65 78 65 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | t-exe</code>.</p>.......<pre><co |
| b0920 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| b0940 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c 64 65 72 20 3d 20 3c 73 70 61 6e | kw">const</span>.Builder.=.<span |
| b0960 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 | .class="tok-builtin">@import</sp |
| b0980 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>(<span.class="tok-str">" |
| b09a0 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 64 2e 42 75 69 6c 64 65 72 3b | std"</span>).build.Builder; |
| b09c0 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e | ..<span.class="tok-kw">pub</span |
| b09e0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">fn</span> |
| b0a00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 75 69 6c 64 3c 2f 73 70 61 | .<span.class="tok-fn">build</spa |
| b0a20 | 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>(b:.*Builder).<span.class="tok |
| b0a40 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| b0a60 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 61 6e 64 61 72 64 20 74 | lass="tok-comment">//.Standard.t |
| b0a80 | 61 72 67 65 74 20 6f 70 74 69 6f 6e 73 20 61 6c 6c 6f 77 73 20 74 68 65 20 70 65 72 73 6f 6e 20 | arget.options.allows.the.person. |
| b0aa0 | 72 75 6e 6e 69 6e 67 20 60 7a 69 67 20 62 75 69 6c 64 60 20 74 6f 20 63 68 6f 6f 73 65 3c 2f 73 | running.`zig.build`.to.choose</s |
| b0ac0 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | pan>.....<span.class="tok-commen |
| b0ae0 | 74 22 3e 2f 2f 20 77 68 61 74 20 74 61 72 67 65 74 20 74 6f 20 62 75 69 6c 64 20 66 6f 72 2e 20 | t">//.what.target.to.build.for.. |
| b0b00 | 48 65 72 65 20 77 65 20 64 6f 20 6e 6f 74 20 6f 76 65 72 72 69 64 65 20 74 68 65 20 64 65 66 61 | Here.we.do.not.override.the.defa |
| b0b20 | 75 6c 74 73 2c 20 77 68 69 63 68 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ults,.which</span>.....<span.cla |
| b0b40 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 65 61 6e 73 20 61 6e 79 20 74 61 | ss="tok-comment">//.means.any.ta |
| b0b60 | 72 67 65 74 20 69 73 20 61 6c 6c 6f 77 65 64 2c 20 61 6e 64 20 74 68 65 20 64 65 66 61 75 6c 74 | rget.is.allowed,.and.the.default |
| b0b80 | 20 69 73 20 6e 61 74 69 76 65 2e 20 4f 74 68 65 72 20 6f 70 74 69 6f 6e 73 3c 2f 73 70 61 6e 3e | .is.native..Other.options</span> |
| b0ba0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | .....<span.class="tok-comment">/ |
| b0bc0 | 2f 20 66 6f 72 20 72 65 73 74 72 69 63 74 69 6e 67 20 73 75 70 70 6f 72 74 65 64 20 74 61 72 67 | /.for.restricting.supported.targ |
| b0be0 | 65 74 20 73 65 74 20 61 72 65 20 61 76 61 69 6c 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | et.set.are.available.</span>.... |
| b0c00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| b0c20 | 6e 3e 20 74 61 72 67 65 74 20 3d 20 62 2e 73 74 61 6e 64 61 72 64 54 61 72 67 65 74 4f 70 74 69 | n>.target.=.b.standardTargetOpti |
| b0c40 | 6f 6e 73 28 2e 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ons(.{});......<span.class="tok- |
| b0c60 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 61 6e 64 61 72 64 20 72 65 6c 65 61 73 65 20 6f 70 74 | comment">//.Standard.release.opt |
| b0c80 | 69 6f 6e 73 20 61 6c 6c 6f 77 20 74 68 65 20 70 65 72 73 6f 6e 20 72 75 6e 6e 69 6e 67 20 60 7a | ions.allow.the.person.running.`z |
| b0ca0 | 69 67 20 62 75 69 6c 64 60 20 74 6f 20 73 65 6c 65 63 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | ig.build`.to.select</span>.....< |
| b0cc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 65 74 77 | span.class="tok-comment">//.betw |
| b0ce0 | 65 65 6e 20 44 65 62 75 67 2c 20 52 65 6c 65 61 73 65 53 61 66 65 2c 20 52 65 6c 65 61 73 65 46 | een.Debug,.ReleaseSafe,.ReleaseF |
| b0d00 | 61 73 74 2c 20 61 6e 64 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | ast,.and.ReleaseSmall.</span>... |
| b0d20 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| b0d40 | 61 6e 3e 20 6d 6f 64 65 20 3d 20 62 2e 73 74 61 6e 64 61 72 64 52 65 6c 65 61 73 65 4f 70 74 69 | an>.mode.=.b.standardReleaseOpti |
| b0d60 | 6f 6e 73 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ons();......<span.class="tok-kw" |
| b0d80 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 64 64 45 78 65 63 75 74 61 | >const</span>.exe.=.b.addExecuta |
| b0da0 | 62 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | ble(<span.class="tok-str">" |
| b0dc0 | 65 78 61 6d 70 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | example"</span>,.<span.clas |
| b0de0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 72 63 2f 6d 61 69 6e 2e 7a 69 67 26 71 | s="tok-str">"src/main.zig&q |
| b0e00 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 73 65 74 54 61 72 67 65 74 28 | uot;</span>);.....exe.setTarget( |
| b0e20 | 74 61 72 67 65 74 29 3b 0a 20 20 20 20 65 78 65 2e 73 65 74 42 75 69 6c 64 4d 6f 64 65 28 6d 6f | target);.....exe.setBuildMode(mo |
| b0e40 | 64 65 29 3b 0a 20 20 20 20 65 78 65 2e 69 6e 73 74 61 6c 6c 28 29 3b 0a 0a 20 20 20 20 3c 73 70 | de);.....exe.install();......<sp |
| b0e60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 | an.class="tok-kw">const</span>.r |
| b0e80 | 75 6e 5f 63 6d 64 20 3d 20 65 78 65 2e 72 75 6e 28 29 3b 0a 20 20 20 20 72 75 6e 5f 63 6d 64 2e | un_cmd.=.exe.run();.....run_cmd. |
| b0ea0 | 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 62 2e 67 65 74 49 6e 73 74 61 6c 6c 53 74 65 70 28 29 | step.dependOn(b.getInstallStep() |
| b0ec0 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f | );.....<span.class="tok-kw">if</ |
| b0ee0 | 73 70 61 6e 3e 20 28 62 2e 61 72 67 73 29 20 7c 61 72 67 73 7c 20 7b 0a 20 20 20 20 20 20 20 20 | span>.(b.args).|args|.{......... |
| b0f00 | 72 75 6e 5f 63 6d 64 2e 61 64 64 41 72 67 73 28 61 72 67 73 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 | run_cmd.addArgs(args);.....}.... |
| b0f20 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| b0f40 | 61 6e 3e 20 72 75 6e 5f 73 74 65 70 20 3d 20 62 2e 73 74 65 70 28 3c 73 70 61 6e 20 63 6c 61 73 | an>.run_step.=.b.step(<span.clas |
| b0f60 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 75 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | s="tok-str">"run"</spa |
| b0f80 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | n>,.<span.class="tok-str">" |
| b0fa0 | 52 75 6e 20 74 68 65 20 61 70 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 72 | Run.the.app"</span>);.....r |
| b0fc0 | 75 6e 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 72 75 6e 5f 63 6d 64 2e 73 74 | un_step.dependOn(&run_cmd.st |
| b0fe0 | 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | ep);.}</code></pre>............. |
| b1000 | 20 20 3c 68 32 20 69 64 3d 22 42 75 69 6c 64 69 6e 67 2d 61 2d 4c 69 62 72 61 72 79 22 3e 3c 61 | ..<h2.id="Building-a-Library"><a |
| b1020 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 64 69 6e 67 2d 61 2d 4c 69 62 72 61 72 79 22 3e | .href="#toc-Building-a-Library"> |
| b1040 | 42 75 69 6c 64 69 6e 67 20 61 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | Building.a.Library</a>.<a.class= |
| b1060 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 42 75 69 6c 64 69 6e 67 2d 61 2d 4c 69 62 72 61 72 79 22 | "hdr".href="#Building-a-Library" |
| b1080 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 3c 63 6f 64 | >..</a></h2>........<p>This.<cod |
| b10a0 | 65 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 66 69 6c 65 20 69 73 20 61 75 74 6f 6d | e>build.zig</code>.file.is.autom |
| b10c0 | 61 74 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 0a 20 20 20 20 20 20 20 20 62 79 20 3c 63 | atically.generated.........by.<c |
| b10e0 | 6f 64 65 3e 7a 69 67 20 69 6e 69 74 2d 6c 69 62 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 | ode>zig.init-lib</code>.</p>.... |
| b1100 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| b1120 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c | class="tok-kw">const</span>.Buil |
| b1140 | 64 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | der.=.<span.class="tok-builtin"> |
| b1160 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| b1180 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 | str">"std"</span>).bui |
| b11a0 | 6c 64 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ld.Builder;..<span.class="tok-kw |
| b11c0 | 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">pub</span>.<span.class="tok-kw |
| b11e0 | 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 | ">fn</span>.<span.class="tok-fn" |
| b1200 | 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 6e | >build</span>(b:.*Builder).<span |
| b1220 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-type">void</span>.{. |
| b1240 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ....<span.class="tok-kw">const</ |
| b1260 | 73 70 61 6e 3e 20 6d 6f 64 65 20 3d 20 62 2e 73 74 61 6e 64 61 72 64 52 65 6c 65 61 73 65 4f 70 | span>.mode.=.b.standardReleaseOp |
| b1280 | 74 69 6f 6e 73 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | tions();.....<span.class="tok-kw |
| b12a0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 62 20 3d 20 62 2e 61 64 64 53 74 61 74 69 63 | ">const</span>.lib.=.b.addStatic |
| b12c0 | 4c 69 62 72 61 72 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | Library(<span.class="tok-str">&q |
| b12e0 | 75 6f 74 3b 65 78 61 6d 70 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | uot;example"</span>,.<span. |
| b1300 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 72 63 2f 6d 61 69 6e 2e 7a | class="tok-str">"src/main.z |
| b1320 | 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 6c 69 62 2e 73 65 74 42 75 69 | ig"</span>);.....lib.setBui |
| b1340 | 6c 64 4d 6f 64 65 28 6d 6f 64 65 29 3b 0a 20 20 20 20 6c 69 62 2e 69 6e 73 74 61 6c 6c 28 29 3b | ldMode(mode);.....lib.install(); |
| b1360 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | ......<span.class="tok-kw">var</ |
| b1380 | 73 70 61 6e 3e 20 6d 61 69 6e 5f 74 65 73 74 73 20 3d 20 62 2e 61 64 64 54 65 73 74 28 3c 73 70 | span>.main_tests.=.b.addTest(<sp |
| b13a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 72 63 2f 6d 61 69 | an.class="tok-str">"src/mai |
| b13c0 | 6e 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 6d 61 69 6e 5f 74 65 | n.zig"</span>);.....main_te |
| b13e0 | 73 74 73 2e 73 65 74 42 75 69 6c 64 4d 6f 64 65 28 6d 6f 64 65 29 3b 0a 0a 20 20 20 20 3c 73 70 | sts.setBuildMode(mode);......<sp |
| b1400 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 | an.class="tok-kw">const</span>.t |
| b1420 | 65 73 74 5f 73 74 65 70 20 3d 20 62 2e 73 74 65 70 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | est_step.=.b.step(<span.class="t |
| b1440 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | ok-str">"test"</span>, |
| b1460 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 52 75 6e | .<span.class="tok-str">"Run |
| b1480 | 20 6c 69 62 72 61 72 79 20 74 65 73 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 | .library.tests"</span>);... |
| b14a0 | 20 20 74 65 73 74 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 6d 61 69 6e 5f 74 | ..test_step.dependOn(&main_t |
| b14c0 | 65 73 74 73 2e 73 74 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | ests.step);.}</code></pre>...... |
| b14e0 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 6f 6d 70 69 6c 69 6e 67 2d 43 2d 53 6f 75 | .........<h2.id="Compiling-C-Sou |
| b1500 | 72 63 65 2d 43 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 6c 69 6e | rce-Code"><a.href="#toc-Compilin |
| b1520 | 67 2d 43 2d 53 6f 75 72 63 65 2d 43 6f 64 65 22 3e 43 6f 6d 70 69 6c 69 6e 67 20 43 20 53 6f 75 | g-C-Source-Code">Compiling.C.Sou |
| b1540 | 72 63 65 20 43 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | rce.Code</a>.<a.class="hdr".href |
| b1560 | 3d 22 23 43 6f 6d 70 69 6c 69 6e 67 2d 43 2d 53 6f 75 72 63 65 2d 43 6f 64 65 22 3e c2 a7 3c 2f | ="#Compiling-C-Source-Code">..</ |
| b1580 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | a></h2>........<pre><code.class= |
| b15a0 | 22 7a 69 67 22 3e 6c 69 62 2e 61 64 64 43 53 6f 75 72 63 65 46 69 6c 65 28 3c 73 70 61 6e 20 63 | "zig">lib.addCSourceFile(<span.c |
| b15c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 72 63 2f 6c 69 62 2e 63 26 71 | lass="tok-str">"src/lib.c&q |
| b15e0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 5b 5f 5d 5b 5d 3c 73 70 61 6e 20 63 6c 61 | uot;</span>,.&[_][]<span.cla |
| b1600 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ss="tok-kw">const</span>.<span.c |
| b1620 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 3c | lass="tok-type">u8</span>{.....< |
| b1640 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 57 61 6c 6c | span.class="tok-str">"-Wall |
| b1660 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "</span>,.....<span.class=" |
| b1680 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 57 65 78 74 72 61 26 71 75 6f 74 3b 3c 2f 73 70 | tok-str">"-Wextra"</sp |
| b16a0 | 61 6e 3e 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | an>,.....<span.class="tok-str">& |
| b16c0 | 71 75 6f 74 3b 2d 57 65 72 72 6f 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 7d 29 3b 3c 2f | quot;-Werror"</span>,.});</ |
| b16e0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | code></pre>..................... |
| b1700 | 20 3c 68 31 20 69 64 3d 22 43 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 22 3e 43 3c 2f | .<h1.id="C"><a.href="#toc-C">C</ |
| b1720 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 22 3e c2 a7 3c 2f | a>.<a.class="hdr".href="#C">..</ |
| b1740 | 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 74 68 6f 75 67 | a></h1>........<p>.......Althoug |
| b1760 | 68 20 5a 69 67 20 69 73 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 6f 66 20 43 2c 20 61 6e 64 2c 20 | h.Zig.is.independent.of.C,.and,. |
| b1780 | 75 6e 6c 69 6b 65 20 6d 6f 73 74 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2c 20 64 6f 65 | unlike.most.other.languages,.doe |
| b17a0 | 73 20 6e 6f 74 20 64 65 70 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 0a 20 20 20 20 20 20 5a 69 67 20 | s.not.depend.on.libc,.......Zig. |
| b17c0 | 61 63 6b 6e 6f 77 6c 65 64 67 65 73 20 74 68 65 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 66 20 69 | acknowledges.the.importance.of.i |
| b17e0 | 6e 74 65 72 61 63 74 69 6e 67 20 77 69 74 68 20 65 78 69 73 74 69 6e 67 20 43 20 63 6f 64 65 2e | nteracting.with.existing.C.code. |
| b1800 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 | .......</p>.......<p>.......Ther |
| b1820 | 65 20 61 72 65 20 61 20 66 65 77 20 77 61 79 73 20 74 68 61 74 20 5a 69 67 20 66 61 63 69 6c 69 | e.are.a.few.ways.that.Zig.facili |
| b1840 | 74 61 74 65 73 20 43 20 69 6e 74 65 72 6f 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | tates.C.interop........</p>..... |
| b1860 | 20 20 3c 68 32 20 69 64 3d 22 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 3c 61 20 | ..<h2.id="C-Type-Primitives"><a. |
| b1880 | 68 72 65 66 3d 22 23 74 6f 63 2d 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 43 20 | href="#toc-C-Type-Primitives">C. |
| b18a0 | 54 79 70 65 20 50 72 69 6d 69 74 69 76 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | Type.Primitives</a>.<a.class="hd |
| b18c0 | 72 22 20 68 72 65 66 3d 22 23 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e c2 a7 3c | r".href="#C-Type-Primitives">..< |
| b18e0 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 | /a></h2>........<p>.......These. |
| b1900 | 68 61 76 65 20 67 75 61 72 61 6e 74 65 65 64 20 43 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c | have.guaranteed.C.ABI.compatibil |
| b1920 | 69 74 79 20 61 6e 64 20 63 61 6e 20 62 65 20 75 73 65 64 20 6c 69 6b 65 20 61 6e 79 20 6f 74 68 | ity.and.can.be.used.like.any.oth |
| b1940 | 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | er.type........</p>.......<ul>.. |
| b1960 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .........<li><code.class="zig">< |
| b1980 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 73 68 6f 72 74 3c 2f 73 | span.class="tok-type">c_short</s |
| b19a0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | pan></code></li>...........<li>< |
| b19c0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| b19e0 | 6b 2d 74 79 70 65 22 3e 63 5f 75 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | k-type">c_ushort</span></code></ |
| b1a00 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | li>...........<li><code.class="z |
| b1a20 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 | ig"><span.class="tok-type">c_int |
| b1a40 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | </span></code></li>...........<l |
| b1a60 | 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | i><code.class="zig"><span.class= |
| b1a80 | 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | "tok-type">c_uint</span></code>< |
| b1aa0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /li>...........<li><code.class=" |
| b1ac0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f | zig"><span.class="tok-type">c_lo |
| b1ae0 | 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ng</span></code></li>........... |
| b1b00 | 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | <li><code.class="zig"><span.clas |
| b1b20 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | s="tok-type">c_ulong</span></cod |
| b1b40 | 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | e></li>...........<li><code.clas |
| b1b60 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 | s="zig"><span.class="tok-type">c |
| b1b80 | 5f 6c 6f 6e 67 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 | _longlong</span></code></li>.... |
| b1ba0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .......<li><code.class="zig"><sp |
| b1bc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 6c 6f 6e 67 3c | an.class="tok-type">c_ulonglong< |
| b1be0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | /span></code></li>...........<li |
| b1c00 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| b1c20 | 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | tok-type">c_longdouble</span></c |
| b1c40 | 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c | ode></li>...........<li><code.cl |
| b1c60 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| b1c80 | 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | >c_void</span></code></li>...... |
| b1ca0 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | .</ul>.......<p>See.also:</p><ul |
| b1cc0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 | >.<li><a.href="#Primitive-Types" |
| b1ce0 | 3e 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | >Primitive.Types</a></li>.</ul>. |
| b1d00 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6d 70 6f 72 74 2d 66 72 | ...............<h2.id="Import-fr |
| b1d20 | 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | om-C-Header-File"><a.href="#toc- |
| b1d40 | 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 | Import-from-C-Header-File">Impor |
| b1d60 | 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | t.from.C.Header.File</a>.<a.clas |
| b1d80 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 | s="hdr".href="#Import-from-C-Hea |
| b1da0 | 64 65 72 2d 46 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | der-File">..</a></h2>........<p> |
| b1dc0 | 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .......The.<code.class="zig"><sp |
| b1de0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c | an.class="tok-builtin">@cImport< |
| b1e00 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 63 | /span></code>.builtin.function.c |
| b1e20 | 61 6e 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 64 69 72 65 63 74 6c 79 20 69 6d 70 | an.be.used.......to.directly.imp |
| b1e40 | 6f 72 74 20 73 79 6d 62 6f 6c 73 20 66 72 6f 6d 20 2e 68 20 66 69 6c 65 73 3a 0a 20 20 20 20 20 | ort.symbols.from..h.files:...... |
| b1e60 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | .</p>.......<p.class="file">test |
| b1e80 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| b1ea0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">const</span> |
| b1ec0 | 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .c.=.<span.class="tok-builtin">@ |
| b1ee0 | 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | cImport</span>({.....<span.class |
| b1f00 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 69 | ="tok-comment">//.See.https://gi |
| b1f20 | 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 35 31 35 3c | thub.com/ziglang/zig/issues/515< |
| b1f40 | 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | /span>.....<span.class="tok-buil |
| b1f60 | 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | tin">@cDefine</span>(<span.class |
| b1f80 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f 4e 4f 5f 43 52 54 5f 53 54 44 49 4f 5f 49 | ="tok-str">"_NO_CRT_STDIO_I |
| b1fa0 | 4e 4c 49 4e 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | NLINE"</span>,.<span.class= |
| b1fc0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b | "tok-str">"1"</span>); |
| b1fe0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .....<span.class="tok-builtin">@ |
| b2000 | 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | cInclude</span>(<span.class="tok |
| b2020 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 69 6f 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | -str">"stdio.h"</span> |
| b2040 | 29 3b 0a 7d 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | );.});.<span.class="tok-kw">pub< |
| b2060 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | /span>.<span.class="tok-kw">fn</ |
| b2080 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c | span>.<span.class="tok-fn">main< |
| b20a0 | 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | /span>().<span.class="tok-type"> |
| b20c0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 63 2e 70 72 69 6e 74 66 28 3c | void</span>.{....._.=.c.printf(< |
| b20e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f | span.class="tok-str">"hello |
| b2100 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | \n"</span>);.}</code></pre> |
| b2120 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 | <pre><code.class="shell">$.zig.b |
| b2140 | 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 20 2d 6c 63 0a 24 20 2e 2f 74 65 73 74 0a 68 | uild-exe.test.zig.-lc.$../test.h |
| b2160 | 65 6c 6c 6f 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | ello.</code></pre>........<p>... |
| b2180 | 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....The.<code.class="zig"><span. |
| b21a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 | class="tok-builtin">@cImport</sp |
| b21c0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 74 61 6b 65 73 20 61 6e 20 65 78 70 | an></code>.function.takes.an.exp |
| b21e0 | 72 65 73 73 69 6f 6e 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 2e 0a 20 20 20 20 20 20 54 68 | ression.as.a.parameter........Th |
| b2200 | 69 73 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 6f | is.expression.is.evaluated.at.co |
| b2220 | 6d 70 69 6c 65 2d 74 69 6d 65 20 61 6e 64 20 69 73 20 75 73 65 64 20 74 6f 20 63 6f 6e 74 72 6f | mpile-time.and.is.used.to.contro |
| b2240 | 6c 0a 20 20 20 20 20 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 69 72 65 63 74 69 76 65 73 20 | l.......preprocessor.directives. |
| b2260 | 61 6e 64 20 69 6e 63 6c 75 64 65 20 6d 75 6c 74 69 70 6c 65 20 2e 68 20 66 69 6c 65 73 3a 0a 20 | and.include.multiple..h.files:.. |
| b2280 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | .....</p>.......<pre><code.class |
| b22a0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| b22c0 | 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t</span>.builtin.=.<span.class=" |
| b22e0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@import</span>(<spa |
| b2300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 | n.class="tok-str">"builtin& |
| b2320 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | quot;</span>);..<span.class="tok |
| b2340 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">const</span>.c.=.<span.clas |
| b2360 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@cImport</span>( |
| b2380 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | {.....<span.class="tok-builtin"> |
| b23a0 | 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | @cDefine</span>(<span.class="tok |
| b23c0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4e 44 45 42 55 47 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | -str">"NDEBUG"</span>, |
| b23e0 | 20 62 75 69 6c 74 69 6e 2e 6d 6f 64 65 20 3d 3d 20 2e 52 65 6c 65 61 73 65 46 61 73 74 29 3b 0a | .builtin.mode.==..ReleaseFast);. |
| b2400 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 | ....<span.class="tok-kw">if</spa |
| b2420 | 6e 3e 20 28 73 6f 6d 65 74 68 69 6e 67 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | n>.(something).{.........<span.c |
| b2440 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 | lass="tok-builtin">@cDefine</spa |
| b2460 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f | n>(<span.class="tok-str">"_ |
| b2480 | 47 4e 55 5f 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 20 20 | GNU_SOURCE"</span>,.{});... |
| b24a0 | 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | ..}.....<span.class="tok-builtin |
| b24c0 | 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">@cInclude</span>(<span.class=" |
| b24e0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 6c 69 62 2e 68 26 71 75 6f 74 3b 3c 2f 73 | tok-str">"stdlib.h"</s |
| b2500 | 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>);.....<span.class="tok-kw"> |
| b2520 | 69 66 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 74 68 69 6e 67 29 20 7b 0a 20 20 20 20 20 20 20 20 | if</span>.(something).{......... |
| b2540 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 55 6e 64 65 | <span.class="tok-builtin">@cUnde |
| b2560 | 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | f</span>(<span.class="tok-str">& |
| b2580 | 71 75 6f 74 3b 5f 47 4e 55 5f 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a | quot;_GNU_SOURCE"</span>);. |
| b25a0 | 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ....}.....<span.class="tok-built |
| b25c0 | 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | in">@cInclude</span>(<span.class |
| b25e0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6f 75 6e 64 69 6f 2e 68 26 71 75 6f 74 3b | ="tok-str">"soundio.h" |
| b2600 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | </span>);.});</code></pre>...... |
| b2620 | 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | .<p>See.also:</p><ul>.<li><a.hre |
| b2640 | 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | f="#cImport">@cImport</a></li>.< |
| b2660 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 | li><a.href="#cInclude">@cInclude |
| b2680 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 | </a></li>.<li><a.href="#cDefine" |
| b26a0 | 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | >@cDefine</a></li>.<li><a.href=" |
| b26c0 | 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | #cUndef">@cUndef</a></li>.<li><a |
| b26e0 | 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e | .href="#import">@import</a></li> |
| b2700 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 2d | .</ul>................<h2.id="C- |
| b2720 | 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 2d 50 6f 69 6e 74 65 | Pointers"><a.href="#toc-C-Pointe |
| b2740 | 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | rs">C.Pointers</a>.<a.class="hdr |
| b2760 | 22 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | ".href="#C-Pointers">..</a></h2> |
| b2780 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 74 79 70 65 20 69 73 20 74 | ........<p>.......This.type.is.t |
| b27a0 | 6f 20 62 65 20 61 76 6f 69 64 65 64 20 77 68 65 6e 65 76 65 72 20 70 6f 73 73 69 62 6c 65 2e 20 | o.be.avoided.whenever.possible.. |
| b27c0 | 54 68 65 20 6f 6e 6c 79 20 76 61 6c 69 64 20 72 65 61 73 6f 6e 20 66 6f 72 20 75 73 69 6e 67 20 | The.only.valid.reason.for.using. |
| b27e0 | 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 20 69 6e 0a 20 20 20 20 20 20 61 75 74 6f 2d 67 65 6e | a.C.pointer.is.in.......auto-gen |
| b2800 | 65 72 61 74 65 64 20 63 6f 64 65 20 66 72 6f 6d 20 74 72 61 6e 73 6c 61 74 69 6e 67 20 43 20 63 | erated.code.from.translating.C.c |
| b2820 | 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ode........</p>.......<p>....... |
| b2840 | 57 68 65 6e 20 69 6d 70 6f 72 74 69 6e 67 20 43 20 68 65 61 64 65 72 20 66 69 6c 65 73 2c 20 69 | When.importing.C.header.files,.i |
| b2860 | 74 20 69 73 20 61 6d 62 69 67 75 6f 75 73 20 77 68 65 74 68 65 72 20 70 6f 69 6e 74 65 72 73 20 | t.is.ambiguous.whether.pointers. |
| b2880 | 73 68 6f 75 6c 64 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 61 73 0a 20 20 20 20 20 20 73 69 | should.be.translated.as.......si |
| b28a0 | 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ngle-item.pointers.(<code.class= |
| b28c0 | 22 7a 69 67 22 3e 2a 54 3c 2f 63 6f 64 65 3e 29 20 6f 72 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f | "zig">*T</code>).or.many-item.po |
| b28e0 | 69 6e 74 65 72 73 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 2a 5d 54 3c 2f | inters.(<code.class="zig">[*]T</ |
| b2900 | 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 43 20 70 6f 69 6e 74 65 72 73 20 61 72 65 20 61 20 63 | code>)........C.pointers.are.a.c |
| b2920 | 6f 6d 70 72 6f 6d 69 73 65 20 73 6f 20 74 68 61 74 20 5a 69 67 20 63 6f 64 65 20 63 61 6e 20 75 | ompromise.so.that.Zig.code.can.u |
| b2940 | 74 69 6c 69 7a 65 20 74 72 61 6e 73 6c 61 74 65 64 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 64 | tilize.translated.header.files.d |
| b2960 | 69 72 65 63 74 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f | irectly........</p>.......<p><co |
| b2980 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 2a 63 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 43 20 | de.class="zig">[*c]T</code>.-.C. |
| b29a0 | 70 6f 69 6e 74 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | pointer.</p>.......<ul>......... |
| b29c0 | 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 61 6c 6c 20 74 68 65 20 73 79 6e 74 61 78 20 6f 66 20 74 | <li>Supports.all.the.syntax.of.t |
| b29e0 | 68 65 20 6f 74 68 65 72 20 74 77 6f 20 70 6f 69 6e 74 65 72 20 74 79 70 65 73 2e 3c 2f 6c 69 3e | he.other.two.pointer.types.</li> |
| b2a00 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 65 72 63 65 73 20 74 6f 20 6f 74 68 65 72 20 70 6f | .........<li>Coerces.to.other.po |
| b2a20 | 69 6e 74 65 72 20 74 79 70 65 73 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 3c 61 20 68 72 65 66 3d | inter.types,.as.well.as.<a.href= |
| b2a40 | 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f | "#Optional-Pointers">Optional.Po |
| b2a60 | 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 61 20 43 | inters</a>..............When.a.C |
| b2a80 | 20 70 6f 69 6e 74 65 72 20 69 73 20 63 6f 65 72 63 65 64 20 74 6f 20 61 20 6e 6f 6e 2d 6f 70 74 | .pointer.is.coerced.to.a.non-opt |
| b2aa0 | 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2c 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 0a 20 20 | ional.pointer,.safety-checked... |
| b2ac0 | 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 | ..........<a.href="#Undefined-Be |
| b2ae0 | 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 6f | havior">Undefined.Behavior</a>.o |
| b2b00 | 63 63 75 72 73 20 69 66 20 74 68 65 20 61 64 64 72 65 73 73 20 69 73 20 30 2e 0a 20 20 20 20 20 | ccurs.if.the.address.is.0....... |
| b2b20 | 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 6f 77 73 20 61 64 64 72 | ...</li>.........<li>Allows.addr |
| b2b40 | 65 73 73 20 30 2e 20 4f 6e 20 6e 6f 6e 2d 66 72 65 65 73 74 61 6e 64 69 6e 67 20 74 61 72 67 65 | ess.0..On.non-freestanding.targe |
| b2b60 | 74 73 2c 20 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20 61 64 64 72 65 73 73 20 30 20 69 73 20 73 | ts,.dereferencing.address.0.is.s |
| b2b80 | 61 66 65 74 79 2d 63 68 65 63 6b 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 | afety-checked.............<a.hre |
| b2ba0 | 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 | f="#Undefined-Behavior">Undefine |
| b2bc0 | 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 20 4f 70 74 69 6f 6e 61 6c 20 43 20 70 6f 69 6e 74 | d.Behavior</a>..Optional.C.point |
| b2be0 | 65 72 73 20 69 6e 74 72 6f 64 75 63 65 20 61 6e 6f 74 68 65 72 20 62 69 74 20 74 6f 20 6b 65 65 | ers.introduce.another.bit.to.kee |
| b2c00 | 70 20 74 72 61 63 6b 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6c 6c 2c 20 6a 75 73 | p.track.of.............null,.jus |
| b2c20 | 74 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 3c 73 70 61 6e 20 | t.like.<code.class="zig">?<span. |
| b2c40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | class="tok-type">usize</span></c |
| b2c60 | 6f 64 65 3e 2e 20 4e 6f 74 65 20 74 68 61 74 20 63 72 65 61 74 69 6e 67 20 61 6e 20 6f 70 74 69 | ode>..Note.that.creating.an.opti |
| b2c80 | 6f 6e 61 6c 20 43 20 70 6f 69 6e 74 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 75 6e | onal.C.pointer.............is.un |
| b2ca0 | 6e 65 63 65 73 73 61 72 79 20 61 73 20 6f 6e 65 20 63 61 6e 20 75 73 65 20 6e 6f 72 6d 61 6c 20 | necessary.as.one.can.use.normal. |
| b2cc0 | 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 | <a.href="#Optional-Pointers">Opt |
| b2ce0 | 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 | ional.Pointers</a>..........</li |
| b2d00 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 | >.........<li>Supports.<a.href=" |
| b2d20 | 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 | #Type-Coercion">Type.Coercion</a |
| b2d40 | 3e 20 74 6f 20 61 6e 64 20 66 72 6f 6d 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 | >.to.and.from.integers.</li>.... |
| b2d60 | 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 63 6f 6d 70 61 72 69 73 6f 6e 20 77 69 74 | .....<li>Supports.comparison.wit |
| b2d80 | 68 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 44 6f 65 | h.integers.</li>.........<li>Doe |
| b2da0 | 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 5a 69 67 2d 6f 6e 6c 79 20 70 6f 69 6e 74 65 72 20 61 | s.not.support.Zig-only.pointer.a |
| b2dc0 | 74 74 72 69 62 75 74 65 73 20 73 75 63 68 20 61 73 20 61 6c 69 67 6e 6d 65 6e 74 2e 20 55 73 65 | ttributes.such.as.alignment..Use |
| b2de0 | 20 6e 6f 72 6d 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e | .normal.<a.href="#Pointers">Poin |
| b2e00 | 74 65 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 70 6c 65 61 73 65 21 3c 2f 6c 69 3e 0a 20 20 | ters</a>.........please!</li>... |
| b2e20 | 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 61 20 43 20 70 6f 69 6e | ....</ul>.......<p>When.a.C.poin |
| b2e40 | 74 65 72 20 69 73 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 61 20 73 69 6e 67 6c 65 20 73 74 72 75 | ter.is.pointing.to.a.single.stru |
| b2e60 | 63 74 20 28 6e 6f 74 20 61 6e 20 61 72 72 61 79 29 2c 20 64 65 72 65 66 65 72 65 6e 63 65 20 74 | ct.(not.an.array),.dereference.t |
| b2e80 | 68 65 20 43 20 70 6f 69 6e 74 65 72 20 74 6f 0a 20 20 20 20 20 20 20 20 61 63 63 65 73 73 20 74 | he.C.pointer.to.........access.t |
| b2ea0 | 6f 20 74 68 65 20 73 74 72 75 63 74 27 73 20 66 69 65 6c 64 73 20 6f 72 20 6d 65 6d 62 65 72 20 | o.the.struct's.fields.or.member. |
| b2ec0 | 64 61 74 61 2e 20 54 68 61 74 20 73 79 6e 74 61 78 20 6c 6f 6f 6b 73 20 6c 69 6b 65 0a 20 20 20 | data..That.syntax.looks.like.... |
| b2ee0 | 20 20 20 20 20 74 68 69 73 3a 20 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 | .....this:.</p>.........<p><code |
| b2f00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 5f 74 6f 5f 73 74 72 75 63 74 2e 2a 2e 73 74 72 | .class="zig">ptr_to_struct.*.str |
| b2f20 | 75 63 74 5f 6d 65 6d 62 65 72 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 | uct_member</code></p>.........<p |
| b2f40 | 3e 54 68 69 73 20 69 73 20 63 6f 6d 70 61 72 61 62 6c 65 20 74 6f 20 64 6f 69 6e 67 20 3c 63 6f | >This.is.comparable.to.doing.<co |
| b2f60 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 26 67 74 3b 3c 2f 63 6f 64 65 3e 20 69 6e 20 43 | de.class="zig">-></code>.in.C |
| b2f80 | 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 20 57 68 65 6e 20 61 20 43 20 70 6f 69 6e 74 | .</p>.........<p>.When.a.C.point |
| b2fa0 | 65 72 20 69 73 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 61 6e 20 61 72 72 61 79 20 6f 66 20 73 74 | er.is.pointing.to.an.array.of.st |
| b2fc0 | 72 75 63 74 73 2c 20 74 68 65 20 73 79 6e 74 61 78 20 72 65 76 65 72 74 73 20 74 6f 20 74 68 69 | ructs,.the.syntax.reverts.to.thi |
| b2fe0 | 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | s:</p>.........<p><code.class="z |
| b3000 | 69 67 22 3e 70 74 72 5f 74 6f 5f 73 74 72 75 63 74 5f 61 72 72 61 79 5b 69 6e 64 65 78 5d 2e 73 | ig">ptr_to_struct_array[index].s |
| b3020 | 74 72 75 63 74 5f 6d 65 6d 62 65 72 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a | truct_member</code></p>......... |
| b3040 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 | ......<h2.id="Exporting-a-C-Libr |
| b3060 | 61 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 | ary"><a.href="#toc-Exporting-a-C |
| b3080 | 2d 4c 69 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c | -Library">Exporting.a.C.Library< |
| b30a0 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 | /a>.<a.class="hdr".href="#Export |
| b30c0 | 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | ing-a-C-Library">..</a></h2>.... |
| b30e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 65 20 6f 66 20 74 68 65 20 70 72 69 6d 61 72 79 | ....<p>.......One.of.the.primary |
| b3100 | 20 75 73 65 20 63 61 73 65 73 20 66 6f 72 20 5a 69 67 20 69 73 20 65 78 70 6f 72 74 69 6e 67 20 | .use.cases.for.Zig.is.exporting. |
| b3120 | 61 20 6c 69 62 72 61 72 79 20 77 69 74 68 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 6f 74 68 | a.library.with.the.C.ABI.for.oth |
| b3140 | 65 72 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 73 0a 20 20 20 20 20 20 74 | er.programming.languages.......t |
| b3160 | 6f 20 63 61 6c 6c 20 69 6e 74 6f 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | o.call.into..The.<code.class="zi |
| b3180 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f | g"><span.class="tok-kw">export</ |
| b31a0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 69 6e 20 66 72 6f 6e 74 20 6f 66 | span></code>.keyword.in.front.of |
| b31c0 | 20 66 75 6e 63 74 69 6f 6e 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 20 61 6e 64 20 74 79 70 65 73 | .functions,.variables,.and.types |
| b31e0 | 20 63 61 75 73 65 73 20 74 68 65 6d 20 74 6f 0a 20 20 20 20 20 20 62 65 20 70 61 72 74 20 6f 66 | .causes.them.to.......be.part.of |
| b3200 | 20 74 68 65 20 6c 69 62 72 61 72 79 20 41 50 49 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .the.library.API:.......</p>.... |
| b3220 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 61 74 68 74 65 73 74 2e 7a 69 67 3c | ...<p.class="file">mathtest.zig< |
| b3240 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | /p>.......<pre><code.class="zig" |
| b3260 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 | ><span.class="tok-kw">export</sp |
| b3280 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | an>.<span.class="tok-kw">fn</spa |
| b32a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 | n>.<span.class="tok-fn">add</spa |
| b32c0 | 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | n>(a:.<span.class="tok-type">i32 |
| b32e0 | 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>,.b:.<span.class="tok-typ |
| b3300 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">i32</span>).<span.class="tok- |
| b3320 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | type">i32</span>.{.....<span.cla |
| b3340 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b | ss="tok-kw">return</span>.a.+.b; |
| b3360 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 6d 61 6b 65 | .}</code></pre>.......<p>To.make |
| b3380 | 20 61 20 73 74 61 74 69 63 20 6c 69 62 72 61 72 79 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 | .a.static.library:</p>.......<pr |
| b33a0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c | e><code.class="shell">$.zig.buil |
| b33c0 | 64 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | d-lib.mathtest.zig.</code></pre> |
| b33e0 | 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 6d 61 6b 65 20 61 20 73 68 61 72 65 64 20 6c 69 62 72 61 | .......<p>To.make.a.shared.libra |
| b3400 | 72 79 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ry:</p>.......<pre><code.class=" |
| b3420 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 2e | shell">$.zig.build-lib.mathtest. |
| b3440 | 7a 69 67 20 2d 64 79 6e 61 6d 69 63 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | zig.-dynamic.</code></pre>...... |
| b3460 | 20 3c 70 3e 48 65 72 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 77 69 74 68 20 74 68 65 20 | .<p>Here.is.an.example.with.the. |
| b3480 | 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 | <a.href="#Zig-Build-System">Zig. |
| b34a0 | 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 | Build.System</a>:</p>.......<p.c |
| b34c0 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 63 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 | lass="file">test.c</p>.......<pr |
| b34e0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 70 70 22 3e 2f 2f 20 54 68 69 73 20 68 65 61 64 | e><code.class="cpp">//.This.head |
| b3500 | 65 72 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 7a 69 67 20 66 72 6f 6d 20 6d 61 74 68 | er.is.generated.by.zig.from.math |
| b3520 | 74 65 73 74 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 65 20 22 6d 61 74 68 74 65 73 74 2e 68 22 0a 23 | test.zig.#include."mathtest.h".# |
| b3540 | 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b 0a 0a 69 6e 74 20 6d 61 69 | include.<stdio.h>..int.mai |
| b3560 | 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 69 | n(int.argc,.char.**argv).{.....i |
| b3580 | 6e 74 33 32 5f 74 20 72 65 73 75 6c 74 20 3d 20 61 64 64 28 34 32 2c 20 31 33 33 37 29 3b 0a 20 | nt32_t.result.=.add(42,.1337);.. |
| b35a0 | 20 20 20 70 72 69 6e 74 66 28 22 25 64 5c 6e 22 2c 20 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 72 | ...printf("%d\n",.result);.....r |
| b35c0 | 65 74 75 72 6e 20 30 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | eturn.0;.}</code></pre>.......<p |
| b35e0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 70 3e 0a 20 20 20 20 | .class="file">build.zig</p>..... |
| b3600 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| b3620 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c 64 | lass="tok-kw">const</span>.Build |
| b3640 | 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | er.=.<span.class="tok-builtin">@ |
| b3660 | 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | import</span>(<span.class="tok-s |
| b3680 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c | tr">"std"</span>).buil |
| b36a0 | 64 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | d.Builder;..<span.class="tok-kw" |
| b36c0 | 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >pub</span>.<span.class="tok-kw" |
| b36e0 | 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e | >fn</span>.<span.class="tok-fn"> |
| b3700 | 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 6e 20 | build</span>(b:.*Builder).<span. |
| b3720 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | class="tok-type">void</span>.{.. |
| b3740 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ...<span.class="tok-kw">const</s |
| b3760 | 70 61 6e 3e 20 6c 69 62 20 3d 20 62 2e 61 64 64 53 68 61 72 65 64 4c 69 62 72 61 72 79 28 3c 73 | pan>.lib.=.b.addSharedLibrary(<s |
| b3780 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 65 | pan.class="tok-str">"mathte |
| b37a0 | 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | st"</span>,.<span.class="to |
| b37c0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 2e 7a 69 67 26 71 75 6f 74 3b 3c | k-str">"mathtest.zig"< |
| b37e0 | 2f 73 70 61 6e 3e 2c 20 62 2e 76 65 72 73 69 6f 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>,.b.version(<span.class="t |
| b3800 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">1</span>,.<span.class |
| b3820 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">0</span>,.<span.cl |
| b3840 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 | ass="tok-number">0</span>));.... |
| b3860 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | ..<span.class="tok-kw">const</sp |
| b3880 | 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 64 64 45 78 65 63 75 74 61 62 6c 65 28 3c 73 70 61 6e 20 | an>.exe.=.b.addExecutable(<span. |
| b38a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 6f 74 3b | class="tok-str">"test" |
| b38c0 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | </span>,.<span.class="tok-null"> |
| b38e0 | 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 43 53 6f 75 72 63 65 | null</span>);.....exe.addCSource |
| b3900 | 46 69 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | File(<span.class="tok-str">" |
| b3920 | 3b 74 65 73 74 2e 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 5b 5f 5d 5b 5d | ;test.c"</span>,.&[_][] |
| b3940 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| b3960 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >.<span.class="tok-type">u8</spa |
| b3980 | 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d | n>{<span.class="tok-str">"- |
| b39a0 | 73 74 64 3d 63 39 39 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 29 3b 0a 20 20 20 20 65 78 65 2e | std=c99"</span>});.....exe. |
| b39c0 | 6c 69 6e 6b 4c 69 62 72 61 72 79 28 6c 69 62 29 3b 0a 20 20 20 20 65 78 65 2e 6c 69 6e 6b 53 79 | linkLibrary(lib);.....exe.linkSy |
| b39e0 | 73 74 65 6d 4c 69 62 72 61 72 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | stemLibrary(<span.class="tok-str |
| b3a00 | 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 62 2e | ">"c"</span>);......b. |
| b3a20 | 64 65 66 61 75 6c 74 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 65 78 65 2e 73 | default_step.dependOn(&exe.s |
| b3a40 | 74 65 70 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | tep);......<span.class="tok-kw"> |
| b3a60 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 75 6e 5f 63 6d 64 20 3d 20 65 78 65 2e 72 75 6e 28 29 | const</span>.run_cmd.=.exe.run() |
| b3a80 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ;......<span.class="tok-kw">cons |
| b3aa0 | 74 3c 2f 73 70 61 6e 3e 20 74 65 73 74 5f 73 74 65 70 20 3d 20 62 2e 73 74 65 70 28 3c 73 70 61 | t</span>.test_step.=.b.step(<spa |
| b3ac0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 6f | n.class="tok-str">"test&quo |
| b3ae0 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | t;</span>,.<span.class="tok-str" |
| b3b00 | 3e 26 71 75 6f 74 3b 54 65 73 74 20 74 68 65 20 70 72 6f 67 72 61 6d 26 71 75 6f 74 3b 3c 2f 73 | >"Test.the.program"</s |
| b3b20 | 70 61 6e 3e 29 3b 0a 20 20 20 20 74 65 73 74 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 | pan>);.....test_step.dependOn(&a |
| b3b40 | 6d 70 3b 72 75 6e 5f 63 6d 64 2e 73 74 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | mp;run_cmd.step);.}</code></pre> |
| b3b60 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 72 6d 69 6e 61 6c 3c | .......<p.class="file">terminal< |
| b3b80 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | /p>.......<pre><code.class="shel |
| b3ba0 | 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 20 74 65 73 74 0a 31 33 37 39 0a 3c 2f 63 6f 64 65 3e | l">$.zig.build.test.1379.</code> |
| b3bc0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | </pre>.......<p>See.also:</p><ul |
| b3be0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e 65 78 70 6f 72 74 3c 2f | >.<li><a.href="#export">export</ |
| b3c00 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 | a></li>.</ul>...............<h2. |
| b3c20 | 69 64 3d 22 4d 69 78 69 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e 3c 61 20 68 72 65 66 | id="Mixing-Object-Files"><a.href |
| b3c40 | 3d 22 23 74 6f 63 2d 4d 69 78 69 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e 4d 69 78 69 | ="#toc-Mixing-Object-Files">Mixi |
| b3c60 | 6e 67 20 4f 62 6a 65 63 74 20 46 69 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | ng.Object.Files</a>.<a.class="hd |
| b3c80 | 72 22 20 68 72 65 66 3d 22 23 4d 69 78 69 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e c2 | r".href="#Mixing-Object-Files">. |
| b3ca0 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 | .</a></h2>........<p>.......You. |
| b3cc0 | 63 61 6e 20 6d 69 78 20 5a 69 67 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 20 77 69 74 68 20 61 6e | can.mix.Zig.object.files.with.an |
| b3ce0 | 79 20 6f 74 68 65 72 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 20 74 68 61 74 20 72 65 73 70 65 63 | y.other.object.files.that.respec |
| b3d00 | 74 20 74 68 65 20 43 20 41 42 49 2e 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | t.the.C.ABI..Example:.......</p> |
| b3d20 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 61 73 65 36 34 2e 7a 69 | .......<p.class="file">base64.zi |
| b3d40 | 67 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | g</p>.......<pre><code.class="zi |
| b3d60 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| b3d80 | 70 61 6e 3e 20 62 61 73 65 36 34 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | pan>.base64.=.<span.class="tok-b |
| b3da0 | 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | uiltin">@import</span>(<span.cla |
| b3dc0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 | ss="tok-str">"std"</sp |
| b3de0 | 61 6e 3e 29 2e 62 61 73 65 36 34 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | an>).base64;..<span.class="tok-k |
| b3e00 | 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">export</span>.<span.class="to |
| b3e20 | 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | k-kw">fn</span>.<span.class="tok |
| b3e40 | 2d 66 6e 22 3e 64 65 63 6f 64 65 5f 62 61 73 65 5f 36 34 3c 2f 73 70 61 6e 3e 28 0a 20 20 20 20 | -fn">decode_base_64</span>(..... |
| b3e60 | 64 65 73 74 5f 70 74 72 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | dest_ptr:.[*]<span.class="tok-ty |
| b3e80 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 64 65 73 74 5f 6c 65 6e 3a 20 3c 73 70 | pe">u8</span>,.....dest_len:.<sp |
| b3ea0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e | an.class="tok-type">usize</span> |
| b3ec0 | 2c 0a 20 20 20 20 73 6f 75 72 63 65 5f 70 74 72 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | ,.....source_ptr:.[*]<span.class |
| b3ee0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">const</span>.<span.cla |
| b3f00 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 73 6f 75 | ss="tok-type">u8</span>,.....sou |
| b3f20 | 72 63 65 5f 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | rce_len:.<span.class="tok-type"> |
| b3f40 | 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | usize</span>,.).<span.class="tok |
| b3f60 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | -type">usize</span>.{.....<span. |
| b3f80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 72 63 20 | class="tok-kw">const</span>.src. |
| b3fa0 | 3d 20 73 6f 75 72 63 65 5f 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | =.source_ptr[<span.class="tok-nu |
| b3fc0 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 73 6f 75 72 63 65 5f 6c 65 6e 5d 3b 0a 20 20 20 | mber">0</span>..source_len];.... |
| b3fe0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 | .<span.class="tok-kw">const</spa |
| b4000 | 6e 3e 20 64 65 73 74 20 3d 20 64 65 73 74 5f 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.dest.=.dest_ptr[<span.class=" |
| b4020 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 64 65 73 74 5f 6c 65 6e 5d 3b | tok-number">0</span>..dest_len]; |
| b4040 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| b4060 | 2f 73 70 61 6e 3e 20 62 61 73 65 36 34 5f 64 65 63 6f 64 65 72 20 3d 20 62 61 73 65 36 34 2e 73 | /span>.base64_decoder.=.base64.s |
| b4080 | 74 61 6e 64 61 72 64 2e 44 65 63 6f 64 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tandard.Decoder;.....<span.class |
| b40a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 65 63 6f 64 65 64 5f 73 | ="tok-kw">const</span>.decoded_s |
| b40c0 | 69 7a 65 20 3d 20 62 61 73 65 36 34 5f 64 65 63 6f 64 65 72 2e 63 61 6c 63 53 69 7a 65 46 6f 72 | ize.=.base64_decoder.calcSizeFor |
| b40e0 | 53 6c 69 63 65 28 73 72 63 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | Slice(src).<span.class="tok-kw"> |
| b4100 | 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | catch</span>.<span.class="tok-kw |
| b4120 | 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 61 73 65 36 34 | ">unreachable</span>;.....base64 |
| b4140 | 5f 64 65 63 6f 64 65 72 2e 64 65 63 6f 64 65 28 64 65 73 74 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | _decoder.decode(dest[<span.class |
| b4160 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 64 65 63 6f 64 65 64 5f | ="tok-number">0</span>..decoded_ |
| b4180 | 73 69 7a 65 5d 2c 20 73 72 63 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | size],.src).<span.class="tok-kw" |
| b41a0 | 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >catch</span>.<span.class="tok-k |
| b41c0 | 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | w">unreachable</span>;.....<span |
| b41e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 64 65 | .class="tok-kw">return</span>.de |
| b4200 | 63 6f 64 65 64 5f 73 69 7a 65 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | coded_size;.}</code></pre>...... |
| b4220 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 63 3c 2f 70 3e 0a 20 20 20 20 | .<p.class="file">test.c</p>..... |
| b4240 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 70 70 22 3e 2f 2f 20 54 68 69 73 | ..<pre><code.class="cpp">//.This |
| b4260 | 20 68 65 61 64 65 72 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 7a 69 67 20 66 72 6f 6d | .header.is.generated.by.zig.from |
| b4280 | 20 62 61 73 65 36 34 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 65 20 22 62 61 73 65 36 34 2e 68 22 0a | .base64.zig.#include."base64.h". |
| b42a0 | 0a 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 72 69 6e 67 2e 68 26 67 74 3b 0a 23 69 6e 63 6c | .#include.<string.h>.#incl |
| b42c0 | 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b 0a 0a 69 6e 74 20 6d 61 69 6e 28 69 6e | ude.<stdio.h>..int.main(in |
| b42e0 | 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 63 6f 6e 73 74 | t.argc,.char.**argv).{.....const |
| b4300 | 20 63 68 61 72 20 2a 65 6e 63 6f 64 65 64 20 3d 20 22 59 57 78 73 49 48 6c 76 64 58 49 67 59 6d | .char.*encoded.=."YWxsIHlvdXIgYm |
| b4320 | 46 7a 5a 53 42 68 63 6d 55 67 59 6d 56 73 62 32 35 6e 49 48 52 76 49 48 56 7a 22 3b 0a 20 20 20 | FzZSBhcmUgYmVsb25nIHRvIHVz";.... |
| b4340 | 20 63 68 61 72 20 62 75 66 5b 32 30 30 5d 3b 0a 0a 20 20 20 20 73 69 7a 65 5f 74 20 6c 65 6e 20 | .char.buf[200];......size_t.len. |
| b4360 | 3d 20 64 65 63 6f 64 65 5f 62 61 73 65 5f 36 34 28 62 75 66 2c 20 32 30 30 2c 20 65 6e 63 6f 64 | =.decode_base_64(buf,.200,.encod |
| b4380 | 65 64 2c 20 73 74 72 6c 65 6e 28 65 6e 63 6f 64 65 64 29 29 3b 0a 20 20 20 20 62 75 66 5b 6c 65 | ed,.strlen(encoded));.....buf[le |
| b43a0 | 6e 5d 20 3d 20 30 3b 0a 20 20 20 20 70 75 74 73 28 62 75 66 29 3b 0a 0a 20 20 20 20 72 65 74 75 | n].=.0;.....puts(buf);......retu |
| b43c0 | 72 6e 20 30 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | rn.0;.}</code></pre>.......<p.cl |
| b43e0 | 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ass="file">build.zig</p>.......< |
| b4400 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| b4420 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c 64 65 72 20 | s="tok-kw">const</span>.Builder. |
| b4440 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 | =.<span.class="tok-builtin">@imp |
| b4460 | 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ort</span>(<span.class="tok-str" |
| b4480 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 64 2e 42 | >"std"</span>).build.B |
| b44a0 | 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | uilder;..<span.class="tok-kw">pu |
| b44c0 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | b</span>.<span.class="tok-kw">fn |
| b44e0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 75 69 | </span>.<span.class="tok-fn">bui |
| b4500 | 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 | ld</span>(b:.*Builder).<span.cla |
| b4520 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ss="tok-type">void</span>.{..... |
| b4540 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| b4560 | 3e 20 6f 62 6a 20 3d 20 62 2e 61 64 64 4f 62 6a 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >.obj.=.b.addObject(<span.class= |
| b4580 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 65 36 34 26 71 75 6f 74 3b 3c 2f 73 70 | "tok-str">"base64"</sp |
| b45a0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | an>,.<span.class="tok-str">" |
| b45c0 | 3b 62 61 73 65 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 | ;base64.zig"</span>);...... |
| b45e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e | <span.class="tok-kw">const</span |
| b4600 | 3e 20 65 78 65 20 3d 20 62 2e 61 64 64 45 78 65 63 75 74 61 62 6c 65 28 3c 73 70 61 6e 20 63 6c | >.exe.=.b.addExecutable(<span.cl |
| b4620 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 6f 74 3b 3c 2f | ass="tok-str">"test"</ |
| b4640 | 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 | span>,.<span.class="tok-null">nu |
| b4660 | 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 43 53 6f 75 72 63 65 46 69 | ll</span>);.....exe.addCSourceFi |
| b4680 | 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 | le(<span.class="tok-str">"t |
| b46a0 | 65 73 74 2e 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 5b 5f 5d 5b 5d 3c 73 | est.c"</span>,.&[_][]<s |
| b46c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| b46e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u8</span> |
| b4700 | 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 73 74 | {<span.class="tok-str">"-st |
| b4720 | 64 3d 63 39 39 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 | d=c99"</span>});.....exe.ad |
| b4740 | 64 4f 62 6a 65 63 74 28 6f 62 6a 29 3b 0a 20 20 20 20 65 78 65 2e 6c 69 6e 6b 53 79 73 74 65 6d | dObject(obj);.....exe.linkSystem |
| b4760 | 4c 69 62 72 61 72 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | Library(<span.class="tok-str">&q |
| b4780 | 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 69 6e 73 | uot;c"</span>);.....exe.ins |
| b47a0 | 74 61 6c 6c 28 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 20 | tall();.}</code></pre>.......<p. |
| b47c0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 72 6d 69 6e 61 6c 3c 2f 70 3e 0a 20 20 20 20 20 20 | class="file">terminal</p>....... |
| b47e0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 | <pre><code.class="shell">$.zig.b |
| b4800 | 75 69 6c 64 0a 24 20 2e 2f 7a 69 67 2d 6f 75 74 2f 62 69 6e 2f 74 65 73 74 0a 61 6c 6c 20 79 6f | uild.$../zig-out/bin/test.all.yo |
| b4820 | 75 72 20 62 61 73 65 20 61 72 65 20 62 65 6c 6f 6e 67 20 74 6f 20 75 73 3c 2f 63 6f 64 65 3e 3c | ur.base.are.belong.to.us</code>< |
| b4840 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e | /pre>.......<p>See.also:</p><ul> |
| b4860 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e 54 61 72 67 65 74 73 3c | .<li><a.href="#Targets">Targets< |
| b4880 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 | /a></li>.<li><a.href="#Zig-Build |
| b48a0 | 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 3c 2f 6c | -System">Zig.Build.System</a></l |
| b48c0 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | i>.</ul>......................<h |
| b48e0 | 31 20 69 64 3d 22 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | 1.id="WebAssembly"><a.href="#toc |
| b4900 | 2d 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 57 65 62 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c 61 | -WebAssembly">WebAssembly</a>.<a |
| b4920 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 65 62 41 73 73 65 6d 62 6c 79 22 | .class="hdr".href="#WebAssembly" |
| b4940 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 73 75 70 70 6f | >..</a></h1>........<p>Zig.suppo |
| b4960 | 72 74 73 20 62 75 69 6c 64 69 6e 67 20 66 6f 72 20 57 65 62 41 73 73 65 6d 62 6c 79 20 6f 75 74 | rts.building.for.WebAssembly.out |
| b4980 | 20 6f 66 20 74 68 65 20 62 6f 78 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 | .of.the.box.</p>.......<h2.id="F |
| b49a0 | 72 65 65 73 74 61 6e 64 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 72 65 65 73 | reestanding"><a.href="#toc-Frees |
| b49c0 | 74 61 6e 64 69 6e 67 22 3e 46 72 65 65 73 74 61 6e 64 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 | tanding">Freestanding</a>.<a.cla |
| b49e0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 72 65 65 73 74 61 6e 64 69 6e 67 22 3e c2 a7 | ss="hdr".href="#Freestanding">.. |
| b4a00 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 68 6f 73 74 20 65 6e 76 | </a></h2>........<p>For.host.env |
| b4a20 | 69 72 6f 6e 6d 65 6e 74 73 20 6c 69 6b 65 20 74 68 65 20 77 65 62 20 62 72 6f 77 73 65 72 20 61 | ironments.like.the.web.browser.a |
| b4a40 | 6e 64 20 6e 6f 64 65 6a 73 2c 20 62 75 69 6c 64 20 61 73 20 61 20 64 79 6e 61 6d 69 63 20 6c 69 | nd.nodejs,.build.as.a.dynamic.li |
| b4a60 | 62 72 61 72 79 20 75 73 69 6e 67 20 74 68 65 20 66 72 65 65 73 74 61 6e 64 69 6e 67 0a 20 20 20 | brary.using.the.freestanding.... |
| b4a80 | 20 20 20 4f 53 20 74 61 72 67 65 74 2e 20 48 65 72 65 27 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 | ...OS.target..Here's.an.example. |
| b4aa0 | 6f 66 20 72 75 6e 6e 69 6e 67 20 5a 69 67 20 63 6f 64 65 20 63 6f 6d 70 69 6c 65 64 20 74 6f 20 | of.running.Zig.code.compiled.to. |
| b4ac0 | 57 65 62 41 73 73 65 6d 62 6c 79 20 77 69 74 68 20 6e 6f 64 65 6a 73 2e 3c 2f 70 3e 0a 20 20 20 | WebAssembly.with.nodejs.</p>.... |
| b4ae0 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 61 74 68 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">math.zig</p>< |
| b4b00 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| b4b20 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">extern</span>.<span.c |
| b4b40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | lass="tok-kw">fn</span>.<span.cl |
| b4b60 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 72 69 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ass="tok-fn">print</span>(<span. |
| b4b80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | class="tok-type">i32</span>).<sp |
| b4ba0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3b | an.class="tok-type">void</span>; |
| b4bc0 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 | ..<span.class="tok-kw">export</s |
| b4be0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | pan>.<span.class="tok-kw">fn</sp |
| b4c00 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 | an>.<span.class="tok-fn">add</sp |
| b4c20 | 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | an>(a:.<span.class="tok-type">i3 |
| b4c40 | 32 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | 2</span>,.b:.<span.class="tok-ty |
| b4c60 | 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe">i32</span>).<span.class="tok |
| b4c80 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 61 | -type">void</span>.{.....print(a |
| b4ca0 | 20 2b 20 62 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | .+.b);.}</code></pre><pre><code. |
| b4cc0 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6c 69 62 20 6d 61 | class="shell">$.zig.build-lib.ma |
| b4ce0 | 74 68 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 77 61 73 6d 33 32 2d 66 72 65 65 73 74 61 6e 64 69 | th.zig.-target.wasm32-freestandi |
| b4d00 | 6e 67 20 2d 64 79 6e 61 6d 69 63 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | ng.-dynamic.</code></pre>....... |
| b4d20 | 20 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 6a 73 3c | ........<p.class="file">test.js< |
| b4d40 | 2f 70 3e 0a 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 63 6f 6e 73 74 20 66 73 20 3d 20 72 65 | /p>.....<pre><code>const.fs.=.re |
| b4d60 | 71 75 69 72 65 28 27 66 73 27 29 3b 0a 63 6f 6e 73 74 20 73 6f 75 72 63 65 20 3d 20 66 73 2e 72 | quire('fs');.const.source.=.fs.r |
| b4d80 | 65 61 64 46 69 6c 65 53 79 6e 63 28 22 2e 2f 6d 61 74 68 2e 77 61 73 6d 22 29 3b 0a 63 6f 6e 73 | eadFileSync("./math.wasm");.cons |
| b4da0 | 74 20 74 79 70 65 64 41 72 72 61 79 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 73 6f | t.typedArray.=.new.Uint8Array(so |
| b4dc0 | 75 72 63 65 29 3b 0a 0a 57 65 62 41 73 73 65 6d 62 6c 79 2e 69 6e 73 74 61 6e 74 69 61 74 65 28 | urce);..WebAssembly.instantiate( |
| b4de0 | 74 79 70 65 64 41 72 72 61 79 2c 20 7b 0a 20 20 65 6e 76 3a 20 7b 0a 20 20 20 20 70 72 69 6e 74 | typedArray,.{...env:.{.....print |
| b4e00 | 3a 20 28 72 65 73 75 6c 74 29 20 3d 26 67 74 3b 20 7b 20 63 6f 6e 73 6f 6c 65 2e 6c 6f 67 28 60 | :.(result).=>.{.console.log(` |
| b4e20 | 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 24 7b 72 65 73 75 6c 74 7d 60 29 3b 20 7d 0a 20 20 7d | The.result.is.${result}`);.}...} |
| b4e40 | 7d 29 2e 74 68 65 6e 28 72 65 73 75 6c 74 20 3d 26 67 74 3b 20 7b 0a 20 20 63 6f 6e 73 74 20 61 | }).then(result.=>.{...const.a |
| b4e60 | 64 64 20 3d 20 72 65 73 75 6c 74 2e 69 6e 73 74 61 6e 63 65 2e 65 78 70 6f 72 74 73 2e 61 64 64 | dd.=.result.instance.exports.add |
| b4e80 | 3b 0a 20 20 61 64 64 28 31 2c 20 32 29 3b 0a 7d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | ;...add(1,.2);.});</code></pre>. |
| b4ea0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 24 20 6e 6f 64 65 20 74 65 73 74 2e 6a 73 0a 54 68 | ....<pre><code>$.node.test.js.Th |
| b4ec0 | 65 20 72 65 73 75 6c 74 20 69 73 20 33 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | e.result.is.3</code></pre>...... |
| b4ee0 | 20 3c 68 32 20 69 64 3d 22 57 41 53 49 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 41 53 | .<h2.id="WASI"><a.href="#toc-WAS |
| b4f00 | 49 22 3e 57 41 53 49 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | I">WASI</a>.<a.class="hdr".href= |
| b4f20 | 22 23 57 41 53 49 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 | "#WASI">..</a></h2>........<p>Zi |
| b4f40 | 67 27 73 20 73 75 70 70 6f 72 74 20 66 6f 72 20 57 65 62 41 73 73 65 6d 62 6c 79 20 53 79 73 74 | g's.support.for.WebAssembly.Syst |
| b4f60 | 65 6d 20 49 6e 74 65 72 66 61 63 65 20 28 57 41 53 49 29 20 69 73 20 75 6e 64 65 72 20 61 63 74 | em.Interface.(WASI).is.under.act |
| b4f80 | 69 76 65 20 64 65 76 65 6c 6f 70 6d 65 6e 74 2e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 20 6f | ive.development........Example.o |
| b4fa0 | 66 20 75 73 69 6e 67 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 61 6e 64 | f.using.the.standard.library.and |
| b4fc0 | 20 72 65 61 64 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 61 72 67 75 6d 65 6e 74 73 3a | .reading.command.line.arguments: |
| b4fe0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 61 72 67 73 2e | </p>.......<p.class="file">args. |
| b5000 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| b5020 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| b5040 | 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | std.=.<span.class="tok-builtin"> |
| b5060 | 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @import</span>(<span.class="tok- |
| b5080 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c | str">"std"</span>);..< |
| b50a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c | span.class="tok-kw">pub</span>.< |
| b50c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | span.class="tok-kw">fn</span>.<s |
| b50e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 | pan.class="tok-fn">main</span>() |
| b5100 | 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | .!<span.class="tok-type">void</s |
| b5120 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| b5140 | 76 61 72 3c 2f 73 70 61 6e 3e 20 67 65 6e 65 72 61 6c 5f 70 75 72 70 6f 73 65 5f 61 6c 6c 6f 63 | var</span>.general_purpose_alloc |
| b5160 | 61 74 6f 72 20 3d 20 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 41 6c | ator.=.std.heap.GeneralPurposeAl |
| b5180 | 6c 6f 63 61 74 6f 72 28 2e 7b 7d 29 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | locator(.{}){};.....<span.class= |
| b51a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 67 70 61 20 3d 20 26 61 6d 70 | "tok-kw">const</span>.gpa.=.& |
| b51c0 | 3b 67 65 6e 65 72 61 6c 5f 70 75 72 70 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 | ;general_purpose_allocator.alloc |
| b51e0 | 61 74 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ator;.....<span.class="tok-kw">c |
| b5200 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 67 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | onst</span>.args.=.<span.class=" |
| b5220 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 70 72 6f 63 65 73 73 2e 61 | tok-kw">try</span>.std.process.a |
| b5240 | 72 67 73 41 6c 6c 6f 63 28 67 70 61 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | rgsAlloc(gpa);.....<span.class=" |
| b5260 | 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 70 72 6f 63 65 73 73 | tok-kw">defer</span>.std.process |
| b5280 | 2e 61 72 67 73 46 72 65 65 28 67 70 61 2c 20 61 72 67 73 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | .argsFree(gpa,.args);......<span |
| b52a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 61 72 67 73 | .class="tok-kw">for</span>.(args |
| b52c0 | 29 20 7c 61 72 67 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 | ).|arg,.i|.{.........std.debug.p |
| b52e0 | 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | rint(<span.class="tok-str">" |
| b5300 | 3b 7b 7d 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 69 2c 20 61 | ;{}:.{s}\n"</span>,..{.i,.a |
| b5320 | 72 67 20 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | rg.});.....}.}</code></pre><pre> |
| b5340 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d | <code.class="shell">$.zig.build- |
| b5360 | 65 78 65 20 61 72 67 73 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 77 61 73 6d 33 32 2d 77 61 73 69 | exe.args.zig.-target.wasm32-wasi |
| b5380 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e | </code></pre>........<pre><code> |
| b53a0 | 24 20 77 61 73 6d 74 69 6d 65 20 61 72 67 73 2e 77 61 73 6d 20 31 32 33 20 68 65 6c 6c 6f 0a 30 | $.wasmtime.args.wasm.123.hello.0 |
| b53c0 | 3a 20 61 72 67 73 2e 77 61 73 6d 0a 31 3a 20 31 32 33 0a 32 3a 20 68 65 6c 6c 6f 3c 2f 63 6f 64 | :.args.wasm.1:.123.2:.hello</cod |
| b53e0 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 41 20 6d 6f 72 65 20 69 6e 74 65 72 65 73 | e></pre>.......<p>A.more.interes |
| b5400 | 74 69 6e 67 20 65 78 61 6d 70 6c 65 20 77 6f 75 6c 64 20 62 65 20 65 78 74 72 61 63 74 69 6e 67 | ting.example.would.be.extracting |
| b5420 | 20 74 68 65 20 6c 69 73 74 20 6f 66 20 70 72 65 6f 70 65 6e 73 20 66 72 6f 6d 20 74 68 65 20 72 | .the.list.of.preopens.from.the.r |
| b5440 | 75 6e 74 69 6d 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 6e 6f 77 20 73 75 70 70 6f 72 | untime........This.is.now.suppor |
| b5460 | 74 65 64 20 69 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 76 69 61 20 | ted.in.the.standard.library.via. |
| b5480 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 66 73 2e 77 61 73 69 2e 50 72 | <code.class="zig">std.fs.wasi.Pr |
| b54a0 | 65 6f 70 65 6e 4c 69 73 74 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 | eopenList</code>:</p>.......<p.c |
| b54c0 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 72 65 6f 70 65 6e 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | lass="file">preopens.zig</p><pre |
| b54e0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| b5500 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e | tok-kw">const</span>.std.=.<span |
| b5520 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 | .class="tok-builtin">@import</sp |
| b5540 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | an>(<span.class="tok-str">" |
| b5560 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | std"</span>);.<span.class=" |
| b5580 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 72 65 6f 70 65 6e 4c 69 73 74 | tok-kw">const</span>.PreopenList |
| b55a0 | 20 3d 20 73 74 64 2e 66 73 2e 77 61 73 69 2e 50 72 65 6f 70 65 6e 4c 69 73 74 3b 0a 0a 3c 73 70 | .=.std.fs.wasi.PreopenList;..<sp |
| b55c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 | an.class="tok-kw">pub</span>.<sp |
| b55e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | an.class="tok-kw">fn</span>.<spa |
| b5600 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 | n.class="tok-fn">main</span>().! |
| b5620 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 | <span.class="tok-type">void</spa |
| b5640 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | n>.{.....<span.class="tok-kw">va |
| b5660 | 72 3c 2f 73 70 61 6e 3e 20 67 65 6e 65 72 61 6c 5f 70 75 72 70 6f 73 65 5f 61 6c 6c 6f 63 61 74 | r</span>.general_purpose_allocat |
| b5680 | 6f 72 20 3d 20 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 41 6c 6c 6f | or.=.std.heap.GeneralPurposeAllo |
| b56a0 | 63 61 74 6f 72 28 2e 7b 7d 29 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | cator(.{}){};.....<span.class="t |
| b56c0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 67 70 61 20 3d 20 26 61 6d 70 3b 67 | ok-kw">const</span>.gpa.=.&g |
| b56e0 | 65 6e 65 72 61 6c 5f 70 75 72 70 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 61 74 | eneral_purpose_allocator.allocat |
| b5700 | 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | or;......<span.class="tok-kw">va |
| b5720 | 72 3c 2f 73 70 61 6e 3e 20 70 72 65 6f 70 65 6e 73 20 3d 20 50 72 65 6f 70 65 6e 4c 69 73 74 2e | r</span>.preopens.=.PreopenList. |
| b5740 | 69 6e 69 74 28 67 70 61 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | init(gpa);.....<span.class="tok- |
| b5760 | 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 70 72 65 6f 70 65 6e 73 2e 64 65 69 6e 69 74 | kw">defer</span>.preopens.deinit |
| b5780 | 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | ();......<span.class="tok-kw">tr |
| b57a0 | 79 3c 2f 73 70 61 6e 3e 20 70 72 65 6f 70 65 6e 73 2e 70 6f 70 75 6c 61 74 65 28 29 3b 0a 0a 20 | y</span>.preopens.populate();... |
| b57c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 | ...<span.class="tok-kw">for</spa |
| b57e0 | 6e 3e 20 28 70 72 65 6f 70 65 6e 73 2e 61 73 53 6c 69 63 65 28 29 29 20 7c 70 72 65 6f 70 65 6e | n>.(preopens.asSlice()).|preopen |
| b5800 | 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c | ,.i|.{.........std.debug.print(< |
| b5820 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 3a 20 7b | span.class="tok-str">"{}:.{ |
| b5840 | 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 69 2c 20 70 72 65 6f 70 65 6e 20 | }\n"</span>,..{.i,.preopen. |
| b5860 | 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | });.....}.}</code></pre><pre><co |
| b5880 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 | de.class="shell">$.zig.build-exe |
| b58a0 | 20 70 72 65 6f 70 65 6e 73 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 77 61 73 6d 33 32 2d 77 61 73 | .preopens.zig.-target.wasm32-was |
| b58c0 | 69 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | i</code></pre>........<pre><code |
| b58e0 | 3e 24 20 77 61 73 6d 74 69 6d 65 20 2d 2d 64 69 72 3d 2e 20 70 72 65 6f 70 65 6e 73 2e 77 61 73 | >$.wasmtime.--dir=..preopens.was |
| b5900 | 6d 0a 30 3a 20 50 72 65 6f 70 65 6e 7b 20 2e 66 64 20 3d 20 33 2c 20 2e 74 79 70 65 20 3d 20 50 | m.0:.Preopen{..fd.=.3,..type.=.P |
| b5920 | 72 65 6f 70 65 6e 54 79 70 65 7b 20 2e 44 69 72 20 3d 20 27 2e 27 20 7d 20 7d 0a 3c 2f 63 6f 64 | reopenType{..Dir.=.'.'.}.}.</cod |
| b5940 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 | e></pre>.....................<h1 |
| b5960 | 20 69 64 3d 22 54 61 72 67 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 61 72 67 | .id="Targets"><a.href="#toc-Targ |
| b5980 | 65 74 73 22 3e 54 61 72 67 65 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | ets">Targets</a>.<a.class="hdr". |
| b59a0 | 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 | href="#Targets">..</a></h1>..... |
| b59c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 67 65 6e 65 72 61 | ...<p>.......Zig.supports.genera |
| b59e0 | 74 69 6e 67 20 63 6f 64 65 20 66 6f 72 20 61 6c 6c 20 74 61 72 67 65 74 73 20 74 68 61 74 20 4c | ting.code.for.all.targets.that.L |
| b5a00 | 4c 56 4d 20 73 75 70 70 6f 72 74 73 2e 20 48 65 72 65 20 69 73 0a 20 20 20 20 20 20 77 68 61 74 | LVM.supports..Here.is.......what |
| b5a20 | 20 69 74 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 6f 20 65 78 65 63 75 74 65 20 3c 63 6f 64 65 3e | .it.looks.like.to.execute.<code> |
| b5a40 | 7a 69 67 20 74 61 72 67 65 74 73 3c 2f 63 6f 64 65 3e 20 6f 6e 20 61 20 4c 69 6e 75 78 20 78 38 | zig.targets</code>.on.a.Linux.x8 |
| b5a60 | 36 5f 36 34 0a 20 20 20 20 20 20 63 6f 6d 70 75 74 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | 6_64.......computer:.......</p>. |
| b5a80 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | ......<pre><code.class="shell">$ |
| b5aa0 | 20 7a 69 67 20 74 61 72 67 65 74 73 0a 41 72 63 68 69 74 65 63 74 75 72 65 73 3a 0a 20 20 61 72 | .zig.targets.Architectures:...ar |
| b5ac0 | 6d 0a 20 20 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 38 5f 32 61 0a | m.....v8_4a.....v8_3a.....v8_2a. |
| b5ae0 | 20 20 20 20 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 20 20 76 38 6d | ....v8_1a.....v8.....v8r.....v8m |
| b5b00 | 5f 62 61 73 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 20 20 76 | _baseline.....v8m_mainline.....v |
| b5b20 | 37 0a 20 20 20 20 76 37 65 6d 0a 20 20 20 20 76 37 6d 0a 20 20 20 20 76 37 73 0a 20 20 20 20 76 | 7.....v7em.....v7m.....v7s.....v |
| b5b40 | 37 6b 0a 20 20 20 20 76 37 76 65 0a 20 20 20 20 76 36 0a 20 20 20 20 76 36 6d 0a 20 20 20 20 76 | 7k.....v7ve.....v6.....v6m.....v |
| b5b60 | 36 6b 0a 20 20 20 20 76 36 74 32 0a 20 20 20 20 76 35 0a 20 20 20 20 76 35 74 65 0a 20 20 20 20 | 6k.....v6t2.....v5.....v5te..... |
| b5b80 | 76 34 74 0a 20 20 61 72 6d 65 62 0a 20 20 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 0a | v4t...armeb.....v8_4a.....v8_3a. |
| b5ba0 | 20 20 20 20 76 38 5f 32 61 0a 20 20 20 20 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 76 | ....v8_2a.....v8_1a.....v8.....v |
| b5bc0 | 38 72 0a 20 20 20 20 76 38 6d 5f 62 61 73 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 6e | 8r.....v8m_baseline.....v8m_main |
| b5be0 | 6c 69 6e 65 0a 20 20 20 20 76 37 0a 20 20 20 20 76 37 65 6d 0a 20 20 20 20 76 37 6d 0a 20 20 20 | line.....v7.....v7em.....v7m.... |
| b5c00 | 20 76 37 73 0a 20 20 20 20 76 37 6b 0a 20 20 20 20 76 37 76 65 0a 20 20 20 20 76 36 0a 20 20 20 | .v7s.....v7k.....v7ve.....v6.... |
| b5c20 | 20 76 36 6d 0a 20 20 20 20 76 36 6b 0a 20 20 20 20 76 36 74 32 0a 20 20 20 20 76 35 0a 20 20 20 | .v6m.....v6k.....v6t2.....v5.... |
| b5c40 | 20 76 35 74 65 0a 20 20 20 20 76 34 74 0a 20 20 61 61 72 63 68 36 34 0a 20 20 20 20 76 38 5f 34 | .v5te.....v4t...aarch64.....v8_4 |
| b5c60 | 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 38 5f 32 61 0a 20 20 20 20 76 38 5f 31 61 0a | a.....v8_3a.....v8_2a.....v8_1a. |
| b5c80 | 20 20 20 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 20 20 76 38 6d 5f 62 61 73 65 6c 69 6e 65 0a | ....v8.....v8r.....v8m_baseline. |
| b5ca0 | 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 61 61 72 63 68 36 34 5f 62 65 0a 20 20 | ....v8m_mainline...aarch64_be... |
| b5cc0 | 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 38 5f 32 61 0a 20 20 20 20 | ..v8_4a.....v8_3a.....v8_2a..... |
| b5ce0 | 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 20 20 76 38 6d 5f 62 61 73 | v8_1a.....v8.....v8r.....v8m_bas |
| b5d00 | 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 61 76 72 0a 20 20 62 | eline.....v8m_mainline...avr...b |
| b5d20 | 70 66 65 6c 0a 20 20 62 70 66 65 62 0a 20 20 68 65 78 61 67 6f 6e 0a 20 20 6d 69 70 73 0a 20 20 | pfel...bpfeb...hexagon...mips... |
| b5d40 | 6d 69 70 73 65 6c 0a 20 20 6d 69 70 73 36 34 0a 20 20 6d 69 70 73 36 34 65 6c 0a 20 20 6d 73 70 | mipsel...mips64...mips64el...msp |
| b5d60 | 34 33 30 0a 20 20 70 6f 77 65 72 70 63 0a 20 20 70 6f 77 65 72 70 63 36 34 0a 20 20 70 6f 77 65 | 430...powerpc...powerpc64...powe |
| b5d80 | 72 70 63 36 34 6c 65 0a 20 20 72 36 30 30 0a 20 20 61 6d 64 67 63 6e 0a 20 20 72 69 73 63 76 33 | rpc64le...r600...amdgcn...riscv3 |
| b5da0 | 32 0a 20 20 72 69 73 63 76 36 34 0a 20 20 73 70 61 72 63 0a 20 20 73 70 61 72 63 76 39 0a 20 20 | 2...riscv64...sparc...sparcv9... |
| b5dc0 | 73 70 61 72 63 65 6c 0a 20 20 73 33 39 30 78 0a 20 20 74 68 75 6d 62 0a 20 20 20 20 76 38 5f 34 | sparcel...s390x...thumb.....v8_4 |
| b5de0 | 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 38 5f 32 61 0a 20 20 20 20 76 38 5f 31 61 0a | a.....v8_3a.....v8_2a.....v8_1a. |
| b5e00 | 20 20 20 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 20 20 76 38 6d 5f 62 61 73 65 6c 69 6e 65 0a | ....v8.....v8r.....v8m_baseline. |
| b5e20 | 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 20 20 76 37 0a 20 20 20 20 76 37 65 6d | ....v8m_mainline.....v7.....v7em |
| b5e40 | 0a 20 20 20 20 76 37 6d 0a 20 20 20 20 76 37 73 0a 20 20 20 20 76 37 6b 0a 20 20 20 20 76 37 76 | .....v7m.....v7s.....v7k.....v7v |
| b5e60 | 65 0a 20 20 20 20 76 36 0a 20 20 20 20 76 36 6d 0a 20 20 20 20 76 36 6b 0a 20 20 20 20 76 36 74 | e.....v6.....v6m.....v6k.....v6t |
| b5e80 | 32 0a 20 20 20 20 76 35 0a 20 20 20 20 76 35 74 65 0a 20 20 20 20 76 34 74 0a 20 20 74 68 75 6d | 2.....v5.....v5te.....v4t...thum |
| b5ea0 | 62 65 62 0a 20 20 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 38 5f 32 | beb.....v8_4a.....v8_3a.....v8_2 |
| b5ec0 | 61 0a 20 20 20 20 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 20 20 76 | a.....v8_1a.....v8.....v8r.....v |
| b5ee0 | 38 6d 5f 62 61 73 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 20 | 8m_baseline.....v8m_mainline.... |
| b5f00 | 20 76 37 0a 20 20 20 20 76 37 65 6d 0a 20 20 20 20 76 37 6d 0a 20 20 20 20 76 37 73 0a 20 20 20 | .v7.....v7em.....v7m.....v7s.... |
| b5f20 | 20 76 37 6b 0a 20 20 20 20 76 37 76 65 0a 20 20 20 20 76 36 0a 20 20 20 20 76 36 6d 0a 20 20 20 | .v7k.....v7ve.....v6.....v6m.... |
| b5f40 | 20 76 36 6b 0a 20 20 20 20 76 36 74 32 0a 20 20 20 20 76 35 0a 20 20 20 20 76 35 74 65 0a 20 20 | .v6k.....v6t2.....v5.....v5te... |
| b5f60 | 20 20 76 34 74 0a 20 20 69 33 38 36 0a 20 20 78 38 36 5f 36 34 20 28 6e 61 74 69 76 65 29 0a 20 | ..v4t...i386...x86_64.(native).. |
| b5f80 | 20 78 63 6f 72 65 0a 20 20 6e 76 70 74 78 0a 20 20 6e 76 70 74 78 36 34 0a 20 20 6c 61 6e 61 69 | .xcore...nvptx...nvptx64...lanai |
| b5fa0 | 0a 20 20 77 61 73 6d 33 32 0a 20 20 77 61 73 6d 36 34 0a 0a 4f 70 65 72 61 74 69 6e 67 20 53 79 | ...wasm32...wasm64..Operating.Sy |
| b5fc0 | 73 74 65 6d 73 3a 0a 20 20 66 72 65 65 73 74 61 6e 64 69 6e 67 0a 20 20 61 6e 61 6e 61 73 0a 20 | stems:...freestanding...ananas.. |
| b5fe0 | 20 63 6c 6f 75 64 61 62 69 0a 20 20 64 72 61 67 6f 6e 66 6c 79 0a 20 20 66 72 65 65 62 73 64 0a | .cloudabi...dragonfly...freebsd. |
| b6000 | 20 20 66 75 63 68 73 69 61 0a 20 20 69 6f 73 0a 20 20 6b 66 72 65 65 62 73 64 0a 20 20 6c 69 6e | ..fuchsia...ios...kfreebsd...lin |
| b6020 | 75 78 20 28 6e 61 74 69 76 65 29 0a 20 20 6c 76 32 0a 20 20 6d 61 63 6f 73 0a 20 20 6e 65 74 62 | ux.(native)...lv2...macos...netb |
| b6040 | 73 64 0a 20 20 6f 70 65 6e 62 73 64 0a 20 20 73 6f 6c 61 72 69 73 0a 20 20 77 69 6e 64 6f 77 73 | sd...openbsd...solaris...windows |
| b6060 | 0a 20 20 68 61 69 6b 75 0a 20 20 6d 69 6e 69 78 0a 20 20 72 74 65 6d 73 0a 20 20 6e 61 63 6c 0a | ...haiku...minix...rtems...nacl. |
| b6080 | 20 20 63 6e 6b 0a 20 20 61 69 78 0a 20 20 63 75 64 61 0a 20 20 6e 76 63 6c 0a 20 20 61 6d 64 68 | ..cnk...aix...cuda...nvcl...amdh |
| b60a0 | 73 61 0a 20 20 70 73 34 0a 20 20 65 6c 66 69 61 6d 63 75 0a 20 20 74 76 6f 73 0a 20 20 77 61 73 | sa...ps4...elfiamcu...tvos...was |
| b60c0 | 69 0a 20 20 77 61 74 63 68 6f 73 0a 20 20 6d 65 73 61 33 64 0a 20 20 63 6f 6e 74 69 6b 69 0a 20 | i...watchos...mesa3d...contiki.. |
| b60e0 | 20 61 6d 64 70 61 6c 0a 20 20 7a 65 6e 0a 20 20 75 65 66 69 0a 0a 43 20 41 42 49 73 3a 0a 20 20 | .amdpal...zen...uefi..C.ABIs:... |
| b6100 | 6e 6f 6e 65 0a 20 20 67 6e 75 20 28 6e 61 74 69 76 65 29 0a 20 20 67 6e 75 61 62 69 6e 33 32 0a | none...gnu.(native)...gnuabin32. |
| b6120 | 20 20 67 6e 75 61 62 69 36 34 0a 20 20 67 6e 75 65 61 62 69 0a 20 20 67 6e 75 65 61 62 69 68 66 | ..gnuabi64...gnueabi...gnueabihf |
| b6140 | 0a 20 20 67 6e 75 78 33 32 0a 20 20 63 6f 64 65 31 36 0a 20 20 65 61 62 69 0a 20 20 65 61 62 69 | ...gnux32...code16...eabi...eabi |
| b6160 | 68 66 0a 20 20 61 6e 64 72 6f 69 64 0a 20 20 6d 75 73 6c 0a 20 20 6d 75 73 6c 65 61 62 69 0a 20 | hf...android...musl...musleabi.. |
| b6180 | 20 6d 75 73 6c 65 61 62 69 68 66 0a 20 20 6d 73 76 63 0a 20 20 69 74 61 6e 69 75 6d 0a 20 20 63 | .musleabihf...msvc...itanium...c |
| b61a0 | 79 67 6e 75 73 0a 20 20 63 6f 72 65 63 6c 72 0a 20 20 73 69 6d 75 6c 61 74 6f 72 0a 0a 41 76 61 | ygnus...coreclr...simulator..Ava |
| b61c0 | 69 6c 61 62 6c 65 20 6c 69 62 63 73 3a 0a 20 20 61 61 72 63 68 36 34 5f 62 65 2d 6c 69 6e 75 78 | ilable.libcs:...aarch64_be-linux |
| b61e0 | 2d 67 6e 75 0a 20 20 61 61 72 63 68 36 34 5f 62 65 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 61 | -gnu...aarch64_be-linux-musl...a |
| b6200 | 61 72 63 68 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 61 61 72 63 68 36 34 2d 6c 69 6e 75 78 | arch64-linux-gnu...aarch64-linux |
| b6220 | 2d 6d 75 73 6c 65 61 62 69 0a 20 20 61 72 6d 65 62 2d 6c 69 6e 75 78 2d 67 6e 75 65 61 62 69 0a | -musleabi...armeb-linux-gnueabi. |
| b6240 | 20 20 61 72 6d 65 62 2d 6c 69 6e 75 78 2d 67 6e 75 65 61 62 69 68 66 0a 20 20 61 72 6d 65 62 2d | ..armeb-linux-gnueabihf...armeb- |
| b6260 | 6c 69 6e 75 78 2d 6d 75 73 6c 65 61 62 69 0a 20 20 61 72 6d 65 62 2d 6c 69 6e 75 78 2d 6d 75 73 | linux-musleabi...armeb-linux-mus |
| b6280 | 6c 65 61 62 69 68 66 0a 20 20 61 72 6d 2d 6c 69 6e 75 78 2d 67 6e 75 65 61 62 69 0a 20 20 61 72 | leabihf...arm-linux-gnueabi...ar |
| b62a0 | 6d 2d 6c 69 6e 75 78 2d 67 6e 75 65 61 62 69 68 66 0a 20 20 61 72 6d 2d 6c 69 6e 75 78 2d 6d 75 | m-linux-gnueabihf...arm-linux-mu |
| b62c0 | 73 6c 65 61 62 69 0a 20 20 61 72 6d 2d 6c 69 6e 75 78 2d 6d 75 73 6c 65 61 62 69 68 66 0a 20 20 | sleabi...arm-linux-musleabihf... |
| b62e0 | 69 33 38 36 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 69 33 38 36 2d 6c 69 6e 75 78 2d 6d 75 73 6c | i386-linux-gnu...i386-linux-musl |
| b6300 | 0a 20 20 6d 69 70 73 36 34 65 6c 2d 6c 69 6e 75 78 2d 67 6e 75 61 62 69 36 34 0a 20 20 6d 69 70 | ...mips64el-linux-gnuabi64...mip |
| b6320 | 73 36 34 65 6c 2d 6c 69 6e 75 78 2d 67 6e 75 61 62 69 6e 33 32 0a 20 20 6d 69 70 73 36 34 65 6c | s64el-linux-gnuabin32...mips64el |
| b6340 | 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 6d 69 70 73 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 61 62 | -linux-musl...mips64-linux-gnuab |
| b6360 | 69 36 34 0a 20 20 6d 69 70 73 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 61 62 69 6e 33 32 0a 20 20 6d | i64...mips64-linux-gnuabin32...m |
| b6380 | 69 70 73 36 34 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 6d 69 70 73 65 6c 2d 6c 69 6e 75 78 2d | ips64-linux-musl...mipsel-linux- |
| b63a0 | 67 6e 75 0a 20 20 6d 69 70 73 65 6c 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 6d 69 70 73 2d 6c | gnu...mipsel-linux-musl...mips-l |
| b63c0 | 69 6e 75 78 2d 67 6e 75 0a 20 20 6d 69 70 73 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 6e 69 6f | inux-gnu...mips-linux-musl...nio |
| b63e0 | 73 32 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 70 6f 77 65 72 70 63 36 34 6c 65 2d 6c 69 6e 75 78 | s2-linux-gnu...powerpc64le-linux |
| b6400 | 2d 67 6e 75 0a 20 20 70 6f 77 65 72 70 63 36 34 6c 65 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 | -gnu...powerpc64le-linux-musl... |
| b6420 | 70 6f 77 65 72 70 63 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 70 6f 77 65 72 70 63 36 34 2d | powerpc64-linux-gnu...powerpc64- |
| b6440 | 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 70 6f 77 65 72 70 63 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 | linux-musl...powerpc-linux-gnu.. |
| b6460 | 20 70 6f 77 65 72 70 63 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 72 69 73 63 76 33 32 2d 6c 69 | .powerpc-linux-musl...riscv32-li |
| b6480 | 6e 75 78 2d 6d 75 73 6c 0a 20 20 72 69 73 63 76 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 72 | nux-musl...riscv64-linux-gnu...r |
| b64a0 | 69 73 63 76 36 34 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 73 33 39 30 78 2d 6c 69 6e 75 78 2d | iscv64-linux-musl...s390x-linux- |
| b64c0 | 67 6e 75 0a 20 20 73 33 39 30 78 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 73 70 61 72 63 2d 6c | gnu...s390x-linux-musl...sparc-l |
| b64e0 | 69 6e 75 78 2d 67 6e 75 0a 20 20 73 70 61 72 63 76 39 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 77 | inux-gnu...sparcv9-linux-gnu...w |
| b6500 | 61 73 6d 33 32 2d 66 72 65 65 73 74 61 6e 64 69 6e 67 2d 6d 75 73 6c 0a 20 20 77 61 73 6d 33 32 | asm32-freestanding-musl...wasm32 |
| b6520 | 2d 77 61 73 69 2d 6d 75 73 6c 0a 20 20 78 38 36 5f 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 | -wasi-musl...x86_64-linux-gnu... |
| b6540 | 78 38 36 5f 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 78 33 32 0a 20 20 78 38 36 5f 36 34 2d 6c 69 6e | x86_64-linux-gnux32...x86_64-lin |
| b6560 | 75 78 2d 6d 75 73 6c 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ux-musl</code></pre>.......<p>.. |
| b6580 | 20 20 20 20 20 54 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 28 3c | .....The.Zig.Standard.Library.(< |
| b65a0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| b65c0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| b65e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c | class="tok-str">"std"< |
| b6600 | 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 29 20 68 61 73 20 61 72 63 68 69 74 65 63 74 75 72 65 | /span>)</code>).has.architecture |
| b6620 | 2c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 61 6e 64 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 | ,.environment,.and.operating.sys |
| b6640 | 74 65 6d 0a 20 20 20 20 20 20 61 62 73 74 72 61 63 74 69 6f 6e 73 2c 20 61 6e 64 20 74 68 75 73 | tem.......abstractions,.and.thus |
| b6660 | 20 74 61 6b 65 73 20 61 64 64 69 74 69 6f 6e 61 6c 20 77 6f 72 6b 20 74 6f 20 73 75 70 70 6f 72 | .takes.additional.work.to.suppor |
| b6680 | 74 20 6d 6f 72 65 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 4e 6f 74 20 61 6c 6c 20 | t.more.platforms........Not.all. |
| b66a0 | 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 63 6f 64 65 20 72 65 71 75 69 72 65 73 20 6f | standard.library.code.requires.o |
| b66c0 | 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 61 62 73 74 72 61 63 74 69 6f 6e 73 2c 20 68 6f | perating.system.abstractions,.ho |
| b66e0 | 77 65 76 65 72 2c 0a 20 20 20 20 20 20 73 6f 20 74 68 69 6e 67 73 20 73 75 63 68 20 61 73 20 67 | wever,.......so.things.such.as.g |
| b6700 | 65 6e 65 72 69 63 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 77 6f 72 6b 20 6f 6e 20 61 | eneric.data.structures.work.on.a |
| b6720 | 6c 6c 20 61 62 6f 76 65 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ll.above.platforms........</p>.. |
| b6740 | 20 20 20 20 20 3c 70 3e 54 68 65 20 63 75 72 72 65 6e 74 20 6c 69 73 74 20 6f 66 20 74 61 72 67 | .....<p>The.current.list.of.targ |
| b6760 | 65 74 73 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 | ets.supported.by.the.Zig.Standar |
| b6780 | 64 20 4c 69 62 72 61 72 79 20 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | d.Library.is:</p>.......<ul>.... |
| b67a0 | 20 20 20 3c 6c 69 3e 4c 69 6e 75 78 20 78 38 36 5f 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c | ...<li>Linux.x86_64</li>.......< |
| b67c0 | 6c 69 3e 57 69 6e 64 6f 77 73 20 78 38 36 5f 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 6c 69 | li>Windows.x86_64</li>.......<li |
| b67e0 | 3e 6d 61 63 4f 53 20 78 38 36 5f 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | >macOS.x86_64</li>.......</ul>.. |
| b6800 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 53 74 79 6c 65 2d 47 75 69 64 65 22 | ............<h1.id="Style-Guide" |
| b6820 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 53 74 79 6c | ><a.href="#toc-Style-Guide">Styl |
| b6840 | 65 20 47 75 69 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | e.Guide</a>.<a.class="hdr".href= |
| b6860 | 22 23 53 74 79 6c 65 2d 47 75 69 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 | "#Style-Guide">..</a></h1>...... |
| b6880 | 20 20 3c 70 3e 0a 54 68 65 73 65 20 63 6f 64 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 61 | ..<p>.These.coding.conventions.a |
| b68a0 | 72 65 20 6e 6f 74 20 65 6e 66 6f 72 63 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c | re.not.enforced.by.the.compiler, |
| b68c0 | 20 62 75 74 20 74 68 65 79 20 61 72 65 20 73 68 69 70 70 65 64 20 69 6e 0a 74 68 69 73 20 64 6f | .but.they.are.shipped.in.this.do |
| b68e0 | 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70 69 | cumentation.along.with.the.compi |
| b6900 | 6c 65 72 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 70 6f 69 6e 74 20 | ler.in.order.to.provide.a.point. |
| b6920 | 6f 66 0a 72 65 66 65 72 65 6e 63 65 2c 20 73 68 6f 75 6c 64 20 61 6e 79 6f 6e 65 20 77 69 73 68 | of.reference,.should.anyone.wish |
| b6940 | 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 61 6e 20 61 75 74 68 6f 72 69 74 79 20 6f 6e 20 61 67 72 | .to.point.to.an.authority.on.agr |
| b6960 | 65 65 64 20 75 70 6f 6e 20 5a 69 67 0a 63 6f 64 69 6e 67 20 73 74 79 6c 65 2e 0a 20 20 20 20 20 | eed.upon.Zig.coding.style....... |
| b6980 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 57 68 69 74 65 73 70 61 63 65 22 3e | .</p>.......<h2.id="Whitespace"> |
| b69a0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 68 69 74 65 73 70 61 63 65 22 3e 57 68 69 74 65 73 | <a.href="#toc-Whitespace">Whites |
| b69c0 | 70 61 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 | pace</a>.<a.class="hdr".href="#W |
| b69e0 | 68 69 74 65 73 70 61 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 75 | hitespace">..</a></h2>........<u |
| b6a00 | 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 34 20 73 70 61 63 | l>.........<li>...........4.spac |
| b6a20 | 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 | e.indentation.........</li>..... |
| b6a40 | 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 4f 70 65 6e 20 62 72 61 63 65 73 20 6f | ....<li>...........Open.braces.o |
| b6a60 | 6e 20 73 61 6d 65 20 6c 69 6e 65 2c 20 75 6e 6c 65 73 73 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 | n.same.line,.unless.you.need.to. |
| b6a80 | 77 72 61 70 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | wrap..........</li>.........<li> |
| b6aa0 | 49 66 20 61 20 6c 69 73 74 20 6f 66 20 74 68 69 6e 67 73 20 69 73 20 6c 6f 6e 67 65 72 20 74 68 | If.a.list.of.things.is.longer.th |
| b6ac0 | 61 6e 20 32 2c 20 70 75 74 20 65 61 63 68 20 69 74 65 6d 20 6f 6e 20 69 74 73 20 6f 77 6e 20 6c | an.2,.put.each.item.on.its.own.l |
| b6ae0 | 69 6e 65 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 65 78 65 72 63 69 73 65 20 74 68 65 20 61 | ine.and...........exercise.the.a |
| b6b00 | 62 69 6c 69 74 79 20 74 6f 20 70 75 74 20 61 6e 20 65 78 74 72 61 20 63 6f 6d 6d 61 20 61 74 20 | bility.to.put.an.extra.comma.at. |
| b6b20 | 74 68 65 20 65 6e 64 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | the.end..........</li>.........< |
| b6b40 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 4c 69 6e 65 20 6c 65 6e 67 74 68 3a 20 61 69 6d 20 66 | li>...........Line.length:.aim.f |
| b6b60 | 6f 72 20 31 30 30 3b 20 75 73 65 20 63 6f 6d 6d 6f 6e 20 73 65 6e 73 65 2e 0a 20 20 20 20 20 20 | or.100;.use.common.sense........ |
| b6b80 | 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ..</li>.......</ul>............. |
| b6ba0 | 20 3c 68 32 20 69 64 3d 22 4e 61 6d 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4e 61 | .<h2.id="Names"><a.href="#toc-Na |
| b6bc0 | 6d 65 73 22 3e 4e 61 6d 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | mes">Names</a>.<a.class="hdr".hr |
| b6be0 | 65 66 3d 22 23 4e 61 6d 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | ef="#Names">..</a></h2>........< |
| b6c00 | 70 3e 0a 20 20 20 20 20 20 52 6f 75 67 68 6c 79 20 73 70 65 61 6b 69 6e 67 3a 20 3c 63 6f 64 65 | p>.......Roughly.speaking:.<code |
| b6c20 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 61 6d 65 6c 43 61 73 65 46 75 6e 63 74 69 6f 6e 4e 61 | .class="zig">camelCaseFunctionNa |
| b6c40 | 6d 65 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 69 74 | me</code>,.<code.class="zig">Tit |
| b6c60 | 6c 65 43 61 73 65 54 79 70 65 4e 61 6d 65 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 | leCaseTypeName</code>,.......... |
| b6c80 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6e 61 6b 65 5f 63 61 73 | .....<code.class="zig">snake_cas |
| b6ca0 | 65 5f 76 61 72 69 61 62 6c 65 5f 6e 61 6d 65 3c 2f 63 6f 64 65 3e 2e 20 4d 6f 72 65 20 70 72 65 | e_variable_name</code>..More.pre |
| b6cc0 | 63 69 73 65 6c 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | cisely:.......</p>.......<ul>... |
| b6ce0 | 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 | ......<li>.............If.<code. |
| b6d00 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 20 | class="zig">x</code>.is.a.<code. |
| b6d20 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | class="zig"><span.class="tok-typ |
| b6d40 | 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 | e">type</span></code>........... |
| b6d60 | 20 20 74 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 | ..then.<code.class="zig">x</code |
| b6d80 | 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 69 | >.should.be.<code.class="zig">Ti |
| b6da0 | 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e 2c 20 75 6e 6c 65 73 73 20 69 74 0a 20 20 20 20 20 20 | tleCase</code>,.unless.it....... |
| b6dc0 | 20 20 20 20 20 20 69 73 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......is.a.<code.class="zig"><sp |
| b6de0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c | an.class="tok-kw">struct</span>< |
| b6e00 | 2f 63 6f 64 65 3e 20 77 69 74 68 20 30 20 66 69 65 6c 64 73 20 61 6e 64 20 69 73 20 6e 65 76 65 | /code>.with.0.fields.and.is.neve |
| b6e20 | 72 20 6d 65 61 6e 74 20 74 6f 20 62 65 20 69 6e 73 74 61 6e 74 69 61 74 65 64 2c 0a 20 20 20 20 | r.meant.to.be.instantiated,..... |
| b6e40 | 20 20 20 20 20 20 20 20 69 6e 20 77 68 69 63 68 20 63 61 73 65 20 69 74 20 69 73 20 63 6f 6e 73 | ........in.which.case.it.is.cons |
| b6e60 | 69 64 65 72 65 64 20 74 6f 20 62 65 20 61 20 22 6e 61 6d 65 73 70 61 63 65 22 20 61 6e 64 20 75 | idered.to.be.a."namespace".and.u |
| b6e80 | 73 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6e 61 6b 65 5f 63 61 73 65 | ses.<code.class="zig">snake_case |
| b6ea0 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | </code>..........</li>.........< |
| b6ec0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | li>.............If.<code.class=" |
| b6ee0 | 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 63 61 6c 6c 61 62 6c 65 2c 20 61 6e 64 20 3c | zig">x</code>.is.callable,.and.< |
| b6f00 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 27 73 20 72 65 74 75 | code.class="zig">x</code>'s.retu |
| b6f20 | 72 6e 20 74 79 70 65 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | rn.type.is.............<code.cla |
| b6f40 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| b6f60 | 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 20 3c 63 6f 64 65 20 63 | type</span></code>,.then.<code.c |
| b6f80 | 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 | lass="zig">x</code>.should.be.<c |
| b6fa0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 69 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e | ode.class="zig">TitleCase</code> |
| b6fc0 | 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 | ..........</li>.........<li>.... |
| b6fe0 | 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c | .........If.<code.class="zig">x< |
| b7000 | 2f 63 6f 64 65 3e 20 69 73 20 6f 74 68 65 72 77 69 73 65 20 63 61 6c 6c 61 62 6c 65 2c 20 74 68 | /code>.is.otherwise.callable,.th |
| b7020 | 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 | en.<code.class="zig">x</code>.sh |
| b7040 | 6f 75 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ould.............be.<code.class= |
| b7060 | 22 7a 69 67 22 3e 63 61 6d 65 6c 43 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 | "zig">camelCase</code>.......... |
| b7080 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4f | </li>.........<li>.............O |
| b70a0 | 74 68 65 72 77 69 73 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 | therwise,.<code.class="zig">x</c |
| b70c0 | 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ode>.should.be.<code.class="zig" |
| b70e0 | 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 | >snake_case</code>..........</li |
| b7100 | 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 63 | >.......</ul>.......<p>.......Ac |
| b7120 | 72 6f 6e 79 6d 73 2c 20 69 6e 69 74 69 61 6c 69 73 6d 73 2c 20 70 72 6f 70 65 72 20 6e 6f 75 6e | ronyms,.initialisms,.proper.noun |
| b7140 | 73 2c 20 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 77 6f 72 64 20 74 68 61 74 20 68 61 73 20 63 61 | s,.or.any.other.word.that.has.ca |
| b7160 | 70 69 74 61 6c 69 7a 61 74 69 6f 6e 0a 20 20 20 20 20 20 72 75 6c 65 73 20 69 6e 20 77 72 69 74 | pitalization.......rules.in.writ |
| b7180 | 74 65 6e 20 45 6e 67 6c 69 73 68 20 61 72 65 20 73 75 62 6a 65 63 74 20 74 6f 20 6e 61 6d 69 6e | ten.English.are.subject.to.namin |
| b71a0 | 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 6a 75 73 74 20 6c 69 6b 65 20 61 6e 79 20 6f 74 68 65 | g.conventions.just.like.any.othe |
| b71c0 | 72 0a 20 20 20 20 20 20 77 6f 72 64 2e 20 45 76 65 6e 20 61 63 72 6f 6e 79 6d 73 20 74 68 61 74 | r.......word..Even.acronyms.that |
| b71e0 | 20 61 72 65 20 6f 6e 6c 79 20 32 20 6c 65 74 74 65 72 73 20 6c 6f 6e 67 20 61 72 65 20 73 75 62 | .are.only.2.letters.long.are.sub |
| b7200 | 6a 65 63 74 20 74 6f 20 74 68 65 73 65 0a 20 20 20 20 20 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 2e | ject.to.these.......conventions. |
| b7220 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 69 6c 65 | .......</p>.......<p>.......File |
| b7240 | 20 6e 61 6d 65 73 20 66 61 6c 6c 20 69 6e 74 6f 20 74 77 6f 20 63 61 74 65 67 6f 72 69 65 73 3a | .names.fall.into.two.categories: |
| b7260 | 20 74 79 70 65 73 20 61 6e 64 20 6e 61 6d 65 73 70 61 63 65 73 2e 20 49 66 20 74 68 65 20 66 69 | .types.and.namespaces..If.the.fi |
| b7280 | 6c 65 0a 20 20 20 20 20 20 28 69 6d 70 6c 69 63 69 74 6c 79 20 61 20 73 74 72 75 63 74 29 20 68 | le.......(implicitly.a.struct).h |
| b72a0 | 61 73 20 74 6f 70 20 6c 65 76 65 6c 20 66 69 65 6c 64 73 2c 20 69 74 20 73 68 6f 75 6c 64 20 62 | as.top.level.fields,.it.should.b |
| b72c0 | 65 20 6e 61 6d 65 64 20 6c 69 6b 65 20 61 6e 79 0a 20 20 20 20 20 20 6f 74 68 65 72 20 73 74 72 | e.named.like.any.......other.str |
| b72e0 | 75 63 74 20 77 69 74 68 20 66 69 65 6c 64 73 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 | uct.with.fields.using.<code.clas |
| b7300 | 73 3d 22 7a 69 67 22 3e 54 69 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 | s="zig">TitleCase</code>..Otherw |
| b7320 | 69 73 65 2c 0a 20 20 20 20 20 20 69 74 20 73 68 6f 75 6c 64 20 75 73 65 20 3c 63 6f 64 65 20 63 | ise,.......it.should.use.<code.c |
| b7340 | 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 3e 2e 20 44 69 | lass="zig">snake_case</code>..Di |
| b7360 | 72 65 63 74 6f 72 79 20 6e 61 6d 65 73 20 73 68 6f 75 6c 64 20 62 65 0a 20 20 20 20 20 20 3c 63 | rectory.names.should.be.......<c |
| b7380 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 | ode.class="zig">snake_case</code |
| b73a0 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | >........</p>.......<p>.......Th |
| b73c0 | 65 73 65 20 61 72 65 20 67 65 6e 65 72 61 6c 20 72 75 6c 65 73 20 6f 66 20 74 68 75 6d 62 3b 20 | ese.are.general.rules.of.thumb;. |
| b73e0 | 69 66 20 69 74 20 6d 61 6b 65 73 20 73 65 6e 73 65 20 74 6f 20 64 6f 20 73 6f 6d 65 74 68 69 6e | if.it.makes.sense.to.do.somethin |
| b7400 | 67 20 64 69 66 66 65 72 65 6e 74 2c 0a 20 20 20 20 20 20 64 6f 20 77 68 61 74 20 6d 61 6b 65 73 | g.different,.......do.what.makes |
| b7420 | 20 73 65 6e 73 65 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 74 68 65 72 65 20 69 73 | .sense..For.example,.if.there.is |
| b7440 | 20 61 6e 20 65 73 74 61 62 6c 69 73 68 65 64 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 73 75 63 68 20 | .an.established.convention.such. |
| b7460 | 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 45 4e 4f 45 4e | as.......<code.class="zig">ENOEN |
| b7480 | 54 3c 2f 63 6f 64 65 3e 2c 20 66 6f 6c 6c 6f 77 20 74 68 65 20 65 73 74 61 62 6c 69 73 68 65 64 | T</code>,.follow.the.established |
| b74a0 | 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 | .convention........</p>......... |
| b74c0 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 61 6d 70 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 | .....<h2.id="Examples"><a.href=" |
| b74e0 | 23 74 6f 63 2d 45 78 61 6d 70 6c 65 73 22 3e 45 78 61 6d 70 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 | #toc-Examples">Examples</a>.<a.c |
| b7500 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 6d 70 6c 65 73 22 3e c2 a7 3c 2f | lass="hdr".href="#Examples">..</ |
| b7520 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | a></h2>........<pre><code.class= |
| b7540 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | "zig"><span.class="tok-kw">const |
| b7560 | 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 73 70 61 63 65 5f 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 | </span>.namespace_name.=.<span.c |
| b7580 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e | lass="tok-builtin">@import</span |
| b75a0 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 69 | >(<span.class="tok-str">"di |
| b75c0 | 72 5f 6e 61 6d 65 2f 66 69 6c 65 5f 6e 61 6d 65 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | r_name/file_name.zig"</span |
| b75e0 | 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | >);.<span.class="tok-kw">const</ |
| b7600 | 73 70 61 6e 3e 20 54 79 70 65 4e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>.TypeName.=.<span.class="to |
| b7620 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@import</span>(<span. |
| b7640 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 69 72 5f 6e 61 6d 65 2f 54 | class="tok-str">"dir_name/T |
| b7660 | 79 70 65 4e 61 6d 65 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e | ypeName.zig"</span>);.<span |
| b7680 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 | .class="tok-kw">var</span>.globa |
| b76a0 | 6c 5f 76 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | l_var:.<span.class="tok-type">i3 |
| b76c0 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | 2</span>.=.<span.class="tok-null |
| b76e0 | 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">undefined</span>;.<span.class= |
| b7700 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6e 73 74 5f 6e 61 6d 65 | "tok-kw">const</span>.const_name |
| b7720 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f | .=.<span.class="tok-number">42</ |
| b7740 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | span>;.<span.class="tok-kw">cons |
| b7760 | 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6d 69 74 69 76 65 5f 74 79 70 65 5f 61 6c 69 61 73 20 3d 20 | t</span>.primitive_type_alias.=. |
| b7780 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">f32</span |
| b77a0 | 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | >;.<span.class="tok-kw">const</s |
| b77c0 | 70 61 6e 3e 20 73 74 72 69 6e 67 5f 61 6c 69 61 73 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | pan>.string_alias.=.[]<span.clas |
| b77e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 | s="tok-type">u8</span>;..<span.c |
| b7800 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 | lass="tok-kw">const</span>.Struc |
| b7820 | 74 4e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 | tName.=.<span.class="tok-kw">str |
| b7840 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 69 65 6c 64 3a 20 3c 73 70 61 6e 20 63 6c | uct</span>.{.....field:.<span.cl |
| b7860 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 | ass="tok-type">i32</span>,.};.<s |
| b7880 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| b78a0 | 53 74 72 75 63 74 41 6c 69 61 73 20 3d 20 53 74 72 75 63 74 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e | StructAlias.=.StructName;..<span |
| b78c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | .class="tok-kw">fn</span>.<span. |
| b78e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3c 2f 73 70 61 | class="tok-fn">functionName</spa |
| b7900 | 6e 3e 28 70 61 72 61 6d 5f 6e 61 6d 65 3a 20 54 79 70 65 4e 61 6d 65 29 20 3c 73 70 61 6e 20 63 | n>(param_name:.TypeName).<span.c |
| b7920 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | lass="tok-type">void</span>.{... |
| b7940 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| b7960 | 3e 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 | >.functionPointer.=.functionName |
| b7980 | 3b 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 28 29 3b 0a 20 20 20 20 66 75 6e | ;.....functionPointer();.....fun |
| b79a0 | 63 74 69 6f 6e 50 6f 69 6e 74 65 72 20 3d 20 6f 74 68 65 72 46 75 6e 63 74 69 6f 6e 3b 0a 20 20 | ctionPointer.=.otherFunction;... |
| b79c0 | 20 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 28 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 | ..functionPointer();.}.<span.cla |
| b79e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 74 69 6f | ss="tok-kw">const</span>.functio |
| b7a00 | 6e 41 6c 69 61 73 20 3d 20 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c | nAlias.=.functionName;..<span.cl |
| b7a20 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ass="tok-kw">fn</span>.<span.cla |
| b7a40 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 54 65 6d 70 6c 61 74 65 46 75 6e 63 74 69 6f 6e | ss="tok-fn">ListTemplateFunction |
| b7a60 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | </span>(<span.class="tok-kw">com |
| b7a80 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 43 68 69 6c 64 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c | ptime</span>.ChildType:.<span.cl |
| b7aa0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | ass="tok-type">type</span>,.<spa |
| b7ac0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e | n.class="tok-kw">comptime</span> |
| b7ae0 | 20 66 69 78 65 64 5f 73 69 7a 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .fixed_size:.<span.class="tok-ty |
| b7b00 | 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pe">usize</span>).<span.class="t |
| b7b20 | 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ok-type">type</span>.{.....<span |
| b7b40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 4c 69 | .class="tok-kw">return</span>.Li |
| b7b60 | 73 74 28 43 68 69 6c 64 54 79 70 65 2c 20 66 69 78 65 64 5f 73 69 7a 65 29 3b 0a 7d 0a 0a 3c 73 | st(ChildType,.fixed_size);.}..<s |
| b7b80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 | pan.class="tok-kw">fn</span>.<sp |
| b7ba0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 53 68 6f 72 74 4c 69 73 74 3c 2f 73 70 61 | an.class="tok-fn">ShortList</spa |
| b7bc0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | n>(<span.class="tok-kw">comptime |
| b7be0 | 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.T:.<span.class="tok-type |
| b7c00 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">type</span>,.<span.class="tok- |
| b7c20 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 | kw">comptime</span>.n:.<span.cla |
| b7c40 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ss="tok-type">usize</span>).<spa |
| b7c60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">type</span>.{ |
| b7c80 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e | .....<span.class="tok-kw">return |
| b7ca0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 | </span>.<span.class="tok-kw">str |
| b7cc0 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 5f 6e 61 6d 65 3a | uct</span>.{.........field_name: |
| b7ce0 | 20 5b 6e 5d 54 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .[n]T,.........<span.class="tok- |
| b7d00 | 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 | kw">fn</span>.<span.class="tok-f |
| b7d20 | 6e 22 3e 6d 65 74 68 6f 64 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | n">methodName</span>().<span.cla |
| b7d40 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 20 20 20 | ss="tok-type">void</span>.{}.... |
| b7d60 | 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | .};.}..<span.class="tok-comment" |
| b7d80 | 3e 2f 2f 20 54 68 65 20 77 6f 72 64 20 58 4d 4c 20 6c 6f 73 65 73 20 69 74 73 20 63 61 73 69 6e | >//.The.word.XML.loses.its.casin |
| b7da0 | 67 20 77 68 65 6e 20 75 73 65 64 20 69 6e 20 5a 69 67 20 69 64 65 6e 74 69 66 69 65 72 73 2e 3c | g.when.used.in.Zig.identifiers.< |
| b7dc0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | /span>.<span.class="tok-kw">cons |
| b7de0 | 74 3c 2f 73 70 61 6e 3e 20 78 6d 6c 5f 64 6f 63 75 6d 65 6e 74 20 3d 0a 20 20 20 20 3c 73 70 61 | t</span>.xml_document.=.....<spa |
| b7e00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 3f 78 6d 6c 20 76 65 72 | n.class="tok-str">\\<?xml.ver |
| b7e20 | 73 69 6f 6e 3d 26 71 75 6f 74 3b 31 2e 30 26 71 75 6f 74 3b 20 65 6e 63 6f 64 69 6e 67 3d 26 71 | sion="1.0".encoding=&q |
| b7e40 | 75 6f 74 3b 55 54 46 2d 38 26 71 75 6f 74 3b 3f 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 | uot;UTF-8"?>.</span>.... |
| b7e60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 64 6f 63 75 | <span.class="tok-str">\\<docu |
| b7e80 | 6d 65 6e 74 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ment>.</span>....<span.class= |
| b7ea0 | 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 2f 64 6f 63 75 6d 65 6e 74 26 67 74 3b 0a 3c 2f | "tok-str">\\</document>.</ |
| b7ec0 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | span>;.<span.class="tok-kw">cons |
| b7ee0 | 74 3c 2f 73 70 61 6e 3e 20 58 6d 6c 50 61 72 73 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t</span>.XmlParser.=.<span.class |
| b7f00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 69 | ="tok-kw">struct</span>.{.....fi |
| b7f20 | 65 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | eld:.<span.class="tok-type">i32< |
| b7f40 | 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | /span>,.};..<span.class="tok-com |
| b7f60 | 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 69 6e 69 74 69 61 6c 73 20 42 45 20 28 42 69 67 20 45 6e | ment">//.The.initials.BE.(Big.En |
| b7f80 | 64 69 61 6e 29 20 61 72 65 20 6a 75 73 74 20 61 6e 6f 74 68 65 72 20 77 6f 72 64 20 69 6e 20 5a | dian).are.just.another.word.in.Z |
| b7fa0 | 69 67 20 69 64 65 6e 74 69 66 69 65 72 20 6e 61 6d 65 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ig.identifier.names.</span>.<spa |
| b7fc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | n.class="tok-kw">fn</span>.<span |
| b7fe0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 65 61 64 55 33 32 42 65 3c 2f 73 70 61 6e 3e | .class="tok-fn">readU32Be</span> |
| b8000 | 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | ().<span.class="tok-type">u32</s |
| b8020 | 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | pan>.{}</code></pre>.......<p>.. |
| b8040 | 20 20 20 20 20 53 65 65 20 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 | .....See.the.Zig.Standard.Librar |
| b8060 | 79 20 66 6f 72 20 6d 6f 72 65 20 65 78 61 6d 70 6c 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | y.for.more.examples........</p>. |
| b8080 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 44 6f 63 2d 43 6f 6d 6d 65 6e 74 | .............<h2.id="Doc-Comment |
| b80a0 | 2d 47 75 69 64 61 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 6f 63 2d 43 6f 6d | -Guidance"><a.href="#toc-Doc-Com |
| b80c0 | 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 3e 44 6f 63 20 43 6f 6d 6d 65 6e 74 20 47 75 69 64 61 | ment-Guidance">Doc.Comment.Guida |
| b80e0 | 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 6f | nce</a>.<a.class="hdr".href="#Do |
| b8100 | 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | c-Comment-Guidance">..</a></h2>. |
| b8120 | 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6d 69 74 20 61 6e 79 | .......<ul>.........<li>Omit.any |
| b8140 | 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 68 61 74 20 69 73 20 72 65 64 75 6e 64 61 6e 74 20 62 | .information.that.is.redundant.b |
| b8160 | 61 73 65 64 20 6f 6e 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 74 68 69 6e 67 20 62 65 | ased.on.the.name.of.the.thing.be |
| b8180 | 69 6e 67 20 64 6f 63 75 6d 65 6e 74 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | ing.documented.</li>.........<li |
| b81a0 | 3e 44 75 70 6c 69 63 61 74 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 74 6f 20 6d 75 | >Duplicating.information.onto.mu |
| b81c0 | 6c 74 69 70 6c 65 20 73 69 6d 69 6c 61 72 20 66 75 6e 63 74 69 6f 6e 73 20 69 73 20 65 6e 63 6f | ltiple.similar.functions.is.enco |
| b81e0 | 75 72 61 67 65 64 20 62 65 63 61 75 73 65 20 69 74 20 68 65 6c 70 73 20 49 44 45 73 20 61 6e 64 | uraged.because.it.helps.IDEs.and |
| b8200 | 20 6f 74 68 65 72 20 74 6f 6f 6c 73 20 70 72 6f 76 69 64 65 20 62 65 74 74 65 72 20 68 65 6c 70 | .other.tools.provide.better.help |
| b8220 | 20 74 65 78 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 74 68 65 20 | .text.</li>.........<li>Use.the. |
| b8240 | 77 6f 72 64 20 3c 73 74 72 6f 6e 67 3e 61 73 73 75 6d 65 3c 2f 73 74 72 6f 6e 67 3e 20 74 6f 20 | word.<strong>assume</strong>.to. |
| b8260 | 69 6e 64 69 63 61 74 65 20 69 6e 76 61 72 69 61 6e 74 73 20 74 68 61 74 20 63 61 75 73 65 20 3c | indicate.invariants.that.cause.< |
| b8280 | 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 | a.href="#Undefined-Behavior">Und |
| b82a0 | 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 77 68 65 6e 20 76 69 6f 6c 61 74 65 | efined.Behavior</a>.when.violate |
| b82c0 | 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 74 68 65 20 77 6f 72 64 | d.</li>.........<li>Use.the.word |
| b82e0 | 20 3c 73 74 72 6f 6e 67 3e 61 73 73 65 72 74 3c 2f 73 74 72 6f 6e 67 3e 20 74 6f 20 69 6e 64 69 | .<strong>assert</strong>.to.indi |
| b8300 | 63 61 74 65 20 69 6e 76 61 72 69 61 6e 74 73 20 74 68 61 74 20 63 61 75 73 65 20 3c 65 6d 3e 73 | cate.invariants.that.cause.<em>s |
| b8320 | 61 66 65 74 79 2d 63 68 65 63 6b 65 64 3c 2f 65 6d 3e 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 | afety-checked</em>.<a.href="#Und |
| b8340 | 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 | efined-Behavior">Undefined.Behav |
| b8360 | 69 6f 72 3c 2f 61 3e 20 77 68 65 6e 20 76 69 6f 6c 61 74 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | ior</a>.when.violated.</li>..... |
| b8380 | 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 | ..</ul>.....................<h1. |
| b83a0 | 69 64 3d 22 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | id="Source-Encoding"><a.href="#t |
| b83c0 | 6f 63 2d 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f 64 | oc-Source-Encoding">Source.Encod |
| b83e0 | 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 6f | ing</a>.<a.class="hdr".href="#So |
| b8400 | 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 | urce-Encoding">..</a></h1>...... |
| b8420 | 20 20 3c 70 3e 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 65 6e 63 6f 64 65 64 20 | ..<p>Zig.source.code.is.encoded. |
| b8440 | 69 6e 20 55 54 46 2d 38 2e 20 41 6e 20 69 6e 76 61 6c 69 64 20 55 54 46 2d 38 20 62 79 74 65 20 | in.UTF-8..An.invalid.UTF-8.byte. |
| b8460 | 73 65 71 75 65 6e 63 65 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 | sequence.results.in.a.compile.er |
| b8480 | 72 6f 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 72 6f 75 67 68 6f 75 74 20 61 6c 6c | ror.</p>.......<p>Throughout.all |
| b84a0 | 20 7a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 28 69 6e 63 6c 75 64 69 6e 67 20 69 6e 20 63 | .zig.source.code.(including.in.c |
| b84c0 | 6f 6d 6d 65 6e 74 73 29 2c 20 73 6f 6d 65 20 63 6f 64 65 20 70 6f 69 6e 74 73 20 61 72 65 20 6e | omments),.some.code.points.are.n |
| b84e0 | 65 76 65 72 20 61 6c 6c 6f 77 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | ever.allowed:</p>.......<ul>.... |
| b8500 | 20 20 20 20 20 3c 6c 69 3e 41 73 63 69 69 20 63 6f 6e 74 72 6f 6c 20 63 68 61 72 61 63 74 65 72 | .....<li>Ascii.control.character |
| b8520 | 73 2c 20 65 78 63 65 70 74 20 66 6f 72 20 55 2b 30 30 30 61 20 28 4c 46 29 2c 20 55 2b 30 30 30 | s,.except.for.U+000a.(LF),.U+000 |
| b8540 | 64 20 28 43 52 29 2c 20 61 6e 64 20 55 2b 30 30 30 39 20 28 48 54 29 3a 20 55 2b 30 30 30 30 20 | d.(CR),.and.U+0009.(HT):.U+0000. |
| b8560 | 2d 20 55 2b 30 30 30 38 2c 20 55 2b 30 30 30 62 20 2d 20 55 2b 30 30 30 63 2c 20 55 2b 30 30 30 | -.U+0008,.U+000b.-.U+000c,.U+000 |
| b8580 | 65 20 2d 20 55 2b 30 30 30 31 66 2c 20 55 2b 30 30 37 66 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | e.-.U+0001f,.U+007f.</li>....... |
| b85a0 | 20 20 3c 6c 69 3e 4e 6f 6e 2d 41 73 63 69 69 20 55 6e 69 63 6f 64 65 20 6c 69 6e 65 20 65 6e 64 | ..<li>Non-Ascii.Unicode.line.end |
| b85c0 | 69 6e 67 73 3a 20 55 2b 30 30 38 35 20 28 4e 45 4c 29 2c 20 55 2b 32 30 32 38 20 28 4c 53 29 2c | ings:.U+0085.(NEL),.U+2028.(LS), |
| b85e0 | 20 55 2b 32 30 32 39 20 28 50 53 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | .U+2029.(PS).</li>.......</ul>.. |
| b8600 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 46 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 78 | .....<p>.......LF.(byte.value.0x |
| b8620 | 30 61 2c 20 63 6f 64 65 20 70 6f 69 6e 74 20 55 2b 30 30 30 61 2c 20 3c 63 6f 64 65 20 63 6c 61 | 0a,.code.point.U+000a,.<code.cla |
| b8640 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 | ss="zig"><span.class="tok-str">' |
| b8660 | 5c 6e 27 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 69 73 20 74 68 65 20 6c 69 6e 65 20 74 | \n'</span></code>).is.the.line.t |
| b8680 | 65 72 6d 69 6e 61 74 6f 72 20 69 6e 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 0a 20 20 | erminator.in.Zig.source.code.... |
| b86a0 | 20 20 20 20 54 68 69 73 20 62 79 74 65 20 76 61 6c 75 65 20 74 65 72 6d 69 6e 61 74 65 73 20 65 | ....This.byte.value.terminates.e |
| b86c0 | 76 65 72 79 20 6c 69 6e 65 20 6f 66 20 7a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 65 78 63 | very.line.of.zig.source.code.exc |
| b86e0 | 65 70 74 20 74 68 65 20 6c 61 73 74 20 6c 69 6e 65 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 0a 20 | ept.the.last.line.of.the.file... |
| b8700 | 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 68 61 74 20 6e 6f 6e 2d | .....It.is.recommended.that.non- |
| b8720 | 65 6d 70 74 79 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20 65 6e 64 20 77 69 74 68 20 61 6e 20 65 | empty.source.files.end.with.an.e |
| b8740 | 6d 70 74 79 20 6c 69 6e 65 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 65 20 6c 61 73 74 20 | mpty.line,.which.means.the.last. |
| b8760 | 62 79 74 65 20 77 6f 75 6c 64 20 62 65 20 30 78 30 61 20 28 4c 46 29 2e 0a 20 20 20 20 20 20 3c | byte.would.be.0x0a.(LF)........< |
| b8780 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 61 63 68 20 4c 46 20 6d 61 79 20 | /p>.......<p>.......Each.LF.may. |
| b87a0 | 62 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 70 72 65 63 65 64 65 64 20 62 79 20 61 20 73 69 6e | be.immediately.preceded.by.a.sin |
| b87c0 | 67 6c 65 20 43 52 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 78 30 64 2c 20 63 6f 64 65 20 70 6f | gle.CR.(byte.value.0x0d,.code.po |
| b87e0 | 69 6e 74 20 55 2b 30 30 30 64 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | int.U+000d,.<code.class="zig"><s |
| b8800 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 72 27 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-str">'\r'</span>< |
| b8820 | 2f 63 6f 64 65 3e 29 0a 20 20 20 20 20 20 74 6f 20 66 6f 72 6d 20 61 20 57 69 6e 64 6f 77 73 20 | /code>).......to.form.a.Windows. |
| b8840 | 73 74 79 6c 65 20 6c 69 6e 65 20 65 6e 64 69 6e 67 2c 20 62 75 74 20 74 68 69 73 20 69 73 20 64 | style.line.ending,.but.this.is.d |
| b8860 | 69 73 63 6f 75 72 61 67 65 64 2e 0a 20 20 20 20 20 20 41 20 43 52 20 69 6e 20 61 6e 79 20 6f 74 | iscouraged........A.CR.in.any.ot |
| b8880 | 68 65 72 20 63 6f 6e 74 65 78 74 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 0a 20 20 20 20 | her.context.is.not.allowed...... |
| b88a0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 54 20 68 61 72 64 20 74 | ..</p>.......<p>.......HT.hard.t |
| b88c0 | 61 62 73 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 78 30 39 2c 20 63 6f 64 65 20 70 6f 69 6e 74 | abs.(byte.value.0x09,.code.point |
| b88e0 | 20 55 2b 30 30 30 39 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .U+0009,.<code.class="zig"><span |
| b8900 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 74 27 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | .class="tok-str">'\t'</span></co |
| b8920 | 64 65 3e 29 20 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 61 62 6c 65 20 77 69 74 68 0a 20 20 | de>).are.interchangeable.with... |
| b8940 | 20 20 20 20 53 50 20 73 70 61 63 65 73 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 78 32 30 2c 20 | ....SP.spaces.(byte.value.0x20,. |
| b8960 | 63 6f 64 65 20 70 6f 69 6e 74 20 55 2b 30 30 32 30 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | code.point.U+0020,.<code.class=" |
| b8980 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 20 27 3c 2f | zig"><span.class="tok-str">'.'</ |
| b89a0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 61 73 20 61 20 74 6f 6b 65 6e 20 73 65 70 61 72 61 74 | span></code>).as.a.token.separat |
| b89c0 | 6f 72 2c 0a 20 20 20 20 20 20 62 75 74 20 75 73 65 20 6f 66 20 68 61 72 64 20 74 61 62 73 20 69 | or,.......but.use.of.hard.tabs.i |
| b89e0 | 73 20 64 69 73 63 6f 75 72 61 67 65 64 2e 20 53 65 65 20 3c 61 20 68 72 65 66 3d 22 23 47 72 61 | s.discouraged..See.<a.href="#Gra |
| b8a00 | 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | mmar">Grammar</a>........</p>... |
| b8a20 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 72 75 6e 6e 69 6e 67 20 | ....<p>.......Note.that.running. |
| b8a40 | 3c 63 6f 64 65 3e 7a 69 67 20 66 6d 74 3c 2f 63 6f 64 65 3e 20 6f 6e 20 61 20 73 6f 75 72 63 65 | <code>zig.fmt</code>.on.a.source |
| b8a60 | 20 66 69 6c 65 20 77 69 6c 6c 20 69 6d 70 6c 65 6d 65 6e 74 20 61 6c 6c 20 72 65 63 6f 6d 6d 65 | .file.will.implement.all.recomme |
| b8a80 | 6e 64 61 74 69 6f 6e 73 20 6d 65 6e 74 69 6f 6e 65 64 20 68 65 72 65 2e 0a 20 20 20 20 20 20 4e | ndations.mentioned.here........N |
| b8aa0 | 6f 74 65 20 61 6c 73 6f 20 74 68 61 74 20 74 68 65 20 73 74 61 67 65 31 20 63 6f 6d 70 69 6c 65 | ote.also.that.the.stage1.compile |
| b8ac0 | 72 20 64 6f 65 73 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 | r.does.<a.href="https://github.c |
| b8ae0 | 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 77 69 6b 69 2f 46 41 51 23 77 68 79 2d 64 6f 65 73 | om/ziglang/zig/wiki/FAQ#why-does |
| b8b00 | 2d 7a 69 67 2d 66 6f 72 63 65 2d 6d 65 2d 74 6f 2d 75 73 65 2d 73 70 61 63 65 73 2d 69 6e 73 74 | -zig-force-me-to-use-spaces-inst |
| b8b20 | 65 61 64 2d 6f 66 2d 74 61 62 73 22 3e 6e 6f 74 20 79 65 74 20 73 75 70 70 6f 72 74 20 43 52 20 | ead-of-tabs">not.yet.support.CR. |
| b8b40 | 6f 72 20 48 54 3c 2f 61 3e 20 63 6f 6e 74 72 6f 6c 20 63 68 61 72 61 63 74 65 72 73 2e 0a 20 20 | or.HT</a>.control.characters.... |
| b8b60 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 | ....</p>.......<p>.......Note.th |
| b8b80 | 61 74 20 61 20 74 6f 6f 6c 20 72 65 61 64 69 6e 67 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 | at.a.tool.reading.Zig.source.cod |
| b8ba0 | 65 20 63 61 6e 20 6d 61 6b 65 20 61 73 73 75 6d 70 74 69 6f 6e 73 20 69 66 20 74 68 65 20 73 6f | e.can.make.assumptions.if.the.so |
| b8bc0 | 75 72 63 65 20 63 6f 64 65 20 69 73 20 61 73 73 75 6d 65 64 20 74 6f 20 62 65 20 63 6f 72 72 65 | urce.code.is.assumed.to.be.corre |
| b8be0 | 63 74 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 | ct.Zig.code........For.example,. |
| b8c00 | 77 68 65 6e 20 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 65 6e 64 73 20 6f 66 20 6c 69 6e | when.identifying.the.ends.of.lin |
| b8c20 | 65 73 2c 20 61 20 74 6f 6f 6c 20 63 61 6e 20 75 73 65 20 61 20 6e 61 69 76 65 20 73 65 61 72 63 | es,.a.tool.can.use.a.naive.searc |
| b8c40 | 68 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2f 5c 6e 2f 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 | h.such.as.<code>/\n/</code>,.... |
| b8c60 | 20 20 20 6f 72 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 6d 73 64 6e 2e 6d | ...or.an.<a.href="https://msdn.m |
| b8c80 | 69 63 72 6f 73 6f 66 74 2e 63 6f 6d 2f 65 6e 2d 75 73 2f 6c 69 62 72 61 72 79 2f 64 64 34 30 39 | icrosoft.com/en-us/library/dd409 |
| b8ca0 | 37 39 37 2e 61 73 70 78 22 3e 61 64 76 61 6e 63 65 64 3c 2f 61 3e 0a 20 20 20 20 20 20 73 65 61 | 797.aspx">advanced</a>.......sea |
| b8cc0 | 72 63 68 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2f 5c 72 5c 6e 3f 7c 5b 5c 6e 5c 75 30 30 | rch.such.as.<code>/\r\n?|[\n\u00 |
| b8ce0 | 38 35 5c 75 32 30 32 38 5c 75 32 30 32 39 5d 2f 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 69 6e 20 | 85\u2028\u2029]/</code>,.and.in. |
| b8d00 | 65 69 74 68 65 72 20 63 61 73 65 20 6c 69 6e 65 20 65 6e 64 69 6e 67 73 20 77 69 6c 6c 20 62 65 | either.case.line.endings.will.be |
| b8d20 | 20 63 6f 72 72 65 63 74 6c 79 20 69 64 65 6e 74 69 66 69 65 64 2e 0a 20 20 20 20 20 20 46 6f 72 | .correctly.identified........For |
| b8d40 | 20 61 6e 6f 74 68 65 72 20 65 78 61 6d 70 6c 65 2c 20 77 68 65 6e 20 69 64 65 6e 74 69 66 79 69 | .another.example,.when.identifyi |
| b8d60 | 6e 67 20 74 68 65 20 77 68 69 74 65 73 70 61 63 65 20 62 65 66 6f 72 65 20 74 68 65 20 66 69 72 | ng.the.whitespace.before.the.fir |
| b8d80 | 73 74 20 74 6f 6b 65 6e 20 6f 6e 20 61 20 6c 69 6e 65 2c 0a 20 20 20 20 20 20 61 20 74 6f 6f 6c | st.token.on.a.line,.......a.tool |
| b8da0 | 20 63 61 6e 20 65 69 74 68 65 72 20 75 73 65 20 61 20 6e 61 69 76 65 20 73 65 61 72 63 68 20 73 | .can.either.use.a.naive.search.s |
| b8dc0 | 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2f 5b 20 5c 74 5d 2f 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 | uch.as.<code>/[.\t]/</code>,.... |
| b8de0 | 20 20 20 6f 72 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 74 63 33 39 2e 65 | ...or.an.<a.href="https://tc39.e |
| b8e00 | 73 2f 65 63 6d 61 32 36 32 2f 23 73 65 63 2d 63 68 61 72 61 63 74 65 72 63 6c 61 73 73 65 73 63 | s/ecma262/#sec-characterclassesc |
| b8e20 | 61 70 65 22 3e 61 64 76 61 6e 63 65 64 3c 2f 61 3e 20 73 65 61 72 63 68 20 73 75 63 68 20 61 73 | ape">advanced</a>.search.such.as |
| b8e40 | 20 3c 63 6f 64 65 3e 2f 5c 73 2f 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 61 6e 64 20 69 6e | .<code>/\s/</code>,.......and.in |
| b8e60 | 20 65 69 74 68 65 72 20 63 61 73 65 20 77 68 69 74 65 73 70 61 63 65 20 77 69 6c 6c 20 62 65 20 | .either.case.whitespace.will.be. |
| b8e80 | 63 6f 72 72 65 63 74 6c 79 20 69 64 65 6e 74 69 66 69 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | correctly.identified........</p> |
| b8ea0 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 4b 65 79 77 6f 72 64 2d 52 | ...............<h1.id="Keyword-R |
| b8ec0 | 65 66 65 72 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4b 65 79 77 6f 72 64 2d | eference"><a.href="#toc-Keyword- |
| b8ee0 | 52 65 66 65 72 65 6e 63 65 22 3e 4b 65 79 77 6f 72 64 20 52 65 66 65 72 65 6e 63 65 3c 2f 61 3e | Reference">Keyword.Reference</a> |
| b8f00 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4b 65 79 77 6f 72 64 2d 52 | .<a.class="hdr".href="#Keyword-R |
| b8f20 | 65 66 65 72 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 64 69 | eference">..</a></h1>........<di |
| b8f40 | 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c | v.class="table-wrapper">.......< |
| b8f60 | 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | table>.........<tr>...........<t |
| b8f80 | 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4b 65 79 77 6f 72 64 0a 20 20 20 20 20 20 20 20 20 | h>.............Keyword.......... |
| b8fa0 | 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</th>...........<th>........... |
| b8fc0 | 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 | ..Description...........</th>... |
| b8fe0 | 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 | ......</tr>.........<tr>........ |
| b9000 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ...<td>.............<pre><code.c |
| b9020 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| b9040 | 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | align</span></code></pre>....... |
| b9060 | 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | ....</td>...........<td>........ |
| b9080 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .....<code.class="zig"><span.cla |
| b90a0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | ss="tok-kw">align</span></code>. |
| b90c0 | 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 74 68 65 20 61 6c 69 67 6e | can.be.used.to.specify.the.align |
| b90e0 | 6d 65 6e 74 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 | ment.of.a.pointer..............I |
| b9100 | 74 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 61 66 74 65 72 20 61 20 76 61 72 69 61 | t.can.also.be.used.after.a.varia |
| b9120 | 62 6c 65 20 6f 72 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 74 6f 20 73 | ble.or.function.declaration.to.s |
| b9140 | 70 65 63 69 66 79 20 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 70 6f 69 6e 74 65 72 73 | pecify.the.alignment.of.pointers |
| b9160 | 20 74 6f 20 74 68 61 74 20 76 61 72 69 61 62 6c 65 20 6f 72 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 | .to.that.variable.or.function... |
| b9180 | 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ...........<ul>...............<l |
| b91a0 | 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e | i>See.also.<a.href="#Alignment"> |
| b91c0 | 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | Alignment</a></li>.............< |
| b91e0 | 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | /ul>...........</td>.........</t |
| b9200 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 | r>.........<tr>...........<td>.. |
| b9220 | 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ...........<pre><code.class="zig |
| b9240 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f | "><span.class="tok-kw">allowzero |
| b9260 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | </span></code></pre>...........< |
| b9280 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | /td>...........<td>............. |
| b92a0 | 54 68 65 20 70 6f 69 6e 74 65 72 20 61 74 74 72 69 62 75 74 65 20 3c 63 6f 64 65 20 63 6c 61 73 | The.pointer.attribute.<code.clas |
| b92c0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c | s="zig"><span.class="tok-kw">all |
| b92e0 | 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6c 6c 6f 77 73 20 61 20 70 6f | owzero</span></code>.allows.a.po |
| b9300 | 69 6e 74 65 72 20 74 6f 20 68 61 76 65 20 61 64 64 72 65 73 73 20 7a 65 72 6f 2e 0a 20 20 20 20 | inter.to.have.address.zero...... |
| b9320 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ........<ul>...............<li>S |
| b9340 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c 6c | ee.also.<a.href="#allowzero">all |
| b9360 | 6f 77 7a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | owzero</a></li>.............</ul |
| b9380 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | >...........</td>.........</tr>. |
| b93a0 | 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | ........<tr>...........<td>..... |
| b93c0 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| b93e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 3c 2f | span.class="tok-kw">and</span></ |
| b9400 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 | code></pre>...........</td>..... |
| b9420 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 62 6f 6f 6c 65 | ......<td>.............The.boole |
| b9440 | 61 6e 20 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | an.operator.<code.class="zig"><s |
| b9460 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 | pan.class="tok-kw">and</span></c |
| b9480 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | ode>..............<ul>.......... |
| b94a0 | 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 | .....<li>See.also.<a.href="#Oper |
| b94c0 | 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ators">Operators</a></li>....... |
| b94e0 | 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 | ......</ul>...........</td>..... |
| b9500 | 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 | ....</tr>.........<tr>.......... |
| b9520 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .<td>.............<pre><code.cla |
| b9540 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e | ss="zig"><span.class="tok-kw">an |
| b9560 | 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | yframe</span></code></pre>...... |
| b9580 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | .....</td>...........<td>....... |
| b95a0 | 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ......<code.class="zig"><span.cl |
| b95c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ass="tok-kw">anyframe</span></co |
| b95e0 | 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 61 20 74 79 70 65 20 66 6f 72 20 76 61 | de>.can.be.used.as.a.type.for.va |
| b9600 | 72 69 61 62 6c 65 73 20 77 68 69 63 68 20 68 6f 6c 64 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 66 | riables.which.hold.pointers.to.f |
| b9620 | 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | unction.frames..............<ul> |
| b9640 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 | ...............<li>See.also.<a.h |
| b9660 | 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e | ref="#Async-Functions">Async.Fun |
| b9680 | 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | ctions</a></li>.............</ul |
| b96a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | >...........</td>.........</tr>. |
| b96c0 | 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | ........<tr>...........<td>..... |
| b96e0 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| b9700 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 | span.class="tok-kw">anytype</spa |
| b9720 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | n></code></pre>...........</td>. |
| b9740 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 46 75 6e 63 74 | ..........<td>.............Funct |
| b9760 | 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 61 6e 64 20 73 74 72 75 63 74 20 66 69 65 6c 64 73 | ion.parameters.and.struct.fields |
| b9780 | 20 63 61 6e 20 62 65 20 64 65 63 6c 61 72 65 64 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 | .can.be.declared.with.<code.clas |
| b97a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 | s="zig"><span.class="tok-kw">any |
| b97c0 | 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 70 6c 61 63 65 20 6f 66 20 74 | type</span></code>.in.place.of.t |
| b97e0 | 68 65 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 77 69 | he.type..............The.type.wi |
| b9800 | 6c 6c 20 62 65 20 69 6e 66 65 72 72 65 64 20 77 68 65 72 65 20 74 68 65 20 66 75 6e 63 74 69 6f | ll.be.inferred.where.the.functio |
| b9820 | 6e 20 69 73 20 63 61 6c 6c 65 64 20 6f 72 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 6e 73 | n.is.called.or.the.struct.is.ins |
| b9840 | 74 61 6e 74 69 61 74 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | tantiated..............<ul>..... |
| b9860 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 | ..........<li>See.also.<a.href=" |
| b9880 | 23 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e | #Function-Parameter-Type-Inferen |
| b98a0 | 63 65 22 3e 46 75 6e 63 74 69 6f 6e 20 50 61 72 61 6d 65 74 65 72 20 54 79 70 65 20 49 6e 66 65 | ce">Function.Parameter.Type.Infe |
| b98c0 | 72 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | rence</a></li>.............</ul> |
| b98e0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | ...........</td>.........</tr>.. |
| b9900 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 | .......<tr>...........<td>...... |
| b9920 | 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| b9940 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 | pan.class="tok-kw">asm</span></c |
| b9960 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | ode></pre>...........</td>...... |
| b9980 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 | .....<td>.............<code.clas |
| b99a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d | s="zig"><span.class="tok-kw">asm |
| b99c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 65 67 69 6e 73 20 61 6e 20 69 6e 6c 69 6e 65 20 | </span></code>.begins.an.inline. |
| b99e0 | 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 | assembly.expression..This.allows |
| b9a00 | 20 66 6f 72 20 64 69 72 65 63 74 6c 79 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67 20 74 68 65 20 6d 61 | .for.directly.controlling.the.ma |
| b9a20 | 63 68 69 6e 65 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 6f 6e 20 63 6f 6d 70 69 6c 61 74 | chine.code.generated.on.compilat |
| b9a40 | 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | ion..............<ul>........... |
| b9a60 | 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 73 73 65 6d | ....<li>See.also.<a.href="#Assem |
| b9a80 | 62 6c 79 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | bly">Assembly</a></li>.......... |
| b9aa0 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | ...</ul>...........</td>........ |
| b9ac0 | 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | .</tr>.........<tr>...........<t |
| b9ae0 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | d>.............<pre><code.class= |
| b9b00 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 | "zig"><span.class="tok-kw">async |
| b9b20 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | </span></code></pre>...........< |
| b9b40 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | /td>...........<td>............. |
| b9b60 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| b9b80 | 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 | ok-kw">async</span></code>.can.b |
| b9ba0 | 65 20 75 73 65 64 20 62 65 66 6f 72 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 74 6f | e.used.before.a.function.call.to |
| b9bc0 | 20 67 65 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 | .get.a.pointer.to.the.function's |
| b9be0 | 20 66 72 61 6d 65 20 77 68 65 6e 20 69 74 20 73 75 73 70 65 6e 64 73 2e 0a 20 20 20 20 20 20 20 | .frame.when.it.suspends......... |
| b9c00 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 | .....<ul>...............<li>See. |
| b9c20 | 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e | also.<a.href="#Async-Functions"> |
| b9c40 | 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | Async.Functions</a></li>........ |
| b9c60 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | .....</ul>...........</td>...... |
| b9c80 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| b9ca0 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| b9cc0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 | s="zig"><span.class="tok-kw">awa |
| b9ce0 | 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | it</span></code></pre>.......... |
| b9d00 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| b9d20 | 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..<code.class="zig"><span.class= |
| b9d40 | 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e | "tok-kw">await</span></code>.can |
| b9d60 | 20 62 65 20 75 73 65 64 20 74 6f 20 73 75 73 70 65 6e 64 20 74 68 65 20 63 75 72 72 65 6e 74 20 | .be.used.to.suspend.the.current. |
| b9d80 | 66 75 6e 63 74 69 6f 6e 20 75 6e 74 69 6c 20 74 68 65 20 66 72 61 6d 65 20 70 72 6f 76 69 64 65 | function.until.the.frame.provide |
| b9da0 | 64 20 61 66 74 65 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | d.after.the.<code.class="zig"><s |
| b9dc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-kw">await</span>< |
| b9de0 | 2f 63 6f 64 65 3e 20 63 6f 6d 70 6c 65 74 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 | /code>.completes..............<c |
| b9e00 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| b9e20 | 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 70 69 65 73 20 | -kw">await</span></code>.copies. |
| b9e40 | 74 68 65 20 76 61 6c 75 65 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 74 68 65 20 74 61 72 67 | the.value.returned.from.the.targ |
| b9e60 | 65 74 20 66 75 6e 63 74 69 6f 6e 27 73 20 66 72 61 6d 65 20 74 6f 20 74 68 65 20 63 61 6c 6c 65 | et.function's.frame.to.the.calle |
| b9e80 | 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | r..............<ul>............. |
| b9ea0 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 | ..<li>See.also.<a.href="#Async-F |
| b9ec0 | 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c | unctions">Async.Functions</a></l |
| b9ee0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | i>.............</ul>...........< |
| b9f00 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a | /td>.........</tr>.........<tr>. |
| b9f20 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e | ..........<td>.............<pre> |
| b9f40 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| b9f60 | 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ok-kw">break</span></code></pre> |
| b9f80 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | ...........</td>...........<td>. |
| b9fa0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ............<code.class="zig"><s |
| b9fc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-kw">break</span>< |
| b9fe0 | 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 77 69 74 68 20 61 20 62 6c 6f 63 6b 20 | /code>.can.be.used.with.a.block. |
| ba000 | 6c 61 62 65 6c 20 74 6f 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 | label.to.return.a.value.from.the |
| ba020 | 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 | .block..............It.can.also. |
| ba040 | 62 65 20 75 73 65 64 20 74 6f 20 65 78 69 74 20 61 20 6c 6f 6f 70 20 62 65 66 6f 72 65 20 69 74 | be.used.to.exit.a.loop.before.it |
| ba060 | 65 72 61 74 69 6f 6e 20 63 6f 6d 70 6c 65 74 65 73 20 6e 61 74 75 72 61 6c 6c 79 2e 0a 20 20 20 | eration.completes.naturally..... |
| ba080 | 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | .........<ul>...............<li> |
| ba0a0 | 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 62 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b | See.also.<a.href="#blocks">block |
| ba0c0 | 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 | s</a>,.<a.href="#while">while</a |
| ba0e0 | 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | >,.<a.href="#for">for</a></li>.. |
| ba100 | 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | ...........</ul>...........</td> |
| ba120 | 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 | .........</tr>.........<tr>..... |
| ba140 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ......<td>.............<pre><cod |
| ba160 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| ba180 | 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | w">catch</span></code></pre>.... |
| ba1a0 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | .......</td>...........<td>..... |
| ba1c0 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ........<code.class="zig"><span. |
| ba1e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">catch</span></cod |
| ba200 | 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 65 76 61 6c 75 61 74 65 20 61 6e 20 65 78 | e>.can.be.used.to.evaluate.an.ex |
| ba220 | 70 72 65 73 73 69 6f 6e 20 69 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 62 65 66 6f 72 | pression.if.the.expression.befor |
| ba240 | 65 20 69 74 20 65 76 61 6c 75 61 74 65 73 20 74 6f 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 | e.it.evaluates.to.an.error...... |
| ba260 | 20 20 20 20 20 20 20 20 54 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 61 66 74 65 72 20 74 68 65 | ........The.expression.after.the |
| ba280 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| ba2a0 | 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 | tok-kw">catch</span></code>.can. |
| ba2c0 | 6f 70 74 69 6f 6e 61 6c 6c 79 20 63 61 70 74 75 72 65 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c | optionally.capture.the.error.val |
| ba2e0 | 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ue..............<ul>............ |
| ba300 | 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 63 61 74 63 68 22 | ...<li>See.also.<a.href="#catch" |
| ba320 | 3e 63 61 74 63 68 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 | >catch</a>,.<a.href="#Operators" |
| ba340 | 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >Operators</a></li>............. |
| ba360 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | </ul>...........</td>.........</ |
| ba380 | 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | tr>.........<tr>...........<td>. |
| ba3a0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ............<pre><code.class="zi |
| ba3c0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | g"><span.class="tok-kw">comptime |
| ba3e0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | </span></code></pre>...........< |
| ba400 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | /td>...........<td>............. |
| ba420 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| ba440 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 65 | ok-kw">comptime</span></code>.be |
| ba460 | 66 6f 72 65 20 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 | fore.a.declaration.can.be.used.t |
| ba480 | 6f 20 6c 61 62 65 6c 20 76 61 72 69 61 62 6c 65 73 20 6f 72 20 66 75 6e 63 74 69 6f 6e 20 70 61 | o.label.variables.or.function.pa |
| ba4a0 | 72 61 6d 65 74 65 72 73 20 61 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d | rameters.as.known.at.compile.tim |
| ba4c0 | 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 | e..............It.can.also.be.us |
| ba4e0 | 65 64 20 74 6f 20 67 75 61 72 61 6e 74 65 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 | ed.to.guarantee.an.expression.is |
| ba500 | 20 72 75 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 | .run.at.compile.time............ |
| ba520 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 | ..<ul>...............<li>See.als |
| ba540 | 6f 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | o.<a.href="#comptime">comptime</ |
| ba560 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | a></li>.............</ul>....... |
| ba580 | 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | ....</td>.........</tr>......... |
| ba5a0 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | <tr>...........<td>............. |
| ba5c0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| ba5e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ss="tok-kw">const</span></code>< |
| ba600 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | /pre>...........</td>........... |
| ba620 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | <td>.............<code.class="zi |
| ba640 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| ba660 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 20 61 20 76 61 72 69 61 62 6c 65 20 | pan></code>.declares.a.variable. |
| ba680 | 74 68 61 74 20 63 61 6e 20 6e 6f 74 20 62 65 20 6d 6f 64 69 66 69 65 64 2e 0a 20 20 20 20 20 20 | that.can.not.be.modified........ |
| ba6a0 | 20 20 20 20 20 20 55 73 65 64 20 61 73 20 61 20 70 6f 69 6e 74 65 72 20 61 74 74 72 69 62 75 74 | ......Used.as.a.pointer.attribut |
| ba6c0 | 65 2c 20 69 74 20 64 65 6e 6f 74 65 73 20 74 68 65 20 76 61 6c 75 65 20 72 65 66 65 72 65 6e 63 | e,.it.denotes.the.value.referenc |
| ba6e0 | 65 64 20 62 79 20 74 68 65 20 70 6f 69 6e 74 65 72 20 63 61 6e 6e 6f 74 20 62 65 20 6d 6f 64 69 | ed.by.the.pointer.cannot.be.modi |
| ba700 | 66 69 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | fied..............<ul>.......... |
| ba720 | 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 56 61 72 69 | .....<li>See.also.<a.href="#Vari |
| ba740 | 61 62 6c 65 73 22 3e 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ables">Variables</a></li>....... |
| ba760 | 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 | ......</ul>...........</td>..... |
| ba780 | 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 | ....</tr>.........<tr>.......... |
| ba7a0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .<td>.............<pre><code.cla |
| ba7c0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| ba7e0 | 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | ntinue</span></code></pre>...... |
| ba800 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | .....</td>...........<td>....... |
| ba820 | 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ......<code.class="zig"><span.cl |
| ba840 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ass="tok-kw">continue</span></co |
| ba860 | 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 69 6e 20 61 20 6c 6f 6f 70 20 74 6f 20 6a 75 6d | de>.can.be.used.in.a.loop.to.jum |
| ba880 | 70 20 62 61 63 6b 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 6c | p.back.to.the.beginning.of.the.l |
| ba8a0 | 6f 6f 70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | oop..............<ul>........... |
| ba8c0 | 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 | ....<li>See.also.<a.href="#while |
| ba8e0 | 22 3e 77 68 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c | ">while</a>,.<a.href="#for">for< |
| ba900 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | /a></li>.............</ul>...... |
| ba920 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | .....</td>.........</tr>........ |
| ba940 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | .<tr>...........<td>............ |
| ba960 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| ba980 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-kw">defer</span></code> |
| ba9a0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | </pre>...........</td>.......... |
| ba9c0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .<td>.............<code.class="z |
| ba9e0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f | ig"><span.class="tok-kw">defer</ |
| baa00 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 | span></code>.will.execute.an.exp |
| baa20 | 72 65 73 73 69 6f 6e 20 77 68 65 6e 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 6c 65 61 76 65 73 | ression.when.control.flow.leaves |
| baa40 | 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .the.current.block.............. |
| baa60 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 | <ul>...............<li>See.also. |
| baa80 | 3c 61 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a | <a.href="#defer">defer</a></li>. |
| baaa0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | ............</ul>...........</td |
| baac0 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 | >.........</tr>.........<tr>.... |
| baae0 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | .......<td>.............<pre><co |
| bab00 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| bab20 | 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | kw">else</span></code></pre>.... |
| bab40 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | .......</td>...........<td>..... |
| bab60 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ........<code.class="zig"><span. |
| bab80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | class="tok-kw">else</span></code |
| baba0 | 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 70 72 6f 76 69 64 65 20 61 6e 20 61 6c 74 65 | >.can.be.used.to.provide.an.alte |
| babc0 | 72 6e 61 74 65 20 62 72 61 6e 63 68 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | rnate.branch.for.<code.class="zi |
| babe0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | g"><span.class="tok-kw">if</span |
| bac00 | 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ></code>,.<code.class="zig"><spa |
| bac20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-kw">switch</span></ |
| bac40 | 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | code>,.............<code.class=" |
| bac60 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c | zig"><span.class="tok-kw">while< |
| bac80 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /span></code>,.and.<code.class=" |
| baca0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 | zig"><span.class="tok-kw">for</s |
| bacc0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 | pan></code>.expressions......... |
| bace0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 75 | .....<ul>...............<li>If.u |
| bad00 | 73 65 64 20 61 66 74 65 72 20 61 6e 20 69 66 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 68 65 20 | sed.after.an.if.expression,.the. |
| bad20 | 65 6c 73 65 20 62 72 61 6e 63 68 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 69 66 20 | else.branch.will.be.executed.if. |
| bad40 | 74 68 65 20 74 65 73 74 20 76 61 6c 75 65 20 72 65 74 75 72 6e 73 20 66 61 6c 73 65 2c 20 6e 75 | the.test.value.returns.false,.nu |
| bad60 | 6c 6c 2c 20 6f 72 20 61 6e 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ll,.or.an.error.</li>........... |
| bad80 | 20 20 20 20 3c 6c 69 3e 49 66 20 75 73 65 64 20 77 69 74 68 69 6e 20 61 20 73 77 69 74 63 68 20 | ....<li>If.used.within.a.switch. |
| bada0 | 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 77 69 6c 6c | expression,.the.else.branch.will |
| badc0 | 20 62 65 20 65 78 65 63 75 74 65 64 20 69 66 20 74 68 65 20 74 65 73 74 20 76 61 6c 75 65 20 6d | .be.executed.if.the.test.value.m |
| bade0 | 61 74 63 68 65 73 20 6e 6f 20 6f 74 68 65 72 20 63 61 73 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | atches.no.other.cases.</li>..... |
| bae00 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 75 73 65 64 20 61 66 74 65 72 20 61 20 6c 6f | ..........<li>If.used.after.a.lo |
| bae20 | 6f 70 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 77 | op.expression,.the.else.branch.w |
| bae40 | 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 69 66 20 74 68 65 20 6c 6f 6f 70 20 66 69 6e 69 | ill.be.executed.if.the.loop.fini |
| bae60 | 73 68 65 73 20 77 69 74 68 6f 75 74 20 62 72 65 61 6b 69 6e 67 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | shes.without.breaking.</li>..... |
| bae80 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 | ..........<li>See.also.<a.href=" |
| baea0 | 23 69 66 22 3e 69 66 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 | #if">if</a>,.<a.href="#switch">s |
| baec0 | 77 69 74 63 68 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c | witch</a>,.<a.href="#while">whil |
| baee0 | 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c | e</a>,.<a.href="#for">for</a></l |
| baf00 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | i>.............</ul>...........< |
| baf20 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a | /td>.........</tr>.........<tr>. |
| baf40 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e | ..........<td>.............<pre> |
| baf60 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| baf80 | 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | ok-kw">enum</span></code></pre>. |
| bafa0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 | ..........</td>...........<td>.. |
| bafc0 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ...........<code.class="zig"><sp |
| bafe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 | an.class="tok-kw">enum</span></c |
| bb000 | 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 6e 20 65 6e 75 6d 20 74 79 70 65 2e 0a 20 20 20 20 20 | ode>.defines.an.enum.type....... |
| bb020 | 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 | .......<ul>...............<li>Se |
| bb040 | 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 3c | e.also.<a.href="#enum">enum</a>< |
| bb060 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | /li>.............</ul>.......... |
| bb080 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | .</td>.........</tr>.........<tr |
| bb0a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 | >...........<td>.............<pr |
| bb0c0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| bb0e0 | 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | "tok-kw">errdefer</span></code>< |
| bb100 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | /pre>...........</td>........... |
| bb120 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | <td>.............<code.class="zi |
| bb140 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 | g"><span.class="tok-kw">errdefer |
| bb160 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 61 6e 20 65 | </span></code>.will.execute.an.e |
| bb180 | 78 70 72 65 73 73 69 6f 6e 20 77 68 65 6e 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 6c 65 61 76 | xpression.when.control.flow.leav |
| bb1a0 | 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 6c 6f 63 6b 20 69 66 20 74 68 65 20 66 75 6e 63 | es.the.current.block.if.the.func |
| bb1c0 | 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 | tion.returns.an.error........... |
| bb1e0 | 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c | ...<ul>...............<li>See.al |
| bb200 | 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 65 72 72 64 65 66 65 72 22 3e 65 72 72 64 65 66 65 72 3c | so.<a.href="#errdefer">errdefer< |
| bb220 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | /a></li>.............</ul>...... |
| bb240 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | .....</td>.........</tr>........ |
| bb260 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | .<tr>...........<td>............ |
| bb280 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| bb2a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-kw">error</span></code> |
| bb2c0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | </pre>...........</td>.......... |
| bb2e0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .<td>.............<code.class="z |
| bb300 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f | ig"><span.class="tok-kw">error</ |
| bb320 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 6e 20 65 72 72 6f 72 20 74 79 | span></code>.defines.an.error.ty |
| bb340 | 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | pe..............<ul>............ |
| bb360 | 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 | ...<li>See.also.<a.href="#Errors |
| bb380 | 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | ">Errors</a></li>.............</ |
| bb3a0 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | ul>...........</td>.........</tr |
| bb3c0 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | >.........<tr>...........<td>... |
| bb3e0 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..........<pre><code.class="zig" |
| bb400 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 | ><span.class="tok-kw">export</sp |
| bb420 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | an></code></pre>...........</td> |
| bb440 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 | ...........<td>.............<cod |
| bb460 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| bb480 | 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 61 6b 65 73 20 61 20 | w">export</span></code>.makes.a. |
| bb4a0 | 66 75 6e 63 74 69 6f 6e 20 6f 72 20 76 61 72 69 61 62 6c 65 20 65 78 74 65 72 6e 61 6c 6c 79 20 | function.or.variable.externally. |
| bb4c0 | 76 69 73 69 62 6c 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 6f 62 6a 65 63 74 20 | visible.in.the.generated.object. |
| bb4e0 | 66 69 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 78 70 6f 72 74 65 64 20 66 75 6e 63 74 | file..............Exported.funct |
| bb500 | 69 6f 6e 73 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 43 20 63 61 6c 6c 69 6e 67 20 63 6f | ions.default.to.the.C.calling.co |
| bb520 | 6e 76 65 6e 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | nvention..............<ul>...... |
| bb540 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 | .........<li>See.also.<a.href="# |
| bb560 | 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | Functions">Functions</a></li>... |
| bb580 | 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | ..........</ul>...........</td>. |
| bb5a0 | 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 | ........</tr>.........<tr>...... |
| bb5c0 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | .....<td>.............<pre><code |
| bb5e0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| bb600 | 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | ">extern</span></code></pre>.... |
| bb620 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | .......</td>...........<td>..... |
| bb640 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ........<code.class="zig"><span. |
| bb660 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-kw">extern</span></co |
| bb680 | 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 61 20 66 75 6e | de>.can.be.used.to.declare.a.fun |
| bb6a0 | 63 74 69 6f 6e 20 6f 72 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 72 | ction.or.variable.that.will.be.r |
| bb6c0 | 65 73 6f 6c 76 65 64 20 61 74 20 6c 69 6e 6b 20 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 | esolved.at.link.time,.when.linki |
| bb6e0 | 6e 67 20 73 74 61 74 69 63 61 6c 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 61 74 20 | ng.statically.............or.at. |
| bb700 | 72 75 6e 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 64 79 6e 61 6d 69 63 61 6c 6c | runtime,.when.linking.dynamicall |
| bb720 | 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | y..............<ul>............. |
| bb740 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f | ..<li>See.also.<a.href="#Functio |
| bb760 | 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ns">Functions</a></li>.......... |
| bb780 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | ...</ul>...........</td>........ |
| bb7a0 | 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | .</tr>.........<tr>...........<t |
| bb7c0 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | d>.............<pre><code.class= |
| bb7e0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c | "zig"><span.class="tok-null">fal |
| bb800 | 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | se</span></code></pre>.......... |
| bb820 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| bb840 | 20 20 54 68 65 20 62 6f 6f 6c 65 61 6e 20 76 61 6c 75 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ..The.boolean.value.<code.class= |
| bb860 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c | "zig"><span.class="tok-null">fal |
| bb880 | 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | se</span></code>..............<u |
| bb8a0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 | l>...............<li>See.also.<a |
| bb8c0 | 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e 50 72 69 6d 69 74 | .href="#Primitive-Values">Primit |
| bb8e0 | 69 76 65 20 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ive.Values</a></li>............. |
| bb900 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | </ul>...........</td>.........</ |
| bb920 | 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | tr>.........<tr>...........<td>. |
| bb940 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ............<pre><code.class="zi |
| bb960 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | g"><span.class="tok-kw">fn</span |
| bb980 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 | ></code></pre>...........</td>.. |
| bb9a0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 | .........<td>.............<code. |
| bb9c0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| bb9e0 | 3e 66 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 20 61 20 66 75 6e | >fn</span></code>.declares.a.fun |
| bba00 | 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | ction..............<ul>......... |
| bba20 | 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e | ......<li>See.also.<a.href="#Fun |
| bba40 | 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ctions">Functions</a></li>...... |
| bba60 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | .......</ul>...........</td>.... |
| bba80 | 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 | .....</tr>.........<tr>......... |
| bbaa0 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..<td>.............<pre><code.cl |
| bbac0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ass="zig"><span.class="tok-kw">f |
| bbae0 | 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | or</span></code></pre>.......... |
| bbb00 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| bbb20 | 20 20 41 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ..A.<code.class="zig"><span.clas |
| bbb40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 | s="tok-kw">for</span></code>.exp |
| bbb60 | 72 65 73 73 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 69 74 65 72 61 74 65 20 6f | ression.can.be.used.to.iterate.o |
| bbb80 | 76 65 72 20 74 68 65 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 61 20 73 6c 69 63 65 2c 20 61 72 72 | ver.the.elements.of.a.slice,.arr |
| bbba0 | 61 79 2c 20 6f 72 20 74 75 70 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | ay,.or.tuple..............<ul>.. |
| bbbc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 | .............<li>See.also.<a.hre |
| bbbe0 | 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | f="#for">for</a></li>........... |
| bbc00 | 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ..</ul>...........</td>......... |
| bbc20 | 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | </tr>.........<tr>...........<td |
| bbc40 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | >.............<pre><code.class=" |
| bbc60 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 | zig"><span.class="tok-kw">if</sp |
| bbc80 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | an></code></pre>...........</td> |
| bbca0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6e 20 3c | ...........<td>.............An.< |
| bbcc0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| bbce0 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f | k-kw">if</span></code>.expressio |
| bbd00 | 6e 20 63 61 6e 20 74 65 73 74 20 62 6f 6f 6c 65 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 | n.can.test.boolean.expressions,. |
| bbd20 | 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 75 65 73 2c 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 | optional.values,.or.error.unions |
| bbd40 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 46 6f 72 20 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 75 65 | ..............For.optional.value |
| bbd60 | 73 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2c 20 74 68 65 20 69 66 20 65 78 70 72 65 73 | s.or.error.unions,.the.if.expres |
| bbd80 | 73 69 6f 6e 20 63 61 6e 20 63 61 70 74 75 72 65 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 | sion.can.capture.the.unwrapped.v |
| bbda0 | 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | alue..............<ul>.......... |
| bbdc0 | 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e | .....<li>See.also.<a.href="#if"> |
| bbde0 | 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | if</a></li>.............</ul>... |
| bbe00 | 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 | ........</td>.........</tr>..... |
| bbe20 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 | ....<tr>...........<td>......... |
| bbe40 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| bbe60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-kw">inline</span></c |
| bbe80 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | ode></pre>...........</td>...... |
| bbea0 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 | .....<td>.............<code.clas |
| bbec0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c | s="zig"><span.class="tok-kw">inl |
| bbee0 | 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f | ine</span></code>.can.be.used.to |
| bbf00 | 20 6c 61 62 65 6c 20 61 20 6c 6f 6f 70 20 65 78 70 72 65 73 73 69 6f 6e 20 73 75 63 68 20 74 68 | .label.a.loop.expression.such.th |
| bbf20 | 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 6e 72 6f 6c 6c 65 64 20 61 74 20 63 6f 6d 70 69 6c | at.it.will.be.unrolled.at.compil |
| bbf40 | 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 | e.time..............It.can.also. |
| bbf60 | 62 65 20 75 73 65 64 20 74 6f 20 66 6f 72 63 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 | be.used.to.force.a.function.to.b |
| bbf80 | 65 20 69 6e 6c 69 6e 65 64 20 61 74 20 61 6c 6c 20 63 61 6c 6c 20 73 69 74 65 73 2e 0a 20 20 20 | e.inlined.at.all.call.sites..... |
| bbfa0 | 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | .........<ul>...............<li> |
| bbfc0 | 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 | See.also.<a.href="#inline-while" |
| bbfe0 | 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c | >inline.while</a>,.<a.href="#inl |
| bc000 | 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 | ine-for">inline.for</a>,.<a.href |
| bc020 | 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e | ="#Functions">Functions</a></li> |
| bc040 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | .............</ul>...........</t |
| bc060 | 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | d>.........</tr>.........<tr>... |
| bc080 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | ........<td>.............<pre><c |
| bc0a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| bc0c0 | 2d 6b 77 22 3e 6e 6f 61 6c 69 61 73 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | -kw">noalias</span></code></pre> |
| bc0e0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | ...........</td>...........<td>. |
| bc100 | 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ............The.<code.class="zig |
| bc120 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 61 6c 69 61 73 3c 2f | "><span.class="tok-kw">noalias</ |
| bc140 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2e 0a 20 20 20 20 20 20 20 20 20 20 | span></code>.keyword............ |
| bc160 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 4f 44 4f 20 61 64 | ..<ul>...............<li>TODO.ad |
| bc180 | 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 6e 6f 61 6c 69 61 73 3c 2f 6c 69 3e | d.documentation.for.noalias</li> |
| bc1a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | .............</ul>...........</t |
| bc1c0 | 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | d>.........</tr>.........<tr>... |
| bc1e0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | ........<td>.............<pre><c |
| bc200 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| bc220 | 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | -kw">nosuspend</span></code></pr |
| bc240 | 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | e>...........</td>...........<td |
| bc260 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.............The.<code.class="z |
| bc280 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 | ig"><span.class="tok-kw">nosuspe |
| bc2a0 | 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 63 61 6e 20 62 65 20 | nd</span></code>.keyword.can.be. |
| bc2c0 | 75 73 65 64 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 61 20 62 6c 6f 63 6b 2c 20 73 74 61 74 65 6d | used.in.front.of.a.block,.statem |
| bc2e0 | 65 6e 74 20 6f 72 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 6f 20 6d 61 72 6b 20 61 20 73 63 6f | ent.or.expression,.to.mark.a.sco |
| bc300 | 70 65 20 77 68 65 72 65 20 6e 6f 20 73 75 73 70 65 6e 73 69 6f 6e 20 70 6f 69 6e 74 73 20 61 72 | pe.where.no.suspension.points.ar |
| bc320 | 65 20 72 65 61 63 68 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 20 70 61 72 74 69 63 | e.reached..............In.partic |
| bc340 | 75 6c 61 72 2c 20 69 6e 73 69 64 65 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ular,.inside.a.<code.class="zig" |
| bc360 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 6e 64 3c | ><span.class="tok-kw">nosuspend< |
| bc380 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 63 6f 70 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 | /span></code>.scope:............ |
| bc3a0 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 69 6e 67 20 74 68 | .<ul>...............<li>Using.th |
| bc3c0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e.<code.class="zig"><span.class= |
| bc3e0 | 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b | "tok-kw">suspend</span></code>.k |
| bc400 | 65 79 77 6f 72 64 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f | eyword.results.in.a.compile.erro |
| bc420 | 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 69 6e 67 20 | r.</li>...............<li>Using. |
| bc440 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| bc460 | 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 6e 20 61 20 | ok-kw">await</span></code>.on.a. |
| bc480 | 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 20 77 68 69 63 68 20 68 61 73 6e 27 74 20 63 6f 6d 70 | function.frame.which.hasn't.comp |
| bc4a0 | 6c 65 74 65 64 20 79 65 74 20 72 65 73 75 6c 74 73 20 69 6e 20 73 61 66 65 74 79 2d 63 68 65 63 | leted.yet.results.in.safety-chec |
| bc4c0 | 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 | ked.<a.href="#Undefined-Behavior |
| bc4e0 | 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 | ">Undefined.Behavior</a>.</li>.. |
| bc500 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6c 6c 69 6e 67 20 61 6e 20 61 73 79 6e | .............<li>Calling.an.asyn |
| bc520 | 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 79 20 72 65 73 75 6c 74 20 69 6e 20 73 61 66 65 74 79 2d | c.function.may.result.in.safety- |
| bc540 | 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 | checked.<a.href="#Undefined-Beha |
| bc560 | 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2c 20 62 65 | vior">Undefined.Behavior</a>,.be |
| bc580 | 63 61 75 73 65 20 69 74 27 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 63 6f 64 65 3e 61 | cause.it's.equivalent.to.<code>a |
| bc5a0 | 77 61 69 74 20 61 73 79 6e 63 20 73 6f 6d 65 5f 61 73 79 6e 63 5f 66 6e 28 29 3c 2f 63 6f 64 65 | wait.async.some_async_fn()</code |
| bc5c0 | 3e 2c 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 | >,.which.contains.an.<code.class |
| bc5e0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 | ="zig"><span.class="tok-kw">awai |
| bc600 | 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | t</span></code>.</li>........... |
| bc620 | 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 43 6f 64 65 20 69 6e 73 69 64 65 20 | ..</ul>.............Code.inside. |
| bc640 | 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | a.<code.class="zig"><span.class= |
| bc660 | 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | "tok-kw">nosuspend</span></code> |
| bc680 | 20 73 63 6f 70 65 20 64 6f 65 73 20 6e 6f 74 20 63 61 75 73 65 20 74 68 65 20 65 6e 63 6c 6f 73 | .scope.does.not.cause.the.enclos |
| bc6a0 | 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 63 6f 6d 65 20 61 6e 20 3c 61 20 68 72 65 | ing.function.to.become.an.<a.hre |
| bc6c0 | 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 61 73 79 6e 63 20 66 75 6e 63 74 | f="#Async-Functions">async.funct |
| bc6e0 | 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | ion</a>..............<ul>....... |
| bc700 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 | ........<li>See.also.<a.href="#A |
| bc720 | 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c | sync-Functions">Async.Functions< |
| bc740 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | /a></li>.............</ul>...... |
| bc760 | 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | .....</td>.........</tr>........ |
| bc780 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | .<tr>...........<td>............ |
| bc7a0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| bc7c0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">null</span></code |
| bc7e0 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ></pre>...........</td>......... |
| bc800 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6f 6e 61 6c 20 | ..<td>.............The.optional. |
| bc820 | 76 61 6c 75 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | value.<code.class="zig"><span.cl |
| bc840 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">null</span></code |
| bc860 | 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >..............<ul>............. |
| bc880 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e | ..<li>See.also.<a.href="#null">n |
| bc8a0 | 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | ull</a></li>.............</ul>.. |
| bc8c0 | 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | .........</td>.........</tr>.... |
| bc8e0 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | .....<tr>...........<td>........ |
| bc900 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| bc920 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | n.class="tok-kw">or</span></code |
| bc940 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ></pre>...........</td>......... |
| bc960 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 62 6f 6f 6c 65 61 6e 20 6f | ..<td>.............The.boolean.o |
| bc980 | 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | perator.<code.class="zig"><span. |
| bc9a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e | class="tok-kw">or</span></code>. |
| bc9c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .............<ul>............... |
| bc9e0 | 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 | <li>See.also.<a.href="#Operators |
| bca00 | 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ">Operators</a></li>............ |
| bca20 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c | .</ul>...........</td>.........< |
| bca40 | 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | /tr>.........<tr>...........<td> |
| bca60 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .............<pre><code.class="z |
| bca80 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c | ig"><span.class="tok-kw">orelse< |
| bcaa0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f | /span></code></pre>...........</ |
| bcac0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | td>...........<td>.............< |
| bcae0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| bcb00 | 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 | k-kw">orelse</span></code>.can.b |
| bcb20 | 65 20 75 73 65 64 20 74 6f 20 65 76 61 6c 75 61 74 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e | e.used.to.evaluate.an.expression |
| bcb40 | 20 69 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 62 65 66 6f 72 65 20 69 74 20 65 76 61 | .if.the.expression.before.it.eva |
| bcb60 | 6c 75 61 74 65 73 20 74 6f 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | luates.to.null..............<ul> |
| bcb80 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 | ...............<li>See.also.<a.h |
| bcba0 | 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 2c 20 | ref="#Optionals">Optionals</a>,. |
| bcbc0 | 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f | <a.href="#Operators">Operators</ |
| bcbe0 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | a></li>.............</ul>....... |
| bcc00 | 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | ....</td>.........</tr>......... |
| bcc20 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | <tr>...........<td>............. |
| bcc40 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| bcc60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-kw">packed</span></code> |
| bcc80 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | </pre>...........</td>.......... |
| bcca0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 | .<td>.............The.<code.clas |
| bccc0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 | s="zig"><span.class="tok-kw">pac |
| bcce0 | 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 62 65 66 6f 72 65 | ked</span></code>.keyword.before |
| bcd00 | 20 61 20 73 74 72 75 63 74 20 64 65 66 69 6e 69 74 69 6f 6e 20 63 68 61 6e 67 65 73 20 74 68 65 | .a.struct.definition.changes.the |
| bcd20 | 20 73 74 72 75 63 74 27 73 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 0a 20 20 20 20 20 | .struct's.in-memory.layout...... |
| bcd40 | 20 20 20 20 20 20 20 74 6f 20 74 68 65 20 67 75 61 72 61 6e 74 65 65 64 20 3c 63 6f 64 65 20 63 | .......to.the.guaranteed.<code.c |
| bcd60 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| bcd80 | 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 61 79 6f 75 74 2e 0a 20 20 20 | packed</span></code>.layout..... |
| bcda0 | 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | .........<ul>...............<li> |
| bcdc0 | 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 | See.also.<a.href="#packed-struct |
| bcde0 | 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ">packed.struct</a></li>........ |
| bce00 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | .....</ul>...........</td>...... |
| bce20 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| bce40 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| bce60 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | s="zig"><span.class="tok-kw">pub |
| bce80 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | </span></code></pre>...........< |
| bcea0 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | /td>...........<td>............. |
| bcec0 | 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | The.<code.class="zig"><span.clas |
| bcee0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 | s="tok-kw">pub</span></code>.in. |
| bcf00 | 66 72 6f 6e 74 20 6f 66 20 61 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e | front.of.a.top.level.declaration |
| bcf20 | 20 6d 61 6b 65 73 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 61 76 61 69 6c 61 62 6c 65 | .makes.the.declaration.available |
| bcf40 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 72 65 66 65 72 65 6e 63 65 20 66 72 6f 6d 20 61 | .............to.reference.from.a |
| bcf60 | 20 64 69 66 66 65 72 65 6e 74 20 66 69 6c 65 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 20 69 74 20 | .different.file.than.the.one.it. |
| bcf80 | 69 73 20 64 65 63 6c 61 72 65 64 20 69 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | is.declared.in..............<ul> |
| bcfa0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 | ...............<li>See.also.<a.h |
| bcfc0 | 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ref="#import">import</a></li>... |
| bcfe0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | ..........</ul>...........</td>. |
| bd000 | 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 | ........</tr>.........<tr>...... |
| bd020 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | .....<td>.............<pre><code |
| bd040 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| bd060 | 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | ">resume</span></code></pre>.... |
| bd080 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | .......</td>...........<td>..... |
| bd0a0 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ........<code.class="zig"><span. |
| bd0c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-kw">resume</span></co |
| bd0e0 | 64 65 3e 20 77 69 6c 6c 20 63 6f 6e 74 69 6e 75 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 | de>.will.continue.execution.of.a |
| bd100 | 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 20 61 66 74 65 72 20 74 68 65 20 70 6f 69 6e 74 20 | .function.frame.after.the.point. |
| bd120 | 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 61 73 20 73 75 73 70 65 6e 64 65 64 2e 0a 20 20 20 20 | the.function.was.suspended...... |
| bd140 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ........<ul>...............<li>S |
| bd160 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 | ee.also.<a.href="#Suspend-and-Re |
| bd180 | 73 75 6d 65 22 3e 53 75 73 70 65 6e 64 20 61 6e 64 20 52 65 73 75 6d 65 3c 2f 61 3e 3c 2f 6c 69 | sume">Suspend.and.Resume</a></li |
| bd1a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f | >.............</ul>...........</ |
| bd1c0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 | td>.........</tr>.........<tr>.. |
| bd1e0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c | .........<td>.............<pre>< |
| bd200 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| bd220 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | k-kw">return</span></code></pre> |
| bd240 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | ...........</td>...........<td>. |
| bd260 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ............<code.class="zig"><s |
| bd280 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">return</span> |
| bd2a0 | 3c 2f 63 6f 64 65 3e 20 65 78 69 74 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 61 20 | </code>.exits.a.function.with.a. |
| bd2c0 | 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | value..............<ul>......... |
| bd2e0 | 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e | ......<li>See.also.<a.href="#Fun |
| bd300 | 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ctions">Functions</a></li>...... |
| bd320 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | .......</ul>...........</td>.... |
| bd340 | 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 | .....</tr>.........<tr>......... |
| bd360 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..<td>.............<pre><code.cl |
| bd380 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6c | ass="zig"><span.class="tok-kw">l |
| bd3a0 | 69 6e 6b 73 65 63 74 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | inksection</span></code></pre>.. |
| bd3c0 | 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | .........</td>...........<td>... |
| bd3e0 | 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........The.<code.class="zig"> |
| bd400 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6c 69 6e 6b 73 65 63 74 69 6f 6e | <span.class="tok-kw">linksection |
| bd420 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2e 0a 20 20 20 20 20 20 20 20 | </span></code>.keyword.......... |
| bd440 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 4f 44 4f 20 | ....<ul>...............<li>TODO. |
| bd460 | 61 64 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 6c 69 6e 6b 73 65 63 74 69 6f | add.documentation.for.linksectio |
| bd480 | 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 | n</li>.............</ul>........ |
| bd4a0 | 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c | ...</td>.........</tr>.........< |
| bd4c0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | tr>...........<td>.............< |
| bd4e0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| bd500 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | s="tok-kw">struct</span></code>< |
| bd520 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | /pre>...........</td>........... |
| bd540 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | <td>.............<code.class="zi |
| bd560 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f | g"><span.class="tok-kw">struct</ |
| bd580 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 73 74 72 75 63 74 2e 0a 20 | span></code>.defines.a.struct... |
| bd5a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ...........<ul>...............<l |
| bd5c0 | 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 | i>See.also.<a.href="#struct">str |
| bd5e0 | 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | uct</a></li>.............</ul>.. |
| bd600 | 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | .........</td>.........</tr>.... |
| bd620 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | .....<tr>...........<td>........ |
| bd640 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| bd660 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c | n.class="tok-kw">suspend</span>< |
| bd680 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | /code></pre>...........</td>.... |
| bd6a0 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c | .......<td>.............<code.cl |
| bd6c0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | ass="zig"><span.class="tok-kw">s |
| bd6e0 | 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 63 61 75 73 65 20 | uspend</span></code>.will.cause. |
| bd700 | 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 74 6f 20 72 65 74 75 72 6e 20 74 6f 20 74 68 65 20 63 61 | control.flow.to.return.to.the.ca |
| bd720 | 6c 6c 20 73 69 74 65 20 6f 72 20 72 65 73 75 6d 65 72 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 | ll.site.or.resumer.of.the.functi |
| bd740 | 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | on..............<code.class="zig |
| bd760 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f | "><span.class="tok-kw">suspend</ |
| bd780 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 62 65 | span></code>.can.also.be.used.be |
| bd7a0 | 66 6f 72 65 20 61 20 62 6c 6f 63 6b 20 77 69 74 68 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 2c 0a | fore.a.block.within.a.function,. |
| bd7c0 | 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65 20 66 75 6e 63 74 69 6f | ............to.allow.the.functio |
| bd7e0 | 6e 20 61 63 63 65 73 73 20 74 6f 20 69 74 73 20 66 72 61 6d 65 20 62 65 66 6f 72 65 20 63 6f 6e | n.access.to.its.frame.before.con |
| bd800 | 74 72 6f 6c 20 66 6c 6f 77 20 72 65 74 75 72 6e 73 20 74 6f 20 74 68 65 20 63 61 6c 6c 20 73 69 | trol.flow.returns.to.the.call.si |
| bd820 | 74 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | te..............<ul>............ |
| bd840 | 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 53 75 73 70 65 6e | ...<li>See.also.<a.href="#Suspen |
| bd860 | 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 3e 53 75 73 70 65 6e 64 20 61 6e 64 20 52 65 73 75 6d 65 | d-and-Resume">Suspend.and.Resume |
| bd880 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | </a></li>.............</ul>..... |
| bd8a0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| bd8c0 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ..<tr>...........<td>........... |
| bd8e0 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| bd900 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">switch</span></cod |
| bd920 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | e></pre>...........</td>........ |
| bd940 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 20 3c 63 6f 64 65 20 63 6c 61 73 | ...<td>.............A.<code.clas |
| bd960 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 | s="zig"><span.class="tok-kw">swi |
| bd980 | 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 63 61 6e | tch</span></code>.expression.can |
| bd9a0 | 20 62 65 20 75 73 65 64 20 74 6f 20 74 65 73 74 20 76 61 6c 75 65 73 20 6f 66 20 61 20 63 6f 6d | .be.used.to.test.values.of.a.com |
| bd9c0 | 6d 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 | mon.type..............<code.clas |
| bd9e0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 | s="zig"><span.class="tok-kw">swi |
| bda00 | 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 73 65 73 20 63 61 6e 20 63 61 70 74 | tch</span></code>.cases.can.capt |
| bda20 | 75 72 65 20 66 69 65 6c 64 20 76 61 6c 75 65 73 20 6f 66 20 61 20 3c 61 20 68 72 65 66 3d 22 23 | ure.field.values.of.a.<a.href="# |
| bda40 | 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 2e 0a | Tagged-union">Tagged.union</a>.. |
| bda60 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ............<ul>...............< |
| bda80 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 | li>See.also.<a.href="#switch">sw |
| bdaa0 | 69 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | itch</a></li>.............</ul>. |
| bdac0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | ..........</td>.........</tr>... |
| bdae0 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | ......<tr>...........<td>....... |
| bdb00 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| bdb20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 | an.class="tok-kw">test</span></c |
| bdb40 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | ode></pre>...........</td>...... |
| bdb60 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 | .....<td>.............The.<code. |
| bdb80 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| bdba0 | 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 63 61 6e 20 | >test</span></code>.keyword.can. |
| bdbc0 | 62 65 20 75 73 65 64 20 74 6f 20 64 65 6e 6f 74 65 20 61 20 74 6f 70 2d 6c 65 76 65 6c 20 62 6c | be.used.to.denote.a.top-level.bl |
| bdbe0 | 6f 63 6b 20 6f 66 20 63 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 75 73 65 64 20 74 6f 20 | ock.of.code.............used.to. |
| bdc00 | 6d 61 6b 65 20 73 75 72 65 20 62 65 68 61 76 69 6f 72 20 6d 65 65 74 73 20 65 78 70 65 63 74 61 | make.sure.behavior.meets.expecta |
| bdc20 | 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | tions..............<ul>......... |
| bdc40 | 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 | ......<li>See.also.<a.href="#Zig |
| bdc60 | 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | -Test">Zig.Test</a></li>........ |
| bdc80 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | .....</ul>...........</td>...... |
| bdca0 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| bdcc0 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| bdce0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 68 72 | s="zig"><span.class="tok-kw">thr |
| bdd00 | 65 61 64 6c 6f 63 61 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | eadlocal</span></code></pre>.... |
| bdd20 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | .......</td>...........<td>..... |
| bdd40 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ........<code.class="zig"><span. |
| bdd60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f 73 70 61 6e | class="tok-kw">threadlocal</span |
| bdd80 | 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 | ></code>.can.be.used.to.specify. |
| bdda0 | 61 20 76 61 72 69 61 62 6c 65 20 61 73 20 74 68 72 65 61 64 2d 6c 6f 63 61 6c 2e 0a 20 20 20 20 | a.variable.as.thread-local...... |
| bddc0 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ........<ul>...............<li>S |
| bdde0 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 | ee.also.<a.href="#Thread-Local-V |
| bde00 | 61 72 69 61 62 6c 65 73 22 3e 54 68 72 65 61 64 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 | ariables">Thread.Local.Variables |
| bde20 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | </a></li>.............</ul>..... |
| bde40 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| bde60 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ..<tr>...........<td>........... |
| bde80 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| bdea0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-null">true</span></cod |
| bdec0 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | e></pre>...........</td>........ |
| bdee0 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 62 6f 6f 6c 65 61 6e 20 | ...<td>.............The.boolean. |
| bdf00 | 76 61 6c 75 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | value.<code.class="zig"><span.cl |
| bdf20 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">true</span></code |
| bdf40 | 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >..............<ul>............. |
| bdf60 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 | ..<li>See.also.<a.href="#Primiti |
| bdf80 | 76 65 2d 56 61 6c 75 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 56 61 6c 75 65 73 3c 2f 61 3e 3c | ve-Values">Primitive.Values</a>< |
| bdfa0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | /li>.............</ul>.......... |
| bdfc0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | .</td>.........</tr>.........<tr |
| bdfe0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 | >...........<td>.............<pr |
| be000 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| be020 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | "tok-kw">try</span></code></pre> |
| be040 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | ...........</td>...........<td>. |
| be060 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ............<code.class="zig"><s |
| be080 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 | pan.class="tok-kw">try</span></c |
| be0a0 | 6f 64 65 3e 20 65 76 61 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 65 78 | ode>.evaluates.an.error.union.ex |
| be0c0 | 70 72 65 73 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 69 74 20 69 73 20 61 | pression..............If.it.is.a |
| be0e0 | 6e 20 65 72 72 6f 72 2c 20 69 74 20 72 65 74 75 72 6e 73 20 66 72 6f 6d 20 74 68 65 20 63 75 72 | n.error,.it.returns.from.the.cur |
| be100 | 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f | rent.function.with.the.same.erro |
| be120 | 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 65 78 | r..............Otherwise,.the.ex |
| be140 | 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 74 68 65 20 75 6e 77 72 61 70 70 65 | pression.results.in.the.unwrappe |
| be160 | 64 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | d.value..............<ul>....... |
| be180 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 74 | ........<li>See.also.<a.href="#t |
| be1a0 | 72 79 22 3e 74 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | ry">try</a></li>.............</u |
| be1c0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | l>...........</td>.........</tr> |
| be1e0 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 | .........<tr>...........<td>.... |
| be200 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .........<pre><code.class="zig"> |
| be220 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 | <span.class="tok-null">undefined |
| be240 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | </span></code></pre>...........< |
| be260 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | /td>...........<td>............. |
| be280 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| be2a0 | 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ok-null">undefined</span></code> |
| be2c0 | 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6c 65 61 76 65 20 61 20 76 61 6c 75 65 20 75 6e | .can.be.used.to.leave.a.value.un |
| be2e0 | 69 6e 69 74 69 61 6c 69 7a 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | initialized..............<ul>... |
| be300 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 | ............<li>See.also.<a.href |
| be320 | 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e | ="#undefined">undefined</a></li> |
| be340 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | .............</ul>...........</t |
| be360 | 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | d>.........</tr>.........<tr>... |
| be380 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | ........<td>.............<pre><c |
| be3a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| be3c0 | 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | -kw">union</span></code></pre>.. |
| be3e0 | 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | .........</td>...........<td>... |
| be400 | 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ..........<code.class="zig"><spa |
| be420 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-kw">union</span></c |
| be440 | 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 75 6e 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 | ode>.defines.a.union............ |
| be460 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 | ..<ul>...............<li>See.als |
| be480 | 6f 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 | o.<a.href="#union">union</a></li |
| be4a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f | >.............</ul>...........</ |
| be4c0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 | td>.........</tr>.........<tr>.. |
| be4e0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c | .........<td>.............<pre>< |
| be500 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| be520 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | k-kw">unreachable</span></code>< |
| be540 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | /pre>...........</td>........... |
| be560 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | <td>.............<code.class="zi |
| be580 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 | g"><span.class="tok-kw">unreacha |
| be5a0 | 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f | ble</span></code>.can.be.used.to |
| be5c0 | 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 77 69 6c 6c 20 6e | .assert.that.control.flow.will.n |
| be5e0 | 65 76 65 72 20 68 61 70 70 65 6e 20 75 70 6f 6e 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 6c 6f | ever.happen.upon.a.particular.lo |
| be600 | 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 70 65 6e 64 69 6e 67 20 6f 6e | cation..............Depending.on |
| be620 | 20 74 68 65 20 62 75 69 6c 64 20 6d 6f 64 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .the.build.mode,.<code.class="zi |
| be640 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 | g"><span.class="tok-kw">unreacha |
| be660 | 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 65 6d 69 74 20 61 20 70 61 6e | ble</span></code>.may.emit.a.pan |
| be680 | 69 63 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ic..............<ul>............ |
| be6a0 | 20 20 20 3c 6c 69 3e 45 6d 69 74 73 20 61 20 70 61 6e 69 63 20 69 6e 20 3c 63 6f 64 65 20 63 6c | ...<li>Emits.a.panic.in.<code.cl |
| be6c0 | 61 73 73 3d 22 7a 69 67 22 3e 44 65 62 75 67 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 | ass="zig">Debug</code>.and.<code |
| be6e0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 63 6f 64 65 3e 20 | .class="zig">ReleaseSafe</code>. |
| be700 | 6d 6f 64 65 2c 20 6f 72 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 | mode,.or.when.using.<code>zig.te |
| be720 | 73 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | st</code>.</li>...............<l |
| be740 | 69 3e 44 6f 65 73 20 6e 6f 74 20 65 6d 69 74 20 61 20 70 61 6e 69 63 20 69 6e 20 3c 63 6f 64 65 | i>Does.not.emit.a.panic.in.<code |
| be760 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 20 | .class="zig">ReleaseFast</code>. |
| be780 | 6d 6f 64 65 2c 20 75 6e 6c 65 73 73 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f 64 | mode,.unless.<code>zig.test</cod |
| be7a0 | 65 3e 20 69 73 20 62 65 69 6e 67 20 75 73 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | e>.is.being.used.</li>.......... |
| be7c0 | 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 72 65 | .....<li>See.also.<a.href="#unre |
| be7e0 | 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | achable">unreachable</a></li>... |
| be800 | 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | ..........</ul>...........</td>. |
| be820 | 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 | ........</tr>.........<tr>...... |
| be840 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | .....<td>.............<pre><code |
| be860 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| be880 | 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | ">usingnamespace</span></code></ |
| be8a0 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | pre>...........</td>...........< |
| be8c0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | td>.............<code.class="zig |
| be8e0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 | "><span.class="tok-kw">usingname |
| be900 | 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 74 6f 70 2d 6c 65 76 | space</span></code>.is.a.top-lev |
| be920 | 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 74 68 61 74 20 69 6d 70 6f 72 74 73 20 61 6c 6c 20 | el.declaration.that.imports.all. |
| be940 | 74 68 65 20 70 75 62 6c 69 63 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 6f | the.public.declarations.of.the.o |
| be960 | 70 65 72 61 6e 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 20 6d 75 73 74 20 62 | perand,.............which.must.b |
| be980 | 65 20 61 20 73 74 72 75 63 74 2c 20 75 6e 69 6f 6e 2c 20 6f 72 20 65 6e 75 6d 2c 20 69 6e 74 6f | e.a.struct,.union,.or.enum,.into |
| be9a0 | 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .the.current.scope.............. |
| be9c0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 | <ul>...............<li>See.also. |
| be9e0 | 3c 61 20 68 72 65 66 3d 22 23 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 75 73 69 6e 67 6e | <a.href="#usingnamespace">usingn |
| bea00 | 61 6d 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | amespace</a></li>.............</ |
| bea20 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | ul>...........</td>.........</tr |
| bea40 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | >.........<tr>...........<td>... |
| bea60 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..........<pre><code.class="zig" |
| bea80 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | ><span.class="tok-kw">var</span> |
| beaa0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | </code></pre>...........</td>... |
| beac0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | ........<td>.............<code.c |
| beae0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| beb00 | 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 20 61 20 76 61 72 | var</span></code>.declares.a.var |
| beb20 | 69 61 62 6c 65 20 74 68 61 74 20 6d 61 79 20 62 65 20 6d 6f 64 69 66 69 65 64 2e 0a 20 20 20 20 | iable.that.may.be.modified...... |
| beb40 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ........<ul>...............<li>S |
| beb60 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 56 61 72 69 61 62 6c 65 73 22 3e 56 61 72 | ee.also.<a.href="#Variables">Var |
| beb80 | 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | iables</a></li>.............</ul |
| beba0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | >...........</td>.........</tr>. |
| bebc0 | 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | ........<tr>...........<td>..... |
| bebe0 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| bec00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 | span.class="tok-kw">volatile</sp |
| bec20 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | an></code></pre>...........</td> |
| bec40 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 | ...........<td>.............<cod |
| bec60 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| bec80 | 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 | w">volatile</span></code>.can.be |
| beca0 | 20 75 73 65 64 20 74 6f 20 64 65 6e 6f 74 65 20 6c 6f 61 64 73 20 6f 72 20 73 74 6f 72 65 73 20 | .used.to.denote.loads.or.stores. |
| becc0 | 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 0a | of.a.pointer.have.side.effects.. |
| bece0 | 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 6d 6f 64 69 66 79 20 61 | ............It.can.also.modify.a |
| bed00 | 6e 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 20 74 6f 20 | n.inline.assembly.expression.to. |
| bed20 | 64 65 6e 6f 74 65 20 69 74 20 68 61 73 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 0a 20 20 20 20 | denote.it.has.side.effects...... |
| bed40 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ........<ul>...............<li>S |
| bed60 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 | ee.also.<a.href="#volatile">vola |
| bed80 | 74 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e 41 73 | tile</a>,.<a.href="#Assembly">As |
| beda0 | 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | sembly</a></li>.............</ul |
| bedc0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | >...........</td>.........</tr>. |
| bede0 | 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | ........<tr>...........<td>..... |
| bee00 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| bee20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e | span.class="tok-kw">while</span> |
| bee40 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | </code></pre>...........</td>... |
| bee60 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 20 3c 63 6f 64 65 | ........<td>.............A.<code |
| bee80 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| beea0 | 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e | ">while</span></code>.expression |
| beec0 | 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 72 65 70 65 61 74 65 64 6c 79 20 74 65 73 74 20 | .can.be.used.to.repeatedly.test. |
| beee0 | 61 20 62 6f 6f 6c 65 61 6e 2c 20 6f 70 74 69 6f 6e 61 6c 2c 20 6f 72 20 65 72 72 6f 72 20 75 6e | a.boolean,.optional,.or.error.un |
| bef00 | 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 | ion.expression,.............and. |
| bef20 | 63 65 61 73 65 20 6c 6f 6f 70 69 6e 67 20 77 68 65 6e 20 74 68 61 74 20 65 78 70 72 65 73 73 69 | cease.looping.when.that.expressi |
| bef40 | 6f 6e 20 65 76 61 6c 75 61 74 65 73 20 74 6f 20 66 61 6c 73 65 2c 20 6e 75 6c 6c 2c 20 6f 72 20 | on.evaluates.to.false,.null,.or. |
| bef60 | 61 6e 20 65 72 72 6f 72 2c 20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 0a 20 20 20 20 20 20 20 20 | an.error,.respectively.......... |
| bef80 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 | ....<ul>...............<li>See.a |
| befa0 | 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 3c 2f | lso.<a.href="#while">while</a></ |
| befc0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | li>.............</ul>........... |
| befe0 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c | </td>.........</tr>.......</tabl |
| bf000 | 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 | e>.......</div>...............<h |
| bf020 | 31 20 69 64 3d 22 47 72 61 6d 6d 61 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 47 72 61 | 1.id="Grammar"><a.href="#toc-Gra |
| bf040 | 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | mmar">Grammar</a>.<a.class="hdr" |
| bf060 | 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 | .href="#Grammar">..</a></h1>.... |
| bf080 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 52 6f 6f 74 20 26 6c 74 3b 2d 20 73 6b 69 70 20 63 | ....<pre><code>Root.<-.skip.c |
| bf0a0 | 6f 6e 74 61 69 6e 65 72 5f 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 43 6f 6e 74 61 69 6e 65 72 4d | ontainer_doc_comment?.ContainerM |
| bf0c0 | 65 6d 62 65 72 73 20 65 6f 66 0a 0a 23 20 2a 2a 2a 20 54 6f 70 20 6c 65 76 65 6c 20 2a 2a 2a 0a | embers.eof..#.***.Top.level.***. |
| bf0e0 | 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 26 6c 74 3b 2d 20 43 6f 6e 74 61 69 6e 65 72 | ContainerMembers.<-.Container |
| bf100 | 44 65 63 6c 61 72 61 74 69 6f 6e 73 20 28 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 43 4f 4d | Declarations.(ContainerField.COM |
| bf120 | 4d 41 29 2a 20 28 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 2f 20 43 6f 6e 74 61 69 6e 65 72 | MA)*.(ContainerField./.Container |
| bf140 | 44 65 63 6c 61 72 61 74 69 6f 6e 73 29 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 74 | Declarations)..ContainerDeclarat |
| bf160 | 69 6f 6e 73 0a 20 20 20 20 26 6c 74 3b 2d 20 54 65 73 74 44 65 63 6c 20 43 6f 6e 74 61 69 6e 65 | ions.....<-.TestDecl.Containe |
| bf180 | 72 44 65 63 6c 61 72 61 74 69 6f 6e 73 0a 20 20 20 20 20 2f 20 54 6f 70 4c 65 76 65 6c 43 6f 6d | rDeclarations....../.TopLevelCom |
| bf1a0 | 70 74 69 6d 65 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 74 69 6f 6e 73 0a 20 20 20 20 | ptime.ContainerDeclarations..... |
| bf1c0 | 20 2f 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 4b 45 59 57 4f 52 44 5f 70 75 62 3f 20 54 6f 70 | ./.doc_comment?.KEYWORD_pub?.Top |
| bf1e0 | 4c 65 76 65 6c 44 65 63 6c 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 74 69 6f 6e 73 0a | LevelDecl.ContainerDeclarations. |
| bf200 | 20 20 20 20 20 2f 0a 0a 54 65 73 74 44 65 63 6c 20 26 6c 74 3b 2d 20 64 6f 63 5f 63 6f 6d 6d 65 | ...../..TestDecl.<-.doc_comme |
| bf220 | 6e 74 3f 20 4b 45 59 57 4f 52 44 5f 74 65 73 74 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 | nt?.KEYWORD_test.STRINGLITERALSI |
| bf240 | 4e 47 4c 45 3f 20 42 6c 6f 63 6b 0a 0a 54 6f 70 4c 65 76 65 6c 43 6f 6d 70 74 69 6d 65 20 26 6c | NGLE?.Block..TopLevelComptime.&l |
| bf260 | 74 3b 2d 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d | t;-.doc_comment?.KEYWORD_comptim |
| bf280 | 65 20 42 6c 6f 63 6b 45 78 70 72 0a 0a 54 6f 70 4c 65 76 65 6c 44 65 63 6c 0a 20 20 20 20 26 6c | e.BlockExpr..TopLevelDecl.....&l |
| bf2a0 | 74 3b 2d 20 28 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 2f 20 4b 45 59 57 4f 52 44 5f 65 78 | t;-.(KEYWORD_export./.KEYWORD_ex |
| bf2c0 | 74 65 72 6e 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 3f 20 2f 20 28 4b 45 59 | tern.STRINGLITERALSINGLE?./.(KEY |
| bf2e0 | 57 4f 52 44 5f 69 6e 6c 69 6e 65 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 69 6e 6c 69 6e 65 29 29 | WORD_inline./.KEYWORD_noinline)) |
| bf300 | 3f 20 46 6e 50 72 6f 74 6f 20 28 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 42 6c 6f 63 6b 29 0a 20 20 | ?.FnProto.(SEMICOLON./.Block)... |
| bf320 | 20 20 20 2f 20 28 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 2f 20 4b 45 59 57 4f 52 44 5f 65 | .../.(KEYWORD_export./.KEYWORD_e |
| bf340 | 78 74 65 72 6e 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 3f 29 3f 20 4b 45 59 | xtern.STRINGLITERALSINGLE?)?.KEY |
| bf360 | 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f 63 61 6c 3f 20 56 61 72 44 65 63 6c 0a 20 20 20 20 20 2f | WORD_threadlocal?.VarDecl....../ |
| bf380 | 20 4b 45 59 57 4f 52 44 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 20 45 78 70 72 20 53 45 4d | .KEYWORD_usingnamespace.Expr.SEM |
| bf3a0 | 49 43 4f 4c 4f 4e 0a 0a 46 6e 50 72 6f 74 6f 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 66 6e | ICOLON..FnProto.<-.KEYWORD_fn |
| bf3c0 | 20 49 44 45 4e 54 49 46 49 45 52 3f 20 4c 50 41 52 45 4e 20 50 61 72 61 6d 44 65 63 6c 4c 69 73 | .IDENTIFIER?.LPAREN.ParamDeclLis |
| bf3e0 | 74 20 52 50 41 52 45 4e 20 42 79 74 65 41 6c 69 67 6e 3f 20 4c 69 6e 6b 53 65 63 74 69 6f 6e 3f | t.RPAREN.ByteAlign?.LinkSection? |
| bf400 | 20 43 61 6c 6c 43 6f 6e 76 3f 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 3f 20 54 79 70 65 | .CallConv?.EXCLAMATIONMARK?.Type |
| bf420 | 45 78 70 72 0a 0a 56 61 72 44 65 63 6c 20 26 6c 74 3b 2d 20 28 4b 45 59 57 4f 52 44 5f 63 6f 6e | Expr..VarDecl.<-.(KEYWORD_con |
| bf440 | 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 76 61 72 29 20 49 44 45 4e 54 49 46 49 45 52 20 28 43 4f | st./.KEYWORD_var).IDENTIFIER.(CO |
| bf460 | 4c 4f 4e 20 54 79 70 65 45 78 70 72 29 3f 20 42 79 74 65 41 6c 69 67 6e 3f 20 4c 69 6e 6b 53 65 | LON.TypeExpr)?.ByteAlign?.LinkSe |
| bf480 | 63 74 69 6f 6e 3f 20 28 45 51 55 41 4c 20 45 78 70 72 29 3f 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a | ction?.(EQUAL.Expr)?.SEMICOLON.. |
| bf4a0 | 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 26 6c 74 3b 2d 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 | ContainerField.<-.doc_comment |
| bf4c0 | 3f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 3f 20 49 44 45 4e 54 49 46 49 45 52 20 28 | ?.KEYWORD_comptime?.IDENTIFIER.( |
| bf4e0 | 43 4f 4c 4f 4e 20 28 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 20 2f 20 54 79 70 65 45 78 70 | COLON.(KEYWORD_anytype./.TypeExp |
| bf500 | 72 29 20 42 79 74 65 41 6c 69 67 6e 3f 29 3f 20 28 45 51 55 41 4c 20 45 78 70 72 29 3f 0a 0a 23 | r).ByteAlign?)?.(EQUAL.Expr)?..# |
| bf520 | 20 2a 2a 2a 20 42 6c 6f 63 6b 20 4c 65 76 65 6c 20 2a 2a 2a 0a 53 74 61 74 65 6d 65 6e 74 0a 20 | .***.Block.Level.***.Statement.. |
| bf540 | 20 20 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 3f 20 56 61 72 44 65 | ...<-.KEYWORD_comptime?.VarDe |
| bf560 | 63 6c 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 42 6c 6f 63 6b | cl....../.KEYWORD_comptime.Block |
| bf580 | 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 73 | ExprStatement....../.KEYWORD_nos |
| bf5a0 | 75 73 70 65 6e 64 20 42 6c 6f 63 6b 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f | uspend.BlockExprStatement....../ |
| bf5c0 | 20 4b 45 59 57 4f 52 44 5f 73 75 73 70 65 6e 64 20 42 6c 6f 63 6b 45 78 70 72 53 74 61 74 65 6d | .KEYWORD_suspend.BlockExprStatem |
| bf5e0 | 65 6e 74 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 64 65 66 65 72 20 42 6c 6f 63 6b 45 78 | ent....../.KEYWORD_defer.BlockEx |
| bf600 | 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 64 65 | prStatement....../.KEYWORD_errde |
| bf620 | 66 65 72 20 50 61 79 6c 6f 61 64 3f 20 42 6c 6f 63 6b 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a | fer.Payload?.BlockExprStatement. |
| bf640 | 20 20 20 20 20 2f 20 49 66 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 4c 61 62 65 6c 65 | ...../.IfStatement....../.Labele |
| bf660 | 64 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 53 77 69 74 63 68 45 78 70 72 0a 20 20 20 | dStatement....../.SwitchExpr.... |
| bf680 | 20 20 2f 20 41 73 73 69 67 6e 45 78 70 72 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 49 66 53 74 61 74 | ../.AssignExpr.SEMICOLON..IfStat |
| bf6a0 | 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 49 66 50 72 65 66 69 78 20 42 6c 6f 63 6b 45 78 | ement.....<-.IfPrefix.BlockEx |
| bf6c0 | 70 72 20 28 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 | pr.(.KEYWORD_else.Payload?.State |
| bf6e0 | 6d 65 6e 74 20 29 3f 0a 20 20 20 20 20 2f 20 49 66 50 72 65 66 69 78 20 41 73 73 69 67 6e 45 78 | ment.)?....../.IfPrefix.AssignEx |
| bf700 | 70 72 20 28 20 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 | pr.(.SEMICOLON./.KEYWORD_else.Pa |
| bf720 | 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 6e 74 20 29 0a 0a 4c 61 62 65 6c 65 64 53 74 61 74 65 | yload?.Statement.)..LabeledState |
| bf740 | 6d 65 6e 74 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 28 42 6c 6f 63 6b 20 2f 20 | ment.<-.BlockLabel?.(Block./. |
| bf760 | 4c 6f 6f 70 53 74 61 74 65 6d 65 6e 74 29 0a 0a 4c 6f 6f 70 53 74 61 74 65 6d 65 6e 74 20 26 6c | LoopStatement)..LoopStatement.&l |
| bf780 | 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 3f 20 28 46 6f 72 53 74 61 74 65 6d 65 6e | t;-.KEYWORD_inline?.(ForStatemen |
| bf7a0 | 74 20 2f 20 57 68 69 6c 65 53 74 61 74 65 6d 65 6e 74 29 0a 0a 46 6f 72 53 74 61 74 65 6d 65 6e | t./.WhileStatement)..ForStatemen |
| bf7c0 | 74 0a 20 20 20 20 26 6c 74 3b 2d 20 46 6f 72 50 72 65 66 69 78 20 42 6c 6f 63 6b 45 78 70 72 20 | t.....<-.ForPrefix.BlockExpr. |
| bf7e0 | 28 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 53 74 61 74 65 6d 65 6e 74 20 29 3f 0a 20 20 20 20 | (.KEYWORD_else.Statement.)?..... |
| bf800 | 20 2f 20 46 6f 72 50 72 65 66 69 78 20 41 73 73 69 67 6e 45 78 70 72 20 28 20 53 45 4d 49 43 4f | ./.ForPrefix.AssignExpr.(.SEMICO |
| bf820 | 4c 4f 4e 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 53 74 61 74 65 6d 65 6e 74 20 29 0a 0a | LON./.KEYWORD_else.Statement.).. |
| bf840 | 57 68 69 6c 65 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 57 68 69 6c 65 50 72 | WhileStatement.....<-.WhilePr |
| bf860 | 65 66 69 78 20 42 6c 6f 63 6b 45 78 70 72 20 28 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 | efix.BlockExpr.(.KEYWORD_else.Pa |
| bf880 | 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 6e 74 20 29 3f 0a 20 20 20 20 20 2f 20 57 68 69 6c 65 | yload?.Statement.)?....../.While |
| bf8a0 | 50 72 65 66 69 78 20 41 73 73 69 67 6e 45 78 70 72 20 28 20 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 | Prefix.AssignExpr.(.SEMICOLON./. |
| bf8c0 | 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 6e 74 20 | KEYWORD_else.Payload?.Statement. |
| bf8e0 | 29 0a 0a 42 6c 6f 63 6b 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 | )..BlockExprStatement.....<-. |
| bf900 | 42 6c 6f 63 6b 45 78 70 72 0a 20 20 20 20 20 2f 20 41 73 73 69 67 6e 45 78 70 72 20 53 45 4d 49 | BlockExpr....../.AssignExpr.SEMI |
| bf920 | 43 4f 4c 4f 4e 0a 0a 42 6c 6f 63 6b 45 78 70 72 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 4c 61 62 65 | COLON..BlockExpr.<-.BlockLabe |
| bf940 | 6c 3f 20 42 6c 6f 63 6b 0a 0a 23 20 2a 2a 2a 20 45 78 70 72 65 73 73 69 6f 6e 20 4c 65 76 65 6c | l?.Block..#.***.Expression.Level |
| bf960 | 20 2a 2a 2a 0a 41 73 73 69 67 6e 45 78 70 72 20 26 6c 74 3b 2d 20 45 78 70 72 20 28 41 73 73 69 | .***.AssignExpr.<-.Expr.(Assi |
| bf980 | 67 6e 4f 70 20 45 78 70 72 29 3f 0a 0a 45 78 70 72 20 26 6c 74 3b 2d 20 42 6f 6f 6c 4f 72 45 78 | gnOp.Expr)?..Expr.<-.BoolOrEx |
| bf9a0 | 70 72 0a 0a 42 6f 6f 6c 4f 72 45 78 70 72 20 26 6c 74 3b 2d 20 42 6f 6f 6c 41 6e 64 45 78 70 72 | pr..BoolOrExpr.<-.BoolAndExpr |
| bf9c0 | 20 28 4b 45 59 57 4f 52 44 5f 6f 72 20 42 6f 6f 6c 41 6e 64 45 78 70 72 29 2a 0a 0a 42 6f 6f 6c | .(KEYWORD_or.BoolAndExpr)*..Bool |
| bf9e0 | 41 6e 64 45 78 70 72 20 26 6c 74 3b 2d 20 43 6f 6d 70 61 72 65 45 78 70 72 20 28 4b 45 59 57 4f | AndExpr.<-.CompareExpr.(KEYWO |
| bfa00 | 52 44 5f 61 6e 64 20 43 6f 6d 70 61 72 65 45 78 70 72 29 2a 0a 0a 43 6f 6d 70 61 72 65 45 78 70 | RD_and.CompareExpr)*..CompareExp |
| bfa20 | 72 20 26 6c 74 3b 2d 20 42 69 74 77 69 73 65 45 78 70 72 20 28 43 6f 6d 70 61 72 65 4f 70 20 42 | r.<-.BitwiseExpr.(CompareOp.B |
| bfa40 | 69 74 77 69 73 65 45 78 70 72 29 3f 0a 0a 42 69 74 77 69 73 65 45 78 70 72 20 26 6c 74 3b 2d 20 | itwiseExpr)?..BitwiseExpr.<-. |
| bfa60 | 42 69 74 53 68 69 66 74 45 78 70 72 20 28 42 69 74 77 69 73 65 4f 70 20 42 69 74 53 68 69 66 74 | BitShiftExpr.(BitwiseOp.BitShift |
| bfa80 | 45 78 70 72 29 2a 0a 0a 42 69 74 53 68 69 66 74 45 78 70 72 20 26 6c 74 3b 2d 20 41 64 64 69 74 | Expr)*..BitShiftExpr.<-.Addit |
| bfaa0 | 69 6f 6e 45 78 70 72 20 28 42 69 74 53 68 69 66 74 4f 70 20 41 64 64 69 74 69 6f 6e 45 78 70 72 | ionExpr.(BitShiftOp.AdditionExpr |
| bfac0 | 29 2a 0a 0a 41 64 64 69 74 69 6f 6e 45 78 70 72 20 26 6c 74 3b 2d 20 4d 75 6c 74 69 70 6c 79 45 | )*..AdditionExpr.<-.MultiplyE |
| bfae0 | 78 70 72 20 28 41 64 64 69 74 69 6f 6e 4f 70 20 4d 75 6c 74 69 70 6c 79 45 78 70 72 29 2a 0a 0a | xpr.(AdditionOp.MultiplyExpr)*.. |
| bfb00 | 4d 75 6c 74 69 70 6c 79 45 78 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 45 78 70 72 20 28 4d | MultiplyExpr.<-.PrefixExpr.(M |
| bfb20 | 75 6c 74 69 70 6c 79 4f 70 20 50 72 65 66 69 78 45 78 70 72 29 2a 0a 0a 50 72 65 66 69 78 45 78 | ultiplyOp.PrefixExpr)*..PrefixEx |
| bfb40 | 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 4f 70 2a 20 50 72 69 6d 61 72 79 45 78 70 72 0a 0a | pr.<-.PrefixOp*.PrimaryExpr.. |
| bfb60 | 50 72 69 6d 61 72 79 45 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 41 73 6d 45 78 70 72 0a 20 20 | PrimaryExpr.....<-.AsmExpr... |
| bfb80 | 20 20 20 2f 20 49 66 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b | .../.IfExpr....../.KEYWORD_break |
| bfba0 | 20 42 72 65 61 6b 4c 61 62 65 6c 3f 20 45 78 70 72 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 | .BreakLabel?.Expr?....../.KEYWOR |
| bfbc0 | 44 5f 63 6f 6d 70 74 69 6d 65 20 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6e | D_comptime.Expr....../.KEYWORD_n |
| bfbe0 | 6f 73 75 73 70 65 6e 64 20 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e | osuspend.Expr....../.KEYWORD_con |
| bfc00 | 74 69 6e 75 65 20 42 72 65 61 6b 4c 61 62 65 6c 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 | tinue.BreakLabel?....../.KEYWORD |
| bfc20 | 5f 72 65 73 75 6d 65 20 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 74 75 | _resume.Expr....../.KEYWORD_retu |
| bfc40 | 72 6e 20 45 78 70 72 3f 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 4c 6f 6f 70 | rn.Expr?....../.BlockLabel?.Loop |
| bfc60 | 45 78 70 72 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 0a 20 20 20 20 20 2f 20 43 75 72 6c 79 53 75 | Expr....../.Block....../.CurlySu |
| bfc80 | 66 66 69 78 45 78 70 72 0a 0a 49 66 45 78 70 72 20 26 6c 74 3b 2d 20 49 66 50 72 65 66 69 78 20 | ffixExpr..IfExpr.<-.IfPrefix. |
| bfca0 | 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 45 78 70 72 | Expr.(KEYWORD_else.Payload?.Expr |
| bfcc0 | 29 3f 0a 0a 42 6c 6f 63 6b 20 26 6c 74 3b 2d 20 4c 42 52 41 43 45 20 53 74 61 74 65 6d 65 6e 74 | )?..Block.<-.LBRACE.Statement |
| bfce0 | 2a 20 52 42 52 41 43 45 0a 0a 4c 6f 6f 70 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 | *.RBRACE..LoopExpr.<-.KEYWORD |
| bfd00 | 5f 69 6e 6c 69 6e 65 3f 20 28 46 6f 72 45 78 70 72 20 2f 20 57 68 69 6c 65 45 78 70 72 29 0a 0a | _inline?.(ForExpr./.WhileExpr).. |
| bfd20 | 46 6f 72 45 78 70 72 20 26 6c 74 3b 2d 20 46 6f 72 50 72 65 66 69 78 20 45 78 70 72 20 28 4b 45 | ForExpr.<-.ForPrefix.Expr.(KE |
| bfd40 | 59 57 4f 52 44 5f 65 6c 73 65 20 45 78 70 72 29 3f 0a 0a 57 68 69 6c 65 45 78 70 72 20 26 6c 74 | YWORD_else.Expr)?..WhileExpr.< |
| bfd60 | 3b 2d 20 57 68 69 6c 65 50 72 65 66 69 78 20 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 | ;-.WhilePrefix.Expr.(KEYWORD_els |
| bfd80 | 65 20 50 61 79 6c 6f 61 64 3f 20 45 78 70 72 29 3f 0a 0a 43 75 72 6c 79 53 75 66 66 69 78 45 78 | e.Payload?.Expr)?..CurlySuffixEx |
| bfda0 | 70 72 20 26 6c 74 3b 2d 20 54 79 70 65 45 78 70 72 20 49 6e 69 74 4c 69 73 74 3f 0a 0a 49 6e 69 | pr.<-.TypeExpr.InitList?..Ini |
| bfdc0 | 74 4c 69 73 74 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 42 52 41 43 45 20 46 69 65 6c 64 49 6e 69 74 | tList.....<-.LBRACE.FieldInit |
| bfde0 | 20 28 43 4f 4d 4d 41 20 46 69 65 6c 64 49 6e 69 74 29 2a 20 43 4f 4d 4d 41 3f 20 52 42 52 41 43 | .(COMMA.FieldInit)*.COMMA?.RBRAC |
| bfe00 | 45 0a 20 20 20 20 20 2f 20 4c 42 52 41 43 45 20 45 78 70 72 20 28 43 4f 4d 4d 41 20 45 78 70 72 | E....../.LBRACE.Expr.(COMMA.Expr |
| bfe20 | 29 2a 20 43 4f 4d 4d 41 3f 20 52 42 52 41 43 45 0a 20 20 20 20 20 2f 20 4c 42 52 41 43 45 20 52 | )*.COMMA?.RBRACE....../.LBRACE.R |
| bfe40 | 42 52 41 43 45 0a 0a 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 54 79 70 65 | BRACE..TypeExpr.<-.PrefixType |
| bfe60 | 4f 70 2a 20 45 72 72 6f 72 55 6e 69 6f 6e 45 78 70 72 0a 0a 45 72 72 6f 72 55 6e 69 6f 6e 45 78 | Op*.ErrorUnionExpr..ErrorUnionEx |
| bfe80 | 70 72 20 26 6c 74 3b 2d 20 53 75 66 66 69 78 45 78 70 72 20 28 45 58 43 4c 41 4d 41 54 49 4f 4e | pr.<-.SuffixExpr.(EXCLAMATION |
| bfea0 | 4d 41 52 4b 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 53 75 66 66 69 78 45 78 70 72 0a 20 20 20 20 | MARK.TypeExpr)?..SuffixExpr..... |
| bfec0 | 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 73 79 6e 63 20 50 72 69 6d 61 72 79 54 79 70 65 45 | <-.KEYWORD_async.PrimaryTypeE |
| bfee0 | 78 70 72 20 53 75 66 66 69 78 4f 70 2a 20 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 0a 20 20 | xpr.SuffixOp*.FnCallArguments... |
| bff00 | 20 20 20 2f 20 50 72 69 6d 61 72 79 54 79 70 65 45 78 70 72 20 28 53 75 66 66 69 78 4f 70 20 2f | .../.PrimaryTypeExpr.(SuffixOp./ |
| bff20 | 20 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 29 2a 0a 0a 50 72 69 6d 61 72 79 54 79 70 65 45 | .FnCallArguments)*..PrimaryTypeE |
| bff40 | 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 42 55 49 4c 54 49 4e 49 44 45 4e 54 49 46 49 45 52 20 | xpr.....<-.BUILTINIDENTIFIER. |
| bff60 | 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 2f 20 43 48 41 52 5f 4c 49 54 45 | FnCallArguments....../.CHAR_LITE |
| bff80 | 52 41 4c 0a 20 20 20 20 20 2f 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 0a 20 20 20 20 20 2f 20 | RAL....../.ContainerDecl....../. |
| bffa0 | 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 6e 69 74 4c 69 | DOT.IDENTIFIER....../.DOT.InitLi |
| bffc0 | 73 74 0a 20 20 20 20 20 2f 20 45 72 72 6f 72 53 65 74 44 65 63 6c 0a 20 20 20 20 20 2f 20 46 4c | st....../.ErrorSetDecl....../.FL |
| bffe0 | 4f 41 54 0a 20 20 20 20 20 2f 20 46 6e 50 72 6f 74 6f 0a 20 20 20 20 20 2f 20 47 72 6f 75 70 65 | OAT....../.FnProto....../.Groupe |
| c0000 | 64 45 78 70 72 0a 20 20 20 20 20 2f 20 4c 61 62 65 6c 65 64 54 79 70 65 45 78 70 72 0a 20 20 20 | dExpr....../.LabeledTypeExpr.... |
| c0020 | 20 20 2f 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 49 66 54 79 70 65 45 78 70 72 | ../.IDENTIFIER....../.IfTypeExpr |
| c0040 | 0a 20 20 20 20 20 2f 20 49 4e 54 45 47 45 52 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 | ....../.INTEGER....../.KEYWORD_c |
| c0060 | 6f 6d 70 74 69 6d 65 20 54 79 70 65 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f | omptime.TypeExpr....../.KEYWORD_ |
| c0080 | 65 72 72 6f 72 20 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 4b 45 59 57 | error.DOT.IDENTIFIER....../.KEYW |
| c00a0 | 4f 52 44 5f 66 61 6c 73 65 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 75 6c 6c 0a 20 20 | ORD_false....../.KEYWORD_null... |
| c00c0 | 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 0a 20 20 20 20 20 2f 20 4b 45 59 | .../.KEYWORD_anyframe....../.KEY |
| c00e0 | 57 4f 52 44 5f 74 72 75 65 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 64 65 66 69 6e | WORD_true....../.KEYWORD_undefin |
| c0100 | 65 64 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 72 65 61 63 68 61 62 6c 65 0a 20 20 | ed....../.KEYWORD_unreachable... |
| c0120 | 20 20 20 2f 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 0a 20 20 20 20 20 2f 20 53 77 69 74 63 68 | .../.STRINGLITERAL....../.Switch |
| c0140 | 45 78 70 72 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 20 26 6c 74 3b 2d 20 28 4b 45 59 57 4f | Expr..ContainerDecl.<-.(KEYWO |
| c0160 | 52 44 5f 65 78 74 65 72 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 70 61 63 6b 65 64 29 3f 20 43 6f 6e | RD_extern./.KEYWORD_packed)?.Con |
| c0180 | 74 61 69 6e 65 72 44 65 63 6c 41 75 74 6f 0a 0a 45 72 72 6f 72 53 65 74 44 65 63 6c 20 26 6c 74 | tainerDeclAuto..ErrorSetDecl.< |
| c01a0 | 3b 2d 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 4c 42 52 41 43 45 20 49 64 65 6e 74 69 66 69 | ;-.KEYWORD_error.LBRACE.Identifi |
| c01c0 | 65 72 4c 69 73 74 20 52 42 52 41 43 45 0a 0a 47 72 6f 75 70 65 64 45 78 70 72 20 26 6c 74 3b 2d | erList.RBRACE..GroupedExpr.<- |
| c01e0 | 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 49 66 54 79 70 65 45 78 70 72 20 | .LPAREN.Expr.RPAREN..IfTypeExpr. |
| c0200 | 26 6c 74 3b 2d 20 49 66 50 72 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 | <-.IfPrefix.TypeExpr.(KEYWORD |
| c0220 | 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 4c 61 62 65 6c | _else.Payload?.TypeExpr)?..Label |
| c0240 | 65 64 54 79 70 65 45 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 4c 61 62 65 6c 20 | edTypeExpr.....<-.BlockLabel. |
| c0260 | 42 6c 6f 63 6b 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 4c 6f 6f 70 54 79 70 | Block....../.BlockLabel?.LoopTyp |
| c0280 | 65 45 78 70 72 0a 0a 4c 6f 6f 70 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 | eExpr..LoopTypeExpr.<-.KEYWOR |
| c02a0 | 44 5f 69 6e 6c 69 6e 65 3f 20 28 46 6f 72 54 79 70 65 45 78 70 72 20 2f 20 57 68 69 6c 65 54 79 | D_inline?.(ForTypeExpr./.WhileTy |
| c02c0 | 70 65 45 78 70 72 29 0a 0a 46 6f 72 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 46 6f 72 50 72 | peExpr)..ForTypeExpr.<-.ForPr |
| c02e0 | 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 54 79 70 65 | efix.TypeExpr.(KEYWORD_else.Type |
| c0300 | 45 78 70 72 29 3f 0a 0a 57 68 69 6c 65 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 57 68 69 6c | Expr)?..WhileTypeExpr.<-.Whil |
| c0320 | 65 50 72 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 | ePrefix.TypeExpr.(KEYWORD_else.P |
| c0340 | 61 79 6c 6f 61 64 3f 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 53 77 69 74 63 68 45 78 70 72 20 26 | ayload?.TypeExpr)?..SwitchExpr.& |
| c0360 | 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 73 77 69 74 63 68 20 4c 50 41 52 45 4e 20 45 78 70 72 20 | lt;-.KEYWORD_switch.LPAREN.Expr. |
| c0380 | 52 50 41 52 45 4e 20 4c 42 52 41 43 45 20 53 77 69 74 63 68 50 72 6f 6e 67 4c 69 73 74 20 52 42 | RPAREN.LBRACE.SwitchProngList.RB |
| c03a0 | 52 41 43 45 0a 0a 23 20 2a 2a 2a 20 41 73 73 65 6d 62 6c 79 20 2a 2a 2a 0a 41 73 6d 45 78 70 72 | RACE..#.***.Assembly.***.AsmExpr |
| c03c0 | 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 73 6d 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 | .<-.KEYWORD_asm.KEYWORD_volat |
| c03e0 | 69 6c 65 3f 20 4c 50 41 52 45 4e 20 45 78 70 72 20 41 73 6d 4f 75 74 70 75 74 3f 20 52 50 41 52 | ile?.LPAREN.Expr.AsmOutput?.RPAR |
| c0400 | 45 4e 0a 0a 41 73 6d 4f 75 74 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 41 73 6d 4f 75 74 | EN..AsmOutput.<-.COLON.AsmOut |
| c0420 | 70 75 74 4c 69 73 74 20 41 73 6d 49 6e 70 75 74 3f 0a 0a 41 73 6d 4f 75 74 70 75 74 49 74 65 6d | putList.AsmInput?..AsmOutputItem |
| c0440 | 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 49 44 45 4e 54 49 46 49 45 52 20 52 42 52 41 43 | .<-.LBRACKET.IDENTIFIER.RBRAC |
| c0460 | 4b 45 54 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 4e 20 28 4d 49 4e 55 53 52 | KET.STRINGLITERAL.LPAREN.(MINUSR |
| c0480 | 41 52 52 4f 57 20 54 79 70 65 45 78 70 72 20 2f 20 49 44 45 4e 54 49 46 49 45 52 29 20 52 50 41 | ARROW.TypeExpr./.IDENTIFIER).RPA |
| c04a0 | 52 45 4e 0a 0a 41 73 6d 49 6e 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 41 73 6d 49 6e 70 | REN..AsmInput.<-.COLON.AsmInp |
| c04c0 | 75 74 4c 69 73 74 20 41 73 6d 43 6c 6f 62 62 65 72 73 3f 0a 0a 41 73 6d 49 6e 70 75 74 49 74 65 | utList.AsmClobbers?..AsmInputIte |
| c04e0 | 6d 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 49 44 45 4e 54 49 46 49 45 52 20 52 42 52 41 | m.<-.LBRACKET.IDENTIFIER.RBRA |
| c0500 | 43 4b 45 54 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 | CKET.STRINGLITERAL.LPAREN.Expr.R |
| c0520 | 50 41 52 45 4e 0a 0a 41 73 6d 43 6c 6f 62 62 65 72 73 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 53 | PAREN..AsmClobbers.<-.COLON.S |
| c0540 | 74 72 69 6e 67 4c 69 73 74 0a 0a 23 20 2a 2a 2a 20 48 65 6c 70 65 72 20 67 72 61 6d 6d 61 72 20 | tringList..#.***.Helper.grammar. |
| c0560 | 2a 2a 2a 0a 42 72 65 61 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 49 44 45 4e 54 | ***.BreakLabel.<-.COLON.IDENT |
| c0580 | 49 46 49 45 52 0a 0a 42 6c 6f 63 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d 20 49 44 45 4e 54 49 46 49 | IFIER..BlockLabel.<-.IDENTIFI |
| c05a0 | 45 52 20 43 4f 4c 4f 4e 0a 0a 46 69 65 6c 64 49 6e 69 74 20 26 6c 74 3b 2d 20 44 4f 54 20 49 44 | ER.COLON..FieldInit.<-.DOT.ID |
| c05c0 | 45 4e 54 49 46 49 45 52 20 45 51 55 41 4c 20 45 78 70 72 0a 0a 57 68 69 6c 65 43 6f 6e 74 69 6e | ENTIFIER.EQUAL.Expr..WhileContin |
| c05e0 | 75 65 45 78 70 72 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 4c 50 41 52 45 4e 20 41 73 73 69 67 6e | ueExpr.<-.COLON.LPAREN.Assign |
| c0600 | 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 4c 69 6e 6b 53 65 63 74 69 6f 6e 20 26 6c 74 3b 2d 20 4b | Expr.RPAREN..LinkSection.<-.K |
| c0620 | 45 59 57 4f 52 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 | EYWORD_linksection.LPAREN.Expr.R |
| c0640 | 50 41 52 45 4e 0a 0a 23 20 46 6e 20 73 70 65 63 69 66 69 63 0a 43 61 6c 6c 43 6f 6e 76 20 26 6c | PAREN..#.Fn.specific.CallConv.&l |
| c0660 | 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 63 61 6c 6c 63 6f 6e 76 20 4c 50 41 52 45 4e 20 45 78 70 72 | t;-.KEYWORD_callconv.LPAREN.Expr |
| c0680 | 20 52 50 41 52 45 4e 0a 0a 50 61 72 61 6d 44 65 63 6c 0a 20 20 20 20 26 6c 74 3b 2d 20 64 6f 63 | .RPAREN..ParamDecl.....<-.doc |
| c06a0 | 5f 63 6f 6d 6d 65 6e 74 3f 20 28 4b 45 59 57 4f 52 44 5f 6e 6f 61 6c 69 61 73 20 2f 20 4b 45 59 | _comment?.(KEYWORD_noalias./.KEY |
| c06c0 | 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 29 3f 20 28 49 44 45 4e 54 49 46 49 45 52 20 43 4f 4c 4f | WORD_comptime)?.(IDENTIFIER.COLO |
| c06e0 | 4e 29 3f 20 50 61 72 61 6d 54 79 70 65 0a 20 20 20 20 20 2f 20 44 4f 54 33 0a 0a 50 61 72 61 6d | N)?.ParamType....../.DOT3..Param |
| c0700 | 54 79 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 0a 20 | Type.....<-.KEYWORD_anytype.. |
| c0720 | 20 20 20 20 2f 20 54 79 70 65 45 78 70 72 0a 0a 23 20 43 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 70 | ..../.TypeExpr..#.Control.flow.p |
| c0740 | 72 65 66 69 78 65 73 0a 49 66 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 | refixes.IfPrefix.<-.KEYWORD_i |
| c0760 | 66 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 20 50 74 72 50 61 79 6c 6f 61 64 3f | f.LPAREN.Expr.RPAREN.PtrPayload? |
| c0780 | 0a 0a 57 68 69 6c 65 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 77 68 69 6c | ..WhilePrefix.<-.KEYWORD_whil |
| c07a0 | 65 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 20 50 74 72 50 61 79 6c 6f 61 64 3f | e.LPAREN.Expr.RPAREN.PtrPayload? |
| c07c0 | 20 57 68 69 6c 65 43 6f 6e 74 69 6e 75 65 45 78 70 72 3f 0a 0a 46 6f 72 50 72 65 66 69 78 20 26 | .WhileContinueExpr?..ForPrefix.& |
| c07e0 | 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 66 6f 72 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 | lt;-.KEYWORD_for.LPAREN.Expr.RPA |
| c0800 | 52 45 4e 20 50 74 72 49 6e 64 65 78 50 61 79 6c 6f 61 64 0a 0a 23 20 50 61 79 6c 6f 61 64 73 0a | REN.PtrIndexPayload..#.Payloads. |
| c0820 | 50 61 79 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 49 44 45 4e 54 49 46 49 45 52 20 50 49 | Payload.<-.PIPE.IDENTIFIER.PI |
| c0840 | 50 45 0a 0a 50 74 72 50 61 79 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 41 53 54 45 52 49 | PE..PtrPayload.<-.PIPE.ASTERI |
| c0860 | 53 4b 3f 20 49 44 45 4e 54 49 46 49 45 52 20 50 49 50 45 0a 0a 50 74 72 49 6e 64 65 78 50 61 79 | SK?.IDENTIFIER.PIPE..PtrIndexPay |
| c0880 | 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 41 53 54 45 52 49 53 4b 3f 20 49 44 45 4e 54 49 | load.<-.PIPE.ASTERISK?.IDENTI |
| c08a0 | 46 49 45 52 20 28 43 4f 4d 4d 41 20 49 44 45 4e 54 49 46 49 45 52 29 3f 20 50 49 50 45 0a 0a 0a | FIER.(COMMA.IDENTIFIER)?.PIPE... |
| c08c0 | 23 20 53 77 69 74 63 68 20 73 70 65 63 69 66 69 63 0a 53 77 69 74 63 68 50 72 6f 6e 67 20 26 6c | #.Switch.specific.SwitchProng.&l |
| c08e0 | 74 3b 2d 20 53 77 69 74 63 68 43 61 73 65 20 45 51 55 41 4c 52 41 52 52 4f 57 20 50 74 72 50 61 | t;-.SwitchCase.EQUALRARROW.PtrPa |
| c0900 | 79 6c 6f 61 64 3f 20 41 73 73 69 67 6e 45 78 70 72 0a 0a 53 77 69 74 63 68 43 61 73 65 0a 20 20 | yload?.AssignExpr..SwitchCase... |
| c0920 | 20 20 26 6c 74 3b 2d 20 53 77 69 74 63 68 49 74 65 6d 20 28 43 4f 4d 4d 41 20 53 77 69 74 63 68 | ..<-.SwitchItem.(COMMA.Switch |
| c0940 | 49 74 65 6d 29 2a 20 43 4f 4d 4d 41 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 | Item)*.COMMA?....../.KEYWORD_els |
| c0960 | 65 0a 0a 53 77 69 74 63 68 49 74 65 6d 20 26 6c 74 3b 2d 20 45 78 70 72 20 28 44 4f 54 33 20 45 | e..SwitchItem.<-.Expr.(DOT3.E |
| c0980 | 78 70 72 29 3f 0a 0a 23 20 4f 70 65 72 61 74 6f 72 73 0a 41 73 73 69 67 6e 4f 70 0a 20 20 20 20 | xpr)?..#.Operators.AssignOp..... |
| c09a0 | 26 6c 74 3b 2d 20 41 53 54 45 52 49 53 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 53 4c 41 53 48 | <-.ASTERISKEQUAL....../.SLASH |
| c09c0 | 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f | EQUAL....../.PERCENTEQUAL....../ |
| c09e0 | 20 50 4c 55 53 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 45 51 55 41 4c 0a 20 20 20 | .PLUSEQUAL....../.MINUSEQUAL.... |
| c0a00 | 20 20 2f 20 4c 41 52 52 4f 57 32 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 32 45 | ../.LARROW2EQUAL....../.RARROW2E |
| c0a20 | 51 55 41 4c 0a 20 20 20 20 20 2f 20 41 4d 50 45 52 53 41 4e 44 45 51 55 41 4c 0a 20 20 20 20 20 | QUAL....../.AMPERSANDEQUAL...... |
| c0a40 | 2f 20 43 41 52 45 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 49 50 45 45 51 55 41 4c 0a 20 20 | /.CARETEQUAL....../.PIPEEQUAL... |
| c0a60 | 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f | .../.ASTERISKPERCENTEQUAL....../ |
| c0a80 | 20 50 4c 55 53 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 | .PLUSPERCENTEQUAL....../.MINUSPE |
| c0aa0 | 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 45 51 55 41 4c 0a 0a 43 6f 6d 70 61 72 65 | RCENTEQUAL....../.EQUAL..Compare |
| c0ac0 | 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 45 51 55 41 4c 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 45 | Op.....<-.EQUALEQUAL....../.E |
| c0ae0 | 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f | XCLAMATIONMARKEQUAL....../.LARRO |
| c0b00 | 57 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 45 51 55 | W....../.RARROW....../.LARROWEQU |
| c0b20 | 41 4c 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 45 51 55 41 4c 0a 0a 42 69 74 77 69 73 65 4f 70 | AL....../.RARROWEQUAL..BitwiseOp |
| c0b40 | 0a 20 20 20 20 26 6c 74 3b 2d 20 41 4d 50 45 52 53 41 4e 44 0a 20 20 20 20 20 2f 20 43 41 52 45 | .....<-.AMPERSAND....../.CARE |
| c0b60 | 54 0a 20 20 20 20 20 2f 20 50 49 50 45 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 65 | T....../.PIPE....../.KEYWORD_ore |
| c0b80 | 6c 73 65 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 61 74 63 68 20 50 61 79 6c 6f 61 64 | lse....../.KEYWORD_catch.Payload |
| c0ba0 | 3f 0a 0a 42 69 74 53 68 69 66 74 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 41 52 52 4f 57 32 0a | ?..BitShiftOp.....<-.LARROW2. |
| c0bc0 | 20 20 20 20 20 2f 20 52 41 52 52 4f 57 32 0a 0a 41 64 64 69 74 69 6f 6e 4f 70 0a 20 20 20 20 26 | ...../.RARROW2..AdditionOp.....& |
| c0be0 | 6c 74 3b 2d 20 50 4c 55 53 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 0a 20 20 20 20 20 2f 20 50 4c | lt;-.PLUS....../.MINUS....../.PL |
| c0c00 | 55 53 32 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 4d 49 | US2....../.PLUSPERCENT....../.MI |
| c0c20 | 4e 55 53 50 45 52 43 45 4e 54 0a 0a 4d 75 6c 74 69 70 6c 79 4f 70 0a 20 20 20 20 26 6c 74 3b 2d | NUSPERCENT..MultiplyOp.....<- |
| c0c40 | 20 50 49 50 45 32 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 53 4c | .PIPE2....../.ASTERISK....../.SL |
| c0c60 | 41 53 48 0a 20 20 20 20 20 2f 20 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 | ASH....../.PERCENT....../.ASTERI |
| c0c80 | 53 4b 32 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 0a 0a 50 72 65 66 | SK2....../.ASTERISKPERCENT..Pref |
| c0ca0 | 69 78 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 0a 20 | ixOp.....<-.EXCLAMATIONMARK.. |
| c0cc0 | 20 20 20 20 2f 20 4d 49 4e 55 53 0a 20 20 20 20 20 2f 20 54 49 4c 44 45 0a 20 20 20 20 20 2f 20 | ..../.MINUS....../.TILDE....../. |
| c0ce0 | 4d 49 4e 55 53 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 41 4d 50 45 52 53 41 4e 44 0a 20 20 | MINUSPERCENT....../.AMPERSAND... |
| c0d00 | 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 74 72 79 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f | .../.KEYWORD_try....../.KEYWORD_ |
| c0d20 | 61 77 61 69 74 0a 0a 50 72 65 66 69 78 54 79 70 65 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 51 55 | await..PrefixTypeOp.....<-.QU |
| c0d40 | 45 53 54 49 4f 4e 4d 41 52 4b 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 | ESTIONMARK....../.KEYWORD_anyfra |
| c0d60 | 6d 65 20 4d 49 4e 55 53 52 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 53 6c 69 63 65 54 79 70 65 53 | me.MINUSRARROW....../.SliceTypeS |
| c0d80 | 74 61 72 74 20 28 42 79 74 65 41 6c 69 67 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 | tart.(ByteAlign./.KEYWORD_const. |
| c0da0 | 2f 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 6c 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c | /.KEYWORD_volatile./.KEYWORD_all |
| c0dc0 | 6f 77 7a 65 72 6f 29 2a 0a 20 20 20 20 20 2f 20 50 74 72 54 79 70 65 53 74 61 72 74 20 28 4b 45 | owzero)*....../.PtrTypeStart.(KE |
| c0de0 | 59 57 4f 52 44 5f 61 6c 69 67 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 20 28 43 4f 4c 4f 4e 20 49 | YWORD_align.LPAREN.Expr.(COLON.I |
| c0e00 | 4e 54 45 47 45 52 20 43 4f 4c 4f 4e 20 49 4e 54 45 47 45 52 29 3f 20 52 50 41 52 45 4e 20 2f 20 | NTEGER.COLON.INTEGER)?.RPAREN./. |
| c0e20 | 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 6c 65 | KEYWORD_const./.KEYWORD_volatile |
| c0e40 | 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 29 2a 0a 20 20 20 20 20 2f 20 41 72 | ./.KEYWORD_allowzero)*....../.Ar |
| c0e60 | 72 61 79 54 79 70 65 53 74 61 72 74 0a 0a 53 75 66 66 69 78 4f 70 0a 20 20 20 20 26 6c 74 3b 2d | rayTypeStart..SuffixOp.....<- |
| c0e80 | 20 4c 42 52 41 43 4b 45 54 20 45 78 70 72 20 28 44 4f 54 32 20 28 45 78 70 72 3f 20 28 43 4f 4c | .LBRACKET.Expr.(DOT2.(Expr?.(COL |
| c0ea0 | 4f 4e 20 45 78 70 72 29 3f 29 3f 29 3f 20 52 42 52 41 43 4b 45 54 0a 20 20 20 20 20 2f 20 44 4f | ON.Expr)?)?)?.RBRACKET....../.DO |
| c0ec0 | 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 44 4f 54 41 53 54 45 52 49 53 4b 0a | T.IDENTIFIER....../.DOTASTERISK. |
| c0ee0 | 20 20 20 20 20 2f 20 44 4f 54 51 55 45 53 54 49 4f 4e 4d 41 52 4b 0a 0a 46 6e 43 61 6c 6c 41 72 | ...../.DOTQUESTIONMARK..FnCallAr |
| c0f00 | 67 75 6d 65 6e 74 73 20 26 6c 74 3b 2d 20 4c 50 41 52 45 4e 20 45 78 70 72 4c 69 73 74 20 52 50 | guments.<-.LPAREN.ExprList.RP |
| c0f20 | 41 52 45 4e 0a 0a 23 20 50 74 72 20 73 70 65 63 69 66 69 63 0a 53 6c 69 63 65 54 79 70 65 53 74 | AREN..#.Ptr.specific.SliceTypeSt |
| c0f40 | 61 72 74 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 28 43 4f 4c 4f 4e 20 45 78 70 72 29 3f | art.<-.LBRACKET.(COLON.Expr)? |
| c0f60 | 20 52 42 52 41 43 4b 45 54 0a 0a 50 74 72 54 79 70 65 53 74 61 72 74 0a 20 20 20 20 26 6c 74 3b | .RBRACKET..PtrTypeStart.....< |
| c0f80 | 2d 20 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 32 0a 20 20 20 20 | -.ASTERISK....../.ASTERISK2..... |
| c0fa0 | 20 2f 20 4c 42 52 41 43 4b 45 54 20 41 53 54 45 52 49 53 4b 20 28 4c 45 54 54 45 52 43 20 2f 20 | ./.LBRACKET.ASTERISK.(LETTERC./. |
| c0fc0 | 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 20 52 42 52 41 43 4b 45 54 0a 0a 41 72 72 61 79 54 79 70 65 | COLON.Expr)?.RBRACKET..ArrayType |
| c0fe0 | 53 74 61 72 74 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 45 78 70 72 20 28 43 4f 4c 4f 4e | Start.<-.LBRACKET.Expr.(COLON |
| c1000 | 20 45 78 70 72 29 3f 20 52 42 52 41 43 4b 45 54 0a 0a 23 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 | .Expr)?.RBRACKET..#.ContainerDec |
| c1020 | 6c 20 73 70 65 63 69 66 69 63 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 41 75 74 6f 20 26 6c 74 | l.specific.ContainerDeclAuto.< |
| c1040 | 3b 2d 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 54 79 70 65 20 4c 42 52 41 43 45 20 63 6f 6e 74 | ;-.ContainerDeclType.LBRACE.cont |
| c1060 | 61 69 6e 65 72 5f 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 | ainer_doc_comment?.ContainerMemb |
| c1080 | 65 72 73 20 52 42 52 41 43 45 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 54 79 70 65 0a 20 20 | ers.RBRACE..ContainerDeclType... |
| c10a0 | 20 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 73 74 72 75 63 74 0a 20 20 20 20 20 2f 20 4b 45 | ..<-.KEYWORD_struct....../.KE |
| c10c0 | 59 57 4f 52 44 5f 6f 70 61 71 75 65 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6e 75 6d | YWORD_opaque....../.KEYWORD_enum |
| c10e0 | 20 28 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 29 3f 0a 20 20 20 20 20 2f 20 4b 45 | .(LPAREN.Expr.RPAREN)?....../.KE |
| c1100 | 59 57 4f 52 44 5f 75 6e 69 6f 6e 20 28 4c 50 41 52 45 4e 20 28 4b 45 59 57 4f 52 44 5f 65 6e 75 | YWORD_union.(LPAREN.(KEYWORD_enu |
| c1120 | 6d 20 28 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 29 3f 20 2f 20 45 78 70 72 29 20 | m.(LPAREN.Expr.RPAREN)?./.Expr). |
| c1140 | 52 50 41 52 45 4e 29 3f 0a 0a 23 20 41 6c 69 67 6e 6d 65 6e 74 0a 42 79 74 65 41 6c 69 67 6e 20 | RPAREN)?..#.Alignment.ByteAlign. |
| c1160 | 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 6c 69 67 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 20 | <-.KEYWORD_align.LPAREN.Expr. |
| c1180 | 52 50 41 52 45 4e 0a 0a 23 20 4c 69 73 74 73 0a 49 64 65 6e 74 69 66 69 65 72 4c 69 73 74 20 26 | RPAREN..#.Lists.IdentifierList.& |
| c11a0 | 6c 74 3b 2d 20 28 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 49 44 45 4e 54 49 46 49 45 52 20 43 4f | lt;-.(doc_comment?.IDENTIFIER.CO |
| c11c0 | 4d 4d 41 29 2a 20 28 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 49 44 45 4e 54 49 46 49 45 52 29 3f | MMA)*.(doc_comment?.IDENTIFIER)? |
| c11e0 | 0a 0a 53 77 69 74 63 68 50 72 6f 6e 67 4c 69 73 74 20 26 6c 74 3b 2d 20 28 53 77 69 74 63 68 50 | ..SwitchProngList.<-.(SwitchP |
| c1200 | 72 6f 6e 67 20 43 4f 4d 4d 41 29 2a 20 53 77 69 74 63 68 50 72 6f 6e 67 3f 0a 0a 41 73 6d 4f 75 | rong.COMMA)*.SwitchProng?..AsmOu |
| c1220 | 74 70 75 74 4c 69 73 74 20 26 6c 74 3b 2d 20 28 41 73 6d 4f 75 74 70 75 74 49 74 65 6d 20 43 4f | tputList.<-.(AsmOutputItem.CO |
| c1240 | 4d 4d 41 29 2a 20 41 73 6d 4f 75 74 70 75 74 49 74 65 6d 3f 0a 0a 41 73 6d 49 6e 70 75 74 4c 69 | MMA)*.AsmOutputItem?..AsmInputLi |
| c1260 | 73 74 20 26 6c 74 3b 2d 20 28 41 73 6d 49 6e 70 75 74 49 74 65 6d 20 43 4f 4d 4d 41 29 2a 20 41 | st.<-.(AsmInputItem.COMMA)*.A |
| c1280 | 73 6d 49 6e 70 75 74 49 74 65 6d 3f 0a 0a 53 74 72 69 6e 67 4c 69 73 74 20 26 6c 74 3b 2d 20 28 | smInputItem?..StringList.<-.( |
| c12a0 | 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 43 4f 4d 4d 41 29 2a 20 53 54 52 49 4e 47 4c 49 54 45 | STRINGLITERAL.COMMA)*.STRINGLITE |
| c12c0 | 52 41 4c 3f 0a 0a 50 61 72 61 6d 44 65 63 6c 4c 69 73 74 20 26 6c 74 3b 2d 20 28 50 61 72 61 6d | RAL?..ParamDeclList.<-.(Param |
| c12e0 | 44 65 63 6c 20 43 4f 4d 4d 41 29 2a 20 50 61 72 61 6d 44 65 63 6c 3f 0a 0a 45 78 70 72 4c 69 73 | Decl.COMMA)*.ParamDecl?..ExprLis |
| c1300 | 74 20 26 6c 74 3b 2d 20 28 45 78 70 72 20 43 4f 4d 4d 41 29 2a 20 45 78 70 72 3f 0a 0a 23 20 2a | t.<-.(Expr.COMMA)*.Expr?..#.* |
| c1320 | 2a 2a 20 54 6f 6b 65 6e 73 20 2a 2a 2a 0a 65 6f 66 20 26 6c 74 3b 2d 20 21 2e 0a 62 69 6e 20 26 | **.Tokens.***.eof.<-.!..bin.& |
| c1340 | 6c 74 3b 2d 20 5b 30 31 5d 0a 62 69 6e 5f 20 26 6c 74 3b 2d 20 27 5f 27 3f 20 62 69 6e 0a 6f 63 | lt;-.[01].bin_.<-.'_'?.bin.oc |
| c1360 | 74 20 26 6c 74 3b 2d 20 5b 30 2d 37 5d 0a 6f 63 74 5f 20 26 6c 74 3b 2d 20 27 5f 27 3f 20 6f 63 | t.<-.[0-7].oct_.<-.'_'?.oc |
| c1380 | 74 0a 68 65 78 20 26 6c 74 3b 2d 20 5b 30 2d 39 61 2d 66 41 2d 46 5d 0a 68 65 78 5f 20 26 6c 74 | t.hex.<-.[0-9a-fA-F].hex_.< |
| c13a0 | 3b 2d 20 27 5f 27 3f 20 68 65 78 0a 64 65 63 20 26 6c 74 3b 2d 20 5b 30 2d 39 5d 0a 64 65 63 5f | ;-.'_'?.hex.dec.<-.[0-9].dec_ |
| c13c0 | 20 26 6c 74 3b 2d 20 27 5f 27 3f 20 64 65 63 0a 0a 62 69 6e 5f 69 6e 74 20 26 6c 74 3b 2d 20 62 | .<-.'_'?.dec..bin_int.<-.b |
| c13e0 | 69 6e 20 62 69 6e 5f 2a 0a 6f 63 74 5f 69 6e 74 20 26 6c 74 3b 2d 20 6f 63 74 20 6f 63 74 5f 2a | in.bin_*.oct_int.<-.oct.oct_* |
| c1400 | 0a 64 65 63 5f 69 6e 74 20 26 6c 74 3b 2d 20 64 65 63 20 64 65 63 5f 2a 0a 68 65 78 5f 69 6e 74 | .dec_int.<-.dec.dec_*.hex_int |
| c1420 | 20 26 6c 74 3b 2d 20 68 65 78 20 68 65 78 5f 2a 0a 0a 6f 78 38 30 5f 6f 78 42 46 20 26 6c 74 3b | .<-.hex.hex_*..ox80_oxBF.< |
| c1440 | 2d 20 5b 5c 32 30 30 2d 5c 32 37 37 5d 0a 6f 78 46 34 20 26 6c 74 3b 2d 20 27 5c 33 36 34 27 0a | -.[\200-\277].oxF4.<-.'\364'. |
| c1460 | 6f 78 38 30 5f 6f 78 38 46 20 26 6c 74 3b 2d 20 5b 5c 32 30 30 2d 5c 32 31 37 5d 0a 6f 78 46 31 | ox80_ox8F.<-.[\200-\217].oxF1 |
| c1480 | 5f 6f 78 46 33 20 26 6c 74 3b 2d 20 5b 5c 33 36 31 2d 5c 33 36 33 5d 0a 6f 78 46 30 20 26 6c 74 | _oxF3.<-.[\361-\363].oxF0.< |
| c14a0 | 3b 2d 20 27 5c 33 36 30 27 0a 6f 78 39 30 5f 30 78 42 46 20 26 6c 74 3b 2d 20 5b 5c 32 32 30 2d | ;-.'\360'.ox90_0xBF.<-.[\220- |
| c14c0 | 5c 32 37 37 5d 0a 6f 78 45 45 5f 6f 78 45 46 20 26 6c 74 3b 2d 20 5b 5c 33 35 36 2d 5c 33 35 37 | \277].oxEE_oxEF.<-.[\356-\357 |
| c14e0 | 5d 0a 6f 78 45 44 20 26 6c 74 3b 2d 20 27 5c 33 35 35 27 0a 6f 78 38 30 5f 6f 78 39 46 20 26 6c | ].oxED.<-.'\355'.ox80_ox9F.&l |
| c1500 | 74 3b 2d 20 5b 5c 32 30 30 2d 5c 32 33 37 5d 0a 6f 78 45 31 5f 6f 78 45 43 20 26 6c 74 3b 2d 20 | t;-.[\200-\237].oxE1_oxEC.<-. |
| c1520 | 5b 5c 33 34 31 2d 5c 33 35 34 5d 0a 6f 78 45 30 20 26 6c 74 3b 2d 20 27 5c 33 34 30 27 0a 6f 78 | [\341-\354].oxE0.<-.'\340'.ox |
| c1540 | 41 30 5f 6f 78 42 46 20 26 6c 74 3b 2d 20 5b 5c 32 34 30 2d 5c 32 37 37 5d 0a 6f 78 43 32 5f 6f | A0_oxBF.<-.[\240-\277].oxC2_o |
| c1560 | 78 44 46 20 26 6c 74 3b 2d 20 5b 5c 33 30 32 2d 5c 33 33 37 5d 0a 0a 23 20 46 72 6f 6d 20 68 74 | xDF.<-.[\302-\337]..#.From.ht |
| c1580 | 74 70 73 3a 2f 2f 6c 65 6d 69 72 65 2e 6d 65 2f 62 6c 6f 67 2f 32 30 31 38 2f 30 35 2f 30 39 2f | tps://lemire.me/blog/2018/05/09/ |
| c15a0 | 68 6f 77 2d 71 75 69 63 6b 6c 79 2d 63 61 6e 2d 79 6f 75 2d 63 68 65 63 6b 2d 74 68 61 74 2d 61 | how-quickly-can-you-check-that-a |
| c15c0 | 2d 73 74 72 69 6e 67 2d 69 73 2d 76 61 6c 69 64 2d 75 6e 69 63 6f 64 65 2d 75 74 66 2d 38 2f 0a | -string-is-valid-unicode-utf-8/. |
| c15e0 | 23 20 46 69 72 73 74 20 42 79 74 65 20 20 20 20 20 20 53 65 63 6f 6e 64 20 42 79 74 65 20 20 20 | #.First.Byte......Second.Byte... |
| c1600 | 20 20 54 68 69 72 64 20 42 79 74 65 20 20 20 20 20 20 46 6f 75 72 74 68 20 42 79 74 65 0a 23 20 | ..Third.Byte......Fourth.Byte.#. |
| c1620 | 5b 30 78 30 30 2c 30 78 37 46 5d 0a 23 20 5b 30 78 43 32 2c 30 78 44 46 5d 20 20 20 20 20 5b 30 | [0x00,0x7F].#.[0xC2,0xDF].....[0 |
| c1640 | 78 38 30 2c 30 78 42 46 5d 0a 23 20 20 20 20 30 78 45 30 20 20 20 20 20 20 20 20 20 5b 30 78 41 | x80,0xBF].#....0xE0.........[0xA |
| c1660 | 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a 23 20 5b 30 78 45 31 2c | 0,0xBF].....[0x80,0xBF].#.[0xE1, |
| c1680 | 30 78 45 43 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c | 0xEC].....[0x80,0xBF].....[0x80, |
| c16a0 | 30 78 42 46 5d 0a 23 20 20 20 20 30 78 45 44 20 20 20 20 20 20 20 20 20 5b 30 78 38 30 2c 30 78 | 0xBF].#....0xED.........[0x80,0x |
| c16c0 | 39 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a 23 20 5b 30 78 45 45 2c 30 78 45 46 | 9F].....[0x80,0xBF].#.[0xEE,0xEF |
| c16e0 | 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 | ].....[0x80,0xBF].....[0x80,0xBF |
| c1700 | 5d 0a 23 20 20 20 20 30 78 46 30 20 20 20 20 20 20 20 20 20 5b 30 78 39 30 2c 30 78 42 46 5d 20 | ].#....0xF0.........[0x90,0xBF]. |
| c1720 | 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a | ....[0x80,0xBF].....[0x80,0xBF]. |
| c1740 | 23 20 5b 30 78 46 31 2c 30 78 46 33 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 | #.[0xF1,0xF3].....[0x80,0xBF]... |
| c1760 | 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a 23 20 | ..[0x80,0xBF].....[0x80,0xBF].#. |
| c1780 | 20 20 20 30 78 46 34 20 20 20 20 20 20 20 20 20 5b 30 78 38 30 2c 30 78 38 46 5d 20 20 20 20 20 | ...0xF4.........[0x80,0x8F]..... |
| c17a0 | 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a 0a 6d 62 5f | [0x80,0xBF].....[0x80,0xBF]..mb_ |
| c17c0 | 75 74 66 38 5f 6c 69 74 65 72 61 6c 20 26 6c 74 3b 2d 0a 20 20 20 20 20 20 20 6f 78 46 34 20 20 | utf8_literal.<-........oxF4.. |
| c17e0 | 20 20 20 20 6f 78 38 30 5f 6f 78 38 46 20 6f 78 38 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 | ....ox80_ox8F.ox80_oxBF.ox80_oxB |
| c1800 | 46 0a 20 20 20 20 20 2f 20 6f 78 46 31 5f 6f 78 46 33 20 6f 78 38 30 5f 6f 78 42 46 20 6f 78 38 | F....../.oxF1_oxF3.ox80_oxBF.ox8 |
| c1820 | 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 46 30 20 20 20 20 | 0_oxBF.ox80_oxBF....../.oxF0.... |
| c1840 | 20 20 6f 78 39 30 5f 30 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a | ..ox90_0xBF.ox80_oxBF.ox80_oxBF. |
| c1860 | 20 20 20 20 20 2f 20 6f 78 45 45 5f 6f 78 45 46 20 6f 78 38 30 5f 6f 78 42 46 20 6f 78 38 30 5f | ...../.oxEE_oxEF.ox80_oxBF.ox80_ |
| c1880 | 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 45 44 20 20 20 20 20 20 6f 78 38 30 5f 6f 78 39 46 20 | oxBF....../.oxED......ox80_ox9F. |
| c18a0 | 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 45 31 5f 6f 78 45 43 20 6f 78 38 30 5f | ox80_oxBF....../.oxE1_oxEC.ox80_ |
| c18c0 | 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 45 30 20 20 20 20 20 20 | oxBF.ox80_oxBF....../.oxE0...... |
| c18e0 | 6f 78 41 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 43 32 5f | oxA0_oxBF.ox80_oxBF....../.oxC2_ |
| c1900 | 6f 78 44 46 20 6f 78 38 30 5f 6f 78 42 46 0a 0a 61 73 63 69 69 5f 63 68 61 72 5f 6e 6f 74 5f 6e | oxDF.ox80_oxBF..ascii_char_not_n |
| c1920 | 6c 5f 73 6c 61 73 68 5f 73 71 75 6f 74 65 20 26 6c 74 3b 2d 20 5b 5c 30 30 30 2d 5c 30 31 31 5c | l_slash_squote.<-.[\000-\011\ |
| c1940 | 30 31 33 2d 5c 30 34 36 2d 5c 30 35 30 2d 5c 31 33 33 5c 31 33 35 2d 5c 31 37 37 5d 0a 0a 63 68 | 013-\046-\050-\133\135-\177]..ch |
| c1960 | 61 72 5f 65 73 63 61 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 5c 5c 78 26 71 75 | ar_escape.....<-."\\x&qu |
| c1980 | 6f 74 3b 20 68 65 78 20 68 65 78 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 5c 5c 75 7b 26 71 75 | ot;.hex.hex....../."\\u{&qu |
| c19a0 | 6f 74 3b 20 68 65 78 2b 20 26 71 75 6f 74 3b 7d 26 71 75 6f 74 3b 0a 20 20 20 20 20 2f 20 26 71 | ot;.hex+."}"....../.&q |
| c19c0 | 75 6f 74 3b 5c 5c 26 71 75 6f 74 3b 20 5b 6e 72 5c 5c 74 27 26 71 75 6f 74 3b 5d 0a 63 68 61 72 | uot;\\".[nr\\t'"].char |
| c19e0 | 5f 63 68 61 72 0a 20 20 20 20 26 6c 74 3b 2d 20 6d 62 5f 75 74 66 38 5f 6c 69 74 65 72 61 6c 0a | _char.....<-.mb_utf8_literal. |
| c1a00 | 20 20 20 20 20 2f 20 63 68 61 72 5f 65 73 63 61 70 65 0a 20 20 20 20 20 2f 20 61 73 63 69 69 5f | ...../.char_escape....../.ascii_ |
| c1a20 | 63 68 61 72 5f 6e 6f 74 5f 6e 6c 5f 73 6c 61 73 68 5f 73 71 75 6f 74 65 0a 0a 73 74 72 69 6e 67 | char_not_nl_slash_squote..string |
| c1a40 | 5f 63 68 61 72 0a 20 20 20 20 26 6c 74 3b 2d 20 63 68 61 72 5f 65 73 63 61 70 65 0a 20 20 20 20 | _char.....<-.char_escape..... |
| c1a60 | 20 2f 20 5b 5e 5c 5c 26 71 75 6f 74 3b 5c 6e 5d 0a 0a 63 6f 6e 74 61 69 6e 65 72 5f 64 6f 63 5f | ./.[^\\"\n]..container_doc_ |
| c1a80 | 63 6f 6d 6d 65 6e 74 20 26 6c 74 3b 2d 20 28 27 2f 2f 21 27 20 5b 5e 5c 6e 5d 2a 20 5b 20 5c 6e | comment.<-.('//!'.[^\n]*.[.\n |
| c1aa0 | 5d 2a 29 2b 0a 64 6f 63 5f 63 6f 6d 6d 65 6e 74 20 26 6c 74 3b 2d 20 28 27 2f 2f 2f 27 20 5b 5e | ]*)+.doc_comment.<-.('///'.[^ |
| c1ac0 | 5c 6e 5d 2a 20 5b 20 5c 6e 5d 2a 29 2b 0a 6c 69 6e 65 5f 63 6f 6d 6d 65 6e 74 20 26 6c 74 3b 2d | \n]*.[.\n]*)+.line_comment.<- |
| c1ae0 | 20 27 2f 2f 27 20 21 5b 21 2f 5d 5b 5e 5c 6e 5d 2a 20 2f 20 27 2f 2f 2f 2f 27 20 5b 5e 5c 6e 5d | .'//'.![!/][^\n]*./.'////'.[^\n] |
| c1b00 | 2a 0a 6c 69 6e 65 5f 73 74 72 69 6e 67 20 26 6c 74 3b 2d 20 28 26 71 75 6f 74 3b 5c 5c 5c 5c 26 | *.line_string.<-.("\\\\& |
| c1b20 | 71 75 6f 74 3b 20 5b 5e 5c 6e 5d 2a 20 5b 20 5c 6e 5d 2a 29 2b 0a 73 6b 69 70 20 26 6c 74 3b 2d | quot;.[^\n]*.[.\n]*)+.skip.<- |
| c1b40 | 20 28 5b 20 5c 6e 5d 20 2f 20 6c 69 6e 65 5f 63 6f 6d 6d 65 6e 74 29 2a 0a 0a 43 48 41 52 5f 4c | .([.\n]./.line_comment)*..CHAR_L |
| c1b60 | 49 54 45 52 41 4c 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 27 26 71 75 6f 74 3b 20 63 68 61 72 5f | ITERAL.<-."'".char_ |
| c1b80 | 63 68 61 72 20 26 71 75 6f 74 3b 27 26 71 75 6f 74 3b 20 73 6b 69 70 0a 46 4c 4f 41 54 0a 20 20 | char."'".skip.FLOAT... |
| c1ba0 | 20 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 30 78 26 71 75 6f 74 3b 20 68 65 78 5f 69 6e 74 20 26 | ..<-."0x".hex_int.& |
| c1bc0 | 71 75 6f 74 3b 2e 26 71 75 6f 74 3b 20 68 65 78 5f 69 6e 74 20 28 5b 70 50 5d 20 5b 2d 2b 5d 3f | quot;.".hex_int.([pP].[-+]? |
| c1be0 | 20 64 65 63 5f 69 6e 74 29 3f 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 20 20 20 20 20 64 65 63 5f | .dec_int)?.skip....../......dec_ |
| c1c00 | 69 6e 74 20 26 71 75 6f 74 3b 2e 26 71 75 6f 74 3b 20 64 65 63 5f 69 6e 74 20 28 5b 65 45 5d 20 | int.".".dec_int.([eE]. |
| c1c20 | 5b 2d 2b 5d 3f 20 64 65 63 5f 69 6e 74 29 3f 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 26 71 75 6f | [-+]?.dec_int)?.skip....../.&quo |
| c1c40 | 74 3b 30 78 26 71 75 6f 74 3b 20 68 65 78 5f 69 6e 74 20 26 71 75 6f 74 3b 2e 26 71 75 6f 74 3b | t;0x".hex_int."." |
| c1c60 | 3f 20 5b 70 50 5d 20 5b 2d 2b 5d 3f 20 64 65 63 5f 69 6e 74 20 73 6b 69 70 0a 20 20 20 20 20 2f | ?.[pP].[-+]?.dec_int.skip....../ |
| c1c80 | 20 20 20 20 20 20 64 65 63 5f 69 6e 74 20 26 71 75 6f 74 3b 2e 26 71 75 6f 74 3b 3f 20 5b 65 45 | ......dec_int."."?.[eE |
| c1ca0 | 5d 20 5b 2d 2b 5d 3f 20 64 65 63 5f 69 6e 74 20 73 6b 69 70 0a 49 4e 54 45 47 45 52 0a 20 20 20 | ].[-+]?.dec_int.skip.INTEGER.... |
| c1cc0 | 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 30 62 26 71 75 6f 74 3b 20 62 69 6e 5f 69 6e 74 20 73 6b | .<-."0b".bin_int.sk |
| c1ce0 | 69 70 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 30 6f 26 71 75 6f 74 3b 20 6f 63 74 5f 69 6e 74 | ip....../."0o".oct_int |
| c1d00 | 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 30 78 26 71 75 6f 74 3b 20 68 65 78 5f | .skip....../."0x".hex_ |
| c1d20 | 69 6e 74 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 20 20 20 20 20 64 65 63 5f 69 6e 74 20 20 20 73 | int.skip....../......dec_int...s |
| c1d40 | 6b 69 70 0a 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 20 26 6c 74 3b 2d 20 26 71 | kip.STRINGLITERALSINGLE.<-.&q |
| c1d60 | 75 6f 74 3b 5c 26 71 75 6f 74 3b 26 71 75 6f 74 3b 20 73 74 72 69 6e 67 5f 63 68 61 72 2a 20 26 | uot;\"".string_char*.& |
| c1d80 | 71 75 6f 74 3b 5c 26 71 75 6f 74 3b 26 71 75 6f 74 3b 20 73 6b 69 70 0a 53 54 52 49 4e 47 4c 49 | quot;\"".skip.STRINGLI |
| c1da0 | 54 45 52 41 4c 0a 20 20 20 20 26 6c 74 3b 2d 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e | TERAL.....<-.STRINGLITERALSIN |
| c1dc0 | 47 4c 45 0a 20 20 20 20 20 2f 20 28 6c 69 6e 65 5f 73 74 72 69 6e 67 20 20 20 20 20 20 20 20 20 | GLE....../.(line_string......... |
| c1de0 | 20 20 20 20 20 20 20 20 73 6b 69 70 29 2b 0a 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 26 6c | ........skip)+.IDENTIFIER.....&l |
| c1e00 | 74 3b 2d 20 21 6b 65 79 77 6f 72 64 20 5b 41 2d 5a 61 2d 7a 5f 5d 20 5b 41 2d 5a 61 2d 7a 30 2d | t;-.!keyword.[A-Za-z_].[A-Za-z0- |
| c1e20 | 39 5f 5d 2a 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 40 5c 26 71 75 6f 74 3b 26 | 9_]*.skip....../."@\"& |
| c1e40 | 71 75 6f 74 3b 20 73 74 72 69 6e 67 5f 63 68 61 72 2a 20 26 71 75 6f 74 3b 5c 26 71 75 6f 74 3b | quot;.string_char*."\" |
| c1e60 | 26 71 75 6f 74 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ".......................... |
| c1e80 | 20 20 73 6b 69 70 0a 42 55 49 4c 54 49 4e 49 44 45 4e 54 49 46 49 45 52 20 26 6c 74 3b 2d 20 26 | ..skip.BUILTINIDENTIFIER.<-.& |
| c1ea0 | 71 75 6f 74 3b 40 26 71 75 6f 74 3b 5b 41 2d 5a 61 2d 7a 5f 5d 5b 41 2d 5a 61 2d 7a 30 2d 39 5f | quot;@"[A-Za-z_][A-Za-z0-9_ |
| c1ec0 | 5d 2a 20 73 6b 69 70 0a 0a 0a 41 4d 50 45 52 53 41 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 26 | ]*.skip...AMPERSAND............& |
| c1ee0 | 6c 74 3b 2d 20 27 26 61 6d 70 3b 27 20 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 | lt;-.'&'......![=]......skip |
| c1f00 | 0a 41 4d 50 45 52 53 41 4e 44 45 51 55 41 4c 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 61 6d | .AMPERSANDEQUAL.......<-.'&am |
| c1f20 | 70 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b | p;='...............skip.ASTERISK |
| c1f40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 27 20 20 20 20 20 20 21 5b 2a 25 | .............<-.'*'......![*% |
| c1f60 | 3d 5d 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 32 20 20 20 20 20 20 20 20 20 20 20 20 | =]....skip.ASTERISK2............ |
| c1f80 | 26 6c 74 3b 2d 20 27 2a 2a 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 41 53 | <-.'**'...............skip.AS |
| c1fa0 | 54 45 52 49 53 4b 45 51 55 41 4c 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 3d 27 20 20 20 | TERISKEQUAL........<-.'*='... |
| c1fc0 | 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 | ............skip.ASTERISKPERCENT |
| c1fe0 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 25 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 | ......<-.'*%'.....![=]......s |
| c2000 | 6b 69 70 0a 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 45 51 55 41 4c 20 26 6c 74 3b 2d 20 27 | kip.ASTERISKPERCENTEQUAL.<-.' |
| c2020 | 2a 25 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 43 41 52 45 54 20 20 20 20 | *%='..............skip.CARET.... |
| c2040 | 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5e 27 20 20 20 20 20 20 21 5b 3d 5d 20 | ............<-.'^'......![=]. |
| c2060 | 20 20 20 20 20 73 6b 69 70 0a 43 41 52 45 54 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 26 | .....skip.CARETEQUAL...........& |
| c2080 | 6c 74 3b 2d 20 27 5e 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 43 4f 4c | lt;-.'^='...............skip.COL |
| c20a0 | 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3a 27 20 20 20 20 20 | ON................<-.':'..... |
| c20c0 | 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 43 4f 4d 4d 41 20 20 20 20 20 20 20 20 20 20 20 | ...........skip.COMMA........... |
| c20e0 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 2c 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b | .....<-.','................sk |
| c2100 | 69 70 0a 44 4f 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2e | ip.DOT..................<-.'. |
| c2120 | 27 20 20 20 20 20 20 21 5b 2a 2e 3f 5d 20 20 20 20 73 6b 69 70 0a 44 4f 54 32 20 20 20 20 20 20 | '......![*.?]....skip.DOT2...... |
| c2140 | 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2e 2e 27 20 20 20 20 20 21 5b 2e 5d 20 20 | ...........<-.'..'.....![.].. |
| c2160 | 20 20 20 20 73 6b 69 70 0a 44 4f 54 33 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c | ....skip.DOT3.................&l |
| c2180 | 74 3b 2d 20 27 2e 2e 2e 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 44 4f 54 41 | t;-.'...'..............skip.DOTA |
| c21a0 | 53 54 45 52 49 53 4b 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2e 2a 27 20 20 20 20 20 | STERISK..........<-.'.*'..... |
| c21c0 | 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 44 4f 54 51 55 45 53 54 49 4f 4e 4d 41 52 4b 20 20 | ..........skip.DOTQUESTIONMARK.. |
| c21e0 | 20 20 20 20 26 6c 74 3b 2d 20 27 2e 3f 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 | ....<-.'.?'...............ski |
| c2200 | 70 0a 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3d 27 | p.EQUAL................<-.'=' |
| c2220 | 20 20 20 20 20 20 21 5b 26 67 74 3b 3d 5d 20 20 20 20 20 73 6b 69 70 0a 45 51 55 41 4c 45 51 55 | ......![>=].....skip.EQUALEQU |
| c2240 | 41 4c 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3d 3d 27 20 20 20 20 20 20 20 20 20 | AL...........<-.'=='......... |
| c2260 | 20 20 20 20 20 20 73 6b 69 70 0a 45 51 55 41 4c 52 41 52 52 4f 57 20 20 20 20 20 20 20 20 20 20 | ......skip.EQUALRARROW.......... |
| c2280 | 26 6c 74 3b 2d 20 27 3d 26 67 74 3b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 | <-.'=>'...............skip |
| c22a0 | 0a 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 21 27 20 | .EXCLAMATIONMARK......<-.'!'. |
| c22c0 | 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 45 58 43 4c 41 4d 41 54 49 4f 4e 4d | .....![=]......skip.EXCLAMATIONM |
| c22e0 | 41 52 4b 45 51 55 41 4c 20 26 6c 74 3b 2d 20 27 21 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 | ARKEQUAL.<-.'!='............. |
| c2300 | 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b | ..skip.LARROW...............< |
| c2320 | 2d 20 27 26 6c 74 3b 27 20 20 20 20 20 20 21 5b 26 6c 74 3b 3d 5d 20 20 20 20 20 73 6b 69 70 0a | -.'<'......![<=].....skip. |
| c2340 | 4c 41 52 52 4f 57 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b | LARROW2..............<-.'< |
| c2360 | 26 6c 74 3b 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 32 | <'.....![=]......skip.LARROW2 |
| c2380 | 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 26 6c 74 3b 3d 27 20 | EQUAL.........<-.'<<='. |
| c23a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 45 51 55 41 4c 20 20 20 | .............skip.LARROWEQUAL... |
| c23c0 | 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 | .......<-.'<='............ |
| c23e0 | 20 20 20 73 6b 69 70 0a 4c 42 52 41 43 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 | ...skip.LBRACE...............< |
| c2400 | 3b 2d 20 27 7b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 42 52 41 43 | ;-.'{'................skip.LBRAC |
| c2420 | 4b 45 54 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5b 27 20 20 20 20 20 20 20 | KET.............<-.'['....... |
| c2440 | 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 50 41 52 45 4e 20 20 20 20 20 20 20 20 20 20 20 20 | .........skip.LPAREN............ |
| c2460 | 20 20 20 26 6c 74 3b 2d 20 27 28 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 | ...<-.'('................skip |
| c2480 | 0a 4d 49 4e 55 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 27 20 | .MINUS................<-.'-'. |
| c24a0 | 20 20 20 20 20 21 5b 25 3d 26 67 74 3b 5d 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 45 51 55 41 | .....![%=>]....skip.MINUSEQUA |
| c24c0 | 4c 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 3d 27 20 20 20 20 20 20 20 20 20 20 | L...........<-.'-='.......... |
| c24e0 | 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 50 45 52 43 45 4e 54 20 20 20 20 20 20 20 20 20 26 | .....skip.MINUSPERCENT.........& |
| c2500 | 6c 74 3b 2d 20 27 2d 25 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e | lt;-.'-%'.....![=]......skip.MIN |
| c2520 | 55 53 50 45 52 43 45 4e 54 45 51 55 41 4c 20 20 20 20 26 6c 74 3b 2d 20 27 2d 25 3d 27 20 20 20 | USPERCENTEQUAL....<-.'-%='... |
| c2540 | 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 52 41 52 52 4f 57 20 20 20 20 20 | ...........skip.MINUSRARROW..... |
| c2560 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 26 67 74 3b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....<-.'->'.............. |
| c2580 | 20 73 6b 69 70 0a 50 45 52 43 45 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d | .skip.PERCENT..............<- |
| c25a0 | 20 27 25 27 20 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 50 45 52 43 45 4e 54 | .'%'......![=]......skip.PERCENT |
| c25c0 | 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 25 3d 27 20 20 20 20 20 20 20 20 | EQUAL.........<-.'%='........ |
| c25e0 | 20 20 20 20 20 20 20 73 6b 69 70 0a 50 49 50 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......skip.PIPE................ |
| c2600 | 20 26 6c 74 3b 2d 20 27 7c 27 20 20 20 20 20 20 21 5b 7c 3d 5d 20 20 20 20 20 73 6b 69 70 0a 50 | .<-.'|'......![|=].....skip.P |
| c2620 | 49 50 45 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7c 7c 27 20 20 | IPE2................<-.'||'.. |
| c2640 | 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 49 50 45 45 51 55 41 4c 20 20 20 20 20 | .............skip.PIPEEQUAL..... |
| c2660 | 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7c 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......<-.'|='............... |
| c2680 | 73 6b 69 70 0a 50 4c 55 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | skip.PLUS.................<-. |
| c26a0 | 27 2b 27 20 20 20 20 20 20 21 5b 25 2b 3d 5d 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 32 20 20 20 | '+'......![%+=]....skip.PLUS2... |
| c26c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 2b 27 20 20 20 20 20 20 20 20 20 | .............<-.'++'......... |
| c26e0 | 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 20 | ......skip.PLUSEQUAL............ |
| c2700 | 26 6c 74 3b 2d 20 27 2b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 4c | <-.'+='...............skip.PL |
| c2720 | 55 53 50 45 52 43 45 4e 54 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 25 27 20 20 20 | USPERCENT..........<-.'+%'... |
| c2740 | 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 50 45 52 43 45 4e 54 45 51 55 41 | ..![=]......skip.PLUSPERCENTEQUA |
| c2760 | 4c 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 25 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 | L.....<-.'+%='..............s |
| c2780 | 6b 69 70 0a 4c 45 54 54 45 52 43 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | kip.LETTERC..............<-.' |
| c27a0 | 63 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 51 55 45 53 54 49 4f 4e 4d | c'................skip.QUESTIONM |
| c27c0 | 41 52 4b 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3f 27 20 20 20 20 20 20 20 20 20 20 20 | ARK.........<-.'?'........... |
| c27e0 | 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 4f 57 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 | .....skip.RARROW...............& |
| c2800 | 6c 74 3b 2d 20 27 26 67 74 3b 27 20 20 20 20 20 20 21 5b 26 67 74 3b 3d 5d 20 20 20 20 20 73 6b | lt;-.'>'......![>=].....sk |
| c2820 | 69 70 0a 52 41 52 52 4f 57 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 | ip.RARROW2..............<-.'& |
| c2840 | 67 74 3b 26 67 74 3b 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 | gt;>'.....![=]......skip.RARR |
| c2860 | 4f 57 32 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 67 74 3b 26 67 74 3b | OW2EQUAL.........<-.'>> |
| c2880 | 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 4f 57 45 51 55 41 4c | ='..............skip.RARROWEQUAL |
| c28a0 | 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 67 74 3b 3d 27 20 20 20 20 20 20 20 20 20 | ..........<-.'>='......... |
| c28c0 | 20 20 20 20 20 20 73 6b 69 70 0a 52 42 52 41 43 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......skip.RBRACE............... |
| c28e0 | 26 6c 74 3b 2d 20 27 7d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 42 | <-.'}'................skip.RB |
| c2900 | 52 41 43 4b 45 54 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5d 27 20 20 20 20 | RACKET.............<-.']'.... |
| c2920 | 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 50 41 52 45 4e 20 20 20 20 20 20 20 20 20 | ............skip.RPAREN......... |
| c2940 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 29 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 | ......<-.')'................s |
| c2960 | 6b 69 70 0a 53 45 4d 49 43 4f 4c 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | kip.SEMICOLON............<-.' |
| c2980 | 3b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 53 4c 41 53 48 20 20 20 20 | ;'................skip.SLASH.... |
| c29a0 | 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2f 27 20 20 20 20 20 20 21 5b 3d 5d 20 | ............<-.'/'......![=]. |
| c29c0 | 20 20 20 20 20 73 6b 69 70 0a 53 4c 41 53 48 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 26 | .....skip.SLASHEQUAL...........& |
| c29e0 | 6c 74 3b 2d 20 27 2f 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 54 49 4c | lt;-.'/='...............skip.TIL |
| c2a00 | 44 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7e 27 20 20 20 20 20 | DE................<-.'~'..... |
| c2a20 | 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 0a 65 6e 64 5f 6f 66 5f 77 6f 72 64 20 26 6c 74 | ...........skip..end_of_word.< |
| c2a40 | 3b 2d 20 21 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 5d 20 73 6b 69 70 0a 4b 45 59 57 4f 52 44 5f 61 6c | ;-.![a-zA-Z0-9_].skip.KEYWORD_al |
| c2a60 | 69 67 6e 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6c 69 67 6e 27 20 20 20 20 20 20 20 65 6e | ign.......<-.'align'.......en |
| c2a80 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 20 20 20 26 6c | d_of_word.KEYWORD_allowzero...&l |
| c2aa0 | 74 3b 2d 20 27 61 6c 6c 6f 77 7a 65 72 6f 27 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'allowzero'...end_of_word.KE |
| c2ac0 | 59 57 4f 52 44 5f 61 6e 64 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 64 27 20 20 20 | YWORD_and.........<-.'and'... |
| c2ae0 | 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 | ......end_of_word.KEYWORD_anyfra |
| c2b00 | 6d 65 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 79 66 72 61 6d 65 27 20 20 20 20 65 6e 64 5f 6f 66 | me....<-.'anyframe'....end_of |
| c2b20 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_anytype.....<-. |
| c2b40 | 27 61 6e 79 74 79 70 65 27 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'anytype'.....end_of_word.KEYWOR |
| c2b60 | 44 5f 61 73 6d 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 73 6d 27 20 20 20 20 20 20 20 | D_asm.........<-.'asm'....... |
| c2b80 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 73 79 6e 63 20 20 20 20 20 | ..end_of_word.KEYWORD_async..... |
| c2ba0 | 20 20 26 6c 74 3b 2d 20 27 61 73 79 6e 63 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'async'.......end_of_wor |
| c2bc0 | 64 0a 4b 45 59 57 4f 52 44 5f 61 77 61 69 74 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 77 61 | d.KEYWORD_await.......<-.'awa |
| c2be0 | 69 74 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 62 72 | it'.......end_of_word.KEYWORD_br |
| c2c00 | 65 61 6b 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 62 72 65 61 6b 27 20 20 20 20 20 20 20 65 6e | eak.......<-.'break'.......en |
| c2c20 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 61 6c 6c 63 6f 6e 76 20 20 20 20 26 6c | d_of_word.KEYWORD_callconv....&l |
| c2c40 | 74 3b 2d 20 27 63 61 6c 6c 63 6f 6e 76 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'callconv'....end_of_word.KE |
| c2c60 | 59 57 4f 52 44 5f 63 61 74 63 68 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 63 61 74 63 68 27 20 | YWORD_catch.......<-.'catch'. |
| c2c80 | 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 | ......end_of_word.KEYWORD_compti |
| c2ca0 | 6d 65 20 20 20 20 26 6c 74 3b 2d 20 27 63 6f 6d 70 74 69 6d 65 27 20 20 20 20 65 6e 64 5f 6f 66 | me....<-.'comptime'....end_of |
| c2cc0 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_const.......<-. |
| c2ce0 | 27 63 6f 6e 73 74 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'const'.......end_of_word.KEYWOR |
| c2d00 | 44 5f 63 6f 6e 74 69 6e 75 65 20 20 20 20 26 6c 74 3b 2d 20 27 63 6f 6e 74 69 6e 75 65 27 20 20 | D_continue....<-.'continue'.. |
| c2d20 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 64 65 66 65 72 20 20 20 20 20 | ..end_of_word.KEYWORD_defer..... |
| c2d40 | 20 20 26 6c 74 3b 2d 20 27 64 65 66 65 72 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'defer'.......end_of_wor |
| c2d60 | 64 0a 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 6c 73 | d.KEYWORD_else........<-.'els |
| c2d80 | 65 27 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 6e | e'........end_of_word.KEYWORD_en |
| c2da0 | 75 6d 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 6e 75 6d 27 20 20 20 20 20 20 20 20 65 6e | um........<-.'enum'........en |
| c2dc0 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 72 72 64 65 66 65 72 20 20 20 20 26 6c | d_of_word.KEYWORD_errdefer....&l |
| c2de0 | 74 3b 2d 20 27 65 72 72 64 65 66 65 72 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'errdefer'....end_of_word.KE |
| c2e00 | 59 57 4f 52 44 5f 65 72 72 6f 72 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 72 72 6f 72 27 20 | YWORD_error.......<-.'error'. |
| c2e20 | 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 | ......end_of_word.KEYWORD_export |
| c2e40 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 78 70 6f 72 74 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 | ......<-.'export'......end_of |
| c2e60 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_extern......<-. |
| c2e80 | 27 65 78 74 65 72 6e 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'extern'......end_of_word.KEYWOR |
| c2ea0 | 44 5f 66 61 6c 73 65 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 66 61 6c 73 65 27 20 20 20 20 20 | D_false.......<-.'false'..... |
| c2ec0 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 66 6e 20 20 20 20 20 20 20 20 | ..end_of_word.KEYWORD_fn........ |
| c2ee0 | 20 20 26 6c 74 3b 2d 20 27 66 6e 27 20 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'fn'..........end_of_wor |
| c2f00 | 64 0a 4b 45 59 57 4f 52 44 5f 66 6f 72 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 66 6f 72 | d.KEYWORD_for.........<-.'for |
| c2f20 | 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 69 66 | '.........end_of_word.KEYWORD_if |
| c2f40 | 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 69 66 27 20 20 20 20 20 20 20 20 20 20 65 6e | ..........<-.'if'..........en |
| c2f60 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 20 20 20 20 20 20 26 6c | d_of_word.KEYWORD_inline......&l |
| c2f80 | 74 3b 2d 20 27 69 6e 6c 69 6e 65 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'inline'......end_of_word.KE |
| c2fa0 | 59 57 4f 52 44 5f 6e 6f 61 6c 69 61 73 20 20 20 20 20 26 6c 74 3b 2d 20 27 6e 6f 61 6c 69 61 73 | YWORD_noalias.....<-.'noalias |
| c2fc0 | 27 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6e 6f 73 75 73 70 | '.....end_of_word.KEYWORD_nosusp |
| c2fe0 | 65 6e 64 20 20 20 26 6c 74 3b 2d 20 27 6e 6f 73 75 73 70 65 6e 64 27 20 20 20 65 6e 64 5f 6f 66 | end...<-.'nosuspend'...end_of |
| c3000 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6e 6f 69 6e 6c 69 6e 65 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_noinline....<-. |
| c3020 | 27 6e 6f 69 6e 6c 69 6e 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'noinline'....end_of_word.KEYWOR |
| c3040 | 44 5f 6e 75 6c 6c 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 6e 75 6c 6c 27 20 20 20 20 20 20 | D_null........<-.'null'...... |
| c3060 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6f 70 61 71 75 65 20 20 20 20 | ..end_of_word.KEYWORD_opaque.... |
| c3080 | 20 20 26 6c 74 3b 2d 20 27 6f 70 61 71 75 65 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'opaque'......end_of_wor |
| c30a0 | 64 0a 4b 45 59 57 4f 52 44 5f 6f 72 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 6f 72 27 | d.KEYWORD_or..........<-.'or' |
| c30c0 | 20 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6f 72 | ..........end_of_word.KEYWORD_or |
| c30e0 | 65 6c 73 65 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 6f 72 65 6c 73 65 27 20 20 20 20 20 20 65 6e | else......<-.'orelse'......en |
| c3100 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 70 61 63 6b 65 64 20 20 20 20 20 20 26 6c | d_of_word.KEYWORD_packed......&l |
| c3120 | 74 3b 2d 20 27 70 61 63 6b 65 64 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'packed'......end_of_word.KE |
| c3140 | 59 57 4f 52 44 5f 70 75 62 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 70 75 62 27 20 20 20 | YWORD_pub.........<-.'pub'... |
| c3160 | 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 72 65 73 75 6d 65 | ......end_of_word.KEYWORD_resume |
| c3180 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 72 65 73 75 6d 65 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 | ......<-.'resume'......end_of |
| c31a0 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 72 65 74 75 72 6e 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_return......<-. |
| c31c0 | 27 72 65 74 75 72 6e 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'return'......end_of_word.KEYWOR |
| c31e0 | 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 20 26 6c 74 3b 2d 20 27 6c 69 6e 6b 73 65 63 74 69 6f 6e | D_linksection.<-.'linksection |
| c3200 | 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 73 74 72 75 63 74 20 20 20 20 | '.end_of_word.KEYWORD_struct.... |
| c3220 | 20 20 26 6c 74 3b 2d 20 27 73 74 72 75 63 74 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'struct'......end_of_wor |
| c3240 | 64 0a 4b 45 59 57 4f 52 44 5f 73 75 73 70 65 6e 64 20 20 20 20 20 26 6c 74 3b 2d 20 27 73 75 73 | d.KEYWORD_suspend.....<-.'sus |
| c3260 | 70 65 6e 64 27 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 73 77 | pend'.....end_of_word.KEYWORD_sw |
| c3280 | 69 74 63 68 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 73 77 69 74 63 68 27 20 20 20 20 20 20 65 6e | itch......<-.'switch'......en |
| c32a0 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 74 65 73 74 20 20 20 20 20 20 20 20 26 6c | d_of_word.KEYWORD_test........&l |
| c32c0 | 74 3b 2d 20 27 74 65 73 74 27 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'test'........end_of_word.KE |
| c32e0 | 59 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f 63 61 6c 20 26 6c 74 3b 2d 20 27 74 68 72 65 61 64 6c | YWORD_threadlocal.<-.'threadl |
| c3300 | 6f 63 61 6c 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 74 72 75 65 20 20 | ocal'.end_of_word.KEYWORD_true.. |
| c3320 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 74 72 75 65 27 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 | ......<-.'true'........end_of |
| c3340 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 74 72 79 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_try.........<-. |
| c3360 | 27 74 72 79 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'try'.........end_of_word.KEYWOR |
| c3380 | 44 5f 75 6e 64 65 66 69 6e 65 64 20 20 20 26 6c 74 3b 2d 20 27 75 6e 64 65 66 69 6e 65 64 27 20 | D_undefined...<-.'undefined'. |
| c33a0 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 75 6e 69 6f 6e 20 20 20 20 20 | ..end_of_word.KEYWORD_union..... |
| c33c0 | 20 20 26 6c 74 3b 2d 20 27 75 6e 69 6f 6e 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'union'.......end_of_wor |
| c33e0 | 64 0a 4b 45 59 57 4f 52 44 5f 75 6e 72 65 61 63 68 61 62 6c 65 20 26 6c 74 3b 2d 20 27 75 6e 72 | d.KEYWORD_unreachable.<-.'unr |
| c3400 | 65 61 63 68 61 62 6c 65 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 75 73 | eachable'.end_of_word.KEYWORD_us |
| c3420 | 69 6e 67 6e 61 6d 65 73 70 61 63 65 20 26 6c 74 3b 2d 20 27 75 73 69 6e 67 6e 61 6d 65 73 70 61 | ingnamespace.<-.'usingnamespa |
| c3440 | 63 65 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 76 61 72 20 20 20 20 20 | ce'.end_of_word.KEYWORD_var..... |
| c3460 | 20 20 20 20 26 6c 74 3b 2d 20 27 76 61 72 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 | ....<-.'var'.........end_of_w |
| c3480 | 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 6c 65 20 20 20 20 26 6c 74 3b 2d 20 27 76 | ord.KEYWORD_volatile....<-.'v |
| c34a0 | 6f 6c 61 74 69 6c 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f | olatile'....end_of_word.KEYWORD_ |
| c34c0 | 77 68 69 6c 65 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 77 68 69 6c 65 27 20 20 20 20 20 20 20 | while.......<-.'while'....... |
| c34e0 | 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 0a 6b 65 79 77 6f 72 64 20 26 6c 74 3b 2d 20 4b 45 59 57 4f | end_of_word..keyword.<-.KEYWO |
| c3500 | 52 44 5f 61 6c 69 67 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 20 2f 20 4b | RD_align./.KEYWORD_allowzero./.K |
| c3520 | 45 59 57 4f 52 44 5f 61 6e 64 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 0a 20 20 | EYWORD_and./.KEYWORD_anyframe... |
| c3540 | 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 20 2f 20 4b 45 59 57 4f | ......./.KEYWORD_anytype./.KEYWO |
| c3560 | 52 44 5f 61 73 6d 20 2f 20 4b 45 59 57 4f 52 44 5f 61 73 79 6e 63 20 2f 20 4b 45 59 57 4f 52 44 | RD_asm./.KEYWORD_async./.KEYWORD |
| c3580 | 5f 61 77 61 69 74 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 | _await........../.KEYWORD_break. |
| c35a0 | 2f 20 4b 45 59 57 4f 52 44 5f 63 61 6c 6c 63 6f 6e 76 20 2f 20 4b 45 59 57 4f 52 44 5f 63 61 74 | /.KEYWORD_callconv./.KEYWORD_cat |
| c35c0 | 63 68 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 2f | ch./.KEYWORD_comptime........../ |
| c35e0 | 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 | .KEYWORD_const./.KEYWORD_continu |
| c3600 | 65 20 2f 20 4b 45 59 57 4f 52 44 5f 64 65 66 65 72 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 | e./.KEYWORD_defer./.KEYWORD_else |
| c3620 | 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6e 75 6d 20 2f 20 4b 45 59 57 4f | ........../.KEYWORD_enum./.KEYWO |
| c3640 | 52 44 5f 65 72 72 64 65 66 65 72 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 2f 20 4b 45 | RD_errdefer./.KEYWORD_error./.KE |
| c3660 | 59 57 4f 52 44 5f 65 78 70 6f 72 74 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f | YWORD_export........../.KEYWORD_ |
| c3680 | 65 78 74 65 72 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 66 61 6c 73 65 20 2f 20 4b 45 59 57 4f 52 44 | extern./.KEYWORD_false./.KEYWORD |
| c36a0 | 5f 66 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 66 6f 72 20 2f 20 4b 45 59 57 4f 52 44 5f 69 66 0a 20 | _fn./.KEYWORD_for./.KEYWORD_if.. |
| c36c0 | 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 20 2f 20 4b 45 59 57 4f | ......../.KEYWORD_inline./.KEYWO |
| c36e0 | 52 44 5f 6e 6f 61 6c 69 61 73 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 73 75 73 70 65 6e 64 20 2f | RD_noalias./.KEYWORD_nosuspend./ |
| c3700 | 20 4b 45 59 57 4f 52 44 5f 6e 6f 69 6e 6c 69 6e 65 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 | .KEYWORD_noinline........../.KEY |
| c3720 | 57 4f 52 44 5f 6e 75 6c 6c 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 70 61 71 75 65 20 2f 20 4b 45 59 | WORD_null./.KEYWORD_opaque./.KEY |
| c3740 | 57 4f 52 44 5f 6f 72 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 20 2f 20 4b 45 59 57 4f | WORD_or./.KEYWORD_orelse./.KEYWO |
| c3760 | 52 44 5f 70 61 63 6b 65 64 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 70 75 62 | RD_packed........../.KEYWORD_pub |
| c3780 | 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 73 75 6d 65 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 74 75 | ./.KEYWORD_resume./.KEYWORD_retu |
| c37a0 | 72 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 | rn./.KEYWORD_linksection........ |
| c37c0 | 20 20 2f 20 4b 45 59 57 4f 52 44 5f 73 74 72 75 63 74 20 2f 20 4b 45 59 57 4f 52 44 5f 73 75 73 | ../.KEYWORD_struct./.KEYWORD_sus |
| c37e0 | 70 65 6e 64 20 2f 20 4b 45 59 57 4f 52 44 5f 73 77 69 74 63 68 0a 20 20 20 20 20 20 20 20 20 2f | pend./.KEYWORD_switch........../ |
| c3800 | 20 4b 45 59 57 4f 52 44 5f 74 65 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f | .KEYWORD_test./.KEYWORD_threadlo |
| c3820 | 63 61 6c 20 2f 20 4b 45 59 57 4f 52 44 5f 74 72 75 65 20 2f 20 4b 45 59 57 4f 52 44 5f 74 72 79 | cal./.KEYWORD_true./.KEYWORD_try |
| c3840 | 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 64 65 66 69 6e 65 64 20 2f 20 | ........../.KEYWORD_undefined./. |
| c3860 | 4b 45 59 57 4f 52 44 5f 75 6e 69 6f 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 72 65 61 63 68 61 | KEYWORD_union./.KEYWORD_unreacha |
| c3880 | 62 6c 65 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 73 69 6e 67 6e 61 6d 65 | ble........../.KEYWORD_usingname |
| c38a0 | 73 70 61 63 65 20 2f 20 4b 45 59 57 4f 52 44 5f 76 61 72 20 2f 20 4b 45 59 57 4f 52 44 5f 76 6f | space./.KEYWORD_var./.KEYWORD_vo |
| c38c0 | 6c 61 74 69 6c 65 20 2f 20 4b 45 59 57 4f 52 44 5f 77 68 69 6c 65 0a 3c 2f 63 6f 64 65 3e 3c 2f | latile./.KEYWORD_while.</code></ |
| c38e0 | 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 5a 65 6e 22 3e 3c | pre>..............<h1.id="Zen">< |
| c3900 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 | a.href="#toc-Zen">Zen</a>.<a.cla |
| c3920 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 5a 65 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e | ss="hdr".href="#Zen">..</a></h1> |
| c3940 | 0a 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 6d 75 6e 69 | ........<ul>.........<li>Communi |
| c3960 | 63 61 74 65 20 69 6e 74 65 6e 74 20 70 72 65 63 69 73 65 6c 79 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | cate.intent.precisely.</li>..... |
| c3980 | 20 20 20 20 3c 6c 69 3e 45 64 67 65 20 63 61 73 65 73 20 6d 61 74 74 65 72 2e 3c 2f 6c 69 3e 0a | ....<li>Edge.cases.matter.</li>. |
| c39a0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 76 6f 72 20 72 65 61 64 69 6e 67 20 63 6f 64 65 20 6f | ........<li>Favor.reading.code.o |
| c39c0 | 76 65 72 20 77 72 69 74 69 6e 67 20 63 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | ver.writing.code.</li>.........< |
| c39e0 | 6c 69 3e 4f 6e 6c 79 20 6f 6e 65 20 6f 62 76 69 6f 75 73 20 77 61 79 20 74 6f 20 64 6f 20 74 68 | li>Only.one.obvious.way.to.do.th |
| c3a00 | 69 6e 67 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 75 6e 74 69 6d 65 20 63 | ings.</li>.........<li>Runtime.c |
| c3a20 | 72 61 73 68 65 73 20 61 72 65 20 62 65 74 74 65 72 20 74 68 61 6e 20 62 75 67 73 2e 3c 2f 6c 69 | rashes.are.better.than.bugs.</li |
| c3a40 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 20 61 72 65 | >.........<li>Compile.errors.are |
| c3a60 | 20 62 65 74 74 65 72 20 74 68 61 6e 20 72 75 6e 74 69 6d 65 20 63 72 61 73 68 65 73 2e 3c 2f 6c | .better.than.runtime.crashes.</l |
| c3a80 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 63 72 65 6d 65 6e 74 61 6c 20 69 6d 70 72 6f | i>.........<li>Incremental.impro |
| c3aa0 | 76 65 6d 65 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 76 6f 69 64 20 | vements.</li>.........<li>Avoid. |
| c3ac0 | 6c 6f 63 61 6c 20 6d 61 78 69 6d 75 6d 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | local.maximums.</li>.........<li |
| c3ae0 | 3e 52 65 64 75 63 65 20 74 68 65 20 61 6d 6f 75 6e 74 20 6f 6e 65 20 6d 75 73 74 20 72 65 6d 65 | >Reduce.the.amount.one.must.reme |
| c3b00 | 6d 62 65 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 6f 63 75 73 20 6f 6e 20 | mber.</li>.........<li>Focus.on. |
| c3b20 | 63 6f 64 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 73 74 79 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 | code.rather.than.style.</li>.... |
| c3b40 | 20 20 20 20 20 3c 6c 69 3e 52 65 73 6f 75 72 63 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 6d 61 79 | .....<li>Resource.allocation.may |
| c3b60 | 20 66 61 69 6c 3b 20 72 65 73 6f 75 72 63 65 20 64 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 6d 75 73 | .fail;.resource.deallocation.mus |
| c3b80 | 74 20 73 75 63 63 65 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 65 6d 6f | t.succeed.</li>.........<li>Memo |
| c3ba0 | 72 79 20 69 73 20 61 20 72 65 73 6f 75 72 63 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | ry.is.a.resource.</li>.........< |
| c3bc0 | 6c 69 3e 54 6f 67 65 74 68 65 72 20 77 65 20 73 65 72 76 65 20 74 68 65 20 75 73 65 72 73 2e 3c | li>Together.we.serve.the.users.< |
| c3be0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 2f | /li>.......</ul>..............</ |
| c3c00 | 64 69 76 3e 3c 2f 64 69 76 3e 0a 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 3c 2f 62 6f 64 79 3e 0a | div></div>.....</div>...</body>. |
| c3c20 | 3c 2f 68 74 6d 6c 3e 0a 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 6f 61 ab 2c 14 00 00 00 | </html>.PK............!Roa.,.... |
| c3c40 | 14 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 69 6d 65 74 79 70 65 50 4b | ......................mimetypePK |
| c3c60 | 01 02 14 00 14 00 00 00 00 00 00 00 21 52 6f 92 d0 0a fc 00 00 00 fc 00 00 00 16 00 00 00 00 00 | ............!Ro................. |
| c3c80 | 00 00 00 00 00 00 00 00 3a 00 00 00 4d 45 54 41 2d 49 4e 46 2f 63 6f 6e 74 61 69 6e 65 72 2e 78 | ........:...META-INF/container.x |
| c3ca0 | 6d 6c 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 4c 15 6a cd a7 02 00 00 a7 02 00 00 11 00 | mlPK............!RL.j........... |
| c3cc0 | 00 00 00 00 00 00 00 00 00 00 00 00 6a 01 00 00 4f 45 42 50 53 2f 63 6f 6e 74 65 6e 74 2e 6f 70 | ............j...OEBPS/content.op |
| c3ce0 | 66 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 23 54 71 8d 86 01 00 00 86 01 00 00 0f 00 00 | fPK............!R#Tq............ |
| c3d00 | 00 00 00 00 00 00 00 00 00 00 00 40 04 00 00 4f 45 42 50 53 2f 6e 61 76 2e 78 68 74 6d 6c 50 4b | ...........@...OEBPS/nav.xhtmlPK |
| c3d20 | 01 02 14 00 14 00 00 00 00 00 00 00 21 52 48 cc 38 b3 06 36 0c 00 06 36 0c 00 11 00 00 00 00 00 | ............!RH.8..6...6........ |
| c3d40 | 00 00 00 00 00 00 00 00 f3 05 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 2e 78 68 74 6d 6c 50 4b 05 | ............OEBPS/index.xhtmlPK. |
| c3d60 | 06 00 00 00 00 05 00 05 00 35 01 00 00 28 3c 0c 00 00 00 | .........5...(<.... |